REST API publik alur data Microsoft Fabric (Pratinjau)
Penting
Microsoft Fabric API untuk Data Factory Create/Read/Update/Delete (CRUD) saat ini dalam pratinjau. Informasi ini berkaitan dengan produk prarilis yang mungkin dimodifikasi secara substansial sebelum dirilis. Microsoft tidak memberikan jaminan, tersurat maupun tersirat, sehubungan dengan informasi yang diberikan di sini.
Di Microsoft Fabric, API Data Factory hanya terdiri dari operasi CRUD untuk alur dan aliran data. Saat ini, hanya alur data yang didukung. API Aliran Data akan dirilis nanti. Area umum lainnya untuk proyek integrasi data berada dalam API terpisah: jadwal, pemantauan, koneksi, memiliki API mereka sendiri di Fabric. Dokumentasi referensi online utama untuk MICROSOFT Fabric REST API dapat ditemukan di referensi Microsoft Fabric REST API. Lihat juga API item Inti dan Penjadwal pekerjaan.
Mendapatkan token otorisasi
Opsi 1: Menggunakan MSAL.Net
Mulai cepat Fabric API - MICROSOFT Fabric REST API
Gunakan MSAL.Net untuk memperoleh token ID Microsoft Entra untuk layanan Fabric dengan cakupan berikut: Workspace.ReadWrite.All, Item.ReadWrite.All. Untuk informasi selengkapnya tentang akuisisi token dengan MSAL.Net, lihat Akuisisi Token - Microsoft Authentication Library untuk .NET.
Tempelkan ID Aplikasi (klien) yang Anda salin sebelumnya dan tempelkan untuk variabel ClientId.
Opsi 2: Menggunakan Portal Fabric
Masuk ke Portal Fabric untuk Penyewa yang ingin Anda uji, dan tekan F12 untuk memasuki mode pengembang browser. Di konsol di sana, jalankan:
powerBIAccessToken
Salin token dan tempelkan untuk variabel ClientId.
Definisi Item dengan payload base64 dikodekan
- Gunakan Encode Base64 dan Dekode untuk mengodekan JSON Anda.
- Pastikan bahwa kotak Lakukan pengodean aman URL tidak dicentang.
- Anda bisa mendapatkan definisi alur melalui tab Lihat -->Lihat kode JSON di antarmuka pengguna 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"
}
}
Ambil objek properti dan kelilingi dalam kurung kurawal - { } - sehingga payload definisi ITEM REST adalah:
{
"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"
}
}
Buat item
Contoh:
POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items
Badan:
{
"displayName": "pipeline_1",
"type": "DataPipeline"
}
Catatan
Dokumentasi menyatakan bahwa hanya ada 2 properti yang diperlukan - displayName dan jenis. Saat ini, Workload-DI tidak mendukung pembuatan tanpa definisi juga. Perbaikan untuk persyaratan yang salah ini saat ini sedang disebarkan. Untuk saat ini, Anda dapat mengirim definisi default yang sama yang digunakan oleh antarmuka pengguna Fabric: ‘{"properties":{"activities":[]}}’
JSON yang dimodifikasi termasuk definisi:
{
"displayName": "pipeline_1",
"type": "DataPipeline",
"definition": {
"parts": [
{
"path": "pipeline-content.json",
"payload": "eyJwcm9wZXJ0aWVzIjp7ImFjdGl2aXRpZXMiOltdfX0=",
"payloadType": "InlineBase64"
}
]
}
}
Respons 201:
{
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"type": "DataPipeline",
"displayName": "Pipeline_1",
"description": "",
"workspaceId": "<Your WS Id>"
}
Hapus item
Contoh:
DELETE https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>
Respons 200: (Tidak ada isi)
Dapatkan item
REST API - Item - Dapatkan item
Contoh:
GET https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>
Respons 200:
{
"id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"type": "DataPipeline",
"displayName": "Pipeline_1",
"workspaceId": "<your WS Id>"
}
Mendapatkan definisi item
REST API - Item - Dapatkan definisi item
Contoh:
POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/getDefinition
Respons 200:
{
"definition": {
"parts":[
{
"path": "pipeline-content.json",
"payload": "ewogICJwcm9wZXJ0aWVzIjogewogICAgImFjdGl2aXRpZXMiOiBbXQogIH0KfQ==",
"payloadType": "InlineBase64"
}
]
}
}
Cantumkan item
Contoh:
GET https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items
Respons 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"
}
]
}
Perbarui item
REST API - Item - Perbarui item
Contoh:
PATCH https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>
Badan:
{
"displayName": "Pipeline_1_updated",
"description": "This is the description."
}
Respons 200:
{
"id": "<pipeline id>",
"type": "DataPipeline",
"displayName": "Pipeline_1_updated",
"description": "This is the description.",
"workspaceId": "<Your WS id>"
}
Memperbarui definisi item
REST API - Item - Memperbarui definisi item
Contoh:
POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/updateDefinition
Badan:
{
"definition": {
"parts": [
{
"path": "pipeline-content.json",
"payload": "eyJwcm9wZXJ0aWVzIjp7ImFjdGl2aXRpZXMiOltdfX0=",
"payloadType": "InlineBase64"
}
]
}
}
Respons 200: (Tidak ada isi)
Menjalankan pekerjaan item sesuai permintaan
REST API - Item - Menjalankan pekerjaan item sesuai permintaan
Contoh:
POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/jobs/instances?jobType=Pipeline
Respons 202: (Tidak ada isi)
Contoh dengan dua nilai parameter:
Di sini kita memiliki aktivitas Tunggu dengan parameter bernama param_waitsec untuk menentukan jumlah detik yang akan ditunda.
POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/jobs/instances?jobType=Pipeline
Badan:
{
"executionData": {
"parameters": {
"param_waitsec": "10"
}
}
}
Respons 202: (Tidak ada isi)
Catatan
Saat ini tidak ada isi yang dikembalikan, tetapi ID pekerjaan harus dikembalikan. Selama pratinjau, pratinjau dapat ditemukan di header yang dikembalikan, di properti 'Lokasi'.
Mendapatkan instans pekerjaan item
REST API - Item - Dapatkan instans pekerjaan item
Contoh:
GET https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/jobs/instances/<job ID>
dotnetcli
Respons 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"
}
Membatalkan instans pekerjaan item
REST API - Item - Membatalkan instans pekerjaan item
Contoh:
POST https://api.fabric.microsoft.com/v1/workspaces/<your WS Id>/items/<pipeline id>/jobs/instances/<job ID>/cancel
Respons 202: (Tidak ada isi)
Catatan
Setelah membatalkan pekerjaan, Anda dapat memeriksa status baik dengan memanggil Dapatkan instans pekerjaan item atau melihat Lihat riwayat eksekusi di antarmuka pengguna Fabric.
Pembatasan yang diketahui
- Service Principal Auth (SPN) saat ini tidak didukung
Konten terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk