Utvikle med REST API-er for rapportserver for Power BI

rapportserver for Power BI støtter REST-API-er (Representational State Transfer). REST-API-ene er tjenesteendepunkter som støtter et sett med HTTP-operasjoner (metoder), som gir oppretting, hent, oppdater eller slett tilgang for ressurser i en rapportserver.

REST-API-en gir programmatisk tilgang til objektene i en rapportserver for Power BI katalog. Eksempler på objekter er mapper, rapporter, KPI-er, datakilder, datasett, oppdateringsplaner, abonnementer og mer. Ved hjelp av REST-API-en kan du for eksempel navigere i mappehierarkiet, oppdage innholdet i en mappe eller laste ned en rapportdefinisjon. Du kan også opprette, oppdatere og slette objekter. Eksempler på arbeid med objekter lastes opp en rapport, kjører en oppdateringsplan, sletter en mappe og så videre.

Merk

Hvis du er interessert i å vise eller slette personopplysninger, kan du se gjennom Microsofts veiledning i Forespørsler om windows-dataemne for GDPR-nettstedet . Hvis du leter etter generell informasjon om GDPR, kan du se GDPR-delen av Service Trust-portalen.

Komponenter i en REST API-forespørsel/svar

Et REST-API-forespørsels-/svarpar kan deles inn i fem komponenter:

  • Forespørsels-URI-en, som består av: {URI-scheme} :// {URI-host} / {resource-path} ? {query-string}. Selv om forespørsels-URI-en er inkludert i meldingshodet for forespørselen, kaller vi den ut separat her fordi de fleste språk eller rammeverk krever at du sender den separat fra forespørselsmeldingen.

    • URI-oppsett: Angir protokollen som brukes til å overføre forespørselen. For eksempel, http eller https.
    • URI-vert: Angir domenenavnet eller IP-adressen til serveren der REST-tjenesteendepunktet driftes, for eksempel myserver.contoso.com.
    • Ressursbane: Angir ressursen eller ressurssamlingen, som kan omfatte flere segmenter som brukes av tjenesten til å bestemme utvalget av disse ressursene. Kan for eksempel CatalogItems(01234567-89ab-cdef-0123-456789abcdef)/Properties brukes til å hente de angitte egenskapene for CatalogItem.
    • Spørringsstreng (valgfritt): Inneholder flere enkle parametere, for eksempel API-versjonen eller kriteriene for ressursvalg.
  • Overskriftsfelt for HTTP-forespørselsmelding:

    • En nødvendig HTTP-metode (også kalt en operasjon eller et verb), som forteller tjenesten hvilken type operasjon du ber om. Reporting Services REST API-er støtter METODENE DELETE, GET, HEAD, PUT, POST og PATCH.
    • Valgfrie tilleggshodefelt, som kreves av den angitte URI- og HTTP-metoden.
  • Valgfrie brødtekstfelt for HTTP-forespørsler, for å støtte URI- og HTTP-operasjonen. POST-operasjoner inneholder for eksempel MIME-kodede objekter som sendes som komplekse parametere. For POST- eller PUT-operasjoner bør MIME-kodingstypen for brødteksten også angis i Content-type forespørselshodet. Noen tjenester krever at du bruker en bestemt MIME-type, for eksempel application/json.

  • Overskriftsfelt for HTTP-svarmelding:

    • En HTTP-statuskode, alt fra 2xx-suksesskoder til 4xx- eller 5xx-feilkoder. Alternativt kan en tjenestedefinert statuskode returneres, som angitt i API-dokumentasjonen.
    • Valgfrie tilleggshodefelt, som kreves for å støtte forespørselens svar, for eksempel et Content-type svarhode.
  • Valgfrie brødtekstfelt for HTTP-svarmelding:

    • MIME-kodede svarobjekter returneres i HTTP-svarteksten, for eksempel et svar fra en GET-metode som returnerer data. Vanligvis returneres disse objektene i et strukturert format, for eksempel JSON eller XML, som angitt av Content-type svarhodet.

API-dokumentasjon

En moderne REST-API krever moderne API-dokumentasjon. REST-API-en er bygget på OpenAPI-spesifikasjonen (aka swagger-spesifikasjonen) og dokumentasjonen er tilgjengelig på Microsoft Learn.

Testing av API-kall

Et verktøy for testing av HTTP-forespørsels-/svarmeldinger er Fiddler. Fiddler er en gratis nettdebuggingsproxy som kan fange opp REST-forespørslene dine, noe som gjør det enkelt å diagnostisere HTTP-forespørselen/ svarmeldingene.

Se gjennom de tilgjengelige API-ene på Microsoft Learn.

Eksempler er tilgjengelige på GitHub. Eksemplet inkluderer en HTML5-app bygget på TypeScript, React og webpack sammen med et Eksempel på PowerShell.

Har du flere spørsmål? Prøv å spørre Power BI-fellesskap