idempotency_replay_unavailable (409)¶
The key was used, and its result is no longer there to replay.
Cause¶
Replaying a key returns the stored result of its first request. A result is
written down only when the retention window resolved for that request was above
zero. A request that asked for retain_hours: 0 therefore returns its result
once and never stores it. A result that was stored also ages out when its window
elapses.
Either way the key is known to have been used, so the request is not run again and nothing is left to hand back.
The message¶
Idempotency-Key 8f3c2a1b-5d4e-4f60-9a7b-3c2d1e0f9a8b was already used and its result is no longer stored, so it cannot be replayed. Send the request with a new key, or ask for retention with options.retain_hours.The fix¶
Send the request under a new key. To have a retry replay a stored result, ask
for retention on the original request with options.retain_hours above zero and
retry inside that window.
event_id¶
event_id is always null on this code. It is a refusal the caller is meant
to handle, so nothing is recorded as a failure to look at. The service answers
and writes one log line.
Related codes¶
idempotency_conflict— the key was used with another body.not_found— no scan, or no route.
The whole catalogue, grouped by what a caller does with it, is on errors.
The response¶
{
"error": {
"code": "idempotency_replay_unavailable",
"message": "Idempotency-Key 8f3c2a1b-5d4e-4f60-9a7b-3c2d1e0f9a8b was already used and its result is no longer stored, so it cannot be replayed. Send the request with a new key, or ask for retention with options.retain_hours.",
"docs_url": "https://doc.cheap/docs/errors/idempotency_replay_unavailable",
"request_id": "req_9e6b1f7c-2d4a-4b83-9c51-7f0ad3e8b642",
"event_id": null
}
}