Get certified for free when you join Fabric Data Days 2026 and dive into Fabric, Power BI, SQL, AI, and other essential data skills.
Join nowTry your skills in the Power BI Dataviz World Championship! Round one ends June 26. Join now
Hi there,
I'm trying to report on all workspace's, DataSets associated to a datasource in our tenant.
We setup an spn with Tenant.Read.All delegated api permissions.
The Allow service principals to use Power BI APIs is enabled for the security group that the app is a member of.Created a client secret as well as certificate.We are able to connect using Connect-PowerBIServiceAccount to
'however no data is returned.
When connecting using my account, i'm able to output the workspace that my account is a member of.
So i'm not sure if im missing other permissions to the workspaces.
Sorry, that was the API for a single group, but this one gets multiple groups https://learn.microsoft.com/en-us/rest/api/power-bi/admin/groups-get-groups-as-admin
So that API says here that it requires the Workspace.Read.All permission, but then this API only returns workspaces that the SPN has access to.
If you want all workspaces you should probably look at using this API https://learn.microsoft.com/en-us/rest/api/power-bi/admin/groups-get-group-as-admin instead.
Thanks, it's limited however. You need to enter a groupID (workspace id). It doesn't allow to expand the search.
for example, you can't add $top=500 parameter to call the workspaces for example.
What API are you trying to call? Some APIs like this https://learn.microsoft.com/en-us/rest/api/power-bi/admin/workspace-info-get-scan-result#:~:text=Mus.... one explicity state that Tenant.Read.All must not be set when using an SPN. So you should check the docs for the API you are trying to call.
Thanks @d_gosbell
Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.
Check out the May 2026 Power BI update to learn about new features.
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |