HTTP Status Code Reference
Quick lookup for all standard HTTP status codes β search by code, name, or description
61 of 61 status codes
The server has received the request headers and the client should proceed to send the request body.
The server is switching protocols as requested by the client (e.g. upgrading to WebSocket).
The server has received and is processing the request, but no response is available yet (WebDAV).
Used to preload resources while the server prepares a response.
The request succeeded. The response body contains the requested resource.
The request succeeded and a new resource was created. The Location header points to the new resource.
The request has been accepted for processing, but processing is not yet complete.
The response is from a transforming proxy (e.g. CDN) and may differ from the origin.
The request succeeded but there is no content to return. Common after DELETE or PUT.
The request succeeded; the client should reset its document view.
The server is returning part of the resource due to a Range request header (used for resumable downloads).
The response body contains multiple status codes for batch operations (WebDAV).
Members of a DAV binding have already been enumerated in a preceding part of the response (WebDAV).
The server has fulfilled a GET request using delta encoding (HTTP Delta encoding).
The request has more than one possible response. The user or user agent should choose one.
The resource has been permanently moved to a new URL. Browsers and crawlers should update their links.
The resource is temporarily at a different URL. The original URL should be used for future requests.
The response to the request can be found at a different URI using a GET request. Used after POST/PUT.
The resource has not been modified since the version specified by the request headers. Use cached version.
The request should be repeated at another URI using the same method. The original URL remains valid.
The resource has been permanently moved. Unlike 301, the method must not change (POST stays POST).
The server could not understand the request due to invalid syntax (malformed JSON, missing fields, etc.).
Authentication is required and has failed or not been provided. Client should authenticate and retry.
Reserved for future use. Some APIs use this when a usage quota or subscription is required.
The client is authenticated but does not have permission to access this resource.
The server cannot find the requested resource. The URL may be wrong or the resource deleted.
The HTTP method (GET, POST, etc.) is not supported for this endpoint.
The server cannot produce a response matching the Accept headers sent by the client.
The client must first authenticate with the proxy server.
The server timed out waiting for the request. The client can retry.
The request conflicts with the current state of the resource (e.g. duplicate entry, version mismatch).
The resource has been permanently deleted and will not be available again. Unlike 404, this is definitive.
The server requires a Content-Length header in the request.
A conditional request header (If-Match, If-Unmodified-Since) evaluated to false.
The request body exceeds the server limit. Common when uploading large files.
The URI is longer than the server is willing to interpret.
The Content-Type of the request body is not supported (e.g. sending XML to a JSON-only endpoint).
The Range header in the request cannot be fulfilled by the server.
The Expect request-header field could not be met by the server.
An April Fools' joke from RFC 2324. Any permanent attempt to brew coffee with a teapot should result in this error.
The request was directed to a server that cannot produce a response for this combination of scheme and authority.
The request was well-formed but the server was unable to process the contained instructions (e.g. validation errors).
The resource being accessed is locked (WebDAV).
A request failed because it depended on another request that failed (WebDAV).
The server is unwilling to risk processing a request that might be replayed (TLS early data).
The server refuses the request using the current protocol. The client should switch to a different protocol (e.g. TLS).
The server requires the request to be conditional to prevent the "lost update" problem.
The client has sent too many requests in a given time (rate limiting). Check the Retry-After header.
The server is unwilling to process the request because its header fields are too large.
The resource is blocked for legal reasons (e.g. government censorship or DMCA takedown).
A generic error when the server encounters an unexpected condition with no more specific message.
The server does not support the HTTP method used in the request.
The server acting as a gateway received an invalid response from an upstream server.
The server is not ready to handle the request. Common causes: maintenance, overload. Check Retry-After.
The server acting as a gateway did not receive a response in time from the upstream server.
The server does not support the HTTP version used in the request.
Transparent content negotiation for the request results in a circular reference.
The server cannot store the representation needed to complete the request (WebDAV).
The server detected an infinite loop while processing the request (WebDAV).
Further extensions to the request are required for the server to fulfill it.
The client needs to authenticate to gain network access (e.g. captive portal).