All tools

HTTP Status Codes

Look up the meaning of every common HTTP response status code.

Showing 30 of 30 entries

CodeNameCategoryDescription
100Continue1xx InformationalThe server received the request headers and the client should proceed to send the body.
101Switching Protocols1xx InformationalThe server is switching protocols as requested by the client (e.g. to WebSocket).
200OK2xx SuccessThe request succeeded. The meaning depends on the HTTP method used.
201Created2xx SuccessThe request succeeded and a new resource was created as a result.
202Accepted2xx SuccessThe request has been accepted for processing, but processing is not complete.
204No Content2xx SuccessThe server successfully processed the request and is not returning any content.
206Partial Content2xx SuccessThe server is delivering only part of the resource due to a range header sent by the client.
301Moved Permanently3xx RedirectionThe resource has permanently moved to a new URL given in the response.
302Found3xx RedirectionThe resource temporarily resides at a different URL. The client should keep using the original URL for future requests.
304Not Modified3xx RedirectionThe cached version of the resource is still valid; the client can use its copy.
307Temporary Redirect3xx RedirectionThe request should be repeated at another URL using the same HTTP method.
308Permanent Redirect3xx RedirectionThe resource is permanently at a new URL and the same method must be used.
400Bad Request4xx Client ErrorThe server cannot process the request due to a client error such as malformed syntax.
401Unauthorized4xx Client ErrorAuthentication is required and has failed or has not been provided.
403Forbidden4xx Client ErrorThe server understood the request but refuses to authorize it.
404Not Found4xx Client ErrorThe server cannot find the requested resource. This is the most common error code.
405Method Not Allowed4xx Client ErrorThe request method is known by the server but is not supported by the target resource.
408Request Timeout4xx Client ErrorThe server timed out waiting for the request from the client.
409Conflict4xx Client ErrorThe request conflicts with the current state of the target resource.
410Gone4xx Client ErrorThe resource is no longer available and will not be available again.
413Payload Too Large4xx Client ErrorThe request entity is larger than limits defined by the server.
415Unsupported Media Type4xx Client ErrorThe media format of the requested data is not supported by the server.
418I'm a teapot4xx Client ErrorAn April Fools' joke from RFC 2324; the server refuses to brew coffee because it is a teapot.
422Unprocessable Entity4xx Client ErrorThe request was well-formed but could not be processed due to semantic errors (common in validation).
429Too Many Requests4xx Client ErrorThe user has sent too many requests in a given amount of time (rate limiting).
500Internal Server Error5xx Server ErrorA generic error message returned when the server encounters an unexpected condition.
501Not Implemented5xx Server ErrorThe server does not support the functionality required to fulfil the request.
502Bad Gateway5xx Server ErrorThe server, acting as a gateway, received an invalid response from the upstream server.
503Service Unavailable5xx Server ErrorThe server is not ready to handle the request, often due to maintenance or overload.
504Gateway Timeout5xx Server ErrorThe server, acting as a gateway, did not get a response in time from the upstream server.

Understanding HTTP Status Codes

Every HTTP response carries a three-digit status code that tells the client how the request went. The first digit defines the class of response, and knowing these classes makes debugging APIs and web servers far faster.

The five classes

  • 1xx Informational — request received, continuing
  • 2xx Success — the request succeeded
  • 3xx Redirection — further action needed
  • 4xx Client Error — the request was wrong
  • 5xx Server Error — the server failed

The ones you will meet most

200 OK, 301/302 redirects, 401 and 403 for auth, 404 Not Found, 429 rate limiting, and 500/502/503 for server problems are the codes you will encounter daily as a developer.

4xx vs. 5xx — whose fault is it?

A 4xx code means the client made a mistake — a bad URL, missing authentication, or invalid payload — so the fix is in the request. A 5xx code means the server failed to fulfil a valid request, so the fix is on the server side. Telling them apart is the first step in any debugging session.

Frequently Asked Questions

Common questions about the HTTP Status Codes Reference.

What do the HTTP status code classes mean?
1xx is informational, 2xx is success, 3xx is redirection, 4xx is a client error, and 5xx is a server error.
What is the difference between 401 and 403?
401 Unauthorized means authentication is required or has failed, while 403 Forbidden means you are authenticated but not allowed to access the resource.
Is this reference free to use?
Yes. It is a free, searchable reference with no sign-up required.

More Developer Utilities

View all tools →
JSON ValidatorJSON MinifierJSON to CSVCSV to JSONJSON to XMLXML to JSONJSON to YAMLYAML to JSON
File Transfer