Restful Services
Summary
HTTP Response Codes
Informational (1xx Series)
This class of status code indicates a provisional response, consisting only of the Status-Line and optional headers, and is terminated by an empty line. Since HTTP/1.0 did not define any 1xx status codes, servers must not send a 1xx response to an HTTP/1.0 client except under experimental conditions
| Code | Formal Meaning | Description | Use |
|---|---|---|---|
| 100 | Continue | ||
| 101 | Switching Protocols | ||
| 102 | Processing |
Success (2xx Series)
This class of status codes indicates the action requested by the client was received, understood, accepted and processed successfully.
| Code | Formal Meaning | Description | Use |
|---|---|---|---|
| 200 | OK | ||
| 201 | Created | ||
| 202 | Accepted | ||
| 203 | Non-Authoritative Information (since HTTP/1.1) | ||
| 204 | No Content | ||
| 205 | Reset Content | ||
| 206 | Partial Content | ||
| 207 | Multi-Status | ||
| 208 | Already Reported | ||
| 226 | IM Used |
Success (3xx Series)
This class of status code indicates that further action needs to be taken by the user agent in order to fulfil the request. The action required may be carried out by the user agent without interaction with the user if and only if the method used in the second request is GET or HEAD. A user agent should not automatically redirect a request more than five times, since such redirections usually indicate an infinite loop. Essentially, the client must take additional action to complete the request.
| Code | Formal Meaning | Description | Use |
|---|---|---|---|
| 300 | Multiple Choices | ||
| 301 | Moved Permanently | ||
| 302 | Found | ||
| 303 | See Other (since HTTP/1.1) | ||
| 304 | Not Modified | ||
| 305 | Use Proxy (since HTTP/1.1) | ||
| 306 | Switch Proxy | ||
| 307 | Temporary Redirect (since HTTP/1.1) | ||
| 308 | Permanent Redirect (experimental Internet-Draft)[10] |
Client Error (4xx Series)
The 4xx class of status code is intended for cases in which the client seems to have erred. Except when responding to a HEAD request, the server should include an entity containing an explanation of the error situation, and whether it is a temporary or permanent condition. These status codes are applicable to any request method. User agents should display any included entity to the user.
| Code | Formal Meaning | Description | Use |
|---|---|---|---|
| 400 | Bad Request | ||
| 401 | Unauthorised | ||
| 402 | Payment Required | ||
| 403 | Forbidden | ||
| 404 | Not found | ||
| 405 | Method Not Allowed | ||
| 406 | Not Acceptable | ||
| 407 | Proxy Authentication Required | ||
| 408 | Request Timeout | ||
| 409 | Conflict | ||
| 410 | Gone | ||
| 411 | Length Requrired | ||
| 412 | Precondition failed | ||
| 413 | Request Entity Too Large | ||
| 414 | Request-URI Too Long | ||
| 415 | Unsupported Media Type | ||
| 416 | Requested Range Not Satisfiable | ||
| 417 | Expectation Failed | ||
| 418 | I'm a teapot (RFC 2324) | ||
| 420 | Enhance Your Calm (Twitter) |