Skip to main content

Response envelope

Success responses always wrap the payload:
Errors — including request-validation failures, auth failures, and errors proxied from the trade engine — always return this single uniform shape:
Parse rule of thumb: check success; on false, switch on code — never on message text, which can be reworded at any time. Some errors carry additional structured context alongside these fields (for example, payout rejections include a consistency block).

Common codes

Endpoint-specific codes (for example payout OPEN_EXPOSURE, CONSISTENCY_BLOCKED) are documented on each endpoint in the API Reference.

Retry guidance

  • ENGINE_UNREACHABLE and any 5xx: retry with the same idempotency key — 5xx responses are never cached, so the retry re-executes safely.
  • IDEMPOTENCY_KEY_IN_PROGRESS (409): your own duplicate is still running; back off briefly and retry to receive the cached response.
  • 4xx validation errors: fix the payload and use a fresh idempotency key.