HTTP status codes are three-digit response codes or messages delivered by a server or search engine to another server's browser or user. These codes or answers allow servers to connect with internet users. When a request is made to visit a certain website or Web page, these codes notify the user whether or not the server is operational. There is a long list of HTTP status codes that tell a user whether or not a Web page is accessible, and if not, what measures must be followed next.


What are HTTP status codes?


 A status code is a server response to a browser's request. When you enter a web URL into your browser, the browser sends a request to the server of that particular site. The server then returns a three-digit HTTP status code to the browser.


These HTTP response codes are the internet conversations between the browser and the respective server. Identifying the HTTP Protocol helps us determine site errors and minimize downtime and bounce rate, which in turn improves search engine ranking.


HTTP status codes are the first thing Google checks when crawling the content.



List of HTTP Response Status Codes


HTTP status codes are broadly divided into five groups which are:


  • 1xx HTTP response code group
  • 2xx HTTP response code group
  • 3xx HTTP response code group
  • 4xx HTTP response code group
  • 5xx HTTP response code group



Here is a list of HTTP status codes and what each one means:


1xx HTTP response code group



100 Status Code: Continue


The 100 HTTP status code ‘Continue’ is an informational status code that indicates that the server has received the initial request to access the link from the browser and that the user should continue with the request.


101 Status Code: Switching Protocol


The 101 HTTP status code indicates that the server has received the browser’s request to change the protocol. The server complies by switching protocol and responding with an upgrade response header.


102 Status Code: Processing



This 102 HTTP status code means that the server has received and accepted the request sent by the browser but has sent an interim response to the browser because it has not completed the request yet.


103 Status Code: Early Hints


The 103 HTTP status code indicates that the preloaded resources are visible to the user while the server sends early hints that it is likely to prepare a final response that includes the appropriate link header.


2xx HTTP response code group



201 Status Code: Created



The 201 HTTP status code is one of the foremost success status codes in the list of HTTP status codes. The ‘Created’ code indicates to the user that their request has succeeded and multiple new resources have been created.


202 Status Code: Accepted


The 202 HTTP status code lets users know that their request has been accepted but is still in processing. This does not mean that the request will definitely be processed as it can get canceled later on too. This status code, therefore, is noncommittal.


203 Status Code: Non-Authoritative Information


The 203 status code informs users that the request submitted to the server was successful, but the meta-information is collected from a third party or a local copy instead of from the origin server.



204 Status Code: No Content


The 204 status code informs the user that while their request has been accepted and processed, there is no content or information available on the server, except for the headers.



205 Status Code: Reset Content


The 205 status code tells the user at the browser end to reset the content in the document that sent the request. Consider the example of filling a form online. In case of error, the server asks for the form to be cleared and reset so that the information can be entered again.



206 Status Code: Partial Content


The 206 status code indicates that the request has been accepted, but only part of the data or resources available are sent to the user.



207 Status Code: Multi-Status


The 207 HTTP status code displays data and information from multiple resources in response to several operations and multiple HTTP status codes at once.



208 Status Code: Already Reported


The 208 HTTP status code is for those users who use DAV to create and manage files collaboratively with others. It is used in the DAV:propstat response to prevent internal members from repetitive enumeration of multiple bindings in the same collection.



226 Status Code: IM Used


The 226 status code means the server has completed the user request, or Get request, for a given resource. The response represents the result of one or multiple instance manipulations, which is applied to the current instance.



3xx HTTP response code group


300 Status Code: Multiple Choice


The 300 status code is the first in the redirection HTTP codes list. It indicates to the user that the request has many response options, and they can choose any one resource.



301 Status Code: Permanent Redirection


This code shows that a web page has been permanently replaced with a different resource. Redirect allows you to direct traffic from one location to another. Ensure proper SEO while making the changes and routing visitors to the correct location of your site. Typically, this is the one you will want to use for SEO purposes for preventing 404 errors.



302 Status Code: Temporary Redirection


This code indicates that the request sent by the browser for a web page was found, but the URL or content has been moved temporarily.



303 Status Code: See Other


The 303 See Other HTTP status code directs the user to get the source requested at another URI with a Get request to the server.



304 Status Code: Not Modified


This message is an HTTP response code that prompts implicit redirection to a cached version of the requested resource. This code tells the browser that the resources stored in the browser cache haven’t changed. Also, the HTTP status code 304 is used to speed up web page delivery by utilizing the downloaded resources.



4xx HTTP response code group


400 Status Code: Bad Request


The 400 status code indicates an error at the client or user end and lets them know that the server could not understand the request due to bad syntax (spelling, punctuation, and other errors). 



 401 Status Code: Unauthorized Error


This indicates that the request sent by the browser could not be authenticated. The authentication may have been provided by the client, but the client is not permitted to access the requested resource. 



402 Status Code: Payment Required


