Join 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!The Power BI Data Visualization World Championships is back! It's time to submit your entry. Live now!
Hi All,
We are trying to set up a service principal for semantic model refresh. We have created the service principal ID, a security group, and added the service principal to all the required workspaces.
However, when we try to create a new connection for the semantic model to the Gold Fabric Warehouse using the service principal, we encounter the following error:
“Unable to create connection for the following reason: It looks like the refresh token expired. Please go to this dataset’s settings page and re-enter the credentials for the data source.”
Are we missing something in the setup?
Specifically, what value should be provided in the Service Principal ID field?
Could someone help me understand the correct way to configure this? I am new to Fabric and currently managing Fabric on my own in the organization. We do have a tenant admin who has already created the service principal.
Hi @JibinSebastian ,
Recreate the connection:
Go to the workspace → Create new connection
Use:
Tenant ID = Directory ID
Service Principal ID = Application (Client) ID
Service Principal Key = Client secret value
Verify permissions:
The SP must be assigned to the workspace (Contributor or Member role)
Ensure the SP is allowed under tenant settings:
Admin portal → Tenant settings → Service principals
Use the SP to bind the semantic model:
When using the SP for scheduled refresh, make sure it’s added as a Gateway Connection credential (if applicable).
If everything is configured correctly and the token issue persists, you might also want to:
Generate a new client secret
Clear and reconfigure the connection using updated credentials
If this post helps, then please appreciate giving a Kudos or accepting as a Solution to help the other members find it more quickly.
If I misunderstand your needs or you still have problems on it, please feel free to let us know. Thanks a lot!
You would have to enter the Application (Client) ID of the Azure AD app registration you created (not the object ID).
This is exactly what “Service principal ID” refers to in the UI.
So you should have:
Your tenant admin who has created the service pricipal SPN for you should have shared the client secret already.
Hope this helps - please appreciate by leaving a Kudos or accepting as a Solution!