| 100 | Continue | See also the request header Expect |
| 101 | Switching Protocols | See also the Upgrade request header. |
| 200 | OK | |
| 201 | Created | A resource was created on the server. Typically used after POST (why?) and sometimes after PUT requests. |
| 202 | Accepted | |
| 203 | Non-Authoritative Information | |
| 204 | No Content | |
| 205 | Reset Content | |
| 206 | Partial Content | |
| 300 | Multiple Choices | |
| 301 | Moved Permanently | The Location response header contains the URL to which a resource has moved. See also the -L option of curl. Comapre with 307. |
| 302 | Found | Was previously referred to as «Moved temporarily» |
| 303 | See Other | |
| 304 | Not Modified | See the ETag and If-None-Matched headers. Compare with the 412 status code. |
| 305 | Use Proxy | Deprecated |
| 306 | not used anymore | This status code was used to indicate Switch Proxy |
| 307 | Temporary Redirect | Compare with 301. |
| 308 | Permanent Redirect | described in RFC 7538 |
| 400 | Bad Request | |
| 401 | Unauthorized | Used to indicate authentication. Must include a WWW-Authenticate header field and a challenge. |
| 402 | Payment Required | Rarely used (and there is no standard convention) |
| 403 | Forbidden | |
| 404 | Not Found | The client was able to contact the web server, but the web server was unable find the requested resource (possibly because the client has a typo in the request). Compare with 410 |
| 405 | Method not allowed | |
| 406 | Not Acceptable | Might be sent if a server cannot serve a document in one of the languages requested with the Accept-Language or encodings requested with the Accept-Encoding request headers |
| 407 | Proxy Authentication Required | See also the Proxy-Authenticate and Proxy-Authorization headers. |
| 408 | Request Timeout | |
| 409 | Conflict | |
| 410 | Gone | This resource was likely available in the past but was removed. Compare with 404. |
| 411 | LengthRequired | |
| 412 | Precondition Failed | 412 is returned when the ETag/If-Match mechanism detected a mid-air collision. Compare with status 304. |
| 413 | Request Entity Too Large | |
| 414 | Request Uri Too Long | |
| 415 | Unsupported Media Type | |
| 416 | Range Not Satisfiable | See also the Range request header. |
| 417 | Expectation Failed | See also the request header Expect. |
| 418 | I'm a teapot | Published in RFC 2324, 1 April 1998. |
| 421 | Misdirected Content | |
| 422 | Locked | WebDAV |
| 424 | Failed Dependency | WebDAV |
| 425 | Too Early | Experimental |
| 425 | Upgrade Required | |
| 428 | Precondition Required | optional: clients cannot rely upon this status code to prevent «lost update» conflicts. |
| 429 | Too Many Requests | User has sent too many requests in a given amount of time (rate limiting). This status might come with a Retry-After response header. Compare with Status code 503. See also with DoD (Denial of Service) attacks. |
| 431 | Request Header Fields Too Large | server is unwilling to process the request because its header fields are too large. |
| 426 | Upgrade Required | |
| 451 | Unavailable For Legal Reasons | |
| 500 | Internal Server Error | For example in an Apache Web Server because an .htaccess file is corrupt. |
| 501 | Not implemented | The request method is either not understood by web server, or it is not implemented in the web server. |
| 502 | Bad Gateway | A server that acts as a gateway or proxy received an invalid response from its upstream server. |
| 503 | Service Unavailable | Should be sent with the Retry-After response header. Compare with status code 429. |
| 504 | Gateway Timeout | |
| 505 | HTTP Version Not Supported | |
| 511 | Network Authentication Required | client needs to authenticate to gain network access. |