When users click "Submit" twice, what happens next could make or break your application. Idempotency ensures repeated API calls produce consistent results, saving systems from duplicate charges, mismanaged resources, and confused customers. This talk explains idempotency's role in building reliable APIs, with practical examples to show you how to implement it effectively in your application.

We'll share real-world stories of what happens when idempotency goes wrong (or doesn't exist), and go through how some of the largest companies in the world choose to implement this technique. Whether you're a seasoned API developer or new to the concept, you'll leave with actionable insights and techniques to make your APIs smarter and more user-friendly.

Comments

Please login to leave a comment

Very good information and I learned a lot. Going in, I knew what idempotency was and I often advocate for my team to create idempotent/pure methods as often as possible (and where appropriate) but I hadn't thought about applying the concept to API endpoints specifically yet. Now I will.

One disagreement I had with the content presented is...I don't think GET is inherently idempotent. Consider an endpoint like `/shows/near-me?city=boston&genre=country`. If the platform allows customers to publish new events that meet these criteria (as Bandsintown does) then the result of this query will change from request-to-request. So I'm not sure I agree with the middleware code sample shown that basically does `if (GET) { doNothing() }` (paraphrasing)

Chris Lemon at 14:18 on 21 May 2026

Loved it, well presented and well explained, plus there's a package that can handle idempotency for me? What's not to love?