Udvikl med REST API'er til Power BI-rapportserver

Power BI-rapportserver understøtter REST API'er (Representational State Transfer). REST API'erne er tjenesteslutpunkter, der understøtter et sæt HTTP-handlinger (metoder), som giver adgang til oprettelse, hentning, opdatering eller sletning af ressourcer på en rapportserver.

REST-API'en giver programmatisk adgang til objekterne i et Power BI-rapportserver katalog. Eksempler på objekter er mapper, rapporter, KPI'er, datakilder, datasæt, opdateringsplaner, abonnementer med mere. Ved hjælp af REST-API'en kan du f.eks. navigere i mappehierarkiet, finde indholdet af en mappe eller downloade en rapportdefinition. Du kan også oprette, opdatere og slette objekter. Eksempler på, hvordan du arbejder med objekter, er upload af en rapport, udførelse af en opdateringsplan, sletning af en mappe osv.

Bemærk

Hvis du er interesseret i at få vist eller slette personlige data, skal du gennemse Microsofts vejledning på Webstedet Windows Data Subject Requests for the GDPR . Hvis du leder efter generelle oplysninger om GDPR, kan du se afsnittet om GDPR på Service Trust Portal.

Komponenter i en REST API-anmodning/-svar

Et REST API-anmodnings-/svarpar kan opdeles i fem komponenter:

  • Anmodnings-URI'en, der består af: {URI-scheme} :// {URI-host} / {resource-path} ? {query-string}. Selvom anmodnings-URI'en er inkluderet i anmodningens meddelelsesheader, kalder vi den separat her, fordi de fleste sprog eller strukturer kræver, at du sender den separat fra anmodningsmeddelelsen.

    • URI-skema: Angiver den protokol, der bruges til at sende anmodningen. For eksempel http eller https.
    • URI-vært: Angiver domænenavnet eller IP-adressen på den server, hvor REST-tjenesteslutpunktet er hostet, f.eks myserver.contoso.com. .
    • Ressourcesti: Angiver ressourcen eller ressourcesamlingen, som kan omfatte flere segmenter, der bruges af tjenesten til at bestemme valget af disse ressourcer. F.eks.: CatalogItems(01234567-89ab-cdef-0123-456789abcdef)/Properties kan bruges til at hente de angivne egenskaber for CatalogItem.
    • Forespørgselsstreng (valgfrit): Indeholder yderligere enkle parametre, f.eks. API-versionen eller kriterier for ressourcevalg.
  • Felter i HTTP-anmodningsmeddelelsesheader:

    • En påkrævet HTTP-metode (også kaldet en handling eller et verbum), som fortæller tjenesten, hvilken type handling du anmoder om. REST API'er til Reporting Services understøtter metoderne DELETE, GET, HEAD, PUT, POST og PATCH.
    • Valgfrie ekstra headerfelter, som kræves af den angivne URI- og HTTP-metode.
  • Valgfrie brødtekstfelter til HTTP-anmodning for at understøtte URI- og HTTP-handlingen. POST-handlinger indeholder f.eks. MIME-kodede objekter, der overføres som komplekse parametre. I forbindelse med POST- eller PUT-handlinger skal MIME-kodningstypen for brødteksten også angives i anmodningsheaderen Content-type . Nogle tjenester kræver, at du bruger en bestemt MIME-type, f.eks application/json. .

  • Felter i HTTP-svarmeddelelsesheader:

    • En HTTP-statuskode, der spænder fra 2xx succeskoder til 4xx eller 5xx fejlkoder. Du kan også returnere en tjenestedefineret statuskode som angivet i API-dokumentationen.
    • Valgfrie ekstra headerfelter, som kræves for at understøtte anmodningens svar, f.eks. en Content-type svarheader.
  • Valgfrie HTTP-svarmeddelelsesbrødtekstfelter:

    • MIME-kodede svarobjekter returneres i HTTP-svarbrødteksten, f.eks. et svar fra en GET-metode, der returnerer data. Disse objekter returneres typisk i et struktureret format, f.eks. JSON eller XML, som angivet i svarheaderen Content-type .

API-dokumentation

En moderne REST API kræver moderne API-dokumentation. REST-API'en er baseret på OpenAPI-specifikationen (dvs. swagger-specifikationen), og dokumentationen er tilgængelig på Microsoft Learn.

Test af API-kald

Et værktøj til test af HTTP-anmodnings-/svarmeddelelser er Fiddler. Fiddler er en gratis webfejlfindingsproxy, der kan opfange dine REST-anmodninger, hvilket gør det nemt at diagnosticere HTTP-anmodnings-/svarmeddelelserne.

Gennemse de tilgængelige API'er på Microsoft Learn.

Eksempler er tilgængelige på GitHub. Eksemplet indeholder en HTML5-app, der er bygget på TypeScript, React og webpack sammen med et PowerShell-eksempel.

Har du flere spørgsmål? Prøv at spørge Power BI-community'et