429 Too Many Requests

429 reports that the client sent too many requests within the server's chosen counting scope.

Meaning

429 Too Many Requests indicates that the user sent too many requests in a server-defined period. HTTP does not define how the server identifies a user, counts requests, or coordinates limits across servers.

HTTP/1.1 429 Too Many Requests
Retry-After: 120
Content-Type: application/problem+json

{"detail":"Request limit reached."}

Expected result: a client can wait 120 seconds before another attempt. The field is guidance for this response, not a guarantee that a later request will succeed or that every client shares one quota.

Retry behavior

Retry-After is optional and can contain a delay in seconds or an HTTP date. A client should apply bounded backoff, respect method semantics, and avoid synchronizing many retries at one instant.

Caching

RFC 6585 prohibits caches from storing a 429 response. An application can still maintain its own rate-limit state independently from an HTTP cache.

Primary sources