Del via


REST API-funktioner til pipelines i Fabric Data Factory

Fabric Data Factory tilbyder et effektivt sæt API'er, der gør det nemt at automatisere og administrere dine pipelines. Du kan oprette forbindelse til forskellige datakilder og tjenester og bygge, opdatere eller overvåge dine arbejdsprocesser med blot nogle få kodelinjer. API'erne dækker alt lige fra oprettelse og redigering af pipelines til planlægning og sporing af dem – så du kan holde dine data flydende uden besvær.

API-use cases til pipelines

API'erne til pipelines i Fabric Data Factory kan bruges i forskellige scenarier:

  • Automatiseret udrulning: Automatiser udrulningen af pipelines på tværs af forskellige miljøer (udvikling, test, produktion) ved hjælp af CI/CD-praksisser.
  • Overvågning og advarsler: Konfigurer automatiserede overvågnings- og advarselssystemer til at spore status for pipelines og modtage meddelelser, hvis der opstår fejl eller problemer med ydeevnen.
  • Dataintegration: Integrer data fra flere kilder, f.eks. databaser, datasøer og cloudtjenester, i en samlet pipeline til behandling og analyse.
  • Fejlhåndtering: Implementer brugerdefinerede fejlhåndterings- og genforsøgsmekanismer for at sikre, at pipelines kører problemfrit og genoprettes efter fejl.

Forståelse af API'er

Hvis du vil bruge API'erne effektivt til pipelines i Fabric Data Factory, er det vigtigt at forstå de vigtigste begreber og komponenter:

  • Slutpunkter: API-slutpunkterne giver adgang til forskellige pipelinehandlinger, f.eks. oprettelse, opdatering og sletning af pipelines.
  • Godkendelse: Sikker adgang til API'erne ved hjælp af godkendelsesmekanismer som OAuth eller API-nøgler.
  • Anmodninger og svar: Forstå strukturen af API-anmodninger og -svar, herunder de påkrævede parametre og det forventede output.
  • Hastighedsgrænser: Vær opmærksom på de hastighedsgrænser, der pålægges API-brug for at undgå at overskride det tilladte antal anmodninger.

CRUD-understøttelse

CRUD står for Create, Read, Update og Delete, som er de fire grundlæggende handlinger, der kan udføres på data. I Fabric Data Factory understøttes CRUD-handlingerne via Fabric API for Data Factory. Disse API'er giver brugerne mulighed for at administrere deres pipelines programmatisk. Her er nogle vigtige punkter om CRUD-support:

  • Opret: Opret nye pipelines ved hjælp af API'en. Dette omfatter definition af pipelinestrukturen, angivelse af datakilder, transformationer og destinationer.
  • Læs: Hent oplysninger om eksisterende pipelines. Dette omfatter oplysninger om deres konfiguration, status og udførelseshistorik.
  • Opdater: Opdater eksisterende pipelines. Dette kan omfatte ændring af pipelinestrukturen, ændring af datakilder eller opdatering af transformationslogik.
  • Slet: Slet pipelines, der ikke længere er nødvendige. Dette hjælper med at administrere og rydde op i ressourcer.

Den primære onlinereferencedokumentation til Microsoft Fabric REST API'er findes i dokumentationen til Microsoft Fabric REST API.

Kom i gang med REST API'er til pipelines

I følgende eksempler kan du se, hvordan du opretter, opdaterer og administrerer pipelines ved hjælp af Fabric Data Factory-API'erne.

Hent et godkendelsestoken

Før du bruger de andre REST API'er, skal du have ihændehavertokenet.

Important

I følgende eksempler skal du sikre, at ordet 'Ihændehaver' (med et mellemrum) foran selve adgangstokenet. Når du bruger en API-klient og vælger 'Ihændehavertoken' som godkendelsestype, indsættes 'Ihændehaver' automatisk for dig og kræver kun, at adgangstokenet angives.

Mulighed 1: Brug af MSAL.Net

Se afsnittet Hent token i Hurtig start af Fabric API som et eksempel på, hvordan du får MSAL-godkendelsestokenet.

Brug MSAL.Net til at hente et Microsoft Entra ID-token til Fabric-tjenesten med følgende områder: Workspace.ReadWrite.All, Item.ReadWrite.All. Du kan få flere oplysninger om tokenanskaffelse med MSAL.Net til i Token Acquisition – Microsoft Authentication Library for .NET.

Kopiér tokenet fra egenskaben AccessToken, og erstat pladsholderen< for adgangstoken> i følgende eksempler med tokenet.

Mulighed 2: Brug af Fabric-portalen

Log på Fabric-portalen for den lejer, du vil teste, og tryk på F12 for at gå til browserens udviklertilstand. Kør følgende i konsollen:

powerBIAccessToken

Kopiér tokenet, og erstat pladsholderen< for adgangstokenet> i følgende eksempler med tokenet.

Oprette en pipeline

