Skip to main content
HTTP status: 410 · Title: “Idempotency key expired”

Current behaviour: reserved, not returned

This code is reserved in the catalogue, and the API does not currently return it. Handle it like any other unrecognised 410 so your client keeps working if it is ever introduced. An Idempotency-Key is remembered for 24 hours. After that, a request that reuses the key is treated as a new request and executed. It is not refused and it is not replayed.

Why this matters

A retry that fires more than 24 hours after the original (for example a job that stalled in a queue, or an offline-first client that buffered the request) is not protected by the key and can execute the operation a second time.

How to handle very late retries

  • Before retrying after a long delay, check whether the original operation completed, for example with GET /v1/trades or GET /v1/trades/{id}.
  • For trades, also send the body-level clientRequestId. It deduplicates against your trade history and does not expire after 24 hours; reusing it with a different body returns CLIENT_REQUEST_ID_CONFLICT.
See Idempotency.