400 | Bad Request | The request is malformed and the server cannot understand it. |
401 | Unauthorized | Valid authentication credentials are required, or the ones supplied have expired. |
402 | Payment Required | Reserved for payment scenarios; rarely used and not fully standardised. |
403 | Forbidden | The server understood the request but refuses to authorise it; signing in again rarely helps. |
404 | Not Found | No matching resource was found; the server does not say whether it ever existed. |
405 | Method Not Allowed | The URL does not accept the HTTP method that was used. |
406 | Not Acceptable | The server cannot produce a response matching the Accept header. |
407 | Proxy Authentication Required | The client must authenticate with the proxy first. |
408 | Request Timeout | The client did not complete the request within the server's waiting period. |
409 | Conflict | The request conflicts with the resource's current state, often from concurrent edits. |
410 | Gone | The resource was permanently removed and is explicitly not coming back. |
411 | Length Required | The server requires the request to include a Content-Length header. |
412 | Precondition Failed | A precondition given in the request headers evaluated to false. |
413 | Content Too Large | The request body is larger than the server is willing to accept. |
414 | URI Too Long | The request URL is too long, usually from an oversized GET query string. |
415 | Unsupported Media Type | The server does not support the media type of the request body. |
416 | Range Not Satisfiable | The requested Range lies outside the actual size of the resource. |
418 | I'm a teapot | A joke status from an April Fools' specification; not for production APIs. |
422 | Unprocessable Content | The syntax is valid but the content is semantically wrong, typically a validation failure. |
423 | Locked | The resource is locked; defined by the WebDAV specification. |
425 | Too Early | The server refuses to process early data that might be replayed. |
426 | Upgrade Required | The client must switch to the protocol named by the server. |
428 | Precondition Required | The server requires a conditional request to avoid lost updates. |
429 | Too Many Requests | A rate limit was hit; retry later, following the Retry-After header. |
431 | Request Header Fields Too Large | The request headers are too large for the server to process. |
451 | Unavailable For Legal Reasons | The resource is unavailable because of a legal demand. |