Visibility writes
Supported visibility mutations accept an optionalIdempotency-Key header of up to 255 characters. Repeating a stored successful request with the same key and body returns its recorded response. A different body with the same key returns a conflict. A replayed response includes Idempotent-Replay: true.
Support is endpoint-specific. In particular, the prompt rerun endpoint does not implement this replay header. Do not automatically resubmit a rerun after an ambiguous network outcome; inspect the prompt’s answer state first.
Data commands
Data commands that requireIdempotency-Key validate a 16–160 character value containing letters, digits, colons, underscores, or hyphens. Preserve that key through a retry. A command can report a retryable conflict while the original command is still in progress.
Keep the resource and version identifiers returned by each command. When an endpoint requires expectedRevision, send the revision you last read. Idempotency identifies a logical command; a revision check protects against applying it to a resource that has changed.
Build a bounded retry policy
- Separate reads from mutations in your client.
- Persist a mutation’s key before sending the request.
- Retry only the same operation and payload after a retryable outcome.
- Honour
Retry-Afterand use bounded backoff. - Stop on a non-retryable validation, permission, or conflict error.