Explain idempotency in APIs.
01
01
Understand the problem
idempotency
02
02
Attempt it yourself
Sketch your approach before reading the solution — that's what interviews test.
Stuck? AI Nudge Available
Get a conceptual hint to guide your logic without spoiling the final implementation.
03
03
Study the solution
The solution is waiting
Give it an honest attempt first — then compare your thinking with the full walkthrough.
04
04
Read the code
Idempotency-key handler
Run Playgroundprocessed = {} # key -> saved result (use Redis + TTL in production)
def charge(idempotency_key, amount):
if idempotency_key in processed:
print("duplicate", idempotency_key, "-> returning saved result")
return processed[idempotency_key]
# ... actually charge the card exactly once here ...
result = {"status": "charged", "amount": amount}
processed[idempotency_key] = result
print("charged", amount, "for", idempotency_key)
return result
charge("k1", 4999) # charges
charge("k1", 4999) # retry -> no double charge
charge("k2", 1200) # different op -> charges05
05
Join the discussion
Discussion (0)
Sign in to join the discussion.
No responses yet. Be the first to share what you think.