HTTP Status Codes Reference
A quick reference for common HTTP status codes, their reason phrases, and descriptions.
Code | Reason Phrase | Description |
---|---|---|
100 | Continue | The server has received the request headers and the client should proceed to send the request body. |
101 | Switching Protocols | The server is switching protocols according to the Upgrade header sent by the client. |
102 | Processing | WebDAV; The server has received and is processing the request, but no response is available yet. |
103 | Early Hints | Used to return some response headers before final HTTP message. |
200 | OK | The request has succeeded. The meaning of the success depends on the HTTP method. |
201 | Created | The request has been fulfilled and resulted in a new resource being created. |
202 | Accepted | The request has been accepted for processing, but the processing has not been completed. |
203 | Non-Authoritative Information | The server is a transforming proxy that received a 200 OK from its origin, but is returning a modified version of the origin's response. |
204 | No Content | The server successfully processed the request and is not returning any content. |
205 | Reset Content | The server successfully processed the request, but is not returning any content and requires that the requester reset the document view. |
206 | Partial Content | The server is delivering only part of the resource due to a range header sent by the client. |
300 | Multiple Choices | The request has more than one possible response. The user agent or user should choose one of them. |
301 | Moved Permanently | The URL of the requested resource has been changed permanently. The new URL is given in the response. |
302 | Found | The URL of the requested resource has been changed temporarily. Further changes in the URL might be made in the future. |
303 | See Other | The server sent this response to direct the client to get the requested resource at another URI with a GET request. |
304 | Not Modified | Used for caching purposes. It tells the client that the response has not been modified, so the client can continue to use the same cached version of the response. |
307 | Temporary Redirect | The server sends this response to direct the client to get the requested resource at another URI with same method that was used in the prior request. |
308 | Permanent Redirect | This means that the resource is now permanently located at another URI, specified by the Location: HTTP Response header. |
400 | Bad Request | The server cannot or will not process the request due to something that is perceived to be a client error. |
401 | Unauthorized | Authentication is required and has failed or has not yet been provided. |
402 | Payment Required | Reserved for future use. Originally intended for digital payment systems. |
403 | Forbidden | The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. |
404 | Not Found | The server cannot find the requested resource. Links that lead to a 404 page are often called broken or dead links. |
405 | Method Not Allowed | The request method is known by the server but is not supported by the target resource. |
406 | Not Acceptable | The server cannot produce a response matching the list of acceptable values defined in the request's proactive content negotiation headers. |
408 | Request Timeout | The server would like to shut down this unused connection. It is sent on an idle connection by some servers, even without any previous request by the client. |
409 | Conflict | The request conflicts with the current state of the server. |
410 | Gone | The requested content has been permanently deleted from server, with no forwarding address. |
418 | I'm a teapot | The server refuses the attempt to brew coffee with a teapot. (April Fools' joke RFC) |
429 | Too Many Requests | The user has sent too many requests in a given amount of time ("rate limiting"). |
500 | Internal Server Error | The server has encountered a situation it doesn't know how to handle. |
501 | Not Implemented | The request method is not supported by the server and cannot be handled. |
502 | Bad Gateway | The server, while acting as a gateway or proxy, received an invalid response from the upstream server. |
503 | Service Unavailable | The server is not ready to handle the request. Common causes are a server that is down for maintenance or that is overloaded. |
504 | Gateway Timeout | The server is acting as a gateway and cannot get a response in time. |
505 | HTTP Version Not Supported | The HTTP version used in the request is not supported by the server. |
About HTTP Status Codes
HTTP status codes are issued by a server in response to a client's request made to the server. They are three-digit integers where the first digit defines the class of response.
- 1xx (Informational): The request was received, continuing process.
- 2xx (Successful): The request was successfully received, understood, and accepted.
- 3xx (Redirection): Further action needs to be taken in order to complete the request.
- 4xx (Client Error): The request contains bad syntax or cannot be fulfilled.
- 5xx (Server Error): The server failed to fulfill an apparently valid request.
This page provides a reference for common codes. For a complete and official list, refer to the IANA HTTP Status Code Registry.