Toolbench

HTTP status codes

Searchable reference for HTTP response status codes. Filter by class, jump to common ones, copy a line. Nothing is uploaded.

Lookup

Common shortcuts

—

Ready

How it works

An HTTP status code is a three-digit integer on the response status line. The first digit is the class:

1xx informational · 2xx success · 3xx redirection · 4xx client error · 5xx server error.

This page is a static, client-side reference (common IANA / RFC meanings). It does not call your API or change network responses. Click a row for a short “when to use / avoid” note; filter or type to narrow the list.

Examples

HTTP/1.1 200 OK
HTTP/1.1 201 Created
HTTP/1.1 204 No Content
HTTP/1.1 301 Moved Permanently
HTTP/1.1 304 Not Modified
HTTP/1.1 400 Bad Request
HTTP/1.1 401 Unauthorized
HTTP/1.1 403 Forbidden
HTTP/1.1 404 Not Found
HTTP/1.1 409 Conflict
HTTP/1.1 422 Unprocessable Content
HTTP/1.1 429 Too Many Requests
HTTP/1.1 500 Internal Server Error
HTTP/1.1 502 Bad Gateway
HTTP/1.1 503 Service Unavailable

FAQ

401 vs 403? 401 means authentication is missing or failed (send WWW-Authenticate when appropriate). 403 means the server understood who you are (or does not care) but refuses this action.

404 vs 410? 404 is “not found” (may be temporary or unknown). 410 is “gone” — intentionally removed and unlikely to return.

301 vs 302 vs 308? 301/308 are permanent; 302/307 are temporary. 308/307 keep the request method; older 301/302 clients may rewrite POST to GET.

422 vs 400? Both are client errors. 400 is generic malformed request; 422 (WebDAV / common APIs) means well-formed syntax but semantic validation failed.

502 vs 504? 502 = bad response from an upstream gateway dependency. 504 = upstream did not respond in time.

Is this the full IANA registry? No — a practical developer set. Exotic or obsolete codes may be omitted.

Related tools