Skip to content

/glossary/http/idempotent

What does idempotent mean in HTTP?

The commands on this page have not been executed by our verification runner yet.updated 2026-10-20
tool
HTTP
versions
RFC 9110
os
any

A request method is idempotent when sending the same request several times leaves the server in the same state as sending it once (RFC 9110, section 9.2.2). That is what makes it safe for clients, proxies and libraries to retry it automatically after a timeout. The response may differ (a second DELETE can return 404); the effect on the resource does not.

Methods

MethodIdempotentSafe (read-only)
GET, HEAD, OPTIONS, TRACEyesyes
PUTyesno
DELETEyesno
POSTnono
PATCHnot guaranteedno

Why it matters

  • Retries: a client that gets no answer to a PUT can resend it; resending a POST may create two orders or charge a card twice.
  • Idempotency keys: APIs that need safe retries for POST (payments, order creation) accept an Idempotency-Key header and return the stored result for a repeated key.
  • Design: "set the price to 10" (PUT) is idempotent; "add 10 to the price" is not, whatever method carries it.

Sources