TrustVerify logo
DocsError reference

Error reference

HTTP status codes and JSON error shapes.

Every error response follows a consistent JSON shape. Parse the error field for machine-readable codes and message for human-readable detail.

JSON — Error shape
{
  "error":   "validation_failed",
  "message": "documentImage must be a valid base64 string",
  "details": [
    { "field": "documentImage", "issue": "Invalid base64 encoding" }
  ],
  "requestId": "req_01J8KX9QMN23PQRST"
}
StatusError codeMeaningFix
400validation_failedRequest body failed schema validationCheck details[] for failing fields
401unauthorizedMissing or malformed Authorization headerSupply a valid Bearer token
403forbiddenKey lacks permission for this endpointCheck API key scopes in the Console
404not_foundResource (check, report) does not existVerify the checkId or path
409duplicate_checkIdempotency key already usedUse a new Idempotency-Key header
422unprocessable_entityImage quality too low for analysisRetry with a clearer document/selfie image
429rate_limit_exceededRequests-per-minute ceiling hitBack off and retry after X-RateLimit-Reset
500internal_errorTrustVerify-side failure (triggers Sentry alert)Safe to retry with exponential backoff; contact support if persistent
503service_unavailablePlanned maintenance or provider outageCheck status.trustverify.co.uk

4xx errors are tenant-fixable — inspect your request. 5xx errors are TrustVerify-side — implement exponential backoff (1s, 2s, 4s…) and retry up to 3 times before alerting. All 5xx events trigger a Sentry alert on our side automatically.