FreeDailyPro
Home/Security & Developer/HTTP Status Code Reference

HTTP Status Code Reference

Look up what any HTTP status code means

100

Continue

The server received the request headers and the client should proceed to send the request body.

101

Switching Protocols

The server is switching to a different protocol as requested by the client.

102

Processing

The server accepted the full request but hasn't finished processing it yet.

103

Early Hints

The server sends some response headers early, before the final response is ready.

200

OK

The request succeeded.

201

Created

The request succeeded and a new resource was created.

202

Accepted

The request was accepted for processing, but that processing isn't complete yet.

203

Non-Authoritative Information

The returned metadata is from a proxy or cache, not the exact metadata from the origin server.

204

No Content

The request succeeded but there's no content to return.

205

Reset Content

The server is telling the client to reset the document view that sent the request.

206

Partial Content

The server is delivering only part of the resource, matching a range requested by the client.

226

IM Used

The server fulfilled the request using a delta encoding (a set of instance manipulations) against a base version.

300

Multiple Choices

There's more than one possible response, and the client should choose one.

301

Moved Permanently

The resource has permanently moved to a new URL.

302

Found

The resource temporarily resides at a different URL.

303

See Other

The client should retrieve the resource with a GET request to a different URL.

304

Not Modified

The cached version is still valid; no need to re-fetch.

305

Use Proxy

Deprecated -- the requested resource had to be accessed through the proxy given in the response.

306

(Unused)

Reserved from an earlier version of the spec ('Switch Proxy'), no longer used.

307

Temporary Redirect

The resource temporarily resides at a different URL, and the request method must not change.

308

Permanent Redirect

The resource has permanently moved to a new URL, and the request method must not change.

400

Bad Request

The server can't process the request due to a client error.

What to do: Check the request syntax and payload for malformed JSON, missing required fields, or invalid parameter types.

401

Unauthorized

Authentication is required and has failed or not been provided.

What to do: Verify the request includes valid authentication credentials (like a token or API key) and that they haven't expired.

402

Payment Required

Reserved for future use with digital payment systems -- not commonly implemented.

What to do: Rarely used in practice -- check the specific API's docs, since this usually signals a billing or quota issue on that platform.

403

Forbidden

The server understood the request but refuses to authorize it.

What to do: The credentials are valid but lack permission -- check the user's role or scope, not whether they're logged in.

404

Not Found

The requested resource couldn't be found.

What to do: Double-check the URL path for typos, and confirm the resource still exists at that endpoint.

405

Method Not Allowed

The HTTP method isn't supported for this resource.

What to do: Confirm you're using the HTTP method (GET/POST/PUT/DELETE) the endpoint actually supports.

406

Not Acceptable

The server can't produce a response matching the content the client said it would accept.

What to do: Check the Accept header you're sending matches a format the server can actually return.

407

Proxy Authentication Required

The client must authenticate itself with a proxy before the request can proceed.

What to do: Authenticate with the proxy server itself, separately from the destination server's own authentication.

408

Request Timeout

The server timed out waiting for the request.

What to do: Check for slow network conditions or a client holding the connection open too long -- consider retrying.

409

Conflict

The request conflicts with the current state of the resource.

What to do: The request conflicts with the resource's current state (like a duplicate entry) -- refetch the current state before retrying.

410

Gone

The resource is permanently gone and isn't coming back, unlike a plain 404.

What to do: Unlike 404, this resource was intentionally removed -- update any links pointing to it rather than expecting it to return.

411

Length Required

The server requires a Content-Length header, which the request didn't include.

What to do: Add a Content-Length header to the request.

412

Precondition Failed

A condition set in the request's headers wasn't met by the server.

What to do: A conditional header you sent (like If-Match) didn't match the resource's current state -- refetch and retry.

413

Payload Too Large

The request body is larger than the server is willing or able to process.

What to do: Reduce the request body size, or check the server's configured upload limit.

414

URI Too Long

The requested URL is longer than the server is willing to interpret.

What to do: Shorten the URL, or move parameters from the query string into the request body if the method allows it.

415

Unsupported Media Type

The server doesn't support the format of the request payload.

What to do: Check the Content-Type header matches a format the server actually accepts.

416

Range Not Satisfiable

The requested byte range doesn't match the actual size of the resource.

What to do: The requested byte range is outside the resource's actual size -- verify the range values you're sending.

