A complete, searchable reference for all HTTP status codes. Filter by category (1xx to 5xx), search by code or name, and learn the meaning, usage, and common scenarios for each response code.
Showing 62 of 62 status codes
The server has received the request headers and the client should proceed to send the request body.
The server is switching protocols as requested by the client via the Upgrade header.
The server has received and is processing the request, but no response is available yet.
Used to return some response headers before final HTTP message.
The request has succeeded. The meaning depends on the HTTP method used.
The request has been fulfilled and a new resource has been created.
The request has been accepted for processing, but processing is not complete.
The returned metadata is not exactly the same as available from the origin server.
The server successfully processed the request but is not returning any content.
The server successfully processed the request and is asking the client to reset the document view.
The server is delivering only part of the resource due to a range header sent by the client.
Conveys information about multiple resources where multiple status codes might be appropriate.
The members of a DAV binding have already been enumerated and are not included again.
The server has fulfilled a GET request and the response is a representation of one or more instance-manipulations applied.
The request has more than one possible response. The user or user agent should choose one.
The URL of the requested resource has been changed permanently. The new URL is given in the response.
The URI of requested resource has been changed temporarily.
The response can be found under another URI using GET method.
The resource has not been modified since the last request.
The requested resource must be accessed through the proxy given by the Location field.
The request should be repeated with another URI but future requests should still use the original URI.
The request and all future requests should be repeated using another URI, preserving the HTTP method.
The server cannot process the request due to malformed syntax or invalid request message.
The request requires user authentication. The client must authenticate itself.
Reserved for future use. Originally intended for digital payment systems.
The server understood the request but refuses to authorize it.
The server cannot find the requested resource. The URL is not recognized.
The request method is known by the server but not supported by the target resource.
The server cannot produce a response matching the list of acceptable values in the request headers.
The client must first authenticate itself with the proxy.
The server timed out waiting for the request.
The request conflicts with the current state of the server.
The target resource is no longer available and this condition is likely permanent.
The server refuses the request because the Content-Length header field is not defined.
One or more conditions given in the request header fields evaluated to false.
The request entity is larger than limits defined by server.
The URI requested by the client is longer than the server is willing to interpret.
The media format of the requested data is not supported by the server.
The range specified by the Range header field cannot be fulfilled.
The expectation given in the Expect request header could not be met.
The server refuses to brew coffee because it is, permanently, a teapot. (RFC 2324)
The request was directed at a server that is not able to produce a response.
The server understands the content type but was unable to process the contained instructions.
The resource that is being accessed is locked.
The request failed because it depended on another request that failed.
The server is unwilling to risk processing a request that might be replayed.
The server refuses to perform the request using the current protocol.
The origin server requires the request to be conditional.
The user has sent too many requests in a given amount of time (rate limiting).
The server is unwilling to process the request because its header fields are too large.
The resource is unavailable due to legal demands such as censorship or government-mandated blocks.
The server has encountered a situation it does not know how to handle.
The request method is not supported by the server and cannot be handled.
The server acting as a gateway got an invalid response from the upstream server.
The server is not ready to handle the request, often due to maintenance or overloading.
The server acting as a gateway did not get a response in time from the upstream server.
The HTTP version used in the request is not supported by the server.
The server has an internal configuration error in transparent content negotiation.
The server is unable to store the representation needed to complete the request.
The server detected an infinite loop while processing the request.
Further extensions to the request are required for the server to fulfill it.
The client needs to authenticate to gain network access.
Browse HTTP status codes by category using the tabs: 1xx (Informational), 2xx (Success), 3xx (Redirection), 4xx (Client Error), and 5xx (Server Error). Use the search field to find specific codes by number or name - for example, type '404' or 'not found' to jump directly to that code. Click on any status code to expand its details showing the full description and common use cases. The color coding helps you quickly identify the category: blue for informational, green for success, yellow for redirection, orange for client errors, and red for server errors. Copy any code and its name with the copy button.
The HTTP status codes reference is invaluable for web developers debugging API responses and choosing the correct status codes for their endpoints, back-end engineers implementing RESTful APIs who need to return semantically correct responses, front-end developers handling error states in their applications, QA engineers verifying that applications return appropriate status codes, DevOps professionals interpreting server logs and monitoring alerts, technical writers documenting API behavior, students learning web development fundamentals, and anyone troubleshooting website issues by understanding what different response codes mean in context.
HTTP status codes are defined by RFC 9110 (HTTP Semantics, replacing RFC 7231) and are issued by the server in response to a client's request. They are grouped into five classes: 1xx (Informational) - the request was received and is being processed; 2xx (Success) - the request was successfully received, understood, and accepted; 3xx (Redirection) - further action is needed to complete the request; 4xx (Client Error) - the request contains bad syntax or cannot be fulfilled; 5xx (Server Error) - the server failed to fulfill a valid request. This tool includes all standard codes defined by IANA (Internet Assigned Numbers Authority), including newer additions like 103 Early Hints, 425 Too Early, and 451 Unavailable For Legal Reasons.
200 OK is by far the most common - it means the request succeeded and the server returned the requested content. Other very common codes are 301 (permanent redirect), 302 (temporary redirect), 304 (not modified, used for caching), 400 (bad request), 401 (unauthorized), 403 (forbidden), 404 (not found), and 500 (internal server error).
401 Unauthorized means the client is not authenticated - it needs to provide valid credentials (login). 403 Forbidden means the client is authenticated but doesn't have permission to access the resource. In practice: 401 = 'who are you?', 403 = 'I know who you are, but you can't access this'.
301 Moved Permanently tells browsers and search engines that the resource has permanently moved to a new URL - caches and SEO signals transfer to the new URL. 302 Found (Temporary Redirect) indicates a temporary move - the original URL should still be used for future requests. Use 301 for permanent URL changes, 302 for temporary situations like A/B testing or maintenance.
Transform, format, generate, and encode data instantly. Private, fast, and always free.
Browse All Tools