Warehouse / Guides

Rate limits

The request limit per minute and the GraphQL query cost budget.

HTTP request limit

The authenticated v1 API allows 300 requests per minute per user. Responses expose X-RateLimit-Limit and X-RateLimit-Remaining. When exhausted, the API returns HTTP 429 with Retry-After and X-RateLimit-Reset headers.

GraphQL query cost

GraphQL also uses a shared per-user cost budget. Connections cost more as their requested page size grows. Successful responses include current cost information in extensions.cost.

{
"extensions": {
"cost": {
"requestedQueryCost": 12,
"actualQueryCost": 9,
"throttleStatus": {
"currentlyAvailable": 812,
"restoreRate": 100
}
}
}
}
Cost exhaustion is returned as a GraphQL error with HTTP 200. Read the body before retrying and use throttleStatus.restoreRate to pace requests. The available capacity can change; do not hard-code it.

Reduce request cost

  • Request only fields your integration uses.
  • Use smaller pages and cursor pagination.
  • Back off after either an HTTP throttle or a GraphQL cost error.