HTTP Status Codes
Every status code that matters, with plain-English meaning.
Server received headers, client should send body.
Server agrees to switch protocols.
Preload hints sent before the final response.
Standard success response.
Resource was created. Should return Location header.
Request accepted but processing not yet complete.
Success, but no body to return.
Range request — only part of the resource returned.
Resource has a new permanent URL.
Temporary redirect — original URL should still be used.
POST/PUT response should redirect to GET.
Cached version is still valid.
Like 302 but preserves the HTTP method.
Like 301 but preserves the HTTP method.
Request was malformed.
Authentication required or failed.
Reserved for future use.
Authenticated but not allowed.
Resource doesn't exist.
Endpoint exists but doesn't accept this method.
Server can't produce a response matching Accept headers.
Server timed out waiting for the request.
Request conflicts with current state.
Resource permanently deleted.
Request body exceeds server limit.
Server doesn't accept the Content-Type.
April Fools joke from RFC 2324 (1998).
Well-formed but semantically wrong (validation failed).
Resource is locked.
Server unwilling to risk processing a possibly replayed request.
Rate limited.
Censored or legally restricted (1984 reference).
Generic server error.
Server doesn't support the functionality.
Upstream server returned an invalid response.
Server temporarily down.
Upstream server didn't respond in time.
Captive portal — must authenticate to access network.