Advance your Data & AI career with 50 days of live learning, dataviz contests, hands-on challenges, study groups & certifications and more!
Get registeredJoin us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM. Register now.
Hi Community
Does anyone know if it is possible to set build permission for an app on a dataset using REST API. It is possible to set this permission for a user or a group using: Datasets - Put Dataset User - REST API (Power BI Power BI REST APIs) | Microsoft Learn. However this does not support setting permission on app which we need (we have apps that query the model via. Rest API and I can see that this only works with the build permission).
Friendly regards
Kim Tutein
Solved! Go to Solution.
Hi @KimTutein , Thank you for reaching out to the Microsoft Fabric Community Forum.
You are correct, an Azure AD app registration is a service principal and service principals are valid principals in the Put Dataset User API. In theory you should be able to grant ReadExplore (Build) that way.
The issue is that, in practice, assigning Build to a service principal through the REST API doesn’t actually work consistently today, even though the UI supports it. This is why you’re able to add Build permission for your app in the GUI, but the same call through the API won’t succeed. It’s a limitation in the current implementation, not something you’re doing wrong.
Hi @v-hashadapu
I am not sure of what you mean. I have made an app registration in Azure AD. which in my view is a service principle. I can add my app in the UI og via. Rest API with read access on the workspace. I then need to add build permission. This I can do in the GUI (and then it will work) - however I cannot get it to work with Rest API
Hi @KimTutein , Thank you for reaching out to the Microsoft Fabric Community Forum.
You are correct, an Azure AD app registration is a service principal and service principals are valid principals in the Put Dataset User API. In theory you should be able to grant ReadExplore (Build) that way.
The issue is that, in practice, assigning Build to a service principal through the REST API doesn’t actually work consistently today, even though the UI supports it. This is why you’re able to add Build permission for your app in the GUI, but the same call through the API won’t succeed. It’s a limitation in the current implementation, not something you’re doing wrong.
Hi @KimTutein , Thank you for reaching out to the Microsoft Fabric Community Forum.
You cannot assign Build permission directly to an App using the REST API. Apps aren’t valid principals; only users, security groups and service principals are supported.
Instead, register the app with Azure AD, use a service principal and then grant that SPN Build permission on the dataset via the REST API. This way, the app can authenticate with the service principal and securely run queries against the dataset.
Embed Power BI content in an embedded analytics application with service principal and an applicatio...
Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!
Check out the October 2025 Power BI update to learn about new features.