Status code classes
- 1xx โ informational
- 2xx โ success
- 3xx โ redirection
- 4xx โ client error (fix the request)
- 5xx โ server error (fix the server)
Every common HTTP status code explained, with causes and how to fix them. Searchable reference.
๐ Runs locally โ your input never leaves this browser tab
100 Continue
The server received the request headers and the client should send the body.
101 Switching Protocols
The server is switching protocols as requested, e.g. upgrading to WebSocket.
103 Early Hints
Lets the browser start preloading resources before the final response.
200 OK
The request succeeded.
201 Created
The request succeeded and a new resource was created.
202 Accepted
The request was accepted for processing, but processing is not complete.
204 No Content
The request succeeded and there is no body to return.
206 Partial Content
The server is returning part of the resource because of a Range header.
301 Moved Permanently
The resource has a new permanent URL.
302 Found
The resource is temporarily at a different URL.
303 See Other
Redirect to another URL using GET, typically after a form POST.
304 Not Modified
The cached version is still valid; no body is sent.
307 Temporary Redirect
Temporary redirect that keeps the original HTTP method and body.
308 Permanent Redirect
Permanent redirect that keeps the original HTTP method and body.
400 Bad Request
The server cannot process the request because it is malformed.
401 Unauthorized
Authentication is required or the credentials are invalid.
403 Forbidden
The server understood the request but refuses to authorize it.
404 Not Found
The server cannot find the requested resource.
405 Method Not Allowed
The HTTP method is not supported for this URL.
406 Not Acceptable
The server cannot produce a response matching the Accept headers.
408 Request Timeout
The server timed out waiting for the client to send the request.
409 Conflict
The request conflicts with the current state of the resource.
410 Gone
The resource has been permanently removed.
411 Length Required
The server requires a Content-Length header.
412 Precondition Failed
A precondition in the request headers (e.g. If-Match) was not met.
413 Content Too Large
The request body is larger than the server allows.
414 URI Too Long
The URL is longer than the server will process.
415 Unsupported Media Type
The request body format is not supported.
418 I'm a teapot
An April Fools' joke from RFC 2324, sometimes used to reject bots.
422 Unprocessable Content
The request is well-formed but contains semantic errors.
425 Too Early
The server will not process a request that might be replayed (TLS early data).
426 Upgrade Required
The client must switch to a different protocol.
428 Precondition Required
The server requires conditional requests to prevent lost updates.
429 Too Many Requests
The client has sent too many requests in a given time (rate limited).
431 Request Header Fields Too Large
The headers are too large.
451 Unavailable For Legal Reasons
Access is blocked for legal reasons.
499 Client Closed Request (nginx)
Non-standard nginx code: the client closed the connection before the server responded.
500 Internal Server Error
A generic error: the server hit an unexpected condition.
501 Not Implemented
The server does not support the functionality required.
502 Bad Gateway
A proxy or gateway received an invalid response from the upstream server.
503 Service Unavailable
The server is temporarily unable to handle the request.
504 Gateway Timeout
A proxy did not get a response from upstream in time.
505 HTTP Version Not Supported
The server does not support the HTTP version used.
507 Insufficient Storage
The server cannot store the representation needed to complete the request.
520 Unknown Error (Cloudflare)
Cloudflare-specific: the origin returned an empty or unexpected response.
521 Web Server Is Down (Cloudflare)
Cloudflare-specific: the origin refused the connection.
522 Connection Timed Out (Cloudflare)
Cloudflare-specific: the TCP connection to the origin timed out.
524 A Timeout Occurred (Cloudflare)
Cloudflare-specific: the origin accepted the connection but did not reply within 100 seconds.
525 SSL Handshake Failed (Cloudflare)
Cloudflare-specific: the TLS handshake with the origin failed.
526 Invalid SSL Certificate (Cloudflare)
Cloudflare-specific: the origin certificate is invalid while SSL mode is Full (strict).
No matching status code.