ROOKDocs
Back to Developer Tools

Idempotency Key Generator

Generate compliant UUID v4 keys, format mutation request headers, and inspect 24-hour replay caching semantics.

Idempotency Key Generator

Idempotency-Key: be340908-3a19-4ffc-8125-e8f827678657
curl -X POST "https://api.sandbox.rookpayments.com/v1/transfers" \
  -H "Authorization: Bearer rk_test_..." \
  -H "X-Program-ID: 7c9e6679-7425-40de-944b-e07fc1f90ae7" \
  -H "Idempotency-Key: be340908-3a19-4ffc-8125-e8f827678657" \
  -H "Content-Type: application/json" \
  -d '{ ... }'

Idempotency Guarantees & Conflict Prevention

To prevent accidental double-charges or duplicate card creation during network timeouts, send an Idempotency-Key on all mutating requests (POST, PATCH).

Behavior Rules:
  • Exact Replay: If a request with the same idempotency key and matching payload is received within 24 hours, the original response is replayed without re-executing ledger mutations.
  • Payload Mismatch (HTTP 409): If the same key is sent with a different body, Rook returns HTTP 409 Conflict with error code idempotency_conflict.
  • In-Flight Request: If a second request arrives while the first is still processing, Rook responds with HTTP 409 Conflict to avoid concurrent lock contention.
Format: Standard UUID v4 (36 ASCII characters). Scope: Partitioned by API Key and Program ID. Retention: 24 hours.