GET, PUT, and DELETE are all safe to retry without coordination. POST endpoints are not yet exposed; when they are, the platform will honor a Stripe-style Idempotency-Key header contract described below.
Endpoint
Parameters
Response
Today, idempotency is a property of the HTTP method, not of an extra header. The current Operata API behaves as follows on retry:
The planned
Idempotency-Key contract follows the Stripe pattern:
- The key is a client-generated string, opaque to the server, 1–255 characters. UUIDv4 is the recommended shape.
- The server stores the response for 24 hours, keyed by the tuple
(token, method, path, idempotency_key). - A repeat request with the same key returns the stored response with header
Idempotency-Replayed: true. - A repeat request with the same key but a different body returns
409 conflictwith codeidempotency_conflict. - After the 24-hour window, the key is forgotten and the request executes normally.
Example
Sending the same redaction config twice leaves one final state:Errors
See Errors for shared codes such as
401 unauthorized and 429 rate_limited.