Idempotency
A request can be retried without changing the result.
Origin
Mathematical term coined by Benjamin Peirce in 1870 ("an operation idempotent if applying it twice gives the same result"). Applied to HTTP by Roy Fielding's thesis in 2000; turned into an explicit API design pattern by Stripe in the mid-2010s.
Where it shows up in production
- Stripe API Idempotency-Key header for every POST that mutates money. Retry-safe by design.
- AWS APIs ClientToken parameter on EC2, SQS, and ECS Run/Start operations.
- Kafka producer (since 0.11) enable.idempotence=true gives exactly-once writes within a partition.
Sources & further reading
Found this useful?