HTTP Status Codes
Searchable reference of HTTP status codes with explanations, from 1xx to 5xx.
Continue
The server has received the request headers and the client should proceed to send the body.
Switching Protocols
The server is switching to the protocol requested in the Upgrade header (e.g. WebSocket).
Processing
WebDAV: the server has accepted the request but has not finished processing it yet.
Early Hints
Lets the browser start preloading resources while the server prepares the final response.
OK
The request succeeded. The meaning depends on the method: GET returns the resource, POST returns the result of the action.
Created
The request succeeded and a new resource was created. The Location header usually points to it.
Accepted
The request was accepted for processing, but processing has not completed (asynchronous work).
Non-Authoritative Information
The response was modified by a transforming proxy and may differ from the origin server's.
No Content
The request succeeded and there is no body to return — typical for DELETE and some PUT/PATCH calls.
Reset Content
The request succeeded; the client should reset the document view (e.g. clear a form).
Partial Content
Only part of the resource is returned because the client sent a Range header.
Multi-Status
WebDAV: the body contains multiple independent status codes for sub-operations.
Already Reported
WebDAV: members of a binding were already enumerated earlier in the response.
IM Used
The server fulfilled a GET using one or more instance-manipulations applied to the current instance.
Multiple Choices
The request has more than one possible response; the client should pick one.
Moved Permanently
The resource has a new permanent URL. Search engines transfer ranking; clients may cache this redirect.
Found
The resource is temporarily at a different URL. Clients keep using the original URL for future requests.
See Other
Redirects to another URL that should be fetched with GET (used after POST — Post/Redirect/Get).
Not Modified
The cached copy is still valid; no body is sent. Used with ETag / If-None-Match and If-Modified-Since.
Use Proxy
Deprecated. The resource must be accessed through the proxy given in Location.
Temporary Redirect
Temporary redirect that preserves the request method and body (unlike 302).
Permanent Redirect
Permanent redirect that preserves the request method and body (unlike 301).
Bad Request
The server cannot process the request because of malformed syntax, invalid framing, or bad parameters.
Unauthorized
Authentication is required or has failed. Really means "unauthenticated"; send credentials and retry.
Payment Required
Reserved for future use; some APIs use it to signal a billing or quota problem.
Forbidden
The server understood the request but refuses to authorize it. Re-authenticating will not help.
Not Found
The server cannot find the requested resource. The URL may be wrong or the resource may have been removed.
Method Not Allowed
The method is not supported for this resource. The Allow header lists valid methods.
Not Acceptable
The server cannot produce a response matching the Accept headers sent by the client.
Proxy Authentication Required
Like 401, but the client must authenticate with the proxy first.
Request Timeout
The server timed out waiting for the client to finish sending the request.
Conflict
The request conflicts with the current state of the resource (e.g. edit conflict, duplicate key).
Gone
The resource used to exist but has been permanently removed. Stronger signal than 404.
Length Required
The server requires a Content-Length header and the request did not include one.
Precondition Failed
A condition in the request headers (If-Match, If-Unmodified-Since) evaluated to false.
Content Too Large
The request body is larger than the server is willing or able to process (formerly "Payload Too Large").
URI Too Long
The request URL is longer than the server will interpret.
Unsupported Media Type
The Content-Type of the request body is not supported by the endpoint.
Range Not Satisfiable
The Range header asks for a portion of the file that lies outside its size.
Expectation Failed
The server cannot meet the requirement of the Expect request header.
I'm a Teapot
Defined by the 1998 April Fools' RFC 2324 (HTCPCP). The server is a teapot and refuses to brew coffee.
Misdirected Request
The request was directed at a server that is not able to produce a response for this host.
Unprocessable Content
The body is well-formed but semantically invalid — the usual code for validation errors in REST APIs.
Locked
WebDAV: the source or destination resource is locked.
Failed Dependency
WebDAV: the request failed because it depended on another request that failed.
Too Early
The server is unwilling to risk processing a request that might be replayed (TLS early data).
Upgrade Required
The client must switch to a different protocol, named in the Upgrade header.
Precondition Required
The server requires the request to be conditional to prevent lost-update problems.
Too Many Requests
The client is rate limited. A Retry-After header may say when to try again.
Request Header Fields Too Large
A single header or all headers together are too large (often an oversized cookie).
No Response (nginx)non-standard
nginx closes the connection without sending a response — used to drop malicious requests.
Unavailable For Legal Reasons
Access is denied for legal reasons, such as a court order or government censorship.
Client Closed Request (nginx)non-standard
nginx: the client closed the connection before the server finished responding.
Internal Server Error
The server hit an unexpected condition. Check server logs — usually an unhandled exception.
Not Implemented
The server does not support the functionality required to fulfil the request.
Bad Gateway
A gateway or proxy received an invalid response from the upstream server.
Service Unavailable
The server is overloaded or down for maintenance. May include a Retry-After header.
Gateway Timeout
A gateway or proxy did not get a timely response from the upstream server.
HTTP Version Not Supported
The HTTP version used in the request is not supported by the server.
Variant Also Negotiates
Transparent content negotiation resulted in a circular reference.
Insufficient Storage
WebDAV: the server cannot store the representation needed to complete the request.
Loop Detected
WebDAV: the server detected an infinite loop while processing the request.
Not Extended
Further extensions to the request are required for the server to fulfil it.
Network Authentication Required
The client must authenticate to gain network access (captive portals).
Web Server Returned an Unknown Error (Cloudflare)non-standard
Cloudflare: the origin returned an empty, unknown, or unexpected response.
Web Server Is Down (Cloudflare)non-standard
Cloudflare: the origin refused the connection.
Connection Timed Out (Cloudflare)non-standard
Cloudflare: the TCP connection to the origin timed out.
Origin Is Unreachable (Cloudflare)non-standard
Cloudflare: it could not reach the origin server (DNS or routing problem).
A Timeout Occurred (Cloudflare)non-standard
Cloudflare: the connection was made but the origin did not reply in time.
SSL Handshake Failed (Cloudflare)non-standard
Cloudflare: the TLS handshake with the origin failed.
Invalid SSL Certificate (Cloudflare)non-standard
Cloudflare: the origin's TLS certificate is invalid or expired.