Developer

HTTP Status Codes — Complete Reference Guide

Complete list of HTTP status codes organized by class (1xx-5xx). Each code includes its meaning, common use cases, and when you might encounter it.

1xx Informational

These codes indicate that the request was received and the server is continuing to process it.

CodeNameDescription
100ContinueThe server has received the request headers and the client should proceed to send the request body.
101Switching ProtocolsThe server is switching protocols as requested by the client (e.g., upgrading to WebSocket).
102ProcessingThe server is processing the request but has not yet completed it (WebDAV).
103Early HintsUsed to return some response headers before the final HTTP message.

2xx Success

These codes indicate that the request was successfully received, understood, and accepted.

CodeNameDescription
200OKThe request succeeded. The meaning depends on the HTTP method used.
201CreatedThe request succeeded and a new resource was created. Common after POST requests.
202AcceptedThe request has been accepted for processing but has not been completed yet.
203Non-Authoritative InformationThe returned metadata is not from the origin server but a local or third-party copy.
204No ContentThe request succeeded but there is no content to return. Common for DELETE requests.
205Reset ContentThe server fulfilled the request and asks the client to reset the document view.
206Partial ContentThe server is delivering only part of the resource due to a range header sent by the client.
207Multi-StatusMultiple status codes for multiple sub-requests (WebDAV).
208Already ReportedThe members of a DAV binding have already been enumerated (WebDAV).
226IM UsedThe server has fulfilled a GET request for the resource with instance manipulations applied.

3xx Redirection

These codes indicate that further action is needed to complete the request, usually a redirect.

CodeNameDescription
300Multiple ChoicesThere are multiple options for the resource. The client may choose one.
301Moved PermanentlyThe resource has been permanently moved to a new URL. Search engines update their index.
302FoundThe resource is temporarily located at a different URL. Client should continue using the original URL.
303See OtherThe response to the request can be found at another URL using a GET method.
304Not ModifiedThe resource has not been modified since the last request. Used for caching.
305Use ProxyThe requested resource must be accessed through the proxy given in the Location header (deprecated).
307Temporary RedirectThe resource is temporarily at a different URL. Same method must be used for the new request.
308Permanent RedirectThe resource has permanently moved. Same method must be used for the new request.

4xx Client Error

These codes indicate that the client seems to have made an error in the request.

CodeNameDescription
400Bad RequestThe server cannot process the request due to malformed syntax or invalid parameters.
401UnauthorizedAuthentication is required. The client must provide valid credentials.
402Payment RequiredReserved for future use. Sometimes used for digital payment systems.
403ForbiddenThe server understood the request but refuses to authorize it. Authentication will not help.
404Not FoundThe server cannot find the requested resource. The most common error on the web.
405Method Not AllowedThe HTTP method used is not supported for the requested resource.
406Not AcceptableThe server cannot produce a response matching the accept headers sent by the client.
407Proxy Authentication RequiredThe client must first authenticate with the proxy.
408Request TimeoutThe server timed out waiting for the request from the client.
409ConflictThe request conflicts with the current state of the server (e.g., duplicate resource).
410GoneThe resource was previously available but has been permanently removed.
411Length RequiredThe request did not specify the length of its content, which is required.
412Precondition FailedOne or more conditions in the request header fields evaluated to false.
413Payload Too LargeThe request entity is larger than the server is willing to process.
414URI Too LongThe URI provided was too long for the server to process.
415Unsupported Media TypeThe media format of the requested data is not supported by the server.
416Range Not SatisfiableThe range specified by the Range header cannot be fulfilled.
417Expectation FailedThe server cannot meet the requirements of the Expect request-header field.
418I'm a TeapotThe server refuses to brew coffee because it is, permanently, a teapot (April Fools RFC 2324).
421Misdirected RequestThe request was directed at a server that is not able to produce a response.
422Unprocessable EntityThe request was well-formed but the server was unable to process the contained instructions.
423LockedThe resource that is being accessed is locked (WebDAV).
424Failed DependencyThe request failed because it depended on another request that failed (WebDAV).
425Too EarlyThe server is unwilling to process a request that might be replayed.
426Upgrade RequiredThe client should switch to a different protocol.
428Precondition RequiredThe origin server requires the request to be conditional.
429Too Many RequestsThe user has sent too many requests in a given amount of time (rate limiting).
431Request Header Fields Too LargeThe server refuses to process the request because the headers are too large.
451Unavailable For Legal ReasonsThe server is denying access to the resource as a consequence of a legal demand.

5xx Server Error

These codes indicate that the server failed to fulfill an apparently valid request.

CodeNameDescription
500Internal Server ErrorA generic error message when the server encounters an unexpected condition.
501Not ImplementedThe server does not support the functionality required to fulfill the request.
502Bad GatewayThe server, while acting as a gateway or proxy, received an invalid response from the upstream server.
503Service UnavailableThe server is not ready to handle the request. Common during maintenance or overload.
504Gateway TimeoutThe server, while acting as a gateway or proxy, did not receive a timely response.
505HTTP Version Not SupportedThe server does not support the HTTP protocol version used in the request.
506Variant Also NegotiatesTransparent content negotiation resulted in a circular reference.
507Insufficient StorageThe server is unable to store the representation needed to complete the request (WebDAV).
508Loop DetectedThe server detected an infinite loop while processing the request (WebDAV).
510Not ExtendedFurther extensions to the request are required for the server to fulfill it.
511Network Authentication RequiredThe client needs to authenticate to gain network access (captive portal).

Related Tools