Öffentliche APIs-Funktionen für Dataflow Gen2 in Fabric Data Factory

Fabric Data Factory stellt eine Reihe von APIs bereit, mit denen Sie Ihre Datenflüsse effizient automatisieren und verwalten können. Diese APIs sind in verschiedene Datenquellen und Dienste integriert, sodass Sie Ihre Datenworkflows programmgesteuert erstellen, aktualisieren und überwachen können. Die APIs unterstützen eine vielzahl von Vorgängen, einschließlich Dataflows CRUD (Create, Read, Update und Delete), Planung und Überwachung.

API-Anwendungsfälle für Datenflüsse

Verwenden Sie die APIs für Datenflüsse in Fabric Data Factory in verschiedenen Szenarien:

  • Automatisierte Bereitstellung: Automatisieren Sie die Bereitstellung von Datenflüssen in verschiedenen Umgebungen (Entwicklung, Test, Produktion) mithilfe von CI/CD-Praktiken.
  • Überwachung und Warnungen: Richten Sie automatisierte Überwachungs- und Alarmsysteme ein, um den Status von Datenflüssen nachzuverfolgen und Benachrichtigungen bei Fehlern oder Leistungsproblemen zu empfangen.
  • Datenintegration: Integrieren von Daten aus mehreren Quellen, z. B. Datenbanken, Datenseen und Clouddiensten, in einen einheitlichen Datenfluss zur Verarbeitung und Analyse.
  • Fehlerbehandlung: Implementieren Sie benutzerdefinierte Fehlerbehandlungs- und Wiederholungsmechanismen, um sicherzustellen, dass Datenflüsse reibungslos ausgeführt und von Fehlern wiederhergestellt werden.

Grundlegendes zu APIs

Um die APIs für Datenflüsse in Fabric Data Factory effektiv zu verwenden, verstehen Sie die wichtigsten Konzepte und Komponenten:

  • Endpunkte: Die API-Endpunkte bieten Zugriff auf verschiedene Datenflussvorgänge, z. B. Erstellen, Aktualisieren und Löschen von Datenflüssen.
  • Authentifizierung: Sicherer Zugriff auf die APIs mithilfe von Authentifizierungsmechanismen wie OAuth oder API-Schlüsseln.
  • Anforderungen und Antworten: Verstehen der Struktur von API-Anforderungen und -Antworten, einschließlich der erforderlichen Parameter und der erwarteten Ausgabe.
  • Ratenbeschränkungen: Beachten Sie die für die API-Nutzung auferlegten Ratenbeschränkungen, um zu vermeiden, dass die zulässige Anzahl von Anforderungen überschritten wird.

CRUD-Unterstützung

CRUD steht für Create, Read, Update und Delete – die vier grundlegenden Vorgänge, die Sie für Daten ausführen können. Die Fabric-API für Data Factory unterstützt CRUD-Vorgänge, sodass Sie Ihre Datenflüsse programmgesteuert verwalten können. Wichtige Punkte zur CRUD-Unterstützung:

  • Erstellen: Erstellen Sie neue Datenflüsse mit der API. Dazu gehört die Definition der Datenflussstruktur, das Angeben von Datenquellen, Transformationen und Zielen.
  • Lesen: Abrufen von Informationen zu vorhandenen Datenflüssen. Dazu gehören Details zu konfiguration, Status und Ausführungsverlauf.
  • Update: Aktualisieren vorhandener Datenflüsse. Dies kann das Ändern der Datenflussstruktur, das Ändern von Datenquellen oder das Aktualisieren der Transformationslogik umfassen.
  • Löschen: Löschen Sie Datenflüsse, die nicht mehr benötigt werden. Dies hilft beim Verwalten und Bereinigen von Ressourcen.

Die primäre Onlinereferenzdokumentation für Microsoft Fabric REST-APIs finden Sie in der Microsoft Fabric REST-API-Dokumentation.

Dataflow-Lebenszyklus

