Complete HTTP Status Codes Reference

Complete reference of all HTTP status codes organized by class: 1xx informational, 2xx success, 3xx redirection, 4xx client error, 5xx server error.

  • JSON12,491 B
  • YAML7,921 B · −37%
  • TOON5,421 B · −57%

The HTTP status codes most used in practice, grouped by class (informational, success, redirection, client error and server error) with the registered name and a one-line meaning, from 100 Continue and 200 OK to 418 and 511.

Use it when

  • You need the exact name and meaning of a status code.
  • You are choosing a response code for an API.

Watch out for

  • Some names changed over time (for example 413 is now Content Too Large and 422 Unprocessable Content); registered names are in the IANA registry.
  • Codes such as 418 are defined for humor or for specific protocols and are not meant for production use.

The data

Codes

CodeNameClassDescription
200OKSuccessRequest succeeded
201CreatedSuccessResource created successfully
204No ContentSuccessRequest succeeded, no content returned
301Moved PermanentlyRedirectionResource permanently moved to new URL
304Not ModifiedRedirectionCached version is still valid
400Bad RequestClient ErrorMalformed request syntax
401UnauthorizedClient ErrorAuthentication required
403ForbiddenClient ErrorServer refuses to authorize
404Not FoundClient ErrorResource not found
429Too Many RequestsClient ErrorRate limit exceeded
500Internal Server ErrorServer ErrorUnexpected server condition
502Bad GatewayServer ErrorInvalid response from upstream
503Service UnavailableServer ErrorServer temporarily overloaded
100ContinueInformationalInitial part of the request received; the client should continue sending the body
101Switching ProtocolsInformationalServer agrees to switch protocols, for example to WebSocket
103Early HintsInformationalPreliminary headers, such as preload links, sent before the final response
202AcceptedSuccessRequest accepted for processing but not yet completed
206Partial ContentSuccessServer is sending only part of the resource in response to a Range request
207Multi-StatusSuccessWebDAV response carrying separate status codes for several operations
302FoundRedirectionResource temporarily at a different URL
303See OtherRedirectionRetrieve the result at another URL with GET, often after a POST
307Temporary RedirectRedirectionTemporary redirect that preserves the request method
308Permanent RedirectRedirectionPermanent redirect that preserves the request method
405Method Not AllowedClient ErrorMethod not supported for this resource; the Allow header lists valid methods
406Not AcceptableClient ErrorNo representation matches the Accept headers sent by the client
408Request TimeoutClient ErrorServer timed out waiting for the request
409ConflictClient ErrorRequest conflicts with the current state of the resource
410GoneClient ErrorResource was removed permanently and will not return
412Precondition FailedClient ErrorA condition in the request headers, such as If-Match, was not met
413Content Too LargeClient ErrorRequest body is larger than the server will accept
414URI Too LongClient ErrorThe request URI is longer than the server will process
415Unsupported Media TypeClient ErrorThe request's Content-Type is not supported
416Range Not SatisfiableClient ErrorThe requested byte range cannot be served
418I'm a teapotClient ErrorApril Fools' joke code from RFC 2324; not for production use
422Unprocessable ContentClient ErrorRequest is well-formed but contains semantic errors, often validation failures
425Too EarlyClient ErrorServer is unwilling to process a request that might be replayed
426Upgrade RequiredClient ErrorClient must switch to another protocol, indicated in the Upgrade header
428Precondition RequiredClient ErrorServer requires the request to be conditional to avoid lost updates
431Request Header Fields Too LargeClient ErrorHeaders are too large for the server to process
451Unavailable For Legal ReasonsClient ErrorAccess denied because of a legal demand
501Not ImplementedServer ErrorServer does not support the functionality required to fulfill the request
504Gateway TimeoutServer ErrorA gateway or proxy did not get a timely response from the upstream server
505HTTP Version Not SupportedServer ErrorThe HTTP version used in the request is not supported
507Insufficient StorageServer ErrorServer cannot store the representation needed to complete the request
511Network Authentication RequiredServer ErrorClient must authenticate to gain network access, as on a captive portal

Fields

The shape of this dataset, read from the data itself: every column, its type and a real value. Agents can use this to plan a query without fetching the whole document.

SectionFieldTypeExample
codescodeinteger200
codesnamestringOK
codesclassstringSuccess
codesdescriptionstringRequest succeeded

Fetch the same bytes

The static files contain the same reference rows as the API, with no API rate limit. Live metadata, such as view counts, may differ. Use the API for content negotiation; use the static files for a cacheable snapshot.

curl "https://yjtoon.yunusemrevurgun.com/api/dataset/http-status-codes-complete?format=toon"
const res = await fetch(
  "https://yjtoon.yunusemrevurgun.com/static-data/dataset/http-status-codes-complete.toon"
);
const toon = await res.text();

Rate limit: 120 requests per minute per IP, no key and no signup. API reference →

Topics

  • http
  • web
  • reference
  • status codes

Search the library

Search by a topic, title, or keyword.

Start with a collection

Browse all 205 datasets