Whenever you send a request to the server from your browser, you will either get the desired page or some error with a specific HTTP status code. This HTTP status code helps you understand what type of error it is. The HTTP status code does not come as a part of the website’s content. You can quickly troubleshoot the error and fix it with a possible workaround. 

There are several categories of HTTP codes with several sub-categories. A developer must know which status code depicts which type of error. There is no code displayed for many kinds of status codes, making the debugging much more challenging. So as a developer, you must know how to check the status code and fix it.

In this article, you will get to understand different types of HTTP status codes and error codes. Also, it explained what code refers to what type of error. Every developer or IT team needs to know before they start fixing it.

What are HTTP status codes?

Every time you click on an URL or website, your browser will send a request to the specific server you are trying to access. The server gets your request to see the information on the website and starts processing the incoming request. After processing, it will send the response back to the requested browser and the HTTP header’s content.

 Each HTTP header consists of various information about that request, such as GET/POST request, HTTP status code, etc. some of the statuses are visible in the header, but some of them are hidden, and you need to find out which status code you get with the request. You will often see the status code displayed on your browser, letting you know that your request was not processed successfully due to an error. You might get some messages with the specific HTTP status code and code.

If you do not get the HTTP code displayed, you can use several available tools to check what code you get. Also, you can use browser-based extensions of those tools, allowing you to fetch the HTTP status code.

Different categories of HTTP Status Code

You will get to learn about five different categories of HTTP status codes. These five categories have sub-categories with specific meanings. Once you know what type of status code they are, you can easily and quickly determine their category. Below is the list of different types of HTTP status codes available that are further classified.

  • 100s: this category of the HTTP codes is the informational one containing the specific information about the error. This status code specifies that the processing of the request is continuing.
  • 200s: these types of HTTP status specify the success of the request made. You might not see this status code in the header, as you will get the desired page from the server.
  • 300s: these types of HTTP status codes specify the redirection. It means that the new ones have replaced the requested resources. It might be in the case if the website has been recently updated to another URL and not working.
  • 400s: HTTP status specifies that the request is not being processed due to the client error.
  • 500s: this type of HTTP status code specifies that something went wrong at the server end, as your request has been sent to the server but has not been processed.

Once you understand each type of HTTP status code manually or using any tool, you can understand where the problem lies and start troubleshooting based on that. You will have a lot of debugging time and get to a conclusion real quick.

But, there could be several reasons for any status code to occur. To be more specific, there are sub-categories of this HTTP status code, letting you troubleshoot more closely. But, first, we will see how to check the HTTP status code using the Google search console.

Determining the HTTP Status Codes via Google Search Console

Here, we have mentioned how to use the Google search console to determine the specific HTTP status code. You can see status codes with 300, 400, and 500 in their coverage report below.

Below details are available on the coverage report.

  • Which page returns with errors.
  • What pages come with warnings.
  • States about the valid resources.
  • Exclude the content from the index.

Check the Excluded, Error, or Valid with warnings sections to see the status code. For example, you can find the 301 redirects details under Excluded as Page with a redirect.

While the HTTP status with codes 400- and 500-level will be displayed under error.

Another way to determine the HTTP status code is to use the URL inspection tool. If you get the desired information from Google, you will find that detail here, as shown below.

Now, you know where to find the HTTP status code for the displayed error message on your browser. We look at the list of all HTTP status codes that fall under those five categories listed above.

List of HTTP Response Codes

1.   100 Status Codes

This type of status code specifies that the requested page is still in the process due to some inconvenience. The outlook message might display a specific code, but this error could be another reason. You can go through the status code listed below to get more information.

  • 100 (Continue) specifies that the request has been successfully sent to the server with proper headers, and the server is preparing the request body. The server will prevent the browser from sending the body request to reject the headers.
  • 101 (Switching Protocols) specifies that the browser wants the server to change the existing protocols, and the server is taking time to compile that request.
  • 103 (Early hints) specifies that the server has sent some response before the actual response is sent.

2.   200 Status Codes

This category of HTTP status code specifies that everything went well as expected. If it is not hidden, you might see this status code on your browser but can see it in the HTTP header. Each status code displayed below depicts the different stages of the request being processed by the server. Let’sLet’s take a look.

  • Status code 200 (OK) specifies that the webpage is processing as expected.
  • 201 (created) specifies that the server has created the new resources on accepting the browser’s request.
  • 202 (Accepted) when the server accepts the request and started processing it. The result might be positive or not, depending on the processing.
  • 203 (Non-authoritative information) specifies that the proxy is being used for modifying the 200 status code before sending the response.
  • 204 status code (No content) is used when the server successfully processes the request, but the content is not sent to the browser.
  • 205 (reset content) means that your requested server wants your browser to reset the document view.
  • 206 (partial content) means that your browser uses the “range headers” and has enabled it to resume the paused downloads. 

3.   300 Status Codes

