HTTP Status Codes / 4xx HTTP Status Codes / HTTP 429

429 Too Many Requests (RFC 6585)

This is an educational reference page about HTTP 429 Too Many Requests. The page itself is served as 200 OK so it can be indexed as HTTP documentation.

The user has sent too many requests in a given amount of time. Intended for use with rate-limiting schemes.

What it means

HTTP 429 Too Many Requests means the client has sent too many requests in a given time window.

Common causes

How to fix it

Example response

HTTP/1.1 429 Too Many Requests
Retry-After: 60
Content-Type: application/json

{"error":"Rate limit exceeded"}

Developer notes

Use 429 for client-specific throttling. Use 503 when the whole service is temporarily unavailable.

Questions

What causes a 429 status code?

A 429 status code usually means a client, user, IP address, or API key exceeded a rate limit.

Should a 429 response include Retry-After?

Include Retry-After when the server knows how long the client should wait before trying again.

4xx client error – the request contains bad syntax or cannot be fulfilled


HTTP status code lookup
By Ping Now, a website/API/service uptime monitor
Data from Wikipedia