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 via the Upgrade header.
The server has received and is processing the request, but no response is available yet (WebDAV).
Used to return some response headers before the final HTTP message, allowing the client to preload resources.
The request has succeeded. The meaning depends on the HTTP method used.
The request has been fulfilled and a new resource has been created.
The request has been accepted for processing, but the processing has not been completed.
The returned metadata is not exactly the same as available from the origin server.
The server successfully processed the request but is not returning any content.
The server successfully processed the request and asks the client to reset the document view.
The server is delivering only part of the resource due to a Range header sent by the client.
Conveys information about multiple resources where multiple status codes might be appropriate (WebDAV).
The members of a DAV binding have already been enumerated and are not being included again (WebDAV).
The server has fulfilled a GET request and the response is a representation of the result of instance-manipulations applied to the current instance.
The request has more than one possible response. The user or user agent should choose one.
The URL of the requested resource has been changed permanently. The new URL is given in the response.
The URI of requested resource has been changed temporarily. The client should use the same method for future requests.
The server sent this response to direct the client to get the requested resource at another URI with a GET request.
The resource has not been modified since the version specified by the request headers (If-Modified-Since or If-None-Match).
The requested resource must be accessed through the proxy given by the Location header. Deprecated for security reasons.
The server sends this response to direct the client to get the requested resource at another URI with the same method.
The resource is now permanently located at another URI, specified by the Location header. The method and body must not change.
The server cannot process the request due to something perceived to be a client error (malformed syntax, invalid framing, etc.).
The client must authenticate itself to get the requested response. Semantically means 'unauthenticated'.
Reserved for future use. Originally created for digital payment systems.
The client does not have access rights to the content. Unlike 401, the server knows the client's identity.
The server cannot find the requested resource. The URL is not recognized or the endpoint is valid but the resource does not exist.
The request method is known by the server but is not supported by the target resource.
The server cannot produce a response matching the list of acceptable values defined in the request's proactive content negotiation headers.
Similar to 401, but authentication needs to be done by a proxy.
The server timed out waiting for the request. The client did not produce a request within the time the server was prepared to wait.
The request conflicts with the current state of the server.
The content has been permanently deleted from the server, with no forwarding address.
The server rejects the request because the Content-Length header field is not defined and the server requires it.
The client has indicated preconditions in its headers which the server does not meet.
The request entity is larger than limits defined by the server.
The URI requested by the client is longer than the server is willing to interpret.
The media format of the requested data is not supported by the server.
The range specified by the Range header field in the request cannot be fulfilled.
The expectation given in the Expect request header could not be met by the server.
The server refuses to brew coffee because it is, permanently, a teapot. Defined by the Hyper Text Coffee Pot Control Protocol (RFC 2324).
The request was directed at a server that is not able to produce a response.
The request was well-formed but was unable to be followed due to semantic errors.
The resource that is being accessed is locked (WebDAV).
The request failed due to failure of a previous request (WebDAV).
The server is unwilling to risk processing a request that might be replayed.
The server refuses to perform the request using the current protocol but might do so after the client upgrades to a different protocol.
The origin server requires the request to be conditional to prevent the 'lost update' problem.
The user has sent too many requests in a given amount of time (rate limiting).
The server is unwilling to process the request because its header fields are too large.
The user requests a resource that is not available due to legal reasons, such as censorship or government-mandated blocks.
The server has encountered a situation it does not know how to handle.
The request method is not supported by the server and cannot be handled.
The server, while acting as a gateway or proxy, received an invalid response from the upstream server.
The server is not ready to handle the request. Common causes include maintenance or overloading.
The server, acting as a gateway, did not get a response in time from the upstream server.
The HTTP version used in the request is not supported by the server.
The server has an internal configuration error: transparent content negotiation results in a circular reference.
The server is unable to 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, typically used by captive portals.