Beim Arbeiten mit Datenflüssen ist es wichtig, den Lebenszyklus eines Datenflusses zu verstehen, um reibungslose und effiziente Datenintegrationsprozesse sicherzustellen. Zu den wichtigsten Phasen des Datenflusslebenszyklus gehören:

  • Definition: In dieser Phase erstellen oder ändern Sie die Definition eines Datenflusses. Dieser Vorgang umfasst die Angabe der Datenquellen, Transformationen und Ziele.
  • Veröffentlichen: Nachdem Sie die Definition eines Datenflusses geändert haben, müssen Sie den Veröffentlichungsvorgang aufrufen. Dies ist ein wichtiger Schritt, da die an der Definition des Datenflusses vorgenommenen Änderungen gespeichert und zur Ausführung zur Verfügung gestellt werden.
  • Aktualisieren: Nachdem der Datenfluss veröffentlicht wurde, können Sie den Aktualisierungsvorgang aufrufen. Dieser Vorgang löst den auszuführenden Datenfluss aus, ruft Daten aus den angegebenen Quellen ab, wendet die definierten Transformationen an und lädt die Daten in das Ziel.

Voraussetzungen

Um die öffentlichen APIs von Dataflow Gen2 zu verwenden, benötigen Sie Folgendes:

  • Ein Microsoft Fabric Arbeitsbereich mit mindestens einer Mitwirkendenrolle.
  • Ein Microsoft Entra ID-Token mit den Bereichen Workspace.ReadWrite.All und Item.ReadWrite.All. Weitere Details finden Sie unter Ein Autorisierungstoken abrufen.
  • Die Arbeitsbereichs-ID, in der Sie Datenflüsse erstellen oder verwalten möchten.

Erste Schritte mit öffentlichen APIs für Datenflüsse

In der folgenden Tabelle sind alle verfügbaren Dataflow Gen2-API-Vorgänge zusammengefasst:

Operation HTTP-Methode Endpunkt
Erstellen eines Dataflows POST /v1/workspaces/{workspaceId}/items
Erstellen eines Datenflusses mit Definition POST /v1/workspaces/{workspaceId}/items (mit definition in der Nutzlast)
Datenfluss abrufen GET /v1/workspaces/{workspaceId}/items/{itemId}
Datenfluss mit Definition abrufen POST /v1/workspaces/{workspaceId}/items/{itemId}/getDefinition
Aktualisieren des Datenflusses PATCH /v1/workspaces/{workspaceId}/items/{itemId}
Aktualisieren des Datenflusses mit Definition POST /v1/workspaces/{workspaceId}/items/{itemId}/updateDefinition
Datenfluss löschen Löschen /v1/workspaces/{workspaceId}/items/{itemId}
On-Demand-Aktualisierung ausführen POST /v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances?jobType=Refresh
Bedarfsgesteuerte Veröffentlichung starten POST /v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances?jobType=Publish
Jobinstanz abrufen GET /v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances/{jobInstanceId}
Jobinstanz abbrechen POST /v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances/{jobInstanceId}/cancel

In diesem Abschnitt werden die folgenden Themen behandelt:

Ein Autorisierungstoken holen

Sie benötigen ein Bearertoken für alle REST-API-Aufrufe. Sie erhalten es mit einer der folgenden Optionen:

MSAL.NET

Fabric-API – Schnellstart : Microsoft Fabric-REST-APIs

Verwenden Sie MSAL.NET, um ein Microsoft Entra ID-Token für den Fabric Dienst mit den folgenden Bereichen abzurufen: Workspace.ReadWrite.All, Item.ReadWrite.All. Weitere Informationen zum Tokenerwerb mit MSAL.NET finden Sie unter Token acquisition - Microsoft Authentication Library (MSAL) for .NET.

Fügen Sie die Anwendungs-ID (Client-ID) ein, die Sie zuvor in die ClientId-Variable kopiert haben.

Fabric Portal

Melden Sie sich beim Fabric-Portal für den Zu testierenden Mandanten an, und wählen Sie F12 aus, um die Entwicklertools des Browsers zu öffnen. Führen Sie in der Konsole Folgendes aus:

powerBIAccessToken

Kopieren Sie das Token, und fügen Sie es in die ClientId-Variable ein.

Erstellen eines Dataflows

Erstellen Sie einen Datenfluss in einem angegebenen Arbeitsbereich. Senden Sie eine POST-Anfrage an den Items-Endpunkt, wobei displayName, description und type auf Dataflow festgelegt sind. Die Antwort enthält das erstellte Element mit seinem id.

Beispielanforderung

URI: POST [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items)

Headers:

{
    "Authorization": "\<bearer-token>",
    "Content-Type": "application/json"
}

Payload:

{
    "displayName": "My dataflow",
    "description": "My dataflow description",
    "type": "Dataflow"
}

Beispiel für eine Antwort

