#compsci 

The are 5 [[HTTP]] status classes defined by the standard:
![[Pasted image 20250312195549.png]]
## 1xx
| Numeric | Name                | Description                                                                                                                                                                                   |
| ------- | ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 100     | Continue            | The server has received the request headers and the client should proceed to send the request body                                                                                            |
| 101     | Switching Protocols | The requester has asked the server to switch protocols and the server has agreed to do so                                                                                                     |
| 102     | Processing          | A WebDAV request may contain many sub-requests involving file operations, requiring a long time to complete the request. Code indicates the server has received and is processing the request |
| 103     | Early Hints         | Used to return some response headers before final HTTP message                                                                                                                                |

## 2xx
| Numeric | Name                          | Description                                                                                                                                                       |
| ------- | ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 200     | OK                            | Standard response for sucessful HTTP requests, actual response will depend on the request method used                                                             |
| 201     | Created                       | Request fulfilled, new resource created                                                                                                                           |
| 202     | Accepted                      | Request accepted for processing, processing hasn't been completed                                                                                                 |
| 203     | Non-Authoritative Information | The server is a transforming proxy that received a 200 from its origin, but its returning a modified version of the origin's response                             |
| 204     | No Content                    | Request successfully processed, no content returned                                                                                                               |
| 205     | Reset Content                 | Request successfully processed, server asks the requester to rest its document view, not returning any content                                                    |
| 206     | Partial Content               | Only part of the resource delivered due to a range header sent by the client                                                                                      |
| 207     | Multi-Status                  | Message body is an XML message and can contain a number of separate response codes                                                                                |
| 208     | Already Reported              | Members of a DAV binding have already been enumerated in a part of the multistatus response, not being included again                                             |
| 226     | IM Used                       | Server has fulfilled a request for the resource, response is a representation of the result of one or more instance-manipulations applied to the current instance |

## 3xx
| Numeric | Name                      | Description                                                                                         |
| ------- | ------------------------- | --------------------------------------------------------------------------------------------------- |
| 300     | Multiple Choices          | Indicates multiple options for the resource from which the client may choose                        |
| 301     | Moved Permanently         | URL changed, new URL is given in the response                                                       |
| 302     | Found                     | URL changed temporarily,                                                                            |
| 303     | See Other                 | Response to the request can be found under another link using GET method                            |
| 304     | Not Modified              | Resource hasn't been modified since the version specified by request headers                        |
| 305     | Use Proxy (deprecated)    | Requested resource is available only through a proxy, address for which is provided in the response |
| 306     | Switch Proxy (deprecated) | Originally meant "Subsequent requests should use the specified proxy"                               |
| 307     | Temporary Redirect        | Similar to 302, except that the user agent mustn't change the HTTP method used                      |
| 308     | Permanent Redirect        | Similar to 301, except that the user agent mustn't change the HTTP method used                      |

## 4xx
| Numeric | Name                            | Description                                                                                                         |
| ------- | ------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| 400     | Bad Request                     | Server can't or won't process the request due to an apparent client error                                           |
| 401     | Unauthorized                    | Server won't process the request until the client authorizes                                                        |
| 402     | Payment Required                | Initial purpose for digital payment system, rarely used and no standard convention exists                           |
| 403     | Forbidden                       | ACCESS DENIED (client's identity is known to the server)                                                            |
| 404     | Not Found                       | Server can't find the requested resource                                                                            |
| 405     | Method Not Allowed              | Request method known, not supported by target resource                                                              |
| 406     | Not Acceptable                  | Server didn't find any content that conforms to the criteria given by the user agent                                |
| 407     | Proxy Authentication Required   | Similar to 401, but authentication is needed to be done by a proxy                                                  |
| 408     | Request Timeout                 | Server timed out waiting for the request                                                                            |
| 409     | Conflict                        | Sent when a request conflicts with the current state of the server                                                  |
| 410     | Gone                            | The resource requested is no longer available and will not be available again                                       |
| 411     | Lewngth Required                | Request didn't specify the length of its content, and that was required                                             |
| 412     | Precondition Failed             | Server doesn't meet one of the preconditions that the requester put on the request header fields                    |
| 413     | Payload Too Large               | The request is larger than the server is willing or able to process                                                 |
| 414     | URI Too Long                    | URI provided was too long for the server to process                                                                 |
| 415     | Unsupported Media Type          | The request entity has a media type which the serrver or resource doesn't support                                   |
| 416     | Range Not Satisfiable           | Client asked for a portion of the file, but the server can't supply that portion                                    |
| 417     | Expectation Failed              | Server can't meet the requirements of the Expect request-header field                                               |
| 418     | I'm a teapot                    | Joke when teapots are requests to brew coffee                                                                       |
| 421     | Misdirected Request             | Request was directed at a server that is not able to produce a response                                             |
| 422     | Unprocessable content           | Request was well-formed, couldn't be processed                                                                      |
| 423     | Locked                          | The resource that is being accessed is locked                                                                       |
| 424     | Failed Dependency               | The request failed because it depended on another request and that request failed                                   |
| 425     | Too early                       | Indicates that the server is unwilling to risk processing a request that might be replayed                          |
| 426     | Upgrade Required                | The client should switch to a different protocol                                                                    |
| 428     | Precondition Required           | Origin server requires the request to be conditional                                                                |
| 429     | Too Many Requests               | User has sent too many requests in a given amount of time                                                           |
| 431     | Request Header Fields Too Large | Server won't process the request because one or more of the requests header fields are too large                    |
| 451     | Unavailable For Legal Reasons   | Server operator has received a legal demand to deny access to a resource, reference to the novel [[Fahrenheit 451]] |

## 5xx
| Numeric | Name                            | Description                                                                                                                         |
| ------- | ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| 500     | Internal Server Error           | Generic server error                                                                                                                |
| 501     | Not Implemented                 | Either the server doesn't recognize the request method, or it lacks the ability to fulfill the request                              |
| 502     | Bad Gateway                     | The server was acting as a gateway or proxy and received an invalid response from the upstream server                               |
| 503     | Service Unavailable             | Server can't handle the request (overloaded or down for maintenance), generally temporary                                           |
| 504     | Gateway Timeout                 | Server was acting as a gateway or proxy and didn't receive a timely response from the upstream sersver                              |
| 505     | HTTP Version Not Supported      | Server doesn't support the HTTP version used in the request                                                                         |
| 506     | Variant Also Negotiates         | During content negotiatin, the chosen variant is configured to engage in content negotiation itself, circular refernces cuz of that |
| 507     | Insufficient Storage            | Server ran out of storage                                                                                                           |
| 508     | Loop Detected                   | Server detected an infinite loop while processing the request                                                                       |
| 510     | Not Extended                    | Further extensions to the request are required for the server to fuilfil it                                                         |
| 511     | Network Authentication Required | The client needs to authenticate to gain network access, intended for use by e.g. captive portals                                   |
