HTTP response status codes
HTTP response status codes indicate whether a specific HTTP request has been successfully
completed. Responses are grouped in five classes:
1. Informational responses (1XX) – the request was received, continuing process
2. Successful responses (2XX) – the request was successfully received, understood, and accepted
3. Redirection messages (3XX) – further action needs to be taken in order to complete the request
4. Client error responses (4XX) – the request contains bad syntax or cannot be fulfilled
5. Server error responses (5XX) – the server failed to fulfil an apparently valid request
Informational responses (1xx)
An informational response indicates that the request ● 100 Continue
was received and understood. It is issued on a
provisional basis while request processing ● 101 Switching Protocols
continues. It alerts the client to wait for a final
response. The message consists only of the status ● 102 Processing
line and optional header fields, and is terminated by
an empty line. As the HTTP/1.0 standard did not
define any 1xx status codes, servers must not send
a 1xx response to an HTTP/1.0 compliant client
except under experimental conditions.
● 200 OK
● 201 Created
● 202 Accepted
Successful responses (2xx) ● 203 Non-Authoritative Information
● 204 No Content
This class of status codes indicates the action ● 205 Reset Content
requested by the client was received, understood,
and accepted. ● 206 Partial Content
● 207 Multi-Status
● 208 Already Reported
● 226 IM Used
● 300 Multiple Choices
● 301 Moved Permanently
Redirection responses (3xx)
● 302 Found
This class of status code indicates the client must ● 303 See Other
take additional action to complete the request. Many
of these status codes are used in URL redirection.[2]
● 304 Not Modified
● 305 Use Proxy
A user agent may carry out the additional action with
no user interaction only if the method used in the ● 306 Switch Proxy
second request is GET or HEAD. A user agent may
automatically redirect a request. A user agent should ● 307 Temporary Redirect
detect and intervene to prevent cyclical redirects.
● 308 Permanent Redirect
● 400 Bad Request
● 401 Unauthorized
● 402 Payment Required
● 403 Forbidden
● 404 Not Found
Client error responses (4xx) (1/2) ● 405 Method Not Allowed
● 406 Not Acceptable
This class of status code is intended for situations in
which the error seems to have been caused by the ● 407 Proxy Authentication Required
client. Except when responding to a HEAD request,
the server should include an entity containing an ● 408 Request Timeout
explanation of the error situation, and whether it is a
temporary or permanent condition. These status
● 409 Conflict
codes are applicable to any request method. User ● 410 Gone
agents should display any included entity to the user.
● 411 Length Required
● 412 Precondition Failed
● 413 Payload Too Large
● 414 URI Too Long
● 415 Unsupported Media Type
● 416 Range Not Satisfiable
Client error responses (4xx) (2/2) ● 417 Expectation Failed
● 422 Unprocessable Entity
This class of status code is intended for situations in
which the error seems to have been caused by the ● 426 Upgrade Required
client. Except when responding to a HEAD request,
the server should include an entity containing an
● 428 Precondition Required
explanation of the error situation, and whether it is a ● 429 Too Many Requests
temporary or permanent condition. These status
codes are applicable to any request method. User ● 431 Request Header Fields Too Large
agents should display any included entity to the user.
● 451 Unavailable For Legal Reasons
● 500 Internal Server Error
● 501 Not Implemented
● 502 Bad Gateway
● 503 Service Unavailable
Server error responses (5xx)
● 504 Gateway Timeout
Response status codes beginning with the digit "5" ● 505 HTTP Version Not Supported
indicate cases in which the server is aware that it
has encountered an error or is otherwise incapable ● 506 Variant Also Negotiates
of performing the request. Except when responding
to a HEAD request, the server should include an
● 507 Insufficient Storage
entity containing an explanation of the error situation, ● 508 Loop Detected
and indicate whether it is a temporary or permanent
condition. Likewise, user agents should display any ● 510 Not Extended
included entity to the user. These response codes
are applicable to any request method. ● 511 Network Authentication Required