IDEMPOTENCY_KEY_REUSED

The Idempotency-Key was already used for a different bulk request

POST /api/v1/email/bulk saw an Idempotency-Key it already knows, but the addresses or webhook URL differ from the request that first used it.

http status
409
credits
Nothing is billed for a failed request.

What it means

An Idempotency-Key makes bulk creation safe to retry: a repeat with the same key and the same request answers the job the first attempt created, with status 200 and the Idempotent-Replayed header, instead of queueing a second run. The key is bound to the exact addresses and webhook URL it was first sent with.

The same key with a different list or webhook is refused with this code so a retry can never be answered with the wrong job. Nothing is queued and nothing is charged.

What to do

Generate a fresh key for every distinct request, for example a UUID stored with the record that triggered the run, and reuse it only when retrying that exact request.

Example response

{
    "success": false,
    "error": {
        "code": "IDEMPOTENCY_KEY_REUSED",
        "message": "This Idempotency-Key was already used for a different request.",
        "request_id": "req_01m1kgdm4xngzmbmff68g94w0c"
    }
}

Every error carries the request_id also sent in the X-Request-Id header; quote it when writing to support.

Related

markdown version: /docs/errors/IDEMPOTENCY_KEY_REUSED.md