~ $ devkit:http-status
HTTP Status Codes
A quick reference for the meaning of HTTP status codes, grouped by class.
1xx · Informational · 4
100ContinueInterim response: the server has received the request headers, client may continue.
101Switching ProtocolsServer agrees to switch protocols as requested by the Upgrade header.
102ProcessingServer has received and is processing the request, but no response yet (WebDAV).
103Early HintsServer hints at resources to load while the final response is being prepared.
2xx · Successful · 10
200OKThe request succeeded. Meaning depends on the method: GET → resource, POST → result, etc.
201CreatedThe request succeeded and a new resource was created, typically after a POST or PUT.
202AcceptedThe request has been accepted for processing, but processing is not complete.
203Non-Authoritative InformationReturned meta-information did not come from the origin server but from a local or third-party copy.
204No ContentThe request succeeded but there is no content to send in the response body.
205Reset ContentThe server instructs the client to reset the document that sent this request.
206Partial ContentThe server is delivering only part of the resource, per a Range request.
207Multi-StatusMultiple status codes for multiple operations (WebDAV).
208Already ReportedMembers of a DAV binding have already been enumerated previously (WebDAV).
226IM UsedThe server has fulfilled a GET for an instance-manipulation request.
3xx · Redirection · 8
300Multiple ChoicesThe request has more than one possible response; user or client should choose.
301Moved PermanentlyThe resource has been permanently moved to a new URL. Search engines update links.
302FoundThe resource was found at a different URI temporarily (often used for redirects).
303See OtherThe response to the request can be found at another URI using GET.
304Not ModifiedThe resource has not been modified since the last request — use the cached copy.
305Use ProxyThe requested resource must be accessed through the proxy given (deprecated).
307Temporary RedirectTemporary redirect: method and body must be repeated unchanged.
308Permanent RedirectPermanent redirect: method and body must be repeated unchanged.
4xx · Client Error · 29
400Bad RequestThe server cannot process the request due to client error — malformed syntax, bad framing.
401UnauthorizedAuthentication is required and has failed or has not been provided.
402Payment RequiredReserved for future use; originally intended for digital payment systems.
403ForbiddenThe server understood the request but refuses to authorize it.
404Not FoundThe server cannot find the requested resource.
405Method Not AllowedThe request method is not supported for the target resource.
406Not AcceptableThe server cannot produce a response matching the Accept headers.
407Proxy Authentication RequiredAuthentication is required with the proxy server.
408Request TimeoutThe server timed out waiting for the request from the client.
409ConflictThe request conflicts with the current state of the target resource.
410GoneThe resource is no longer available and will not be available again.
411Length RequiredThe request did not specify the Content-Length, which is required.
412Precondition FailedOne or more preconditions given in the request headers evaluated to false.
413Payload Too LargeThe request body is larger than the server is willing or able to process.
414URI Too LongThe request URI is longer than the server is willing to interpret.
415Unsupported Media TypeThe request payload is in a format not supported by the target resource.
416Range Not SatisfiableThe Range header cannot be satisfied for the target resource.
417Expectation FailedThe expectation in the Expect request header could not be met.
418I'm a TeapotThe server refuses to brew coffee because it is, permanently, a teapot (RFC 2324 joke).
421Misdirected RequestThe request was directed to a server that cannot produce a response.
422Unprocessable EntityThe request was well-formed but contains semantic errors (validation failed).
423LockedThe target resource is locked (WebDAV).
424Failed DependencyA prior request this request depends on failed (WebDAV).
425Too EarlyThe server is unwilling to risk processing a request that might be replayed.
426Upgrade RequiredThe client should switch to a different protocol given in the Upgrade header.
428Precondition RequiredThe server requires the request to be conditional to prevent lost updates.
429Too Many RequestsThe user has sent too many requests in a given time — rate limiting.
431Request Header Fields Too LargeThe request headers are too large for the server to process.
451Unavailable For Legal ReasonsThe resource is unavailable due to legal demands.
5xx · Server Error · 11
500Internal Server ErrorThe server encountered an unexpected condition that prevented it from fulfilling the request.
501Not ImplementedThe server does not support the functionality required to fulfill the request.
502Bad GatewayThe server, acting as a gateway, got an invalid response from the upstream server.
503Service UnavailableThe server is not ready to handle the request, often due to overload or maintenance.
504Gateway TimeoutThe server, acting as a gateway, did not get a timely response from upstream.
505HTTP Version Not SupportedThe HTTP version used in the request is not supported by the server.
506Variant Also NegotiatesInternal configuration error with content negotiation (RFC 2295).
507Insufficient StorageThe method could not be performed because the server cannot store the representation (WebDAV).
508Loop DetectedThe server detected an infinite loop while processing the request (WebDAV).
510Not ExtendedThe server requires further extensions to fulfill the request.
511Network Authentication RequiredThe client needs to authenticate to gain network access (e.g. captive portal).
How to use HTTP Status Codes
- Search by numeric code, status name or a keyword from its description.
- Browse the grouped results to distinguish informational responses, success, redirects, client errors and server errors.
Example
200 OK: the request succeeded. 404 Not Found: the requested resource was not found. 429 Too Many Requests: the server is limiting the request rate.
Details and limitations
A reference for common status codes, including some widely used extensions. Application behavior and response bodies may provide additional detail; a status code alone is not a complete diagnosis.