Skip to Content
API referenceErrors and recovery

Developer reference

Errors and recovery

Choose the right next action for authentication refusals, conflicts, rate limits and unavailable reads.

Handle HTTP status and the structured error code together. Keep the request identifier for safe diagnostics and avoid copying credentials or full financial payloads into logs.

Status guide

StatusTypical meaningNext action
400Invalid requestFix malformed fields or unsupported input.
401Missing or rejected credentialVerify the session or token.
403Scope, admission or origin refusalCheck the exact required permission and request boundary.
404Missing or unavailable owned resourceRecheck method, route and owned ID.
409Conflict or mismatched retryInspect the existing action and original intent.
422Invalid domain actionFollow the supplied domain guidance.
429Rate limitRespect Retry-After and reduce polling.
503Verification, storage or coherent-read failureShow unavailable and retry after recovery.

Reads are not zeros

A failed balance request is not an empty account. Preserve the error/unavailable state rather than returning an attractive default of zero. If a previously loaded result is retained, do not claim it is a fresh verified answer.

Writes need a different retry policy

A timeout can occur after money saved. Keep the original key and identical payload where the idempotency contract applies. Inspect the existing operation before issuing another command. Import recovery continues the existing job.

Report safely

Include the route class, status, safe error code and request identifier. Exclude token secrets, raw statement files and unrelated personal data. A recurring 403 needs diagnosis, not an unbounded retry loop. See rate limits.