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! Get ahead of the game and start preparing now! Learn more
As a developer building a production application in Python that needs to interact with Microsoft Fabric, I’ve encountered a critical limitation that severely affects usability and integration:
While it is possible to connect to a Fabric GraphQL API using InteractiveBrowserCredential, this is not viable for server-side or automated services running in production (e.g., containers, CI/CD, background processes).
I have registered an application in Entra ID and successfully obtained an access token via the client credentials flow (client_id + client_secret), which is the correct and secure approach for server-to-server communication.
However, the GraphQL endpoint returns “Unauthorized” errors, and there is no way to authorize a client application (by client ID) due to the lack of:
Role configuration options in the GraphQL API UI
The ability to edit or import the schema to include @authorize directives
This makes it impossible to use the GraphQL endpoint from any real server environment, defeating its purpose.
Please consider enabling the following as a priority:
Schema editing or import during the creation of a GraphQL API — so that developers can define @authorize directives and explicitly allow client applications.
A Graphical UI section to manage application access, where we can authorize registered apps (via client_id) without modifying the schema manually.
Clear documentation and support for non-interactive authentication with GraphQL endpoints.
If it is not possible to connect securely and programmatically from external applications or services to the GraphQL endpoint, then the endpoint has little to no practical use in real-world deployments.
In that case, it may be better to remove or deprecate the GraphQL feature entirely rather than frustrate developers with a feature that appears open but is effectively locked down.
GraphQL is an excellent idea for developers — but only if it’s accessible from standard production environments. We hope Microsoft can unlock this potential by allowing schema-level or UI-driven authorization.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.