GraphQL Error Reference
Understanding GraphQL Errors
Unlike REST APIs where HTTP status codes indicate errors, GraphQL API requests typically return a HTTP 200 OK status code even when errors occur. Instead, errors are included in the response body within an errors array.
{
  "errors": [
    {
      "message": "Error message",
      "path": ["field", "path"],
      "extensions": {
        "code": "ERROR_CODE"
      }
    }
  ]
}
HTTP Status Codes
While GraphQL responses usually have a 200 status code, you may occasionally encounter these HTTP status codes:
| Status Code | Name | Description | 
|---|---|---|
| 200, 201 | OK | The request was successful, but may contain errors in the response body | 
| 400 | Bad Request | The request is malformed or invalid GraphQL syntax | 
| 401 | Unauthorized | Missing or invalid API key | 
| 402 | Payment Required | API key has consumed all available API credits. | 
| 403 | Forbidden | Valid API key but insufficient permissions for the request | 
| 413 | Payload Too Large | Request body exceeds size limits | 
| 429 | Too Many Requests | Rate limit exceeded | 
| 500 | Internal Server Error | Server-side error occurred | 
Handling Errors in Your Application
When working with our GraphQL API, we recommend implementing these error handling practices:
- Always check for the presence of an errorsarray in the response
- Look at both the messageand theextensions.codeto determine the type of error
- Implement appropriate retry logic for transient errors (timeouts, service unavailable)
- Log detailed error information for debugging purposes
Need Help?
If you're experiencing persistent errors or need assistance debugging an issue :
- Ensure you're using the latest version of our documentation
- Contact [email protected] for support