HTTP Status Codes – A Complete List

http-status-codes-featured-image

What are HTTP Status Codes?

HTTP status codes are three-digit numbers returned by a web server to indicate the status of a client’s request. They provide standardized communication and feedback on the success or failure of the request.These status codes provide information about the outcome of the request. They also enable effective communication between the client and server. Each status code has a specific meaning and falls into one of five categories:

Categories of HTTP Status Codes

Informational Codes (1xx) These codes provide information about the request and are not commonly used.
Success Codes (2xx) These codes indicate that the request was successfully received, understood, and processed.
Redirection Codes (3xx) These codes indicate that further action is required to fulfill the request.
Client Error Codes (4xx) These codes indicate that there was an error on the client’s side.
Server Error Codes (5xx) These codes indicate that there was an error on the server’s side.
Informational Codes (1xx)
Server processing or providing preliminary information.
100 Continue The server has received the initial part of the request and asks the client to continue.
101 Switching Protocols The server agrees to switch protocols specified in the request.
102 Processing The server has received and is processing the request, but no response is available yet.
103 Early Hints This status code indicates that the server is sending some preliminary information before sending the final response headers.
104 Connection Reset By Peer The connection was forcibly closed by a peer.
105 Name Not Resolved The requested hostname cannot be resolved to an IP address.
106 No Response The server didn’t send any response within the timeout period.
107 Proxy Authentication Required The client must authenticate itself with the proxy before making a request.
109 Retry With The client should retry the request using a different protocol or at a different location.
110 Response is stale The response returned by the server is stale and should be revalidated.
111 Revalidation Failed The server was unable to revalidate a cache entry.
Success Codes (2xx)
Successful request and response
200 OK The request was successful, and the server has returned the requested resource.
201 Created The request was successful, and a new resource was created as a result.
202 Accepted The request has been accepted for processing, but the processing has not been completed.
203 Non-Authoritative Information The server is a proxy and has received a valid response from the upstream server but is returning its own cached copy.
204 No Content The request was successful, but there is no content to return.
205 Reset Content The server instructs the client to reset the document from which the request originated.
206 Partial Content The server has fulfilled the partial GET request for the resource.
207 Multi-Status The response represents multiple independent responses for different parts of the requested resource.
208 Already Reported The members of a DAV binding have already been enumerated in a preceding part of the response.
210 Content Different The content of the response has a different meaning depending on the media type that is returned
211 Content Location The response provides a URL for accessing a resource that is the result of the requested action
212 Object Data The response contains the representation of an object’s data.
213 Multiple Resource Instances The response indicates multiple instances of the requested resource exist, each with its own set of properties.
214 Transform Applied The response represents the result of a transformation or conversion applied to the resource.
215 Content Deleted The requested resource has been deleted, but the response may contain some related content.
216 IM Used The server has fulfilled a POST request for the resource, and the response is a representation of the result of one or more instance-manipulations applied to the current instance
217 OK Delta Encoding Applied: The response is a delta encoding of the requested resource, containing only the changes between the current and previous versions.
218 This Is Fine The server is returning this response to indicate that everything is working as expected, even though the situation may be unusual.
219 Content Transferred: The response indicates that the content has been transferred successfully to another instance, thus ending the current instance.
220 Load Balancer Start The server response is sent by a load balancer to notify the client that a new server load balancing process has started.
221 Load Balancer End The server response is sent by a load balancer to notify the client that the server load balancing process has ended.
222 Authentication Successful The server response indicates that the authentication process was successful.
226 IM Used The server has fulfilled a GET request for the resource, and the response is a representation of the result of one or more instance-manipulations applied to the current instance
250 Low on Storage Space The server is temporarily unable to store the representation needed to complete the request.
251 Requested Range Not Satisfiable The server cannot produce a response that satisfies the range specified in the request’s Range header field
252 Unprocessable Entity The server understands the content type of the request entity but was unable to process the contained instructions.
253 Locked The resource that is being accessed is locked
254 Method Not Found The server has encountered a request with an unsupported method.
255 Extended Code The response indicates that the content has been transferred successfully to another instance, thus ending the current instance.
299 Miscellaneous Persistent Warning Start The server has encountered a warning that can’t be assigned to any of the other 2xx status codes.
Redirection Codes (3xx)
Redirecting clients to a different resource or location
300 Multiple Choices Indicates multiple options for the requested resource, each with its own specific location.
301 Moved Permanently The requested resource has been permanently moved to a new URL.
302 Found The requested resource has been temporarily moved to a different location.
303 See Other The response to the request can be found under a different URI, and should be retrieved using a GET method.
304 Not Modified The client’s cached version of the requested resource is still valid
305 Use Proxy The requested resource must be accessed through the specified proxy.
306 Unused This status code is no longer used and is reserved for future use.
307 Temporary Redirect The requested resource is temporarily available at a different URL
308 Permanent Redirect the requested resource has been permanently moved to a different URL
310 Too Many Redirects The requested resource has been redirected so many times that further requests are unlikely to be successful.
311 Redirect Method The requested resource is temporarily being redirected to another URI using the specified method
312 Unassigned This status code is currently unassigned and reserved for future use.
321 Moved Permanently Redirected: The requested resource has been permanently moved to a new URL, but the client should continue to use the original URL.
322 Moved Temporarily-Redirected The requested resource has been temporarily moved to a different location, and the client should use the new URL for future requests.
323 See Other – Redirected The response to the request can be found under a different URI and should be retrieved using a GET method.
324 Not Modified – Redirected The client’s cached version of the requested resource is still valid, and a new request should not be made.
325 Use Proxy – Redirected The requested resource must be accessed through the specified proxy.
326 Unused – Redirected This status code is no longer used and is reserved for future use.
327 Temporary Redirect-Redirected The requested resource is temporarily available at a different URL, and the client should use the new URL for future requests.
328 Permanent Redirect – Redirected The requested resource has been permanently moved to a different URL, and the client should use the new URL for future requests.
329 Redirect – Redirected The requested resource is temporarily being redirected to another URI.
330 Redirect – Redirected The requested resource is temporarily being redirected to another URI using the specified method.
Client Error Codes (4xx)
Client-side errors in the request, such as invalid syntax or unauthorized access.
400 Bad Request The server cannot process the request due to malformed syntax or invalid parameters
401 Unauthorized The client must authenticate itself to get the requested response.
402 Payment Required The payment is required to access the requested resource.
403 Forbidden The server understands the request, but the client is not authorized to access the requested resource.
404 Not Found The server could not find the requested resource.
405 Method Not Allowed The method specified in the request is not allowed for the resource.
406 Not Acceptable The server cannot produce a response matching the list of acceptable values defined by the client.
407 Proxy Authentication Required The client must authenticate itself with the proxy before making a request
408 Request Timeout The server timed out waiting for the request.
409 Conflict The request could not be completed due to a conflict with the current state of the resource.
410 Gone The requested resource is no longer available and will not be available again.
411 Length Required The server requires the Content-Length header to be specified in the request.
412 Precondition Failed The server does not meet the preconditions specified in the request.
413 Payload Too Large The request entity is larger than the server is willing or able to process.
414 Request (URI Too Long) The server refuses to process the request because the requested URI is too long.
416 Range Not Satisfiable The server cannot satisfy the range specified in the request’s Range header field.
417 Expectation Failed The server cannot meet the requirements specified in the Expect request header field
418 I’m a teapot This code was defined in an April Fools’ Day RFC and is not meant to be taken seriously.
421 Misdirected Request The server is unable to produce a response for this request due to a misdirected or ambiguous request.
422 Unprocessable Entity The server understands the content of the request, but it cannot process it due to semantic errors.
423 Locked The requested resource is locked and is temporarily unavailable for access or modification.
424 Failed Dependency The request failed because it depended on another request that failed or was not yet completed.
426 Upgrade Required The client must switch to a different protocol to access the requested resource.
428 Precondition Required The server requires the request to be conditional based on the provided preconditions.
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 rejects the request due to excessively large request headers.
451 Unavailable For Legal Reasons The server denies access to the requested resource based on legal restrictions or regulations.
499 Client Closed Request The client closed the connection before the server could respond.
Server Error Codes (5xx)
Server-side errors indicating a failure or inability to fulfill the request.
500 Internal Server Error The server encountered an unexpected condition that prevented it from fulfilling the request.
501 Not Implemented The server does not support the functionality required to fulfill the request.
502 Bad Gateway The server acting as a gateway received an invalid response from an upstream server.
503 Service Unavailable The server is temporarily unable to handle the request due to maintenance or high load
504 Gateway Timeout The server acting as a gateway did not receive a timely response from an upstream server.
505 HTTP Version Not Supported The server does not support the HTTP protocol version used in the request
506 Variant Also Negotiates Transparent content negotiation for the request results in a circular reference.
507 Insufficient Storage The server is unable to store the representation needed to complete the request.
508 Loop Detected The server detected an infinite loop while processing the request.
509 Bandwidth Limit Exceeded The server has exceeded the bandwidth limit for the requested resource.
510 Not Extended: Further extensions to the request are required for the server to fulfill it.
511 Network Authentication Required The client needs to authenticate to gain network access.
520 Web Server Returned an Unknown Error 520 Web Server Returned an Unknown Error
521 Web Server Is Down The server is currently down and unable to handle the request.
522 Connection Timed Out The server timed out waiting for a response from another server it needed to access to complete the request.
523 Origin Is Unreachable The server could not reach the origin server to complete the request.
524 A Timeout Occurred A connection established by the server timed out while waiting for a response from the client.
525 SSL Handshake Failed The SSL/TLS handshake between the server and the client failed.
526 Invalid SSL Certificate The server is unable to validate the SSL certificate provided by the client.
527 Railgun Error An error occurred during a Railgun connection.
530 Site is Frozen The requested site is temporarily unavailable due to being frozen.
599 Network Connect Timeout Error This status code is not specified in any official HTTP standard, but it may be used by some servers to indicate network connection timeout errors.

Importance of HTTP Status Codes

  • HTTP status codes provide standardized communication between clients and servers.
  • They help developers and system administrators identify and diagnose issues quickly.
  • They provide a way to handle errors gracefully and provide appropriate feedback to users.
  • HTTP status codes help diagnose and troubleshoot issues with web servers and client requests.
  • They provide feedback to users about the success or failure of their requests.

Best Practices

  • Use the appropriate HTTP status codes to provide accurate information about the request.
  • Provide helpful error messages to assist users in resolving issues.
  • Regularly monitor and analyze HTTP status codes to identify and fix potential problems.

Final Comments!

HTTP status codes are essential indicators of the outcome of client requests made over the HTTP protocol. They are categorized into informational, success, redirection, client error, and server error codes, each with its specific meaning. These status codes play a vital role in communication, helping clients and servers understand the success or failure of a request. Understanding and utilizing the correct status codes is crucial for effective troubleshooting, providing feedback to users, and maintaining a reliable web service. By adhering to best practices and consistently monitoring status codes, developers and system administrators can ensure smooth and efficient interactions between clients and servers.

Does your website have the potential for success? Find out with our free assistance!:

{Get in Touch With Our Profesionals}

Talk To Expert