{
    "id": "\<itemId>",
    "type": "Dataflow",
    "displayName": "My dataflow",
    "description": "My dataflow description",
    "workspaceId": "\<workspaceId>"
}

Erstellen eines Datenflusses mit Definition

Erstellen Sie einen Datenfluss mit einer Base64-Definition in einem angegebenen Arbeitsbereich. Senden Sie eine POST-Anforderung an den Elementendpunkt mit einem inline base64-codierten Mashupdokument im definition.parts Array.

Beispiel für ein Mashup-Dokument

{
    "editingSessionMashup": {
            "mashupName": "",
            "mashupDocument": "section Section1;\r\nshared Query = let\n Source = Table.FromRows(\n {\n {1, \"Bob\", \"123-4567\"},\n {2, \"Jim\", \"987-6543\"}\n },\n {\"CustomerID\", \"Name\", \"Phone\"})\nin\n Source;\r\n",
            "queryGroups": [],
            "documentLocale": "en-US",
            "gatewayObjectId": null,
            "queriesMetadata": null,
            "connectionOverrides": [],
            "trustedConnections": null,
            "useHostConnectionProvider": false,
            "fastCombine": false,
            "allowNativeQueries": true,
            "allowedModules": null,
            "skipAutomaticTypeAndHeaderDetection": false,
            "disableAutoAnonymousConnectionUpsert": null,
            "hostProperties": {
                    "DataflowRefreshOutputFileFormat": "Parquet",
                    "EnableDateTimeFieldsForStaging": "true",
                    "EnablePublishWithoutLoadedQueries": "true"
            },
            "defaultOutputDestinationConfiguration": null,
            "stagingDefinition": null
    }
}

Verwenden Sie Base64-Codieren und -Decodieren, um Ihren JSON zu codieren.

Achten Sie darauf, dass das Kästchen für eine URL-sichere Codierung nicht aktiviert ist.

Fügen Sie die Antwort Ihrer codierten Base64-Anforderungsnutzlast in die Nutzlastdefinition ein.

Beispielanforderung

URI: POST [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items)

Headers:

{
    "Authorization": "\<bearer-token>",
    "Content-Type": "application/json"
}

Payload:

{
    "displayName": " My dataflow",
    "description": "My dataflow description",

    "type": "Dataflow",
    "definition": {
        "parts": [
            {
                "path": "dataflow-content.json",
                "payload": "ewogICAgImVkaXRpbmdTZXNzaW9uTWFzaHVwIjogewogICAgICAgICJtYXNodXBOYW1lIjogIiIsCiAgICAgICAgIm1hc2h1cERvY3VtZW50IjogInNlY3Rpb24gU2VjdGlvbjE7XHJcbnNoYXJlZCBRdWVyeSA9IGxldFxuIFNvdXJjZSA9IFRhYmxlLkZyb21Sb3dzKFxuIHtcbiB7MSwgXCJCb2JcIiwgXCIxMjMtNDU2N1wifSxcbiB7MiwgXCJKaW1cIiwgXCI5ODctNjU0M1wifVxuIH0sXG4ge1wiQ3VzdG9tZXJJRFwiLCBcIk5hbWVcIiwgXCJQaG9uZVwifSlcbmluXG4gU291cmNlO1xyXG4iLAogICAgICAgICJxdWVyeUdyb3VwcyI6IFtdLAogICAgICAgICJkb2N1bWVudExvY2FsZSI6ICJlbi1VUyIsCiAgICAgICAgImdhdGV3YXlPYmplY3RJZCI6IG51bGwsCiAgICAgICAgInF1ZXJpZXNNZXRhZGF0YSI6IG51bGwsCiAgICAgICAgImNvbm5lY3Rpb25PdmVycmlkZXMiOiBbXSwKICAgICAgICAidHJ1c3RlZENvbm5lY3Rpb25zIjogbnVsbCwKICAgICAgICAidXNlSG9zdENvbm5lY3Rpb25Qcm92aWRlciI6IGZhbHNlLAogICAgICAgICJmYXN0Q29tYmluZSI6IGZhbHNlLAogICAgICAgICJhbGxvd05hdGl2ZVF1ZXJpZXMiOiB0cnVlLAogICAgICAgICJhbGxvd2VkTW9kdWxlcyI6IG51bGwsCiAgICAgICAgInNraXBBdXRvbWF0aWNUeXBlQW5kSGVhZGVyRGV0ZWN0aW9uIjogZmFsc2UsCiAgICAgICAgImRpc2FibGVBdXRvQW5vbnltb3VzQ29ubmVjdGlvblVwc2VydCI6IG51bGwsCiAgICAgICAgImhvc3RQcm9wZXJ0aWVzIjogewogICAgICAgICAgICAiRGF0YWZsb3dSZWZyZXNoT3V0cHV0RmlsZUZvcm1hdCI6ICJQYXJxdWV0IiwKICAgICAgICAgICAgIkVuYWJsZURhdGVUaW1lRmllbGRzRm9yU3RhZ2luZyI6ICJ0cnVlIiwKICAgICAgICAgICAgIkVuYWJsZVB1Ymxpc2hXaXRob3V0TG9hZGVkUXVlcmllcyI6ICJ0cnVlIgogICAgICAgIH0sCiAgICAgICAgImRlZmF1bHRPdXRwdXREZXN0aW5hdGlvbkNvbmZpZ3VyYXRpb24iOiBudWxsLAogICAgICAgICJzdGFnaW5nRGVmaW5pdGlvbiI6IG51bGwKICAgIH0KfQ==",
                "payloadType": "InlineBase64"
            }
        ]
    }
}