Opret en pipeline i et angivet arbejdsområde.

Eksempel på anmodning:

URI:POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items

Headers:

{
  "Authorization": "Bearer <access-token>",
  "Content-Type": "application/json"
}

Payload:

{
  "displayName": "My pipeline",
  "description": "My pipeline description",
  "type": "DataPipeline"
}

Eksempel på svar:

{
    "id": "<itemId>",
    "type": "pipeline",
    "displayName": "My pipeline",
    "description": "My pipeline description",
    "workspaceId": "<workspaceId>"
}

Opret en pipeline med definition

Opret en pipeline med en base64-definition i et angivet arbejdsområde.

Eksempel på anmodning:

URI:POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items

Headers:

{
  "Authorization": "Bearer <access-token>",
  "Content-Type": "application/json"
}

Payload:

{
  "displayName": " My pipeline",
  "description": "My pipeline description",

  "type": "DataPipeline",
  "definition": { 
    "parts": [ 
      { 
        "path": "pipeline-content.json", 
        "payload": "<Your Base64 encoded JSON payload>"
        "payloadType": "InlineBase64" 
      } 
    ] 
  }
}

Eksempel på svar:

{
    "id": "<Your itemId>",
    "type": "pipeline",
    "displayName": "My pipeline",
    "description": "My pipeline description",
    "workspaceId": "<Your workspaceId>"
}

Hent pipeline

Returnerer egenskaber for den angivne pipeline.

Eksempel på anmodning:

URI:GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}

Headers:

{
  "Authorization": "Bearer <access-token>"
}

Eksempel på svar:

{
    "id": "<Your itemId>",
    "type": "pipeline",
    "displayName": "My pipeline",
    "description": "My pipeline description",
    "workspaceId": "<Your workspaceId>"
}

Hent pipeline med definition

Returnerer definitionen af pipelineelementet.

Eksempel på anmodning:

URI:POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/getDefinition

Headers:

{
  "Authorization": "Bearer <access-token>"
}

Eksempel på svar:

{
    "definition": {
        "parts": [
            {
                "path": "pipeline-content.json",
                "payload": "<Base64 encoded payload>"
                "payloadType": "InlineBase64"
            },
            {
                "path": ".platform",
                "payload": "<Base64 encoded payload>",
                "payloadType": "InlineBase64"
            }
        ]
    }
}

Opdater pipeline

Opdaterer egenskaberne for pipelinen.

Eksempel på anmodning:

URI:PATCH https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}

Headers:

{
  "Authorization": "Bearer <access-token>",
  "Content-Type": "application/json"
}

Payload:

{
  "displayName": "My pipeline updated",
  "description": "My pipeline description updated",
  "type": "DataPipeline"
}

Eksempel på svar:

{
    "id": "<Your itemId>",
    "type": "pipeline",
    "displayName": "My pipeline updated",
    "description": "My pipeline description updated",
    "workspaceId": "<Your workspaceId>"
}

Opdater pipeline med definition

Opdaterer definitionen af pipelineelementet.

Eksempel på anmodning:

URI:POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/updateDefinition

Headers:

{
  "Authorization": "Bearer <access-token>",
  "Content-Type": "application/json"
}

Payload:

{
  "displayName": " My pipeline ",
  "type": "DataPipeline",
  "definition": {
    "parts": [ 
      { 
        "path": "pipeline-content.json", 
        "payload": "<Your Base64 encoded payload>", 
        "payloadType": "InlineBase64" 
      }
    ]
  }
}

Eksempel på svar:

200 OK

Slet pipeline

Sletter den angivne pipeline.

Eksempel på anmodning:

URI:DELETE https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}

Headers:

{
  "Authorization": "Bearer <access-token>"
}

Eksempel på svar:

200 OK

Kør pipelinejob efter behov

Kører forekomst af pipelinejob efter behov.

Eksempel på anmodning:

URI:POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances?jobType=Pipeline

Headers:

{
  "Authorization": "Bearer <access-token>"
}

Payload:

{
    "executionData": {
        "pipelineName": "pipeline",
        "OwnerUserPrincipalName": "<user@domain.com>",
        "OwnerUserObjectId": "<Your ObjectId>"
    }
}

Eksempel på svar:

202 Accepted

Hent forekomst af pipelinejob

Henter jobforekomsten af entalspipeline.

Eksempel på anmodning:

URI:GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances/{jobInstanceId}

Headers:

{
  "Authorization": "Bearer <access-token>"
}

Eksempel på svar:

{
  "id": "<id>",
  "itemId": "<itemId>",
  "jobType": "Pipeline",
  "invokeType": "Manual",
  "status": "Completed",
  "rootActivityId": "<rootActivityId>",
  "startTimeUtc": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
  "endTimeUtc": "YYYY-MM-DDTHH:mm:ss.xxxxxxx",
  "failureReason": null
}

Planlæg en pipeline

