What Are HTTP Status Codes?
Every HTTP response starts with a three-digit number telling the client what happened: whether the request succeeded, needs a redirect, was malformed, or triggered a server failure. This http status code reference covers the full range of codes a browser, API client, or server can return, organized into five categories by leading digit. Whether you are debugging a failed API call, writing documentation, or just need a http status codes list to check what a number means, this tool gives you the exact spec definition alongside practical guidance for how each code is actually used in real APIs.
How to Use This HTTP Status Code Reference
Search by number or name to jump straight to a code, or use the category tabs to browse 1xx through 5xx as a browsable http status codes cheat sheet. Quick-access buttons surface the codes developers hit constantly (200, 201, 204, 301, 400, 401, 403, 404, 429, 500, 503), and selecting any code opens a detail panel with its full description, an exact RFC section citation, and a practical dev tip explaining how the code is meant to be used, not just its formal spec wording. If you have ever paused mid-debug wondering what does http status code mean for the exact number staring back at you in a network tab, the detail panel spells it out in plain language. This makes it useful both as a fast http status code lookup mid-debugging session and as a deeper http response codes explainer when you actually need to understand why a code applies.
The Five Status Code Categories
HTTP status codes explained by leading digit: 1xx Informational codes indicate the request was received and processing continues. 2xx Success codes confirm the request was received, understood, and accepted. 3xx Redirection codes mean further action is needed to complete the request, usually following a different URL. 4xx Client Error codes mean the request itself was malformed or unauthorized. 5xx Server Error codes mean the server failed to fulfill a request it otherwise understood. Knowing which range a code falls into is often enough to triage a failure before reading the specific number.
Commonly Confused Status Codes
A few pairs cause repeated confusion. 401 Unauthorized actually means unauthenticated, the client has not proven who it is, while 403 Forbidden means the client is known but not allowed to access the resource. Among redirects, 301 and 308 are permanent while 302 and 307 are temporary, and the newer 307 and 308 explicitly preserve the original HTTP method where 301 and 302 historically did not. For successful writes, 200 fits a request that returns a body, 201 fits a request that created a new resource (and should include a Location header), and 204 fits a request that succeeded with nothing to return in the body.
Choosing the Right Status Code for a REST API
Picking the correct rest api status codes for your own endpoints matters as much as reading someone else is. Return 200 for a successful GET or a PUT/PATCH that returns updated data, 201 for a POST that creates a resource, and 204 for a DELETE or an action with no meaningful response body. Reserve 4xx for problems the caller can fix, like a missing field (400) or an invalid token (401), and reserve 5xx for problems on your end, like an unhandled exception or a downstream dependency timing out. Consistent use of these http error codes list conventions makes an API predictable to integrate against, which is worth more to API consumers than any single endpoint documentation.