Status codes
The status codes an API sends, grouped by class. Each page says when to send the code and which one to send instead.
1xxInformational
4- 100ContinueThe server has received the request headers and the client should proceed to send the request body.
- 101Switching ProtocolsThe server understands the Upgrade header field sent by the client and is switching protocols.
- 102ProcessingThe server has received and is processing the request, but no response is available yet.
- 103Early HintsAllows the server to send link headers to prefetch resources while compiling the main response.
2xxSuccess
10- 200OKThe request has succeeded. The response payload contains the requested resource representation.
- 201CreatedThe request has been fulfilled and has resulted in a new resource being created.
- 202AcceptedThe request has been accepted for processing, but the processing has not been completed.
- 203Non-Authoritative InformationThe server is a transforming proxy that received a 200 OK from its origin but is returning a modified payload.
- 204No ContentThe request was successful, but the response body is intentionally empty.
- 205Reset ContentThe server fulfilled the request and desires that the user agent reset the document view.
- 206Partial ContentThe server is delivering only part of the resource due to a Range header sent by the client.
- 207Multi-StatusThe response body contains multiple independent status codes for a batch of sub-operations.
- 208Already ReportedUsed inside a 207 Multi-Status response to avoid repeatedly enumerating the same bound resource.
- 226IM UsedThe server has fulfilled a request for the resource and the response represents the result of applying one or more instance manipulations.
3xxRedirection
9- 300Multiple ChoicesThe request has more than one possible response and the user agent or user should choose one.
- 301Moved PermanentlyThe requested resource has been assigned a new permanent URI and future references should use it.
- 302FoundThe requested resource resides temporarily under a different URI.
- 303See OtherDirects the client to get the requested resource at another URI using a GET request.
- 304Not ModifiedInstructs the client that the cached version of the resource is still valid.
- 305Use ProxyDeprecated. Indicated that the requested resource had to be accessed through the proxy given in the response.
- 306UnusedReserved. Formerly defined as "Switch Proxy" in an early draft, this code was never used and is no longer part of the standard beyond being reserved.
- 307Temporary RedirectThe resource resides temporarily under a different URI. Method must not be changed.
- 308Permanent RedirectThe resource has been permanently moved. Method must not be changed.
4xxClient errors
29- 400Bad RequestThe server cannot process the request due to client error (e.g., malformed syntax, invalid framing).
- 401UnauthorizedThe request lacks valid authentication credentials. The client must authenticate.
- 402Payment RequiredReserved for future use by RFC 9110. APIs use it when a request is valid but the account cannot pay for it.
- 403ForbiddenThe client is authenticated but does not have access rights to the content.
- 404Not FoundThe server cannot find the requested resource or URI route.
- 405Method Not AllowedThe requested URI exists, but the HTTP method used is not supported.
- 406Not AcceptableThe server cannot produce a response matching the Accept headers sent by the client.
- 407Proxy Authentication RequiredThe client must first authenticate itself with the proxy server.
- 408Request TimeoutThe server timed out waiting for the client to complete the request.
- 409ConflictThe request conflicts with the current state of the target resource.
- 410GoneThe resource is permanently deleted and has no redirect address.
- 411Length RequiredThe server refuses to accept the request without a defined Content-Length header.
- 412Precondition FailedOne or more preconditions in the request headers evaluated to false.
- 413Content Too LargeThe request body size exceeds the maximum limit allowed by the server.
- 414URI Too LongThe URI requested by the client is longer than the server is willing to interpret.
- 415Unsupported Media TypeThe request payload media format is not supported by the server.
- 416Range Not SatisfiableThe requested byte range cannot be satisfied by the server.
- 417Expectation FailedThe server cannot meet the requirements of the Expect request header.
- 418UnusedReserved. Defined as "I'm a teapot" in the April 1 joke RFC 2324, and reserved by RFC 9110 because the joke was deployed too widely to reassign.
- 421Misdirected RequestThe request was directed at a server that is not able to produce a response.
- 422Unprocessable ContentThe request body was syntactically correct but failed semantic business rules validation.
- 423LockedThe resource that is being accessed is locked.
- 424Failed DependencyThe request failed because it depended on another action that failed.
- 425Too EarlyThe server is unwilling to risk processing a request that might be replayed.
- 426Upgrade RequiredThe server refuses to perform the request using the current 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.
- 431Request Header Fields Too LargeThe server refuses to process the request because header fields are too large.
- 451Unavailable For Legal ReasonsThe server operator has received a legal demand to deny access to the resource.
5xxServer errors
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 GatewayAn upstream server returned an invalid response to the gateway proxy.
- 503Service UnavailableThe server is temporarily down or overloaded. The client should retry.
- 504Gateway TimeoutThe upstream server failed to send a timely response to the gateway proxy.
- 505HTTP Version Not SupportedThe server does not support the HTTP protocol version used in the request.
- 506Variant Also NegotiatesContent negotiation for the request results in a circular reference.
- 507Insufficient StorageThe server is unable to store the representation needed to complete the request.
- 508Loop DetectedThe server terminated the operation because it detected an infinite loop.
- 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.