| 400 | Bad Request 11 cases | Status400BadRequest | The server will not process the request because of a client error: malformed syntax, invalid framing or, in APIs, invalid input. |
| 401 | Unauthorized 3 cases | Status401Unauthorized | The request lacks valid authentication. |
| 402 | Payment Required | Status402PaymentRequired | Reserved for future use; some APIs use it when a paid plan or credit is needed. |
| 403 | Forbidden 4 cases | Status403Forbidden | The server understood who the client is but refuses the request: the user is authenticated but not allowed. |
| 404 | Not Found 4 cases | Status404NotFound | The server has no resource at this URL, or does not want to say it has one. |
| 405 | Method Not Allowed 1 case | Status405MethodNotAllowed | The URL exists but not for this HTTP method. |
| 406 | Not Acceptable 2 cases | Status406NotAcceptable | The server cannot produce a response in any format the client listed in its Accept header. |
| 407 | Proxy Authentication Required | Status407ProxyAuthenticationRequired | Like 401, but the client must authenticate with a proxy (Proxy-Authenticate header). |
| 408 | Request Timeout 1 case | Status408RequestTimeout | The server gave up waiting for the client to finish sending the request. |
| 409 | Conflict 2 cases | Status409Conflict | The request conflicts with the current state of the resource, for example a duplicate or an edit conflict. |
| 410 | Gone | Status410Gone | The resource existed but was removed permanently, and no forwarding address is known. |
| 411 | Length Required | Status411LengthRequired | The server refuses a request without a Content-Length header. |
| 412 | Precondition Failed 1 case | Status412PreconditionFailed | A condition in the request headers (If-Match, If-Unmodified-Since) was false. |
| 413 | Content Too Large 1 case | Status413RequestEntityTooLarge | The request body is larger than the server will accept. |
| 414 | URI Too Long 1 case | Status414RequestUriTooLong | The request URL is longer than the server will process. |
| 415 | Unsupported Media Type 3 cases | Status415UnsupportedMediaType | The server refuses the request body's format, given by its Content-Type header. |
| 416 | Range Not Satisfiable 1 case | Status416RequestedRangeNotSatisfiable | The Range the client asked for is outside the resource. |
| 417 | Expectation Failed | Status417ExpectationFailed | The server cannot meet the Expect header of the request. |
| 418 | I'm a teapot | Status418ImATeapot | An April Fools' joke from RFC 2324. |
| 419 | Authentication Timeout | Status419AuthenticationTimeout | Not a standard code. |
| 421 | Misdirected Request | Status421MisdirectedRequest | The request reached a server that cannot answer for this host, typically over a reused HTTP/2 connection. |
| 422 | Unprocessable Content 1 case | Status422UnprocessableEntity | The body is well-formed but semantically invalid (RFC 9110, formerly WebDAV's "Unprocessable Entity"). |
| 423 | Locked | Status423Locked | The resource is locked (WebDAV, RFC 4918). |
| 424 | Failed Dependency | Status424FailedDependency | The request failed because an earlier request it depended on failed (WebDAV). |
| 425 | Too Early | | The server is unwilling to risk processing a request that might be replayed (RFC 8470). |
| 426 | Upgrade Required | Status426UpgradeRequired | The server refuses the request over the current protocol and says which one to use in an Upgrade header. |
| 428 | Precondition Required | Status428PreconditionRequired | The server requires the request to be conditional (RFC 6585), usually to force If-Match on updates and prevent lost updates. |
| 429 | Too Many Requests 2 cases | Status429TooManyRequests | The client sent too many requests in a given time (RFC 6585). |
| 431 | Request Header Fields Too Large 1 case | Status431RequestHeaderFieldsTooLarge | The request headers, or one header, are too large (RFC 6585). |
| 451 | Unavailable For Legal Reasons | Status451UnavailableForLegalReasons | The resource is blocked for legal reasons, such as a court order (RFC 7725). |
| 499 | Client Closed Request | Status499ClientClosedRequest | Not a standard code. |