Architecture

Idempotency key

A client-supplied UUID that lets the server deduplicate retried POST requests.


In plain terms

Stripe popularised the pattern. Server stores (idempotency_key → response) for ~24h; second request with same key returns the same response.

Origin

Stripe popularised the client-supplied idempotency key in 2014. The pattern existed earlier (HTTP, SOAP) but Stripe made it the industry default for payment APIs.

Where it shows up in production
  • Stripe Idempotency-Key header on every create. Server stores the response for 24h; second request with same key gets the same response.
  • AWS APIs ClientToken parameter on EC2 RunInstances and similar. Same idea, different name.
Sources & further reading
Found this useful?