Getting Started
Errors
How errors are shaped and the codes you'll see.
Errors follow the standard GraphQL error shape - a top-level errors array, each with a message and
an extensions.code:
{
"errors": [
{ "message": "Forbidden: API key missing required scope(s) for developerCreateCertificationInvite: CERTIFICATION_INVITE_CREATE", "extensions": { "code": "FORBIDDEN" } }
]
}| Code | Meaning |
|---|---|
UNAUTHORIZED | No valid API key (or admin session) was presented. |
FORBIDDEN | The API key is valid but missing a required scope, or the organisation doesn't have the relevant feature (e.g. certifications) enabled. |
RATE_LIMITED | Too many requests - see Rate Limits. |
BAD_USER_INPUT | The request's arguments failed validation (e.g. an unknown quizId, a duplicate in-progress attempt, or an invalid callbackUrl). |
NOT_FOUND | The referenced candidate, assessment, or API key doesn't exist (or was already revoked). |
CONFLICT | A rare API key generation collision - safe to retry. |
FAILED_PRECONDITION | The operation can't complete given the current state of your organisation's data. |
INTERNAL_SERVER_ERROR | Something failed on Scout Select's side - safe to retry with backoff. |
A partial-success GraphQL response (data alongside errors) is possible if you request multiple
fields and only some fail - always check errors even when data is present.