Content-Type: application/json and a caller-owned Idempotency-Key. A key accepts 1–128 ASCII letters, digits and _.:/-. Request bodies are limited to 256 KiB.
Idempotent-Replayed: true; a changed request conflicts with 409 idempotency_conflict. Authorization is checked again before replay.
Retention is bounded
Replay records live for up to 24 hours. Storage loss or eviction can shorten that protection. This is not a permanent exactly-once ledger. Save your own mapping from logical operations to returned resource IDs.An uncertain write
A timeout,5xx, request_in_progress or result_uncertain can mean the write committed but its final response was not saved.
- Read the target resource or use an exact identity lookup.
- Preserve the original request and key while reconciling.
- Do not generate a fresh key simply to force another attempt.
- If the state remains ambiguous, share the request ID with your account contact.
mutation_may_have_succeeded and performs no automatic retries. A CLI dry-run validates locally and makes no HTTP call; it cannot establish current eligibility or reserve a resource.
