Κοινή χρήση μέσω


Δημόσιο API REST διοχέτευσης δεδομένων Microsoft Fabric (Προεπισκόπηση)

Σημαντικό

Το Microsoft Fabric API για το Data Factory είναι αυτήν τη στιγμή σε δημόσια προεπισκόπηση. Αυτές οι πληροφορίες σχετίζονται με ένα προϊόν πριν από την κυκλοφορία του, το οποίο μπορεί να τροποποιηθεί σημαντικά πριν από την κυκλοφορία του. Η Microsoft δεν παρέχει εγγυήσεις, εκφρασμένες ή σιωπηρές, σε σχέση με τις πληροφορίες που παρέχονται εδώ.

Στο Microsoft Fabric, τα API data Factory αποτελούνται αποκλειστικά από λειτουργίες CRUD για διοχετεύσεις και ροές δεδομένων. Προς το παρόν, υποστηρίζονται μόνο διοχετεύσεις δεδομένων. Τα API ροών δεδομένων δεν είναι ακόμα διαθέσιμα. Άλλες συνήθεις περιοχές για έργα ενοποίησης δεδομένων είναι σε ξεχωριστά API: χρονοδιαγράμματα, παρακολούθηση, συνδέσεις, έχουν τα δικά τους API στο Fabric. Μπορείτε να βρείτε την κύρια ηλεκτρονική τεκμηρίωση αναφοράς για τα API REST του Microsoft Fabric στις αναφορές του Microsoft Fabric REST API. Ανατρέξτε επίσης στο API βασικών στοιχείων και στο χρονοδιάγραμμα εργασίας.

Ορισμός στοιχείου με κωδικοποιημένη βάση ωφέλιμου φορτίου64

  • Χρησιμοποιήστε το Base64 Encode και το Decode για να κωδικοποιήσετε το JSON.
  • Βεβαιωθείτε ότι δεν είναι επιλεγμένο το πλαίσιο Εκτέλεση ασφαλούς κωδικοποίησης διεύθυνσης URL.
  • Μπορείτε να λάβετε τους ορισμούς διοχέτευσης μέσω της καρτέλας Προβολή -->Προβολή κώδικα JSON στο περιβάλλον εργασίας χρήστη Fabric.
{ 
    "name": "Pipeline_1_updated", 
    "objectId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", 
    "properties": { 
        "description": "this is the description", 
        "activities": [ 
            { 
                "name": "Wait1", 
                "type": "Wait", 
                "dependsOn": [], 
                "typeProperties": { 
                    "waitTimeInSeconds": 240 
                } 
            } 
        ], 
        "annotations": [], 
        "lastModifiedByObjectId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", 
        "lastPublishTime": "2024-02-01T17:28:02Z" 
    } 
}

Λάβετε το αντικείμενο ιδιοτήτων και περικλεώστε το σε άγκιστρα - { } - ώστε το ωφέλιμο φορτίο ορισμού στοιχείου REST να είναι:

{
    "properties": { 
        "description": "this is the description", 
        "activities": [ 
            { 
                "name": "Wait1", 
                "type": "Wait", 
                "dependsOn": [], 
                "typeProperties": { 
                    "waitTimeInSeconds": 240 
                } 
            } 
        ], 
        "annotations": [], 
        "lastModifiedByObjectId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", 
        "lastPublishTime": "2024-02-01T17:28:02Z" 
    } 
} 

Δημιουργία στοιχείου

REST API - Στοιχεία - Δημιουργία στοιχείου

Παράδειγμα - CreateDataPipeline:

POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items

Σώμα:

{ 
  "displayName": "pipeline_1", 
  "type": "DataPipeline" 
} 

Σημείωμα

Η τεκμηρίωση αναφέρει ότι υπάρχουν μόνο 2 απαιτούμενες ιδιότητες - displayName και τύπος. Προς το παρόν, η Workload-DI δεν υποστηρίζει τη δημιουργία χωρίς έναν ορισμό επίσης. Η επιδιόρθωση για αυτήν την εσφαλμένη απαίτηση αναπτύσσεται αυτήν τη στιγμή. Προς το παρόν, μπορείτε να στείλετε τον ίδιο προεπιλεγμένο ορισμό που χρησιμοποιείται από το περιβάλλον εργασίας χρήστη Fabric: ‘{"properties":{"activities":[]}}’

