HTTP Status Code Reference

Searchable HTTP status codes with plain-English causes and fix guidance.

Runs 100% in your browser. Nothing you enter is uploaded or stored.

100Continue

Server received the request headers and the client should send the body.

Causes & fix: Sent in response to an Expect: 100-continue header before a large upload.

101Switching Protocols

Server is switching protocols as requested by the Upgrade header.

Causes & fix: WebSocket handshakes and HTTP/2 upgrades.

200OK

The request succeeded.

Causes & fix: Standard success for GET, PUT, POST without resource creation.

201Created

The request succeeded and a new resource was created.

Causes & fix: Returned by POST/PUT that create a resource; check the Location header.

202Accepted

The request was accepted for processing but is not complete.

Causes & fix: Async/queued work. Poll a status endpoint for the result.

204No Content

Success with no response body.

Causes & fix: DELETE operations and PUTs that intentionally return nothing.

301Moved Permanently

The resource has a new permanent URL.

Causes & fix: Domain or path migrations, http to https redirects. Update bookmarks and clients.

302Found

The resource is temporarily at a different URL.

Causes & fix: Post-login redirects, A/B routing. Clients should keep using the original URL.

304Not Modified

The cached copy is still valid; no body is sent.

Causes & fix: Conditional GET with If-None-Match or If-Modified-Since matched the cache.

307Temporary Redirect

Temporary redirect that preserves the request method and body.

Causes & fix: Like 302 but guarantees POST stays POST.

308Permanent Redirect

Permanent redirect that preserves the method and body.

Causes & fix: Like 301 but keeps POST as POST. Used for HSTS-style upgrades.

400Bad Request

The server cannot process the request due to a client error.

Causes & fix: Malformed JSON, missing required fields, invalid query params. Validate the payload.

401Unauthorized

Authentication is required or has failed.

Causes & fix: Missing/expired token or bad credentials. Check Authorization header and token expiry.

403Forbidden

Authenticated but not allowed to access the resource.

Causes & fix: Insufficient permissions, IP allowlists, WAF rules. Check roles and scopes.

404Not Found

The resource does not exist.

Causes & fix: Wrong path, deleted resource, or routing misconfig. Verify the URL and route table.

405Method Not Allowed

The HTTP method is not supported for this resource.

Causes & fix: POST to a GET-only endpoint. Check the Allow header for supported methods.

408Request Timeout

The server timed out waiting for the request.

Causes & fix: Slow or stalled client uploads, idle keep-alive connections.

409Conflict

The request conflicts with the current state of the resource.

Causes & fix: Duplicate creation, version/ETag mismatch, concurrent edits.

410Gone

The resource was permanently removed and will not return.

Causes & fix: Deprecated endpoints, purged content. Unlike 404, this is intentional and final.

418I'm a Teapot

The server refuses to brew coffee because it is a teapot.

Causes & fix: An April Fools' joke (RFC 2324). Sometimes used as a playful health/easter-egg route.

422Unprocessable Entity

Syntax is valid but the request is semantically wrong.

Causes & fix: Validation failures on well-formed JSON. Inspect the error body for field details.

429Too Many Requests

The client sent too many requests in a given time.

Causes & fix: Rate limiting. Honor the Retry-After header and add backoff.

500Internal Server Error

A generic, unexpected server-side error.

Causes & fix: Unhandled exceptions, bad deploys. Check application logs and recent releases.

501Not Implemented

The server does not support the requested functionality.

Causes & fix: Unimplemented method or feature behind a proxy.

502Bad Gateway

A gateway received an invalid response from upstream.

Causes & fix: Upstream app crashed or returned garbage. Check the backend and its health checks.

503Service Unavailable

The server is temporarily unable to handle the request.

Causes & fix: Overload, maintenance, no healthy upstreams. Check autoscaling and Retry-After.

504Gateway Timeout

A gateway did not get a timely response from upstream.

Causes & fix: Slow backend, DB locks, downstream timeouts. Check upstream latency and timeouts.

505HTTP Version Not Supported

The HTTP version in the request is not supported.

Causes & fix: Misconfigured client or proxy speaking an unsupported protocol version.

Related tools

From the makers of these tools

Run production tasks with agents you can trust.

BitSentry turns recurring investigations into reusable runbooks your agents follow step by step, with AI-explained evidence and a full audit trail.

Try BitSentry Desktop Free