Skip to main content

Retries and Idempotency

Every write is safe to retry. There is no Idempotency-Key header. Creates use a reference you supply, and state changes return the current state when repeated.

Create a Batch​

Send externalReference when you might retry. It is unique within your organization, and test and live references are separate. A repeat create returns 409 with existingBatchId. Use that ID. The reference stays reserved after the batch is deleted.

Without externalReference, each retry creates another empty batch. Unsubmitted batches are cancelled after 7 days.

Retry Outcomes​

RequestRepeated WithResult
Create a batchSame externalReference409 with existingBatchId
Add documentsSame references and checksums200 with the existing documents
Add documentsAny change409. Nothing in the request is added
Upload contentSame bytes200
Upload contentDifferent bytes409
Submit or cancelBatch already in that state200 with the batch
Submit or cancelBatch in another state409
Delete a batchAny repeat204

Request IDs​

Every response includes a Request-Id header. Include it when you contact support.