Τροποποιημένο JSON συμπεριλαμβανομένου του ορισμού:

{ 
  "displayName": "pipeline_1", 
  "type": "DataPipeline", 
  "definition": { 
    "parts": [ 
      { 
        "path": "pipeline-content.json", 
        "payload": "eyJwcm9wZXJ0aWVzIjp7ImFjdGl2aXRpZXMiOltdfX0=", 
        "payloadType": "InlineBase64" 
      } 
    ] 
  } 
} 

Απάντηση 201:

{ 
    "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", 
    "type": "DataPipeline", 
    "displayName": "Pipeline_1", 
    "description": "", 
    "workspaceId": "<Your WS Id>" 
} 

Διαγραφή στοιχείου

REST API - Στοιχεία - Διαγραφή στοιχείου

Παράδειγμα:

DELETE https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>

Απάντηση 200: (Χωρίς σώμα)

Λήψη στοιχείου

REST API - Στοιχεία - Λήψη στοιχείου

Παράδειγμα:

GET https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>

Απάντηση 200:

{ 
    "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", 
    "type": "DataPipeline", 
    "displayName": "Pipeline_1", 
    "workspaceId": "<your WS Id>" 
} 

Λήψη ορισμού στοιχείου

REST API - Στοιχεία - Λήψη ορισμού στοιχείου

Παράδειγμα:

POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/getDefinition

Απάντηση 200:

{ 
    "definition": { 
        "parts":[ 
            { 
                "path": "pipeline-content.json", 
                "payload": "ewogICJwcm9wZXJ0aWVzIjogewogICAgImFjdGl2aXRpZXMiOiBbXQogIH0KfQ==", 
                "payloadType": "InlineBase64" 
            } 
        ] 
    } 
} 

Στοιχεία λίστας

REST API - Στοιχεία - Στοιχεία λίστας

Παράδειγμα:

GET https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items

Απάντηση 200:

{ 
    "value": [ 
        { 
            "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", 
            "type": "SemanticModel", 
            "displayName": "deata_lh", 
            "description": "", 
            "workspaceId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" 
        }, 
        { 
            "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", 
            "type": "SQLEndpoint", 
            "displayName": "deata_lh", 
            "description": "", 
            "workspaceId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" 
        }, 
        { 
            "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", 
            "type": "Lakehouse", 
            "displayName": "deata_lh", 
            "description": "", 
            "workspaceId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" 
        }, 
        { 
            "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", 
            "type": "DataPipeline", 
            "displayName": "Pipeline_1", 
            "description": "", 
            "workspaceId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" 
        } 
    ] 
} 

Ενημέρωση στοιχείου

REST API - Στοιχεία - Ενημέρωση στοιχείου

Παράδειγμα:

PATCH https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>

Σώμα:

{ 
  "displayName": "Pipeline_1_updated", 
  "description": "This is the description." 
}

Απάντηση 200:

{ 
    "id": "<pipeline id>", 
    "type": "DataPipeline", 
    "displayName": "Pipeline_1_updated", 
    "description": "This is the description.", 
    "workspaceId": "<Your WS id>" 
}

Ενημέρωση ορισμού στοιχείου

REST API - Στοιχεία - Ενημέρωση ορισμού στοιχείου

Παράδειγμα:

POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/updateDefinition

Σώμα:

{ 
  "definition": { 
    "parts": [ 
      { 
        "path": "pipeline-content.json", 
        "payload": "eyJwcm9wZXJ0aWVzIjp7ImFjdGl2aXRpZXMiOltdfX0=", 
        "payloadType": "InlineBase64" 
      } 
    ] 
  } 
}

Απάντηση 200: (Χωρίς σώμα)

Εκτέλεση εργασίας στοιχείου κατ' απαίτηση

REST API - Στοιχεία - Εκτέλεση εργασίας στοιχείου κατ' απαίτηση

Παράδειγμα:

POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/jobs/instances?jobType=Pipeline

Απάντηση 202: (Χωρίς σώμα)

Παράδειγμα με δύο τιμές παραμέτρων:

