The knowledge combined here comes from RFCs, mailing lists, bug reports, code repositories, Q&A forums, and hard-won life experiences (as opposed to copying and pasting RFCs without any value add).
Guides are written from the developer/webmaster perspective.
See About page for more information.
These status codes indicate that the request was received while processing is still continuing.
These status codes indicate the request was successfully understood and accepted by the server.
- HTTP 200 - OK
- HTTP 201 - Created
- HTTP 202 - Accepted
- HTTP 203 - Non-Authoritative Information
- HTTP 204 - No Content
- HTTP 205 - Reset Content
- HTTP 206 - Partial Content
These status codes indicate the client should take an additional step to complete the request.
- HTTP 300 - Multiple Choices
- HTTP 301 - Moved Permanently
- HTTP 302 - Found
- HTTP 303 - See Other
- HTTP 304 - Not Modified
- HTTP 307 - Temporary Redirect
- HTTP 308 - Permanent Redirect
Client errors (4xx)
These status codes are reserved for cases when the error is caused by the client.
- HTTP 400 - Bad Request
- HTTP 401 - Unauthorized
- HTTP 402 - Payment Required
- HTTP 403 - Forbidden
- HTTP 404 - Not Found
- HTTP 405 - Method Not Allowed
- HTTP 406 - Not Acceptable
- HTTP 407 - Proxy Authentication Required
- HTTP 408 - Request Timeout
- HTTP 409 - Conflict
- HTTP 410 - Gone
- HTTP 411 - Length Required
- HTTP 412 - Precondition Failed
- HTTP 413 - Request Entity Too Large
- HTTP 414 - Request URI Too Long
- HTTP 415 - Unsupported Media Type
- HTTP 416 - Range Not Satisfiable
- HTTP 417 - Expectation Failed
- HTTP 418 - I’m a Teapot
- HTTP 421 - Misdirected Request
- HTTP 422 - Unprocessable Entity
- HTTP 425 - Too Early
- HTTP 426 - Upgrade Required
- HTTP 428 - Precondition Required
- HTTP 429 - Too Many Requests
- HTTP 431 - Request Header Fields Too Large
- HTTP 451 - Unavailable For Legal Reasons
Server errors (5xx)
These status codes are reserved for cases when the problem originates from the server.