---
type: Index
title: HTTP status codes
description: "The complete list of HTTP status codes, explained."
resource: "https://computerscience.co.uk/reference/http-status-codes/"
sources:
  - { title: "RFC 9110: HTTP Semantics (status codes)", url: "https://www.rfc-editor.org/rfc/rfc9110#name-status-codes" }
  - { title: "HTTP response status codes, MDN", url: "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status" }
timestamp: "2026-07-10"
---

# HTTP status codes

The complete list of HTTP status codes in plain English, grouped by class. Meanings follow RFC 9110 and MDN.

## 1xx Informational: the request was received and the process is continuing.

- 100 Continue: The client should continue with its request.
- 101 Switching Protocols: The server is switching protocols as requested.
- 103 Early Hints: Preliminary headers sent while the response is prepared.

## 2xx Success: the request was received, understood and accepted.

- 200 OK: The request succeeded. The most common status code.
- 201 Created: The request succeeded and a new resource was created.
- 202 Accepted: The request was accepted but not yet processed.
- 204 No Content: Success, but there is no body to return.
- 206 Partial Content: Part of the resource is returned, used for range requests.

## 3xx Redirection: further action is needed to complete the request.

- [301 Moved Permanently](/reference/http-status-codes/301/index.md): The resource has a new permanent URL.
- [302 Found](/reference/http-status-codes/302/index.md): The resource is temporarily at a different URL.
- 304 Not Modified: The cached copy is still valid, so nothing is sent.
- 307 Temporary Redirect: Temporary redirect that keeps the request method.
- 308 Permanent Redirect: Permanent redirect that keeps the request method.

## 4xx Client error: the request has a problem the client must fix.

- 400 Bad Request: The server cannot understand the request.
- 401 Unauthorized: Authentication is required and has failed or is missing.
- [402 Payment Required](/reference/http-status-codes/402/index.md): Reserved for payment. Newly relevant for paid APIs and AI agents.
- [403 Forbidden](/reference/http-status-codes/403/index.md): The server understood the request but refuses to authorise it.
- [404 Not Found](/reference/http-status-codes/404/index.md): The server cannot find the requested resource.
- 405 Method Not Allowed: The request method is not supported for this resource.
- 408 Request Timeout: The server timed out waiting for the request.
- 409 Conflict: The request conflicts with the current state of the resource.
- 410 Gone: The resource is permanently gone with no forwarding address.
- 418 I'm a Teapot: An April Fools joke from 1998 that became a real, beloved code.
- 422 Unprocessable Content: The request is well formed but semantically invalid.
- [429 Too Many Requests](/reference/http-status-codes/429/index.md): The client has sent too many requests in a given time. Central to rate limiting.
- 451 Unavailable For Legal Reasons: The resource is blocked for legal reasons.

## 5xx Server error: the server failed to fulfil a valid request.

- [500 Internal Server Error](/reference/http-status-codes/500/index.md): A generic error: something went wrong on the server.
- 501 Not Implemented: The server does not support the functionality required.
- 502 Bad Gateway: A server acting as a gateway got an invalid response upstream.
- 503 Service Unavailable: The server is temporarily unable to handle the request.
- 504 Gateway Timeout: A gateway server did not get a response in time.

Up: [site root](/index.md)