Beispiel für eine Antwort

{
    "id": "\<itemId>",
    "type": "Dataflow",
    "displayName": "My dataflow",
    "description": "My dataflow description",
    "workspaceId": "\<workspaceId>"
}

Datenfluss abrufen

Gibt die Eigenschaften eines angegebenen Datenflusses zurück. Senden Sie eine GET-Anfrage mit den Pfadparametern workspaceId und itemId.

Beispielanforderung

URI: GET [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items/%7bitemId%7d)

Headers:

{
    "Authorization": "\<bearer-token>"
}

Beispiel für eine Antwort

{
    "id": "\<itemId>",
    "type": "Dataflow",
    "displayName": "My dataflow",
    "description": "My dataflow description",
    "workspaceId": "\<workspaceId>"
}

Datenfluss mit Definition abrufen

Gibt die Datenflusselementdefinition zurück. Senden Sie eine POST-Anforderung an den getDefinition Endpunkt. Die Antwort enthält base64-codierte Teile, einschließlich der Mashup-Dokument- und Plattformmetadaten.

Beispielanforderung

URI: POST [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/getDefinition](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items/%7bitemId%7d/getDefinition)

Headers:

{
    "Authorization": "\<bearer-token>"
}

Beispiel für eine Antwort

{

    "definition": {

        "parts": [

            {

                "path": "dataflow-content.json",

                "payload": " ewogICAgImVkaXRpbmdTZXNzaW9uTWFzaHVwIjogewogICAgICAgICJtYXNodXBOYW1lIjogIiIsCiAgICAgICAgIm1hc2h1cERvY3VtZW50IjogInNlY3Rpb24gU2VjdGlvbjE7XHJcbnNoYXJlZCBRdWVyeSA9IGxldFxuIFNvdXJjZSA9IFRhYmxlLkZyb21Sb3dzKFxuIHtcbiB7MSwgXCJCb2JcIiwgXCIxMjMtNDU2N1wifSxcbiB7MiwgXCJKaW1cIiwgXCI5ODctNjU0M1wifVxuIH0sXG4ge1wiQ3VzdG9tZXJJRFwiLCBcIk5hbWVcIiwgXCJQaG9uZVwifSlcbmluXG4gU291cmNlO1xyXG4iLAogICAgICAgICJxdWVyeUdyb3VwcyI6IFtdLAogICAgICAgICJkb2N1bWVudExvY2FsZSI6ICJlbi1VUyIsCiAgICAgICAgImdhdGV3YXlPYmplY3RJZCI6IG51bGwsCiAgICAgICAgInF1ZXJpZXNNZXRhZGF0YSI6IG51bGwsCiAgICAgICAgImNvbm5lY3Rpb25PdmVycmlkZXMiOiBbXSwKICAgICAgICAidHJ1c3RlZENvbm5lY3Rpb25zIjogbnVsbCwKICAgICAgICAidXNlSG9zdENvbm5lY3Rpb25Qcm92aWRlciI6IGZhbHNlLAogICAgICAgICJmYXN0Q29tYmluZSI6IGZhbHNlLAogICAgICAgICJhbGxvd05hdGl2ZVF1ZXJpZXMiOiB0cnVlLAogICAgICAgICJhbGxvd2VkTW9kdWxlcyI6IG51bGwsCiAgICAgICAgInNraXBBdXRvbWF0aWNUeXBlQW5kSGVhZGVyRGV0ZWN0aW9uIjogZmFsc2UsCiAgICAgICAgImRpc2FibGVBdXRvQW5vbnltb3VzQ29ubmVjdGlvblVwc2VydCI6IG51bGwsCiAgICAgICAgImhvc3RQcm9wZXJ0aWVzIjogewogICAgICAgICAgICAiRGF0YWZsb3dSZWZyZXNoT3V0cHV0RmlsZUZvcm1hdCI6ICJQYXJxdWV0IiwKICAgICAgICAgICAgIkVuYWJsZURhdGVUaW1lRmllbGRzRm9yU3RhZ2luZyI6ICJ0cnVlIiwKICAgICAgICAgICAgIkVuYWJsZVB1Ymxpc2hXaXRob3V0TG9hZGVkUXVlcmllcyI6ICJ0cnVlIgogICAgICAgIH0sCiAgICAgICAgImRlZmF1bHRPdXRwdXREZXN0aW5hdGlvbkNvbmZpZ3VyYXRpb24iOiBudWxsLAogICAgICAgICJzdGFnaW5nRGVmaW5pdGlvbiI6IG51bGwKICAgIH0KfQ=="

                "payloadType": "InlineBase64"

            },

            {

                "path": ".platform",

                "payload": "ewogICIkc2NoZW1hIjogImh0dHBzOi8vZGV2ZWxvcGVyLm1pY3Jvc29mdC5jb20vanNvbi1zY2hlbWFzL2ZhYnJpYy9naXRJbnRlZ3JhdGlvbi9wbGF0Zm9ybVByb3BlcnRpZXMvMi4wLjAvc2NoZW1hLmpzb24iLAogICJtZXRhZGF0YSI6IHsKICAgICJ0eXBlIjogIkRhdGFmbG93IiwKICAgICJkaXNwbGF5TmFtZSI6ICJEYXRhZmxvdyAzIgogIH0sCiAgImNvbmZpZyI6IHsKICAgICJ2ZXJzaW9uIjogIjIuMCIsCiAgICAibG9naWNhbElkIjogIjAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMCIKICB9Cn0=",

                "payloadType": "InlineBase64"

            }

        ]

    }

}

