Announcing Fabric API for GraphQL pricing
During Microsoft Build, in May 2024, we announced the worldwide public preview of API for GraphQL in Microsoft Fabric. With the preview, data engineers and scientists can create a GraphQL data API to connect to different Fabric data sources in seconds, use the APIs in their workflows, or share the API endpoints with app development teams to speed up business data analytics application development.
Today, we announce that API for GraphQL in Fabric starts billing on July 12th, 2024, as part of your existing Power BI Premium or Fabric Capacity. The usage for each API operation consisting of the time executing a GraphQL request/response is reported in Capacity Units (CUs) in seconds at the rate of 10 CUs per hour. You can find more information in the following sections.
Consumption rate
A GraphQL resolver is executed when a client application sends an API request, or a query is executed in the API editor. Resolvers are GraphQL components that provide the business logic to “resolve” fields in the API and perform operations with data residing in the data sources. Fabric automatically generates resolvers whenever you attach a new Fabric data source or select new objects to be exposed from an existing data source.
Resolver executions triggered by requests to API for GraphQL consume Fabric Capacity Units. The following table defines how many capacity units (CU) are consumed when API for GraphQL is used:
Operation in Metrics App | Description | Operation Unit of Measure | Consumption rate |
---|---|---|---|
Query | GraphQL read or write operation | GraphQL resolver executions | 10 CUs hour |
Monitor the usage
The Fabric Capacity Metrics app displays the total capacity usage for API for GraphQL operations under the name “Query”. Additionally, API users are able to view a summary of their billing charges for API for GraphQL usage under the invoicing item “GraphQL”.
Capacity utilization type
Fabric API for GraphQL requests are classified as “interactive job” as they are on-demand requests and operations that can be triggered by application clients or user interactions with the UI.
Fabric is designed to provide lightning-fast performance by allowing operations to access more CU (Capacity Units) resources than are allocated to capacity. Fabric smooths or averages the CU usage of an “interactive job” over a minimum of 5 minutes, “background job” over a 24-hour period. According to the Fabric throttling policy, the first phase of throttling begins when a capacity consumed all its available CU resources for the next 10 minutes.
A complex GraphQL query returning nested data from multiple data sources might take longer to execute thus consuming more CU seconds. Alternatively, a simpler query processed in less time will consume less CU seconds.
You can find more information about GraphQL in Fabric in our documentation and more information about Fabric operations consumption in the capacity operations documentation.