HTTP Status Codes
Complete searchable reference of all HTTP response status codes with plain-English descriptions.
61 status codes in database
1xx Informational
Continue
The server has received the request headers and the client should proceed to send the request body.
Switching Protocols
The server agrees to switch protocols as requested by the client (e.g. HTTP → WebSocket).
Processing
Server has received and is processing the request, but no response is available yet (WebDAV).
Early Hints
Allows the user agent to start preloading resources while the server prepares a final response.
2xx Success
OK
Standard response for successful HTTP requests. The actual response depends on the request method.
Created
The request has been fulfilled, resulting in the creation of a new resource.
Accepted
The request has been accepted for processing, but processing is not complete.
Non-Authoritative Information
The server successfully processed the request, but is returning information from another source.
No Content
The server successfully processed the request and is not returning any content.
Reset Content
The server successfully processed the request, asks the client to reset the document view.
Partial Content
The server is delivering only part of the resource due to a Range header in the request.
Multi-Status
The message body contains multiple separate response codes (WebDAV).
Already Reported
The members of a DAV binding have already been enumerated in a previous reply (WebDAV).
IM Used
The server has fulfilled a GET request for the resource, applying one or more instance manipulations.
3xx Redirection
Multiple Choices
Multiple options for the resource are available; the user or browser should choose one.
Moved Permanently
This and all future requests should be directed to the given URI. Used for permanent redirects.
Found
The resource resides temporarily under a different URI. The client should continue using the original URI.
See Other
The response to the request can be found under a different URI using a GET request.
Not Modified
The resource has not been modified since the version specified in the request headers.
Temporary Redirect
The request should be repeated with another URI, but future requests should still use the original URI.
Permanent Redirect
The request and all future requests should be repeated using another URI (method must not change).
4xx Client Error
Bad Request
The server cannot or will not process the request due to a client error (malformed syntax, invalid request).
Unauthorized
Authentication is required and has failed, or not yet been provided.
Payment Required
Reserved for future use. Some services use it to indicate a payment is required.
Forbidden
The server understood the request but refuses to authorise it.
Not Found
The requested resource could not be found. May be available again in the future.
Method Not Allowed
A request method is not supported for the requested resource (e.g. POST to a read-only endpoint).
Not Acceptable
The requested resource is capable of generating only content not acceptable according to Accept headers.
Proxy Authentication Required
The client must first authenticate itself with the proxy.
Request Timeout
The server timed out waiting for the request.
Conflict
The request cannot be completed due to a conflict with the current state of the resource.
Gone
The resource is no longer available and will not be available again.
Length Required
The request did not specify the length of its content, which is required by the resource.
Precondition Failed
The server does not meet one of the preconditions in the request header fields.
Content Too Large
The request is larger than the server is willing or able to process.
URI Too Long
The URI provided was too long for the server to process.
Unsupported Media Type
The request entity has a media type which the server or resource does not support.
Range Not Satisfiable
The client has asked for a portion of the file, but the server cannot supply that portion.
Expectation Failed
The server cannot meet the requirements of the Expect request-header field.
I'm a Teapot
RFC 2324 Easter egg: a teapot refuses to brew coffee. Sometimes used by developers as a fun error.
Misdirected Request
The request was directed at a server that cannot produce a response.
Unprocessable Content
The request was well-formed but could not be followed due to semantic errors (WebDAV / APIs).
Locked
The resource that is being accessed is locked (WebDAV).
Failed Dependency
The request failed because it depended on another request that failed (WebDAV).
Too Early
The server is unwilling to risk processing a request that might be replayed.
Upgrade Required
The client should switch to a different protocol such as TLS/1.3.
Precondition Required
The origin server requires the request to be conditional.
Too Many Requests
The user has sent too many requests in a given amount of time (rate limiting).
Request Header Fields Too Large
The server is unwilling to process the request because its header fields are too large.
Unavailable For Legal Reasons
The resource cannot be provided for legal reasons (e.g. censored content).
5xx Server Error
Internal Server Error
A generic error message when the server encounters an unexpected condition.
Not Implemented
The server either does not recognise the request method, or lacks the ability to fulfil it.
Bad Gateway
The server was acting as a gateway or proxy and received an invalid response from the upstream server.
Service Unavailable
The server cannot handle the request because it is temporarily overloaded or down for maintenance.
Gateway Timeout
The server was acting as a gateway or proxy and did not receive a timely response from the upstream.
HTTP Version Not Supported
The server does not support the HTTP protocol version used in the request.
Variant Also Negotiates
Transparent content negotiation for the request results in a circular reference.
Insufficient Storage
The server is unable to store the representation needed to complete the request (WebDAV).
Loop Detected
The server detected an infinite loop while processing the request (WebDAV).
Not Extended
Further extensions to the request are required for the server to fulfil it.
Network Authentication Required
The client needs to authenticate to gain network access (e.g. captive portal).
HTTP Status Code Categories
HTTP status codes are three-digit integers grouped by their first digit into five classes. 1xx Informational codes indicate the request was received and the process is continuing. 2xx Success codes confirm the request was successfully received, understood, and accepted. 3xx Redirection codes tell the client further action is needed to complete the request. 4xx Client Errors indicate the request contains bad syntax or cannot be fulfilled by the server due to a client mistake. 5xx Server Errors indicate the server failed to fulfil a valid request.
Most Common Codes
Every web developer encounters a core set of status codes daily: 200 (OK), 201 (Created), 204 (No Content), 301 (Moved Permanently), 302 (Found), 304 (Not Modified), 400 (Bad Request), 401 (Unauthorized), 403 (Forbidden), 404 (Not Found), 422 (Unprocessable Content), 429 (Too Many Requests), 500 (Internal Server Error), 502 (Bad Gateway), and 503 (Service Unavailable). Understanding these codes is fundamental to debugging APIs, configuring web servers, and implementing correct HTTP behaviour.
Related Tools
- JSON Formatter & ValidatorValidate, format and minify JSON — with syntax error highlighting.Open tool
- JWT DecoderDecode and inspect JWT token headers, payloads and signatures.Open tool
- Regex TesterTest regular expressions live with match and group highlighting.Open tool
- HTML Entity EncoderEncode and decode HTML entities for safe use in markup.Open tool