| 100 | Continue | The server received the request headers; the client should continue sending the body. |
| 101 | Switching Protocols | The server agrees to switch protocols, for example to WebSocket. |
| 103 | Early Hints | Lets the browser start preloading resources while the server prepares the full response. |
| 200 | OK | The request succeeded. The meaning depends on the method: GET returns data, POST returns the result of the action. |
| 201 | Created | A new resource was created. Usually returned by POST or PUT, with a Location header pointing to it. |
| 202 | Accepted | The request was accepted for processing but is not finished yet (asynchronous work). |
| 204 | No Content | Success, with no body to return. Common for DELETE and for updates that need no response data. |
| 206 | Partial Content | Only part of the resource is returned, in answer to a Range request (resuming downloads, video seeking). |
| 301 | Moved Permanently | The resource has a new permanent URL. Search engines transfer ranking to the new address. |
| 302 | Found | Temporary redirect. The client should keep using the original URL in future. |
| 303 | See Other | Redirects to another URL with GET, typically after a form POST. |
| 304 | Not Modified | The cached copy is still valid, so no body is sent. Saves bandwidth. |
| 307 | Temporary Redirect | Like 302, but the client must repeat the same method and body. |
| 308 | Permanent Redirect | Like 301, but the method and body must not change. |
| 400 | Bad Request | The server cannot understand the request because of malformed syntax or invalid data. |
| 401 | Unauthorized | Authentication is required or has failed. (Despite the name, it is about who you are.) |
| 403 | Forbidden | The server understood the request but refuses it. You are known but not allowed. |
| 404 | Not Found | The resource does not exist at this URL (or the server hides that it exists). |
| 405 | Method Not Allowed | The URL exists but not for this HTTP method. The Allow header lists valid ones. |
| 406 | Not Acceptable | The server cannot produce a response matching the Accept headers sent. |
| 408 | Request Timeout | The server gave up waiting for the client to finish sending the request. |
| 409 | Conflict | The request conflicts with the current state of the resource, such as an edit collision or duplicate. |
| 410 | Gone | The resource used to exist and was removed on purpose. Stronger than 404. |
| 411 | Length Required | The request needs a Content-Length header. |
| 413 | Content Too Large | The request body exceeds what the server will accept. |
| 414 | URI Too Long | The URL is longer than the server is willing to process. |
| 415 | Unsupported Media Type | The request body format (Content-Type) is not supported. |
| 418 | I'm a teapot | An April Fools joke from RFC 2324; some APIs return it for playful refusals. |
| 422 | Unprocessable Content | The request is well-formed but contains semantic errors, such as failed validation. |
| 425 | Too Early | The server will not risk processing a request that might be replayed. |
| 426 | Upgrade Required | The client must switch to a different protocol (e.g. newer TLS). |
| 428 | Precondition Required | The server requires the request to be conditional (If-Match) to avoid lost updates. |
| 429 | Too Many Requests | Rate limit exceeded. Check the Retry-After header and slow down. |
| 431 | Request Header Fields Too Large | The headers (often cookies) are too big. |
| 451 | Unavailable For Legal Reasons | Access is blocked because of a legal demand, such as censorship or a court order. |
| 500 | Internal Server Error | A generic server-side failure: something unexpected broke. Check the server logs. |
| 501 | Not Implemented | The server does not support the functionality needed to fulfil the request. |
| 502 | Bad Gateway | A gateway or proxy received an invalid response from the upstream server. |
| 503 | Service Unavailable | The server is temporarily overloaded or down for maintenance. Retry later (see Retry-After). |
| 504 | Gateway Timeout | A gateway or proxy did not get a timely response from the upstream server. |
| 505 | HTTP Version Not Supported | The server does not support the HTTP version used. |
| 507 | Insufficient Storage | The server cannot store the representation needed to complete the request. |
| 511 | Network Authentication Required | The client must authenticate to gain network access, such as captive portals on public Wi-Fi. |