Enable service principal authentication for read-only admin APIs
Article
Service principal is an authentication method that can be used to let a Microsoft Entra application access Microsoft Fabric content and APIs.
When you create a Microsoft Entra app, a service principal object is created. The service principal object, also known simply as the service principal, allows Microsoft Entra ID to authenticate your app. Once authenticated, the app can access Microsoft Entra tenant resources.
Method
To enable service principal authentication for Power BI read-only APIs, follow these steps:
Create a Microsoft Entra app. You can skip this step if you already have a Microsoft Entra app you want to use. Take note of the App-Id for later steps.
Sign in to the Fabric admin portal. You need to be a Fabric admin to see the tenant settings page.
Under Admin API settings, Service principals can access read-only admin APIs displays. Set the toggle to Enabled, and then select the Specific security groups radio button and add the security group you created in Step 2 in the text field that appears below it.
Start using the read-only admin APIs. See the list of supported APIs below.
Important
An app using service principal authentication that calls read-only admin APIs must not have any admin-consent required permissions for Power BI set on it in the Azure portal. See how to check whether your app has any such permissions.
Supported APIs
Service principal authentication is currently supported for the following read-only admin APIs.
GetGroupsAsAdmin with $expand for dashboards, semantic models, reports, and dataflows
How to check if your app has admin-consent required permissions
An app using service principal authentication that calls read-only admin APIs must not have any admin-consent required permissions for Power BI set on it in the Azure portal. To check the assigned permissions:
Sign into the Azure portal.
Select Microsoft Entra ID, then Enterprise applications.
Select the application you want to grant access to Power BI.
Select Permissions. There must be no admin-consent required permissions of type Application registered for the app.
Considerations and limitations
The service principal can make rest API calls, but you can't open Fabric with service principal credentials.
Fabric admin rights are required to enable service principal in the Admin API settings in the Fabric admin portal.