Beispielantwort (vereinfachtes Format)

{
    'definition':
    {
        'parts': [
            {
                'path': 'queryMetadata.json', 'payload': '<super long entry>', 'payloadType': 'InlineBase64'
            },
            {
                'path': 'mashup.pq', 'payload': '<super long entry>', 'payloadType': 'InlineBase64'
            },
            {
                'path': '.platform', 'payload': '<super long entry>', 'payloadType': 'InlineBase64'
            }
        ]
    }
}

Aktualisieren des Datenflusses

Aktualisiert die Eigenschaften eines angegebenen Datenflusses. Senden Sie eine PATCH-Anfrage mit den Pfadparametern workspaceId und itemId. Fügen Sie den aktualisierten displayName oder description im Anforderungstext ein.

Beispielanforderung

URI: PATCH [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items/%7bitemId%7d)

Headers:

{
  "Authorization": "\<bearer-token>",
  "Content-Type": "application/json"
}

Payload:
{
  "displayName": "My dataflow updated",
  "description": "My dataflow description updated",
  "type": "Dataflow"
}

Beispiel für eine Antwort

{
    "id": "\<itemId>",
    "type": "Dataflow",
    "displayName": "My dataflow updated",
    "description": "My dataflow description updated",
    "workspaceId": "\<workspaceId>"
}

Aktualisieren des Datenflusses mit Definition

Aktualisiert die Datenflusselementdefinition. Senden Sie eine POST-Anforderung an den updateDefinition Endpunkt mit Base64-codierten Definitionsteilen im Anforderungstext.

Beispielanforderung

URI: POST [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/updateDefinition](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items/%7bitemId%7d/updateDefinition)

Headers:

{
  "Authorization": "\<bearer-token>",
  "Content-Type": "application/json"
}

Payload:

{
  "displayName": " My dataflow",
  "type": "Dataflow",
  "definition": {
    "parts": [
      {
        "path": "dataflow-content.json",
        "payload": " ewogICAgImVkaXRpbmdTZXNzaW9uTWFzaHVwIjogewogICAgICAgICJtYXNodXBOYW1lIjogIiIsCiAgICAgICAgIm1hc2h1cERvY3VtZW50IjogInNlY3Rpb24gU2VjdGlvbjE7XHJcbnNoYXJlZCBRdWVyeSA9IGxldFxuIFNvdXJjZSA9IFRhYmxlLkZyb21Sb3dzKFxuIHtcbiB7MSwgXCJCb2JcIiwgXCIxMjMtNDU2N1wifSxcbiB7MiwgXCJKaW1cIiwgXCI5ODctNjU0M1wifVxuIH0sXG4ge1wiQ3VzdG9tZXJJRFwiLCBcIk5hbWVcIiwgXCJQaG9uZVwifSlcbmluXG4gU291cmNlO1xyXG4iLAogICAgICAgICJxdWVyeUdyb3VwcyI6IFtdLAogICAgICAgICJkb2N1bWVudExvY2FsZSI6ICJlbi1VUyIsCiAgICAgICAgImdhdGV3YXlPYmplY3RJZCI6IG51bGwsCiAgICAgICAgInF1ZXJpZXNNZXRhZGF0YSI6IG51bGwsCiAgICAgICAgImNvbm5lY3Rpb25PdmVycmlkZXMiOiBbXSwKICAgICAgICAidHJ1c3RlZENvbm5lY3Rpb25zIjogbnVsbCwKICAgICAgICAidXNlSG9zdENvbm5lY3Rpb25Qcm92aWRlciI6IGZhbHNlLAogICAgICAgICJmYXN0Q29tYmluZSI6IGZhbHNlLAogICAgICAgICJhbGxvd05hdGl2ZVF1ZXJpZXMiOiB0cnVlLAogICAgICAgICJhbGxvd2VkTW9kdWxlcyI6IG51bGwsCiAgICAgICAgInNraXBBdXRvbWF0aWNUeXBlQW5kSGVhZGVyRGV0ZWN0aW9uIjogZmFsc2UsCiAgICAgICAgImRpc2FibGVBdXRvQW5vbnltb3VzQ29ubmVjdGlvblVwc2VydCI6IG51bGwsCiAgICAgICAgImhvc3RQcm9wZXJ0aWVzIjogewogICAgICAgICAgICAiRGF0YWZsb3dSZWZyZXNoT3V0cHV0RmlsZUZvcm1hdCI6ICJQYXJxdWV0IiwKICAgICAgICAgICAgIkVuYWJsZURhdGVUaW1lRmllbGRzRm9yU3RhZ2luZyI6ICJ0cnVlIiwKICAgICAgICAgICAgIkVuYWJsZVB1Ymxpc2hXaXRob3V0TG9hZGVkUXVlcmllcyI6ICJ0cnVlIgogICAgICAgIH0sCiAgICAgICAgImRlZmF1bHRPdXRwdXREZXN0aW5hdGlvbkNvbmZpZ3VyYXRpb24iOiBudWxsLAogICAgICAgICJzdGFnaW5nRGVmaW5pdGlvbiI6IG51bGwKICAgIH0KfQ==",
        "payloadType": "InlineBase64"
      }
    ]
  }
}

Beispiel für eine Antwort

200 OK

Datenfluss löschen

Löscht den angegebenen Datenfluss. Senden Sie eine DELETE-Anforderung mit den workspaceId Parametern und itemId Pfadparametern. Gibt bei Erfolg 200 OK zurück.

Beispielanforderung

URI: DELETE [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items/%7bitemId%7d)

Headers:

{
  "Authorization": "\<bearer-token>"
}

Beispiel für eine Antwort

200 OK

On-Demand-Datenflussauftrag ausführen (Aktualisieren)

Löst eine On-Demand-Aktualisierung für den angegebenen Datenfluss aus. Senden Sie eine POST-Anfrage mit jobType=Refresh als Abfrageparameter. Fügen Sie DataflowName, OwnerUserPrincipalName und OwnerUserObjectId in die Nutzlast von executionData ein. Gibt 202 Accepted mit einem jobInstanceId zur Nachverfolgung zurück.

Beispielanforderung

URI: POST [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances?jobType=Refresh](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items/%7bitemId%7d/jobs/instances?jobType=Refresh)

Headers:

{
  "Authorization": "\<bearer-token>"
}

Payload:

