HTTP Status Messages

The users may get an error while sending a request to a server. Definitely, the user has seen such messages frequently.

Here you can find the list of Hypertext Transfer Protocol (HTTP) response status codes. These codes are used to respond to the request of the client made to the server. There are 5 classes of HTTP response status codes. Let’s go through each class:

If you receive a response that is not included in this list, this means that it is a non-standard response, perhaps custom to the software of the server.

1xx: Information

Status code Message Description
100 Continue Means that the server has received request headers and the client should continue to send request body.
101 Switching Protocols Means that the client, who made a request, has asked the server to change protocols.
103 Checkpoint Means that it is used in the resumable requests proposal to resume aborted PUT or POST requests.

2xx: Successful

Status code Message Description
200 OK Means that the request is OK. It is standard response for successful HTTP requests.
201 Created Means that the request has been fulfilled and a new resource is created.
202 Accepted Means that the request has been accepted for processing, but the processing is going on.
203 Non-Authoritative Information Means that the request has been successfully processed, but it is returning information which may be from another source.
204 No Content Means that the request has been successfully processed, but it is not giving any content.
205 Reset Content Means that the request has been processed, but it is not returning any content and it requires that the requester reset the document view.
206 Partial Content Means that the server commits only a part of the resource, because of a range header, which was sent by the client.

3xx: Redirection

Status code Message Description
300 Multiple Choices Is a link list which means that the user can select a link and go there. It can contain maximum five addresses.
301 Moved Permanently Means that the page has been moved to a new URL.
302 Found Means that the requested page has been moved to a new URL temporarily.
303 See Other Means that the requested page can be found in another URL.
304 Not Modified Means that the requested page hasn't been modified since the last request.
306 Switch Proxy Is not used anymore.
307 Temporary Redirect Means that the requested page has been moved to a new URL temporarily.
308 Resume Incomplete Is used in resumable requests proposal to continue aborted PUT or POST requests.

4xx: Client Error

Status code Message Description
400 Bad Request Means that the request can be fulfilled because of the bad syntax.
401 Unauthorized Means that the request was legal, but the server is rejecting to answer it. For the use when authentication is required and has failed or has not yet been provided.
402 Payment Required Is reserved for a future use.
403 Forbidden Means that the request is legal, but the server is rejecting to answer it.
404 Not Found Means that the requested page cannot be found at the moment, but it may be available again in the future.
405 Method Not Allowed Means that the request was made of a page that uses an unsupported request method for that page.
406 Not Acceptable Means that the server can only generate an answer which the client doesn't accept.
407 Proxy Authentication Required Means that the client first authenticate itself with the proxy.
408 Request Timeout Means that the server timed out waiting for the request.
409 Conflict Means that the request cannot be completed, because of a conflict in the request.
410 Gone Means that the requested page is not available anymore.
411 Length Required Means that the content length is not defined and the server won't accept the request without it.
412 Precondition Failed Means that precondition, which is given in the request, is evaluated to false by the server.
413 Request Entity Too Large Means that the request entity is too large and that's why the server won't accept the request.
414 Request-URI Too Long Means that the URL is too long and that's why the server won't accept the request. It happens when you convert a POST request to a GET request with a long query information.
415 Unsupported Media Type Means that the media type is not supported and that's why the server won't accept the request.
416 Requested Range Not Satisfiable Means that the client asked for a part of the file but the server cannot supply that part.
417 Expectation Failed Means that the server cannot meet the requirements of the expected request header field.

5xx: Server Error

Status code Message Description
500 Internal Server Error Is a generic error and users receive this error message when there is no more suitable specific message.
501 Not Implemented Means that the server doesn't recognize the request method or it lacks the ability to fulfill the request.
502 Bad Gateway Means that the server was acting as a gateway or proxy and it received an invalid answer from the upstream server.
503 Service Unavailable Means that the server is not available now (It may be overloaded or down).
504 Gateway Timeout Means that the server was acting as a gateway or proxy and it didn't get answer on time from the upstream server.
505 HTTP Version Not Supported Means that the HTTP protocol version, used in the request, is not supported by the server.
511 Network Authentication Required Means that the client needs to authenticate to gain network access.

Practice Your Knowledge

Which of the following are valid HTTP status codes according to the information available on w3docs.com?

Quiz Time: Test Your Skills!

Ready to challenge what you've learned? Dive into our interactive quizzes for a deeper understanding and a fun way to reinforce your knowledge.

Do you find this helpful?