Developer tool

HTTP Status Codes

Searchable list of HTTP status codes and meanings.

Free Runs in your browser

CodeNameMeaning
100ContinueThe server got the request headers and the client should send the body.
101Switching ProtocolsThe server agrees to switch protocol, for example to WebSocket.
102ProcessingWebDAV: the server is still working on the request.
103Early HintsSent before the final response so the browser can preload resources (Link headers).
200OKThe request worked. The body holds the result.
201CreatedA new resource was created, usually after POST or PUT. The Location header points to it.
202AcceptedThe request was accepted for processing but is not finished yet.
203Non-Authoritative InformationThe response was changed by a proxy from the origin server’s 200 response.
204No ContentThe request worked and there is no body to return. Common for DELETE.
205Reset ContentThe client should reset the form or view that sent the request.
206Partial ContentOnly part of the resource is sent, in reply to a Range header (video seeking, resumed downloads).
207Multi-StatusWebDAV: the body holds several status codes for several operations.
208Already ReportedWebDAV: members already listed earlier in the reply are not repeated.
226IM UsedThe server applied instance manipulations (delta encoding) to the response.
300Multiple ChoicesThere are several possible responses and the client should pick one.
301Moved PermanentlyThe resource has a new permanent URL. Search engines pass ranking to the new URL. Browsers may change POST to GET.
302FoundTemporary redirect. Keep using the original URL in future.
303See OtherGo to another URL with GET, often used after a form POST.
304Not ModifiedThe cached copy is still valid (reply to If-None-Match or If-Modified-Since). No body is sent.
307Temporary RedirectTemporary redirect that keeps the same method and body.
308Permanent RedirectPermanent redirect that keeps the same method and body.
400Bad RequestThe server cannot read the request: bad syntax, invalid JSON or missing fields.
401UnauthorizedAuthentication is missing or invalid. Log in or send valid credentials.
402Payment RequiredReserved; some APIs use it when a payment or plan limit is needed.
403ForbiddenThe server knows who you are but you are not allowed to access this resource.
404Not FoundNothing exists at this URL, or the server hides that it exists.
405Method Not AllowedThe HTTP method (for example POST) is not supported for this URL. The Allow header lists valid ones.
406Not AcceptableThe server cannot produce a format that matches the Accept headers.
407Proxy Authentication RequiredYou must authenticate with the proxy first.
408Request TimeoutThe client took too long to send the request.
409ConflictThe request conflicts with the current state, for example an edit conflict or duplicate record.
410GoneThe resource was deleted on purpose and will not come back.
411Length RequiredThe request must include a Content-Length header.
412Precondition FailedA condition in the headers (such as If-Match) was not met.
413Content Too LargeThe request body is larger than the server allows (for example an upload limit).
414URI Too LongThe URL is longer than the server will handle.
415Unsupported Media TypeThe body format (Content-Type) is not supported.
416Range Not SatisfiableThe requested byte range is outside the file.
417Expectation FailedThe server cannot meet the Expect request header.
418I'm a teapotAn April Fools’ joke code from RFC 2324. Some sites use it to reject bots.
421Misdirected RequestThe request went to a server that cannot answer for this host.
422Unprocessable ContentThe syntax is fine but the data fails validation.
423LockedWebDAV: the resource is locked.
424Failed DependencyWebDAV: the request failed because a previous request failed.
425Too EarlyThe server will not process a request that might be replayed.
426Upgrade RequiredThe client must switch to another protocol, given in the Upgrade header.
428Precondition RequiredThe server requires a conditional request to prevent lost updates.
429Too Many RequestsRate limit reached. Wait and retry; the Retry-After header may say how long.
431Request Header Fields Too LargeHeaders are too large, often because of too many or too big cookies.
451Unavailable For Legal ReasonsAccess is blocked for legal reasons, such as a court order.
500Internal Server ErrorA generic server failure. Check the server logs.
501Not ImplementedThe server does not support the feature needed to answer.
502Bad GatewayA proxy or gateway got an invalid reply from the upstream server.
503Service UnavailableThe server is overloaded or down for maintenance. Usually temporary.
504Gateway TimeoutA proxy or gateway did not get a reply from the upstream server in time.
505HTTP Version Not SupportedThe server does not support the HTTP version used.
506Variant Also NegotiatesServer configuration error in content negotiation.
507Insufficient StorageWebDAV: the server has no room to store the data.
508Loop DetectedWebDAV: the server found an infinite loop.
510Not ExtendedMore extensions to the request are required.
511Network Authentication RequiredYou must log in to the network, for example on hotel or airport Wi-Fi.

About this tool

This reference lists every standard HTTP status code with a short, plain explanation of what it means and when servers send it. Search by number or keyword, or filter by class.

How to use HTTP Status Codes

  1. Type a code or a word like “redirect”.
  2. Filter by class (2xx, 4xx and so on).
  3. Read the meaning of each code.

Questions people ask

What is the difference between 301 and 302?

301 is a permanent redirect and search engines move ranking to the new URL. 302 is temporary and the original URL stays indexed. Use 308 or 307 if the method must not change.

What is the difference between 401 and 403?

401 means you are not authenticated (missing or bad credentials). 403 means you are authenticated but not allowed.

What causes a 502 or 504 error?

A proxy, load balancer or CDN could not get a valid reply (502) or any reply in time (504) from the server behind it.

More developer tools

See all 24 →
Esc