Entwickeln mithilfe der REST-APIs für Power BI-Berichtsserver
Power BI Report Server unterstützt REST-APIs (Representational State Transfer). Diese REST-APIs sind Dienstendpunkte, die verschiedene HTTP-Vorgänge (Methoden) unterstützen, die Zugriff auf Ressourcen in einem Berichtsserver herstellen, abrufen, aktualisieren oder löschen.
Die REST-API bietet programmgesteuerten Zugriff auf die Objekte in einem Katalog für Power BI-Berichtsserver. Bei diesen Objekten handelt es sich beispielsweise um Ordner, Berichte, KPIs, Datenquellen, Datasets, Aktualisierungspläne, Abonnements, etc. Mithilfe der REST-API können Sie z.B. die Ordnerhierarchie navigieren, die Inhalte eines Ordners ermitteln oder eine Berichtsdefinition herunterladen. Außerdem können Sie Objekte erstellen, aktualisieren und löschen. Die Objekte unterstützen Sie u.a. bei dem Upload von Berichten, dem Ausführen eines Aktualisierungsplans oder dem Löschen eines Ordners.
Hinweis
Informationen zum Anzeigen und Löschen von personenbezogenen Daten finden Sie im Leitfaden von Microsoft auf der Website zu den Windows-Datensubjektanforderungen für die DSGVO. Allgemeine Informationen über die DSGVO finden Sie im Abschnitt zur DSGVO im Service Trust-Portal.
Komponenten einer REST-API-Anforderung/Antwort
Ein REST-API-Anforderung/Antwort-Paar kann in fünf Komponenten gegliedert werden:
Der Anforderungs-URI, der aus
{URI-scheme} :// {URI-host} / {resource-path} ? {query-string}
besteht. Obwohl der Header der Anforderungsnachricht den Anforderungs-URI enthält, erwähnen wir ihn an dieser Stelle extra, da es für viele Sprachen und Frameworks erforderlich ist, diesen separat der Anforderungsnachricht zu entnehmen.- URI-Schema: gibt das Protokoll an, das zum Übertragen der Anforderung verwendet wird. Zum Beispiel:
http
oderhttps
. - URI-Host: gibt den Domänennamen oder die IP-Adresse des Servers an, auf dem die REST-Dienstendpunkte gehostet werden. Zum Beispiel:
myserver.contoso.com
. - Ressourcenpfad: gibt die Ressource oder die Ressourcenauflistung an, die möglicherweise mehrere Segmente enthalten, die vom Dienst zur Bestimmung der Auswahl dieser Ressourcen verwendet werden. Beispielsweise kann
CatalogItems(01234567-89ab-cdef-0123-456789abcdef)/Properties
verwendet werden, um angegebene Eigenschaften für CatalogItem zu verwenden. - Abfragezeichenfolge (optional): stellt zusätzliche, einfache Parameter wie die API-Version oder die Kriterien der Ressourcenauswahl bereit.
- URI-Schema: gibt das Protokoll an, das zum Übertragen der Anforderung verwendet wird. Zum Beispiel:
Nachrichtenheaderfelder mit HTTP-Anforderungen:
- eine erforderliche HTTP-Methode (ebenfalls unter den Bezeichnungen „Vorgang“ oder „Verb“ bekannt), über die der Dienst erfährt, welchen Vorgangstyp Sie anfordern; Reporting Services REST-APIs unterstützen die Methoden DELETE, GET, HEAD, PUT, POST und PATCH (Löschen, Abrufen, Kopfteil, Platzieren, Bereitstellen und Reparieren).
- Zusätzliche optionale Headerfelder, die für den angegebenen URI und HTTP-Methode erforderlich sind.
Optionale Nachrichtentextfelder mit HTTP-Antworten zur Unterstützung des URI und des HTTP-Vorgangs. Beispielsweise enthalten POST-Vorgänge MIME-codierte Objekte, die als komplexe Parameter übergeben werden. Für POST- oder PUT-Vorgänge sollte der MIME-codierte Textkörpertyp ebenfalls im Anforderungsheader
Content-type
angegeben werden. Einige Dienste verlangen die Verwendung eines MIME-Typs wieapplication/json
.Nachrichtenheaderfelder mit HTTP-Anworten:
- Ein HTTP-Statuscode, der zwischen den Erfolgscodes 2xx und den Fehlercodes 4xx oder 5xx liegt. Stattdessen kann auch, wie in der API-Dokumentation angegeben, ein Statuscode zurückgegeben werden, der für einen Dienst definiert ist.
- Zusätzliche optionale Headerfelder, die zum Unterstützen der Antwort der Anforderung erforderlich sind, z.B. ein
Content-type
-Antwortheader.
Optionale Nachrichtentextfelder mit HTTP-Antworten:
- MIME-codierte Antwortobjekte werden im HTTP-Antworttext zurückgegeben, wie z.B. eine Antwort von einer GET-Methode, die Daten zurückgibt. Für gewöhnlich werden diese Objekte in einem strukturierten Format wie JSON oder XML zurückgegeben, wie im
Content-type
-Antwortheader angegeben.
- MIME-codierte Antwortobjekte werden im HTTP-Antworttext zurückgegeben, wie z.B. eine Antwort von einer GET-Methode, die Daten zurückgibt. Für gewöhnlich werden diese Objekte in einem strukturierten Format wie JSON oder XML zurückgegeben, wie im
API-Dokumentation
Eine moderne REST-API benötigt auch eine moderne API-Dokumentation. Die REST-API basiert auf der OpenAPI-Spezifikation (auch Swagger-Spezifikation genannt), und die Dokumentation ist auf Microsoft Learn verfügbar.
Testen von API-Aufrufen
Fiddler ist ein Tool zum Testen von HTTP-Anforderungs- bzw. Antwortnachrichten. Fiddler ist ein kostenloser Proxy zum Webdebuggen, der Ihre REST-Anforderungen abfangen kann. Dies vereinfacht die Diagnose von Anforderungs-bzw. Antwortnachrichten.
Zugehöriger Inhalt
Überprüfen Sie die verfügbaren APIs auf Microsoft Learn.
Beispiele finden Sie auf demGitHub. Das Beispiel beinhaltet neben einem PowerShell-Beispiel eine HTML5-App, die auf TypeScript, React und Webpack basiert.
Weitere Fragen? Stellen Sie Ihre Frage in der Power BI-Community.