Safe retries & idempotency
An idempotency key lets you retry a write without applying the same operation twice.
Idempotent writes
Every published POST and PATCH customer API mutation requires an Idempotency-Key header. Use a new value of 8 to 128 characters containing only letters, digits, periods (.), underscores (_), colons (:) or hyphens (-). Do not include spaces.
Retry with the same API credential, method, endpoint, key and body to retrieve the original successful result. Reusing that key for a different operation, resource or body with the same credential returns 409 Conflict.
Resume downloads and ordinary read requests do not require an idempotency key. Upload-plan endpoints are not currently published.
Keys are scoped to an API credential. Switching to a new or rotated credential does not replay a receipt created with the previous credential and can repeat the operation. Reconcile an uncertain write before changing credentials.
Example header
Idempotency-Key: cvviz-create-job-20260911-001
Generate your own unique value for each logical operation. Do not reuse this documentation example across unrelated requests.
If a request times out
Keep the original API credential, method, URL, body and idempotency key.
Retry with bounded exponential backoff and jitter.
For
429or503, respectRetry-Afterwhen supplied.If you receive
409, read the details. Do not generate a new key merely to work around a conflict; that can create a second operation.
A successful creation replay returns the original creation result, not a fresh view of the job. Read the job to obtain its current state. To change a draft to active later, use the status endpoint with a new key.
Reads and usage
GET requests do not need an idempotency key. Retry transient failures with a bounded backoff; do not repeatedly retry 400, 401 or 403 without correcting the cause. Each admitted retry still counts toward metered usage, even if its write result is replayed.
More in Customer API guides
QuickstartAuthentication & permissionsAPI conceptsCreate a jobStill need help? Ask the team