Du kan også oprette tidsplaner programmatisk med API'en. Scheduler-API'en understøtter følgende handlinger:

  • Annuller forekomst af pipelinejob
  • Opret pipelineplan
  • Slet pipelineplan
  • Hent pipelineforekomst
  • Hent pipelineplan
  • Liste over pipelinejobforekomster
  • Vis pipelineplaner
  • Kør pipelinejob efter behov
  • Opdater pipelineplan

Du kan f.eks. konfigurere en pipeline, der kører hvert 10. minut mellem den 27. maj og den 31. maj 2025 i Central Standard Time, og som i øjeblikket er aktiveret:

POST https://api.fabric.microsoft.com/v1/workspaces/<workspaceId>/items/<pipelineId>/jobs/<jobType>/schedules 

{ 
  "enabled": true, 
  "configuration": { 
    "startDateTime": "2025-05-27T00:00:00", 
    "endDateTime": "2025-05-31T23:59:00", 
    "localTimeZoneId": " Central Standard Time", 
    "type": "Cron", 
    "interval": 10 
  } 
} 
Navn Om Påkrævet Type Description Eksempel
pipeline-id Sti True Streng(GUID) Pipeline-id'et AAAA0000-BB11-2222-33CC-444444DDDD
jobtype Sti True String Jobtypen DefaultJob
workspaceId Sti True String Arbejdsområde-id'et aaaaa-0000-1111-2222-bbbbbb

svar:

Statuskode: 201

{ 
  "id": " eeeeeeee-4444-5555-6666-ffffffffffff", 
  "enabled": true, 
  "createdDateTime": "2025-05-27T05:35:20.5366667", 
  "configuration": { 
    "startDateTime": "2025-05-27T00:00:00", 
    "endDateTime": "2025-05-31T23:59:00", 
    "localTimeZoneId": "Central Standard Time", 
    "type": "Cron", 
    "interval": 10 
  }, 
  "owner": { 
    "id": " aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e", 
    "type": "User" 
  } 
} 

Du kan finde flere oplysninger om de tilgængelige handlinger og deres brug i dokumentationen til Job Scheduler-API.

Annuller forekomst af pipelinejob

Annuller en pipelines jobforekomst.

Eksempel på anmodning:

URI:POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/jobs/instances/{jobInstanceId}/cancel

Headers:

{
  "Authorization": "Bearer <access-token>"
}

Eksempel på svar:

* Sted: https://api.fabric.microsoft.com/v1/workspaces/<worksapceId>/items/<itemId>/jobs/instances/<jobInstanceId>Prøv igen-efter: 60

Forespørgselsaktivitetskørsler

Example:

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

Body:

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

Note

"job-id" er det samme id, der blev oprettet og brugt i de offentlige API'er til Jobstyring

Svar 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-understøttelse (Service Principal Name)

SpN (Service Principal Name) er en sikkerhedsidentitetsfunktion, der bruges af programmer eller tjenester til at få adgang til bestemte ressourcer. I Fabric Data Factory er SPN-understøttelse afgørende for at sikre sikker og automatiseret adgang til datakilder. Her er nogle vigtige punkter om SPN-understøttelse:

  • Godkendelse: SPN'er bruges til at godkende programmer eller tjenester, når der åbnes datakilder. Dette sikrer, at kun godkendte enheder kan få adgang til dataene.
  • Konfiguration: Hvis du vil bruge SPN'er, skal du oprette en tjenesteprincipal i Azure og give den de nødvendige tilladelser til at få adgang til datakilden. Hvis du f.eks. bruger en datasø, skal tjenesteprincipalen have adgang til lagerblobdatalæsere.
  • Forbindelse: Når du konfigurerer en dataforbindelse i Fabric Data Factory, kan du vælge at godkende ved hjælp af en tjenesteprincipal. Dette omfatter angivelse af lejer-id, klient-id og klienthemmelighed for tjenesteprincipalen.
  • Sikkerhed: Brug af SPN'er forbedrer sikkerheden ved at undgå brug af hardcodede legitimationsoplysninger i dine dataflow. Det giver også mulighed for bedre administration af adgangstilladelser og overvågning af adgangsaktiviteter.

Du kan finde flere oplysninger om, hvordan du konfigurerer og bruger SPN'er i Fabric Data Factory, i SPN-understøttelse i Data Factory.

Aktuelle begrænsninger

  • Jobbegrænsning: Kørsels-API'er kan ikke udløses, men den faktiske kørsel lykkes aldrig (på samme måde som kørsel/opdatering fra brugergrænsefladen).
  • Ikke-Power BI Fabric Items: Arbejdsområdet skal være på en support Fabric-kapacitet.
  • Oprettelse af et element: Brug enten creationPayload eller definition, men brug ikke begge dele på samme tid.

Se følgende indhold for at få flere oplysninger om REST API'er til pipelines i Fabric Data Factory:

Documentation

Tutorials