Εδώ έχουμε μια δραστηριότητα Αναμονή με μια παράμετρο που ονομάζεται param_waitsec για να καθορίσουμε τον αριθμό των δευτερολέπτων αναμονής.

POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/jobs/instances?jobType=Pipeline

Σώμα:

{ 
  "executionData": { 
    "parameters": {
      "param_waitsec": "10" 
    } 
  } 
}

Απάντηση 202: (Χωρίς σώμα)

Σημείωμα

Δεν επιστρέφεται κανένα σώμα προς το παρόν, αλλά το αναγνωριστικό εργασίας πρέπει να επιστραφεί. Κατά τη διάρκεια της προεπισκόπησης, μπορεί να βρεθεί στις κεφαλίδες που επιστρέφονται, στην ιδιότητα Location.

Λήψη παρουσίας εργασίας στοιχείου

REST API - Στοιχεία - Λήψη παρουσίας εργασίας στοιχείου

Παράδειγμα:

GET https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/jobs/instances/<job ID>

Απάντηση 200:

{ 
    "id": "4511ffcd-a9f6-4f75-91a9-9ceab08d7539", 
    "itemId": "2bb9fe4a-0a84-4725-a01f-7ac4e6850259", 
    "jobType": "Pipeline", 
    "invokeType": "Manual", 
    "status": "Completed", 
    "failureReason": null, 
    "rootActivityId": "f14bdd95-2cff-4451-b839-bea81509126d", 
    "startTimeUtc": "2024-02-01T03:03:19.8361605", 
    "endTimeUtc": "2024-02-01T03:05:00.3433333" 
} 

Ακύρωση παρουσίας εργασίας στοιχείου

REST API - Στοιχεία - Ακύρωση παρουσίας εργασίας στοιχείου

Παράδειγμα:

POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/jobs/instances/<job ID>/cancel

Απάντηση 202: (Χωρίς σώμα)

Σημείωμα

Μετά την ακύρωση μιας εργασίας, μπορείτε να ελέγξετε την κατάσταση είτε καλώντας παρουσίας εργασίας στοιχείου είτε εξετάζοντας το Προβολή ιστορικού εκτέλεσης στο περιβάλλον εργασίας χρήστη Fabric.

Εκτελέσεις δραστηριότητας ερωτημάτων

Παράδειγμα:

POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/datapipelines/pipelineruns/<Job ID>/queryactivityruns

Σώμα:

{
  "filters":[],
  "orderBy":[{"orderBy":"ActivityRunStart","order":"DESC"}],
  "lastUpdatedAfter":"2024-05-22T14:02:04.1423888Z",
  "lastUpdatedBefore":"2024-05-24T13:21:27.738Z"
}

Σημείωμα

Το "αναγνωριστικό εργασίας" είναι το ίδιο αναγνωριστικό που δημιουργήθηκε και χρησιμοποιείται στα δημόσια API προγραμματισμού εργασίας

Απάντηση 200:

[
    {
        "pipelineName": "ca91f97e-5bdd-4fe1-b39a-1f134f26a701",
        "pipelineRunId": "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
        "activityName": "Wait1",
        "activityType": "Wait",
        "activityRunId": "cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a",
        "linkedServiceName": "",
        "status": "Succeeded",
        "activityRunStart": "2024-05-23T13:43:03.6397566Z",
        "activityRunEnd": "2024-05-23T13:43:31.3906179Z",
        "durationInMs": 27750,
        "input": {
            "waitTimeInSeconds": 27
        },
        "output": {},
        "error": {
            "errorCode": "",
            "message": "",
            "failureType": "",
            "target": "Wait1",
            "details": ""
        },
        "retryAttempt": null,
        "iterationHash": "",
        "userProperties": {},
        "recoveryStatus": "None",
        "integrationRuntimeNames": null,
        "executionDetails": null,
        "id": "/SUBSCRIPTIONS/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/RESOURCEGROUPS/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/PROVIDERS/MICROSOFT.TRIDENT/WORKSPACES/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/pipelineruns/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/activityruns/cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a"
    }
]

Γνωστοί περιορισμοί

  • Ο κύριος έλεγχος ταυτότητας υπηρεσίας (SPN) δεν υποστηρίζεται προς το παρόν.