HTTP status codes quick reference

The status codes you most often see from APIs and CDNs, from 200 OK to 504 Gateway Timeout. Rare experimental codes are left out.

Updated:

CodeNameMeaning
200OKSuccess with body
201CreatedResource created
204No ContentSuccess, empty body
301Moved PermanentlyPermanent redirect
302FoundTemporary redirect
304Not ModifiedUse cached copy
400Bad RequestClient request invalid
401UnauthorizedAuth required / failed
403ForbiddenAuthenticated but denied
404Not FoundNo such resource
405Method Not AllowedWrong HTTP method
408Request TimeoutClient too slow
409ConflictState conflict
410GonePermanently removed
422Unprocessable EntitySemantics invalid
429Too Many RequestsRate limited
500Internal Server ErrorServer fault
502Bad GatewayUpstream invalid
503Service UnavailableOverloaded / down
504Gateway TimeoutUpstream timeout

Notes

Frequently asked questions

What does HTTP 403 mean?
403 Forbidden means the server understood and authenticated the request but refuses to grant access to the resource. Unlike 401, logging in again will not help.
What is the difference between HTTP 301 and 302 redirects?
301 means the resource has moved permanently, so clients and search engines should use the new URL from now on. 302 is a temporary redirect and the original URL remains valid.
What does HTTP 429 mean and how do I fix it?
429 Too Many Requests means you have hit a rate limit. Slow down your requests and honor the Retry-After header if the server provides one.