HTTP Status Codes
1xx Informational responses indicating that the requester should continue with the operation | |
---|---|
Status Code | Meaning Explanation |
100 Continue | The requester should continue with the request. The server returns this code to indicate that it has received the first part of the request and is waiting for the remaining part. |
101 Switching Protocols | The requester has asked the server to switch protocols, and the server has confirmed and is ready to switch. |
102 Processing | An extension status code defined by WebDAV (RFC 2518) indicating that processing will continue. |
2xx Success, the operation was successfully received and processed | |
---|---|
Status Code | Meaning Explanation |
200 OK | The server has successfully processed the request. Typically, this means the server has provided the requested webpage. |
201 Created | The request was successful, and the server created a new resource. |
202 Accepted | The server has accepted the request but has not yet processed it. |
203 Non-Authoritative Information | The server successfully processed the request, but the information returned may come from another source. |
204 No Content | The server successfully processed the request but did not return any content. |
205 Reset Content | The server successfully processed the request and did not return any content. However, unlike a 204 response, a response with this status code requires the requester to reset the document view. This response is mainly used to reset the form immediately after accepting user input, allowing the user to easily start another input. |
206 Partial Content | The server successfully processed part of the GET request. |
207 Multi-Status | An extension status code defined by WebDAV (RFC 2518) indicating that the subsequent message body will be an XML message and may contain a series of independent response codes depending on the number of previous sub-requests. |
208 Already Reported | A binding member of a DAV has been enumerated by the previous request and has not been included again. |
226 IM Used | The server has fulfilled the request for the resource and the response is one or more instance-manipulations applied to the current instance. |
3xx Redirection, indicating that further action is needed to complete the request | |
---|---|
Status Code | Meaning Explanation |
300 Multiple Choices | For the request, the server can perform multiple operations. The server may allow the requester (user agent) to choose one operation or provide a list of operations for the requester to choose from. |
301 Moved Permanently | The requested webpage has been permanently moved to a new location. When the server returns this response (in response to a GET or HEAD request), it automatically redirects the requester to the new location. |
302 Move Temporarily | The server is currently responding to the request from a different location, but the requester should continue to use the original location for future requests. |
303 See Other | The requester should use a separate GET request to retrieve the response from a different location when the server returns this code. |
304 Not Modified | Since the last request, the requested webpage has not been modified. When the server returns this response, it does not return the webpage content. |
305 Use Proxy | The requester can only access the requested webpage through a proxy. If the server returns this response, it also indicates that the requester should use the proxy. |
306 Switch Proxy | In the latest specification, the 306 status code is no longer used. |
307 Temporary Redirect | The server is currently responding to the request from a different location, but the requester should continue to use the original location for future requests. |
308 Permanent Redirect | This request and future requests should be redirected to another URI. 307, 308, and 302, 301 have the same behavior, but HTTP methods are not allowed to change. For example, a request form to a permanently moved resource will continue to execute smoothly. |
4xx Client errors, indicating that the request contains syntax errors or cannot be completed | |
---|---|
Status Code | Meaning Explanation |
400 Bad Request | The server does not understand the syntax of the request. |
401 Unauthorized | The request requires authentication. For webpages that require login, the server may return this response. |
402 Payment Required | This status code is reserved for future possible requirements. |
403 Forbidden | The request is valid, but the server refuses to perform the operation. The user may not have the necessary permissions for the resource. |
404 Not Found | The server cannot find the requested webpage. |
405 Method Not Allowed | The method specified in the request is not allowed. |
406 Not Acceptable | The requested content characteristics cannot be used to respond to the request. |
407 Proxy Authentication Required | This status code is similar to 401 (Unauthorized) but indicates that the requester should authorize the use of the proxy. |
408 Request Timeout | The server timed out waiting for the request. |
409 Conflict | The server encountered a conflict while completing the request. The server must include information about the conflict in the response. |
410 Gone | The server will return this response if the requested resource has been permanently deleted. |
411 Length Required | The server does not accept requests without a valid content-length header field. |
412 Precondition Failed | The server did not meet one of the preconditions set by the requester in the request. |
413 Request Entity Too Large | The server cannot process the request because the request entity is too large, exceeding the server's processing capacity. |
414 Request-URI Too Long | The requested URI (usually a URL) is too long for the server to process. |
415 Unsupported Media Type | The format of the request is not supported by the requested page. |
416 Requested Range Not Satisfiable | If the page cannot provide the requested range, the server will return this status code. |
417 Expectation Failed | The server did not meet the requirements of the 'Expect' request header field. |
418 I'm a teapot | This code was defined in 1998 as a traditional IETF April Fools' joke in RFC2324, the Hypertext Coffee Pot Control Protocol, but has not been implemented by actual HTTP servers. RFC specifies that this code should be returned by a teapot to instant coffee. |
421 Misdirected Request | The request was directed to a server that cannot generate a response (e.g., due to connection reuse). |
422 Unprocessable Entity | The request format is correct, but due to semantic errors, it cannot be responded to. (RFC 4918 WebDAV) |
423 Locked | The current resource is locked. |
424 Failed Dependency | The current request failed due to an error that occurred in a previous request, such as PROPPATCH. |
425 Too Early | The status code 425 Too Early indicates that the server is unwilling to take the risk of processing the request because doing so might be subject to 'replay', leading to potential replay attacks. |
426 Upgrade Required | The client should switch to TLS/1.0. |
429 Too Many Requests | The user has sent too many requests in a given amount of time. |
431 Request Header Fields Too Large | The server is unwilling to process the request because a single header field or all header fields are too large. |
449 Retry With | An extension by Microsoft indicating that the request should be retried after performing the appropriate action. |
451 Unavailable For Legal Reasons | The request is unavailable for legal reasons. |
5xx Server errors, indicating that the server encountered internal errors while trying to process the request. These errors may be due to issues on the server side rather than errors in the request | |
---|---|
Status Code | Meaning Explanation |
500 Internal Server Error | The server encountered an error and could not complete the request; generally, this issue occurs when there is an error in the server-side source code. |
501 Not Implemented | The server does not support a feature required by the current request. When the server cannot recognize the request method and cannot support it for any resource. |
502 Bad Gateway | The server acting as a gateway or proxy received an invalid response from the upstream server while trying to fulfill the request. |
503 Service Unavailable | The server is currently unable to handle the request (due to overload or maintenance). Typically, this is just a temporary status. |
504 Gateway Timeout | The server, acting as a gateway or proxy, did not receive a timely response from the upstream server. |
505 HTTP Version Not Supported | The server does not support the HTTP protocol version used in the request. |
506 Variant Also Negotiates | An extension defined by the Transparent Content Negotiation Protocol (RFC 2295) indicating that the server has an internal configuration error: the requested negotiated variant resource is configured to use itself in transparent content negotiation, making it not a suitable focus in a negotiation process. |
507 Insufficient Storage | The server cannot store the content necessary to fulfill the request. This condition is considered temporary. |
509 Bandwidth Limit Exceeded | The server has reached its bandwidth limit. This is not an official status code but is still widely used. |
510 Not Extended | The policy required to obtain the resource has not been met. |
511 Network Authentication Required | The client needs to authenticate to gain network access. |
Description
Comprehensive HTTP status codes with corresponding names and explanations.