This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreDid you hear? There's a new SQL AI Developer certification (DP-800). Start preparing now and be one of the first to get certified. Register now
Service Principals running specific Notebooks from Pipelines Fail. I believe I have isolated the issue to sempy.fabric.
Notes:
Here is the error message:
Notebook execution failed at Notebook service with http status code - '200', please check the Run logs on Notebook, additional details - 'Error name - FabricHTTPException, Error value - 401 Unauthorized for url: https://api.powerbi.com/powerbi/globalservice/v201606/clusterdetails
Headers: {'Cache-Control': 'no-store, must-revalidate, no-cache', 'Pragma': 'no-cache', 'Transfer-Encoding': 'chunked', 'Content-Type': 'application/octet-stream', 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains', 'X-Frame-Options': 'deny', 'X-Content-Type-Options': 'nosniff', 'RequestId': 'b90defe2-ba4a-4922-b512-dcf218366fac', 'Access-Control-Expose-Headers': 'RequestId', 'Date': 'Tue, 05 May 2026 20:41:37 GMT'}' :
This code works as a replacement. This directly calls the REST API instead:
Hi @macrohardy,
We wanted to check if you had a chance to review our last reply. Let us know if it helped or if you need more guidance, we're always happy to help further.
Looking forward to hearing from you!
Thank you.
Hi @macrohardy,
This issue is likely due to the version of semantic-link (sempy.fabric) available in the default Fabric runtime.
From the error and test results, it doesn't seem related to workspace permissions or Service Principal configuration, since:
The key detail is the internal call to:
https://api.powerbi.com/powerbi/globalservice/v201606/clusterdetails
Older semantic-link versions don't always handle Service Principal authentication correctly in Pipelines, especially with internal Power BI metadata APIs.
Using direct REST API calls, as described above, is currently the most reliable workaround because it avoids the authentication flow used by sempy.fabric.
A newer semantic-link version seems to fix this. Upgrading the package in a custom Fabric environment has been reported to resolve the problem.
Right now, you can either:
This appears to be a runtime or library limitation, not a notebook configuration issue.
The following documents are provided for your reference:
Enable service principal authentication for admin APIs - Microsoft Fabric | Microsoft Learn
sempy.fabric package | Microsoft Learn
Service Principal support for Semantic Link - Microsoft Fabric | Microsoft Learn
Thank you.
Check out the April 2026 Fabric update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
| User | Count |
|---|---|
| 15 | |
| 11 | |
| 6 | |
| 6 | |
| 5 |
| User | Count |
|---|---|
| 35 | |
| 20 | |
| 13 | |
| 12 | |
| 11 |