# Error reference

Source: https://docs.graphops.xyz/platform/errors

Find out why a GraphOps request failed and what to do next. Every platform API error has a stable
code, and every error response links to the entry that documents it.

## Error response

Failed requests return a JSON body with these fields:

| Field               | Description                                                                                                          |
| ------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `code`              | Stable identifier for the error. Use it in your application logic instead of the message.                            |
| `message`           | Readable explanation for the failed request. The wording can change.                                                 |
| `docsUrl`           | Link to the documentation for `code`, such as `https://docs.graphops.xyz/platform/errors/requests#validation_error`. |
| `retryAfterSeconds` | Present on some `429` responses: the number of seconds to wait before retrying.                                      |

## Retry safely

* Retry `502`, `503`, `504` and `429` responses after a short wait, with backoff. When `retryAfterSeconds` is present, wait at least that long.
* Retry a `500` response once. If it fails again, contact support with the time of the request and the error code.
* Do not retry `400`, `401`, `403`, `404`, `409`, `413`, `415` or `422` responses unchanged. Fix the request or its preconditions first.

## Errors by topic

| Topic                                                          | Covers                                                                                      |
| -------------------------------------------------------------- | ------------------------------------------------------------------------------------------- |
| [Request and availability errors](/platform/errors/requests)   | Errors any platform API request can return, such as invalid input or missing access.        |
| [Sign-in and account errors](/platform/errors/account)         | Errors from sign-in, registration, email verification and account security.                 |
| [Organization and team errors](/platform/errors/organizations) | Errors from managing organizations, invitations, team members and service accounts.         |
| [API key errors](/platform/errors/api-keys)                    | Errors from creating and managing API keys and from authorizing API key requests.           |
| [Billing and credit errors](/platform/errors/billing)          | Errors from plans, checkout, credit top-ups, automatic top-ups and invoices.                |
| [Usage errors](/platform/errors/usage)                         | Errors from usage reports and usage-based limits.                                           |
| [Subgraph errors](/platform/errors/subgraphs)                  | Errors from Managed Subgraphs, Subgraph aliases and Subgraph discovery.                     |
| [Data service and network errors](/platform/errors/services)   | Errors from data service, network and Substreams package lookups.                           |
| [Gateway errors](/platform/errors/gateway)                     | Errors the RPC, Subgraphs and Substreams gateways return before or while serving a request. |
| [Support and feedback errors](/platform/errors/support)        | Errors from support requests and feedback.                                                  |