// kit · http

HTTP status reference

Instant search. Filter by code or keyword. RFC 9110 + de-facto extensions (418, 451, 419…).

100 Continue

Initial part of a request received, continue with the body.

101 Switching Protocols

Server switching protocols, e.g. HTTP/1.1 → HTTP/2 or to WebSocket.

102 Processing

WebDAV — processing, no final response yet (deprecated).

103 Early Hints

Preload hints before the final response.

200 OK

Standard successful response.

201 Created

Resource created. Include Location header.

202 Accepted

Request accepted, processing not finished.

203 Non-Authoritative Information

Response modified by a transforming proxy.

204 No Content

Success, no body. Typical for DELETE / PUT idempotent.

205 Reset Content

Tell the client to reset the form.

206 Partial Content

Range request fulfilled.

207 Multi-Status

WebDAV — multiple status codes inside body.

208 Already Reported

WebDAV — DAV binding already enumerated.

226 IM Used

Delta encoding result.

300 Multiple Choices

Multiple representations available.

301 Moved Permanently

Resource permanently moved. Use Location.

302 Found

Temporary redirect. POSTs may switch to GET.

303 See Other

POST redirects to GET at Location.

304 Not Modified

Conditional GET hit cache.

307 Temporary Redirect

Like 302 but preserves method.

308 Permanent Redirect

Like 301 but preserves method.

400 Bad Request

Malformed request, client should not retry.

401 Unauthorized

Authentication required or failed.

402 Payment Required

Reserved. Some APIs use for quota.

403 Forbidden

Authenticated but not authorized.

404 Not Found

No resource at this URI.

405 Method Not Allowed

Method known but disallowed.

406 Not Acceptable

Content negotiation failed.

407 Proxy Authentication Required

Proxy auth needed.

408 Request Timeout

Client too slow.

409 Conflict

Resource state conflict — typical for ETag mismatch.

410 Gone

Permanently removed, do not retry.

411 Length Required

Content-Length header missing.

412 Precondition Failed

If-Match / If-Unmodified-Since failed.

413 Content Too Large

Body exceeds server limit (was 413 Payload Too Large).

414 URI Too Long

URI longer than server can process.

415 Unsupported Media Type

Content-Type not accepted.

416 Range Not Satisfiable

Invalid Range header.

417 Expectation Failed

Expect header expectation not met.

418 I'm a teapot

RFC 2324 April Fools. Some CDNs use to drop traffic.

421 Misdirected Request

Server cannot produce a response for this combination.

422 Unprocessable Content

Validation error — well-formed but semantically wrong.

423 Locked

WebDAV resource locked.

424 Failed Dependency

Previous request failed.

425 Too Early

Replay risk (0-RTT TLS).

426 Upgrade Required

Client must upgrade protocol.

428 Precondition Required

Conditional request mandatory.

429 Too Many Requests

Rate-limited. Include Retry-After.

431 Request Header Fields Too Large

Headers exceed limit.

451 Unavailable For Legal Reasons

Censored by court / law.

500 Internal Server Error

Generic server failure. Fix and log.

501 Not Implemented

Feature not supported.

502 Bad Gateway

Upstream gave invalid response.

503 Service Unavailable

Overloaded or maintenance. Use Retry-After.

504 Gateway Timeout

Upstream took too long.

505 HTTP Version Not Supported

Protocol version refused.

506 Variant Also Negotiates

Content negotiation loop.

507 Insufficient Storage

WebDAV — no space.

508 Loop Detected

WebDAV — infinite loop.

510 Not Extended

Further extensions required.

511 Network Authentication Required

Captive portal in front.

0 / 61 shown