Forum Discussion
REST API for third party workload items
- 9 months ago
Currently you won't be able to create REST API for 3rd party workloads. With the release of the Fabric extensibility toolkit we are about to release very soon the ability for Workload Developers declare their item definition and than you will be able to create 3rd party workload items.
The Fabric workload development a create item API is only for the workload developer itself to for using workloads programatically.
Thanks for asking!
This is really helpful thank you. This is the part I need further detais on:
> notify Fabric via the Workload Development Create Item API called by Fabric internally, but you can simulate this if you have the right tokens.
Do you have anymore information about this API? I cannot find any documentation. Is it the request to `https://wabi-uk-south-redirect.analysis.windows.net/metadata/artifacts/ItemId` with these fields?
Hi BenWillis ,
The request shown in your image does appear to be part of the internal Fabric item provisioning flow, the Workload Development Create Item API that Fabric calls when provisioning a third-party workload item.
The endpoint https://wabi-uk-south-redirect.analysis.windows.net/metadata/artifacts/{ItemId}
is consistent with Fabric’s internal metadata service used to store and update item metadata during creation.
Key Fields in the Request:
1. objectId: Unique identifier for the item.
2. artifactType: Specifies the type of item (your custom workload type).
3. capacityObjectId: Workspace or capacity context.
4. createdByUserId, modifiedByUserId: Identity metadata.
5. extendedProperties: folderObjectId, folderType: Organizational metadata.
ownerUserId, permissions, provisionState: Ownership and access control.
payloadContent: Likely contains workload-specific configuration or initialization data.
Note: These fields are not documented publicly, but they are part of the internal lifecycle Fabric uses to notify your workload service to provision an item.
This API is Called by Fabric, not exposed for external use. Requires internal tokens like SubjectAndAppToken and Fabric context to authenticate. To be used within the Fabric host environment, not from external clients.
If you are building an external API to allow users to create items programmatically, you can expose your own API POST /create-item in your workload backend. Internally simulate the provisioning logic that Fabric would trigger to generate an objectId, Populate metadata fields and Store the item in your backend.
Please refer below links.
Fabric Workload Development Kit backend authentication - Microsoft Fabric | Microsoft Learn
Overview of Fabric Workload Authentication Guidelines - Microsoft Fabric | Microsoft Learn
I hope this information helps. Please do let us know if you have any further queries.
Regards,
Dinesh
- BenWillis9 months agoRegular Visitor
> Internally simulate the provisioning logic that Fabric would trigger to generate an objectId, Populate metadata fields and Store the item in your backend.
Okay, I guess we do still need to let Fabric know that the item has been created though, otherwise our requests to the `resolvePermissions` endpoint will fail with a 404 Not Found error. I guess if this API is internal then our only way to provision an item is using the JavaScript SDK?
- v-dineshya9 months agoCommunity Support
Hi BenWillis ,
Thank you for the update. It appears this issue might require deeper investigation from the Microsoft Fabric support team. I recommend opening a Microsoft support ticket so they can trace the issue. To raise a support ticket for Fabric and Power BI, kindly follow the steps outlined in the following guide:
How to create a Fabric and Power BI Support ticket - Power BI | Microsoft Learn
Regards,
Dinesh