Odit Verify

Errors

Error envelope and codes.

Envelope

All error responses share the same JSON shape:

{
  "ok": false,
  "error": {
    "code": "rate_limited",
    "message": "Rate limit exceeded. Maximum 60 requests per minute."
  }
}

Codes

HTTPCodeWhen
400invalid_jsonRequest body wasn't valid JSON.
400invalid_requestJSON parsed but failed schema validation.
400unsupported_urlURL didn't resolve to a supported provider receipt.
401missing_keyNo x-api-key header.
401invalid_keyKey not recognised.
401revoked_keyKey was revoked.
429rate_limitedHit your per-minute limit. Includes Retry-After seconds.
502(none)Upstream returned but the receipt failed validation. See error and partial receipt.
504(none)Upstream timeout (20 s).

Retry guidance

  • 429 — wait the Retry-After interval and try again.
  • 502/504 — usually transient upstream glitches. Retry after 1–2 s with jitter; treat 3 consecutive failures as a real outage.
  • 401 — never retry; mint a new key from the dashboard.

On this page