The 402 status code was created for directing the user to complete digital payments. After the payment, the server was supposed to display the requested content. However, this status code is reserved for future use. 



403 Status Code: Forbidden Error


The server understood the request however, it refuses to authorize it. This code is returned when the user attempts to access something that they do not have permission to access.



404 Status Code: Page Not Found


Say someone tries to access example.com/news-events but the news-events page doesn’t have any content. The user will then see status code 404 because even if the webserver is functioning, the request for that particular page doesn’t exist. It’s not just the page, any asset missing can generate a 404 error code on the server e.g. Incorrect URL, Missing image file, missing JavaScript or CSS, etc. 



405 Status Code: Method Not Allowed


This response code shows that the request is recognized by the server, but it is rejecting that particular target resource. 405 error code confirms that the requested resource is valid and exists, but the client had used an unacceptable HTTP method during the request. 



406 Status Code: Not Acceptable


The 406 status code informs the user that the server could not find any resource or data following the user’s request even after performing server-driven content negotiation. 



407 Status Code: Proxy Authentication Required


The 407 status code is very much like the 401 unauthorized status code because the server requires user authentication before submitting the request using a proxy. 



408 Status Code: Request Timeout


The 408 request timeout status code is sent by servers with an idle connection wanting to shut down browsers with unused connections. Sometimes, the server shuts the idle connection down without sending this status code. 



409 Status Code: Conflict


The 409 Conflict status code is sent to users to let them know that their request conflicts with the current state of the target server or resource and will be available only after the conflict is resolved. 



410 Status Code: Gone


The 410 Gone status code is sent to the user when the requested resource or content has been permanently deleted from the server, with no forwarding address or new URL. 


 

411 Status Code: Length Required


The 411 Length required HTTP status code is to inform users that their request was rejected because the content length in the header field was undefined.  



412 Status Code: Precondition Failed


The 412 status code tells the user that the request has one or more preconditions in its headers that the server is not able to meet. 



413 Status Code: Payload Too Large


The 413 status code indicates that the server refuses to process the user request because the request payload is larger than the server can process. The server then closes the connection or generates a retry-after header field for the user. 


 

414 Status Code: URL Too Long


The 414 HTTP status code means just that—the URL requested is too long for the server to understand and load. 



415 Status Code: Unsupported Media Type


The 415 status code is also self-explanatory. It means that the media format used in the user’s request is not recognized by the server and hence, is rejected. 


 

416 Status Code: Range Not Satisfiable


The 416 status code lets the user know that the range specified in the range header field of the user’s request is outside the size of the target URL’s data or information. 


 

417 Status Code: Expectation Failed


The 417 expectation failed status code means that the server could not meet the expectation indicated in the expect request header.   



418 Status Code: I’m a teapot


The 418 I’m a teapot HTTP status code was released in 1998 as an April Fools joke and quoted the text, “Any attempt to brew coffee with a teapot should result in the error code 418. I’m a teapot”.


 


5xx HTTP response code group



500 Status Code: Internal Server Error


The 500 Internal server error code indicates that the server has failed to understand and handle a situation or request. Reasons are not mentioned. 



501 Status Code: Not Implemented


This status code is received when the web server does not recognize the request method and is incapable of supporting it.



502 Status Code: Bad Gateway


This error is a status code which means that one server on the internet received an invalid response from another server. Different webservers and operating systems represent the 502 bad gateway errors in various ways. But they all have the same meaning. 



503 Status Code: Service unavailable


The server is temporarily unable to handle the request due to the server overload or it being down for maintenance.



504 Status Code: Gateway Timeout


When one server fails to receive a timely response from another server that it was accessing while loading a web page or fulfilling a request by the browser.



505 Status Code: HTTP Version Not Supported


The 505 HTTP Version Not Supported status code informs the user that the server does not support the HTTP version used in the request by the user.



506 Status Code: Variant Also Negotiates


The 506 status code is when the server has another internal configuration error. The chosen variant resource is configured to engage in transparent negotiation itself; therefore it cannot be a proper endpoint in the negotiation process.



507 Status Code: Insufficient Storage


The 507 status code is another WEBDAV response code. It indicates to users that the server cannot store the representation needed to complete the request and process the resource.


 

508 Status Code: Loop Detected


The 508 Loop detected status code informs users that the server has detected an infinite loop while processing the data request. 


 

510 Status Code: Not Extended


The 510 Not Extended status code lets users know that the server needs further extensions to the request to be able to process it. Sometimes, the server sends back all the information necessary for the user to submit an extended request.


 

511 Status Code: Network Authentication Required


The 511 Network Authentication Required status code indicates to users that they have to complete network authentication to gain network access to the server. 


These are HTTP status codes with which you are famalier now, i hope that this blog will be helpful for you in understanding the website turoshooting or API testing. 


If you know any other status code which is not mentioned, feel free to comment below. So, we will include in this blog.