{
    "executionData": {
        "DataflowName": "Dataflow",
        "OwnerUserPrincipalName": "\<name@email.com>",
        "OwnerUserObjectId": "\<ObjectId>"
    }
}

Beispiel für eine Antwort

202 Accepted
[
  {
    "id": "\<jobId>",
    "itemId": "\<dataflowItemId>",
    "jobType": "Refresh",
    "invokeType": "OnDemand",
    "status": "Accepted",
    "jobInstanceId": "\<uniqueJobInstanceId>",
    "rootActivityId": "\<rootActivityId>",
    "startTimeUtc": "2025-01-30T11:10:50Z",
    "endTimeUtc": null,
    "failureReason": null
  }
]

On-Demand-Datenflussveröffentlichungsauftrag ausführen

Löst eine On-Demand-Veröffentlichung für den angegebenen Datenfluss aus. Senden Sie eine POST-Anfrage mit jobType=Publish als Abfrageparameter. Gibt 202 Accepted mit einem jobInstanceId zur Nachverfolgung zurück.

Beispielanforderung

URI: POST [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances?jobType=Publish](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items/%7bitemId%7d/jobs/instances?jobType=Publish)

Headers:

{
  "Authorization": "\<bearer-token>"
}

Payload:

{
    "executionData": {
        "DataflowName": "Dataflow",
        "OwnerUserPrincipalName": "\<name@email.com>",
        "OwnerUserObjectId": "\<ObjectId>"
    }
}

Beispiel für eine Antwort

202 Accepted

[
  {
    "id": "\<jobId>",
    "itemId": "\<dataflowItemId>",
    "jobType": "Publish",
    "invokeType": "OnDemand",
    "status": "Accepted",
    "jobInstanceId": "\<uniqueJobInstanceId>",
    "rootActivityId": "\<rootActivityId>",
    "startTimeUtc": "2025-01-30T11:10:50Z",
    "endTimeUtc": null,
    "failureReason": null
  }
]

Datenfluss-Jobinstanz abrufen

Ruft den Status einer bestimmten Jobinstanz ab. Senden Sie eine GET-Anfrage mit den Pfadparametern workspaceId, itemId und jobInstanceId. Gibt den Auftragsstatus, die Startzeit und den Fehlergrund (falls zutreffend) zurück.

Beispielanforderung

URI: GET [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances/{jobInstanceId}](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items/%7bitemId%7d/jobs/instances/%7bjobInstanceId%7d)

Headers:

{
  "Authorization": "\<bearer-token>"
}

Beispiel für eine Antwort

{
  "id": "\<id>",
  "itemId": "<itemId?",
  "jobType": "Refresh",
  "invokeType": "Manual",
  "status": "Completed",
  "rootActivityId": "\<rootActivityId>",
  "startTimeUtc": "2023-08-22T06:35:00.7812154",
  "endTimeUtc": "2023-08-22T06:35:00.8033333",
  "failureReason": null
}

Dataflow-Auftragsinstanz abbrechen

Bricht eine laufende Jobinstanz ab. Senden Sie eine POST-Anfrage an den Endpunkt cancel mit den Pfadparametern workspaceId, itemId und jobInstanceId. Gibt 202 Accepted zurück, wenn das Abbrechen eingeleitet wird.

Beispielanforderung

URI: POST [https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances/{jobInstanceId}/cancel](https://api.fabric.microsoft.com/v1/workspaces/%7bworkspaceId%7d/items/%7bitemId%7d/jobs/instances/%7bjobInstanceId%7d/cancel)

Headers:

{
  "Authorization": "\<bearer-token>"
}

Beispiel für eine Antwort

Location: https://api.fabric.microsoft.com/v1/workspaces/\<worksapceId>/items/\<itemId>/jobs/instances/\<jobInstanceId>

Retry-After: 60

Aktuelle Einschränkungen

  • Die Dienstprinzipalauthentifizierung wird nicht unterstützt.
  • "Element abrufen" und "Details zum Listenelementzugriff" geben nicht die richtigen Informationen zurück, wenn Sie nach dem Datentyp des Datenflusselements filtern.
  • Wenn Sie den Typ nicht angeben, gibt die API die Dataflow Gen2 (CI/CD, Vorschau) zurück – die neue Dataflow Gen2 mit CI/CD und Git-Unterstützung.
  • Sie können Run-APIs aufrufen, aber die tatsächliche Ausführung ist nie erfolgreich.