417

Expectation Failed

The server can't meet the requirement stated in the request's Expect header.

What to do: Remove the Expect header, or check whether the server actually supports it.

418

I'm a teapot

An April Fools' joke from RFC 2324 -- the server refuses to brew coffee because it's a teapot.

What to do: This is an April Fools' joke from RFC 2324 (Hyper Text Coffee Pot Control Protocol) -- not a real error to handle.

421

Misdirected Request

The request was sent to a server that isn't able to produce a response for it.

What to do: Reconfirm this connection or server can actually handle requests for the target host.

422

Unprocessable Entity

The request was well-formed but contains semantic errors.

What to do: The syntax is valid but the semantics aren't (e.g. failed validation) -- check the field-level error the server usually includes.

423

Locked

The resource being accessed is locked (used in WebDAV).

What to do: The resource is locked (common in WebDAV) -- wait, or request that it be unlocked.

424

Failed Dependency

The request failed because a previous, related request also failed (used in WebDAV).

What to do: A prior required request in the same operation failed -- check that earlier step, not this one.

425

Too Early

The server isn't willing to risk processing a request that might be replayed.

What to do: The server is guarding against replay attacks on early data -- retry once the full connection is established.

426

Upgrade Required

The server refuses to process the request using the current protocol and wants the client to upgrade.

What to do: Switch to the protocol version named in the Upgrade header the server sent back.

428

Precondition Required

The server requires the request to be conditional, to prevent lost-update race conditions.

What to do: Add the conditional header (like If-Match) the server is requiring before it'll process the request.

429

Too Many Requests

The client has sent too many requests in a given time.

What to do: You're being rate-limited -- check the Retry-After header and slow down your request rate.

431

Request Header Fields Too Large

The request's header fields are too large for the server to process.

What to do: Reduce the size or number of headers you're sending.

451

Unavailable For Legal Reasons

The server is denying access to the resource as a result of a legal demand.

What to do: The resource is blocked for legal or regulatory reasons -- this isn't something to work around technically.

500

Internal Server Error

The server encountered an unexpected condition.

What to do: Check the server's own logs -- this is a generic catch-all, and the real cause lives server-side, not in the request.

501

Not Implemented

The server doesn't support the functionality required to fulfill the request.

What to do: The server doesn't support the requested method -- confirm you're calling a real, implemented endpoint.

502

Bad Gateway

The server, acting as a gateway, got an invalid response upstream.

What to do: An upstream server (behind a proxy or load balancer) sent an invalid response -- check that upstream service's health.

503

Service Unavailable

The server isn't ready to handle the request (overloaded or down).

What to do: The server is temporarily overloaded or down for maintenance -- check the Retry-After header and back off.

504

Gateway Timeout

The upstream server failed to respond in time.

What to do: An upstream server took too long to respond -- check that upstream service's performance, not the client's request.

505

HTTP Version Not Supported

The server doesn't support the HTTP protocol version used in the request.

What to do: Use a version of HTTP the server actually supports.

506

Variant Also Negotiates

The server has an internal configuration error in its content negotiation setup.

What to do: A server-side content negotiation misconfiguration -- needs a fix on the server, not the client.

507

Insufficient Storage

The server can't store the representation needed to complete the request (used in WebDAV).

What to do: The server has run out of storage to complete the request -- a server-side capacity issue.

508

Loop Detected

The server detected an infinite loop while processing the request (used in WebDAV).

What to do: The server detected an infinite loop while processing -- check for a circular reference in the request chain.

510

Not Extended

Further extensions to the request are required for the server to fulfill it.

What to do: The server requires an extension not specified in the request -- check the server's documentation for what's required.

511

Network Authentication Required

The client needs to authenticate to gain network access, often seen with captive Wi-Fi portals.

What to do: Authenticate with the network itself first (common with public/hotel Wi-Fi captive portals) before the actual request will succeed.

What is this tool?

A searchable reference for HTTP status codes, explaining what each one means, which category (success, redirect, client error, server error) it falls into, and for error codes specifically, a concrete next step for what to actually check or do about it.

How to use it

Search by status code number or by name, and the matching entries with their explanations (and, for error codes, a suggested next step) are displayed.

The first digit of any status code tells you the general category at a glance — 2xx means success, 4xx means the client made a mistake, and 5xx means the server had a problem, even before you look up the specific code.

Advertisement