Administrer og udfør notesbøger i Fabric med API'er
Microsoft Fabric REST API indeholder et tjenesteslutpunkt for oprettelse, læsning, opdatering og sletning (CRUD) af et Fabric-element. I denne artikel beskrives de tilgængelige REST API'er for notesbogen og deres brug.
Vigtigt
Denne funktion er en prøveversion.
Bemærk
Godkendelse af tjenesteprincipal er tilgængelig for CRUD-API til notesbog. Det understøttes ikke for kørsel af notesbog-API'en i øjeblikket.
Med notebook-API'erne kan datateknikere og dataspecialister automatisere deres egne pipelines og nemt og effektivt etablere CI/CD. Disse API'er gør det også nemt for brugerne at administrere og manipulere Fabric-notesbogelementer og integrere notesbøger med andre værktøjer og systemer.
Disse handlinger til administration af elementer er tilgængelige for notesbøger:
Handling | Beskrivelse |
---|---|
Opret element | Opretter en notesbog i et arbejdsområde. |
Opdater element | Opdaterer metadataene for en notesbog. |
Opdater elementdefinition | Opdaterer indholdet af en notesbog. |
Slet element | Sletter en notesbog. |
Hent element | Henter metadataene for en notesbog. |
Hent elementdefinition | Henter indholdet af en notesbog. |
Listeelement | Vis alle elementer i et arbejdsområde. |
Du kan få flere oplysninger under Elementer – REST API.
Følgende jobstyringshandlinger er tilgængelige for notesbøger:
Handling | Beskrivelse |
---|---|
Kør varejob efter behov | Kør notesbog med parameterisering. |
Annuller forekomst af elementjob | Annuller kørsel af notesbogjobbet. |
Hent elementjobforekomst | Få status for kørsel af notesbog. |
Du kan få flere oplysninger under Jobstyring.
Eksempler på brug af REST API til notesbog
Brug følgende instruktioner til at teste brugseksempler for bestemte offentlige API'er til notesbøger og bekræfte resultaterne.
Bemærk
Disse scenarier dækker kun eksempler på brug af notesbøger. Almindelige API-eksempler for stofelement er ikke dækket her.
Forudsætninger
Fabric Rest API definerer et samlet slutpunkt for handlinger. Erstat pladsholderne {WORKSPACE_ID}
og {ARTIFACT_ID}
med de relevante værdier, når du følger eksemplerne i denne artikel.
Opret en notesbog med en definition
Opret et notesbogelement med en eksisterende .ipynb-fil og andre typer kildefiler.
Request
POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/items
{
"displayName":"Notebook1",
"type":"Notebook",
"definition" : {
"format": "ipynb", // Use "fabricGitSource" for source file format.
"parts": [
{
"path": "notebook-content.ipynb", // fabric source file format, .py, .scala, .sql files are supported.
"payload": "eyJuYmZvcm1hdCI6NCwibmJmb3JtYXRfbWlub3IiOjUsImNlbGxzIjpbeyJjZWxsX3R5cGUiOiJjb2RlIiwic291cmNlIjpbIiMgV2VsY29tZSB0byB5b3VyIG5ldyBub3RlYm9va1xuIyBUeXBlIGhlcmUgaW4gdGhlIGNlbGwgZWRpdG9yIHRvIGFkZCBjb2RlIVxuIl0sImV4ZWN1dGlvbl9jb3VudCI6bnVsbCwib3V0cHV0cyI6W10sIm1ldGFkYXRhIjp7fX1dLCJtZXRhZGF0YSI6eyJsYW5ndWFnZV9pbmZvIjp7Im5hbWUiOiJweXRob24ifX19",
"payloadType": "InlineBase64"
}
]
}
}
Nyttedataene i anmodningen er en base64-streng, der er konverteret fra følgende eksempelnotesbog.
{
"nbformat": 4,
"nbformat_minor": 5,
"cells": [
{
"cell_type": "code",
"source": [
"# Welcome to your new notebook\n# Type here in the cell editor to add code!\n"
],
"execution_count": null,
"outputs": [],
"metadata": {}
}
],
"metadata": {
"language_info": {
"name": "python"
},
"dependencies": {
"environment": {
"environmentId": "6524967a-18dc-44ae-86d1-0ec903e7ca05",
"workspaceId": "c31eddd2-26e6-4aa3-9abb-c223d3017004"
},
"lakehouse": {
"default_lakehouse": "5b7cb89a-81fa-4d8f-87c9-3c5b30083bee",
"default_lakehouse_name": "lakehouse_name",
"default_lakehouse_workspace_id": "c31eddd2-26e6-4aa3-9abb-c223d3017004"
}
}
}
}
Bemærk
Du kan ændre notesbogens standard lakehouse eller det tilknyttede miljø ved at ændre notesbogens indhold metadata.trident.lakehouse
eller metadata.trident.environment
.
Hent en notesbog med en definition
Brug følgende API til at hente notesbogindholdet. Fabric understøtter, at du angiver formatet som .ipynb i forespørgselsstrengen for at hente en .ipynb-notesbog.
Request
POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/items/{{ARTIFACT_ID}}/GetDefinition?format=ipynb
Response
Statuskode: 200
{
"definition": {
"parts": [
{
"path": "notebook-content.ipynb",
"payload": "eyJuYmZvcm1hdCI6NCwibmJmb3JtYXRfbWlub3IiOjUsImNlbGxzIjpbeyJjZWxsX3R5cGUiOiJjb2RlIiwic291cmNlIjpbIiMgV2VsY29tZSB0byB5b3VyIG5ldyBub3RlYm9va1xuIyBUeXBlIGhlcmUgaW4gdGhlIGNlbGwgZWRpdG9yIHRvIGFkZCBjb2RlIVxuIl0sImV4ZWN1dGlvbl9jb3VudCI6bnVsbCwib3V0cHV0cyI6W10sIm1ldGFkYXRhIjp7fX1dLCJtZXRhZGF0YSI6eyJsYW5ndWFnZV9pbmZvIjp7Im5hbWUiOiJweXRob24ifX19",
"payloadType": "InlineBase64"
}
]
}
}
Kør en notesbog efter behov
Planlæg kørsel af notesbogen med følgende API. Spark-jobbet starter udførelsen efter en vellykket anmodning.
Fabric understøtter overførsel parameters
af anmodningens brødtekst for at parameterisere kørslen af notesbogen. Værdierne forbruges af notesbogparametercellen.
Du kan også bruge configuration
til at tilpasse Spark-sessionen for kørsel af notesbog. configuration
deler den samme kontrakt med den magiske kommando til konfiguration af Spark-sessionen.
Request
POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/items/{{ARTIFACT_ID}}/jobs/instances?jobType=RunNotebook
{
"executionData": {
"parameters": {
"parameterName": {
"value": "new value",
"type": "string"
}
},
"configuration": {
"conf": {
"spark.conf1": "value"
},
"environment": {
"id": "<environment_id>",
"name": "<environment_name>"
},
"defaultLakehouse": {
"name": "<lakehouse-name>",
"id": "<lakehouse-id>",
"workspaceId": "<(optional) workspace-id-that-contains-the-lakehouse>"
},
"useStarterPool": false,
"useWorkspacePool": "<workspace-pool-name>"
}
}
}
Response
Statuskode: 202
Location: https://api.fabric.microsoft.com/v1/workspaces/4b218778-e7a5-4d73-8187-f10824047715/items/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7/jobs/instances/f2d65699-dd22-4889-980c-15226deb0e1b
Retry-After: 60
Med location
kan du bruge Hent elementjobforekomst til at få vist jobstatus eller bruge Annuller forekomst af elementjob til at annullere den aktuelle kørsel af notesbogen.