HandyTools Hub

HTTP Status Reference

Browse HTTP status codes (1xx–5xx) with descriptions.

Your data never leaves your browser

100

Continue

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

101

Switching Protocols

The server is switching protocols as requested by the client, for example upgrading from HTTP to WebSocket.

102

Processing

The server has received and is processing the request, but no response is available yet (WebDAV).

103

Early Hints

Used to return some response headers before the final HTTP message, allowing the client to preload resources.

200

OK

The request has succeeded. The meaning depends on the HTTP method (GET, POST, PUT, DELETE, etc.).

201

Created

The request has been fulfilled and resulted in a new resource being created, typically after a POST request.

202

Accepted

The request has been accepted for processing but the processing has not been completed yet.

203

Non-Authoritative Information

The returned metadata may be from a third-party copy rather than the origin server.

204

No Content

The server successfully processed the request and is not returning any content body.

205

Reset Content

The server successfully processed the request and asks the client to reset the document view.

206

Partial Content

The server is delivering only part of the resource due to a range header sent by the client.

300

Multiple Choices

The request has more than one possible response. The user or user agent should choose one of them.

301

Moved Permanently

The URL of the requested resource has been changed permanently. The new URL is given in the response.

302

Found

The requested resource resides temporarily under a different URI. The client should continue to use the original URI.

303

See Other

The server sent this response to direct the client to get the requested resource at another URI with a GET request.

304

Not Modified

Indicates that the resource has not been modified since the version specified by the request headers (used for caching).

307

Temporary Redirect

The server sends this response to direct the client to a different URI, but the client must use the same HTTP method.

308

Permanent Redirect

The resource is now permanently located at another URI, and the client must use the same HTTP method for future requests.

400

Bad Request

The server cannot or will not process the request due to something that is perceived to be a client error (malformed syntax).

401

Unauthorized

The client must authenticate itself to get the requested response. Often called "unauthenticated" rather than "unauthorized".

403

Forbidden

The client does not have access rights to the content; the server is refusing to give the requested resource.

404

Not Found

The server can not find the requested resource. This is the most well-known HTTP error status code.

405

Method Not Allowed

The request method is known by the server but is not supported by the target resource.

408

Request Timeout

The server timed out waiting for the request from the client. The client may repeat the request without modifications.

409

Conflict

The request could not be completed due to a conflict with the current state of the target resource.

410

Gone

The requested content has been permanently deleted from the server, with no forwarding address.

413

Payload Too Large

The request entity is larger than limits defined by the server; the server might close the connection or return a Retry-After header.

414

URI Too Long

The URI requested by the client is longer than the server is willing to interpret.

415

Unsupported Media Type

The media format of the requested data is not supported by the server, so the server is rejecting the request.

418

I'm a teapot

The server refuses the attempt to brew coffee with a teapot. This is an April Fools joke from RFC 2324 (HTCPCP).

422

Unprocessable Entity

The request was well-formed but was unable to be followed due to semantic errors (WebDAV).

429

Too Many Requests

The user has sent too many requests in a given amount of time ("rate limiting"). The response should include a Retry-After header.

451

Unavailable For Legal Reasons

The server is denying access to the resource as a consequence of a legal demand (e.g., censorship or copyright).

500

Internal Server Error

The server has encountered a situation it does not know how to handle. This is a generic server error response.

501

Not Implemented

The request method is not supported by the server and cannot be handled. The server either does not recognize the request method or lacks the ability to fulfill it.

502

Bad Gateway

The server, while acting as a gateway or proxy, received an invalid response from the upstream server.

503

Service Unavailable

The server is not ready to handle the request. Common causes are server maintenance or temporary overloading.

504

Gateway Timeout

The server, while acting as a gateway or proxy, did not get a response in time from the upstream server.

HTTP Status Reference is a searchable, color-coded directory of every standard HTTP response code. Instead of digging through RFC documents, you can look up what 418 or 307 actually means in seconds. It is made for web developers debugging APIs, DevOps engineers reading server logs, and anyone who has ever stared at an error page wondering what went wrong.

How to Use

  • Browse codes: Scroll the full list organized by category from 1xx to 5xx.
  • Search: Type a code number like 502 or a keyword like redirect to filter instantly.
  • Filter: Narrow the list to one category — informational, success, redirection, client error, or server error.

Features

  • Complete list of standard HTTP status codes
  • Search by code number or description
  • Category filtering (1xx–5xx)
  • Color-coded categories for quick scanning
  • Plain-language explanations, not just RFC jargon

Understanding the Five Categories

HTTP status codes are grouped by their first digit, and knowing the groups makes debugging much faster. Codes in the 1xx range are informational and rarely seen by users — 101 Switching Protocols, for example, appears when a connection upgrades to WebSocket. The 2xx family means success: 200 OK is the normal case, while 201 Created and 204 No Content tell API clients exactly what happened.

The 3xx codes handle redirects, and the distinction between 301 (permanent) and 302 (temporary) matters enormously for SEO, because only a 301 passes link equity to the new URL. The famous 4xx codes signal client mistakes — 400 for malformed requests, 401 for missing authentication, 403 for insufficient permission, 404 for missing resources, and 429 when you are being rate-limited. Finally, 5xx codes mean the server itself failed: 500 is a generic crash, 502 means an upstream service (like the app behind your reverse proxy) answered badly, and 503 usually means the service is temporarily down, often during a deploy.

Use Cases

  • Decoding unfamiliar errors returned by a third-party API
  • Interpreting load balancer and reverse proxy logs (502 vs. 504)
  • Writing correct error handling in client code
  • Teaching HTTP fundamentals to junior developers

Frequently Asked Questions

What is HTTP status code 404?

404 Not Found means the server cannot find the requested resource.

What's the difference between 401 and 403?

401 means authentication required. 403 means you lack permission.

What does a 503 error mean?

503 Service Unavailable means the server is temporarily overloaded or down for maintenance. Retrying later usually works.

What is the difference between 301 and 302?

301 is a permanent redirect that passes SEO value to the new URL; 302 is temporary and keeps the original address indexed.