You will receive this status code whenever the requested resources have moved to another location. Below are the several codes accompanying the redirection, as shown below.

  •  300 (multiple choices) specifies that the server can respond with any available resource to the browser. The browser has to choose among multiple resources depending on the extension type.
  • 302 status code (resource has been removed) specifies that the request resources have been entirely replaced with the new one having a permanent new URL.
  • 302 (requested resource has moved but is available) means that the requested resource has moved to the new location successfully but is temporary redirection.
  • 303 (see other) tells the browser that the requested page is found via POST, PUT, or DELETE.
  • 304 status code: “The requested resource has not been modified since the last time you accessed it” it means that the browser’s cache data for the resource did not change.
  • 307: “Temporary Redirect” means that a resource has been successfully moved temporarily to a different URL.
  • 308: “Permanent Redirect” means that the resource has now permanently shifted to a new location or URL.

4.   400 Status Codes

This type of HTTP status code specifies an error where the actual problem occurs at the browser’s end. To be more specific about the error, you can consider the following error codes for quick troubleshooting.

  • Status code 400 (bad request) specifies that the server cannot respond to the browser due to the error at the browser’s end.
  • 401 status code (unauthorized) specifies that the browser does not have the proper access to the requested resource, and the server sends this code.
  • 402 (payment required) specifies that the user did not make the required payment to use the requested resource. Many platforms still use this status code to ensure security.
  • 403 status code (access to that resource is forbidden). The server will send this error code whenever the user’s browser does not have the proper access to view the content of the requested resource. For example, you can get this status code if the user tries to read the password-protected content.
  • HTTP 404 (the requested resource was not found) means that the requested information is unavailable on the internet or is now invalid. Commonly seen as 404 bad request. 
  • 405 (method not allowed) means that the server supports the incoming request’s request method but not the target resource.
  • 406 (not acceptable response) specifies that the requested resource generates content that does not accept the headers sent in the request.
  • 407 (proxy authentication required) specifies that the proxy is working and requires that the requested browser authenticate itself before continuing.
  • 408 (the server timed out waiting for the rest of the request from the browser) means that the server times out due to a delay in receiving the entire request. 
  • 409 status code (conflict) means that the server has a conflict with the main resource and cannot proceed with the request processing. 
  • 410 (The requested resource is gone and won’t be coming back) means that the specified condition is expected.
  • 411(Length Required) specifies that the client did not specify a particular length as requested by the resource.
  • 412 (Precondition Failed) means that the browser has included some conditions within its request headers that are not met by the server.
  • 413 “Payload Too Large” or “Request Entity Too Large” means that the server receives a request too large to process.
  • 414 (URI Too Long) means that the GET request is encrypted, making it feasible to process by the server.
  • 415 (Unsupported Media Type) means that the server receives the request containing a media type not supported by the server, thus failing to process.
  • 416 (Range Not Satisfiable) specifies that the request was for a specific resource that the server could not return.
  • 417 (Expectation Failed) means that the request is not per the server requirements, excluding the header field.
  • 422 (Unprocessable Entity) specifies that the client request has semantic errors and cannot be processed by the server.
  • 425 (Too Early) specifies that the server cannot process a request due to the replay of the request.
  • 426 (Upgrade Required) specifies that the browser needs to switch to a different protocol due to the upgrade to the request header. 
  • 428 (Precondition Required) specifies that conditions need to be specified before the server process it.
  • 429 (Too many requests) means that the server receives too many requests to process.
  • 431 (Request Header Fields Too Large) means that the request has large header fields that a server cannot process. 
  • 451(Unavailable for Legal Reasons) means that the server’s operator gets a demand to ignore the access to resources. 
  • 499 (Client closed request) means that the browser closes down the request in between while the server is processing it.

5.   500 Status Codes

These types of HTTP status codes are also errors at the server end. Below are the different types of 500 status code errors that can be received.

  • 500 status code (There was an error on the server, and the request could not be completed), which means the requested server fails to send the response to the browser. 
  • 501 (Not Implemented) specifies that the server does not have the required functions to process the request. 
  • 502 status code (Bad Gateway) means that one server gets an invalid response from another server (proxy server). It might be due to the time taken by the request, resulting in the cancellation of the request by the server, and the connection breaks with the database. 
  • 503 status code (The server is unavailable to handle this request right now) The server is overloaded with several incoming requests simultaneously and cannot proceed with processing all of them.
  • 504 status code (The server, acting as a gateway, timed out waiting for another server to respond) means that two servers are processing a single request simultaneously, resulting in times out due to delay in response. 
  • 505 (HTTP Version Not Supported) means that the server cannot recognize the used HTTP version.
  • 508 (Resource Limit Is Reached) specifies that the host reaches the resources limit.
  • 511 (Network Authentication Required) means that the requested server uses authentication before the request has been sent to the server. 

Conclusion 

HTTP status codes are essential for troubleshooting purposes. These codes are sent by the requested server in response to the browser’s request, specifying the response’s status. Most times, people face an error page in response to their request, having vague or confusing error messages that do not specify the exact cause of the error. There are several categories of the HTTP status code specifying different error types, making the debugging earlier and quicker. You can use many tools for getting the exact status code during the failure. 

To better understand the meaning of different status codes, you can go through this article and fasten your troubleshooting process.

People also read: