HTTP Status Codes

Complete reference of all HTTP status codes — 1xx informational, 2xx success, 3xx redirection, 4xx client errors, and 5xx server errors. Searchable with descriptions.

1xxInformational(4)
100

Continue

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

101

Switching Protocols

The server agrees to switch protocols as requested by the client (e.g. 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 a browser to preload resources.

2xxSuccess(10)
200

OK

The request has succeeded. The meaning depends on the HTTP method used.

201

Created

The request has been fulfilled and a new resource has been created.

202

Accepted

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

203

Non-Authoritative Information

The returned metadata is not exactly the same as available from the origin server, but collected from a local or third-party copy.

204

No Content

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

205

Reset Content

The server processed the request successfully 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 request from the client.

207

Multi-Status

A WebDAV response that conveys information about multiple resources in situations where multiple status codes might be appropriate.

208

Already Reported

Used inside a WebDAV response element to avoid enumerating the internal members of multiple bindings to the same collection repeatedly.

226

IM Used

The server has fulfilled a GET request and the response is a representation of the result of one or more instance-manipulations applied to the current instance.

3xxRedirection(7)
300

Multiple Choices

The request has more than one possible response. The user or browser should choose one.

301

Moved Permanently

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

302

Found

The URI of the requested resource has been changed temporarily. The client should continue to use the original URI.

303

See Other

The response to the request can be found under a different URI and should be retrieved using a GET method.

304

Not Modified

The resource has not been modified since the version specified in request headers. The client can use its cached version.

307

Temporary Redirect

The target resource resides temporarily under a different URI. Unlike 302, the method must not change.

308

Permanent Redirect

The resource is now permanently located at another URI. Unlike 301, the HTTP method must not change.

4xxClient Error(29)
400

Bad Request

The server cannot or will not process the request due to a client error such as malformed syntax or invalid request message framing.

401

Unauthorized

Authentication is required. The client must authenticate itself to get the requested response.

402

Payment Required

Reserved for future use. Originally intended for digital payment systems, now sometimes used by APIs to signal quota exceeded.

403

Forbidden

The client does not have access rights to the content. Unlike 401, the client's identity is known but access is refused.

404

Not Found

The server cannot find the requested resource. The URL is not recognised.

405

Method Not Allowed

The HTTP method used is not supported for the requested resource.

406

Not Acceptable

The server cannot produce a response matching the criteria given by the client's Accept headers.

407

Proxy Authentication Required

Authentication is required by a proxy server between the client and the target server.

408

Request Timeout

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

409

Conflict

The request conflicts with the current state of the server, e.g. an edit conflict in a wiki.

410

Gone

The content has been permanently deleted from the server with no forwarding address. Unlike 404, this condition is permanent.

411

Length Required

The server refuses to accept the request without a defined Content-Length header.

412

Precondition Failed

One or more conditions given in the request header fields evaluated to false on the server.

413

Content Too Large

The request entity is larger than limits defined by the server.

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 request data is not supported by the server.

416

Range Not Satisfiable

The range specified in the Range header field cannot be fulfilled.

417

Expectation Failed

The expectation indicated in the Expect request header field cannot be met by the server.

418

I'm a Teapot

Any attempt to brew coffee with a teapot should result in this code. An April Fools' joke in RFC 2324 that has become an easter egg in many APIs.

421

Misdirected Request

The request was directed at a server that is not able to produce a response for the combination of scheme and authority.

422

Unprocessable Content

The request was well-formed but could not be followed due to semantic errors — commonly returned for validation failures in APIs.

423

Locked

The resource that is being accessed is locked (WebDAV).

424

Failed Dependency

The request failed because it depended on another request and that request failed (WebDAV).

425

Too Early

The server is unwilling to risk processing a request that might be replayed, to prevent replay attacks.

426

Upgrade Required

The server refuses to perform the request using the current protocol but will do so after the client upgrades.

428

Precondition Required

The origin server requires the request to be conditional, to prevent lost updates.

429

Too Many Requests

The user has sent too many requests in a given amount of time (rate limiting).

431

Request Header Fields Too Large

The server is unwilling to process the request because its header fields are too large.

451

Unavailable For Legal Reasons

The user agent requested a resource that cannot legally be provided, such as a web page censored by a government.

5xxServer Error(11)
500

Internal Server Error

The server encountered an unexpected condition that prevented it from fulfilling the request.

501

Not Implemented

The request method is not supported by the server and cannot be handled.

502

Bad Gateway

The server acting as a gateway received an invalid response from an upstream server.

503

Service Unavailable

The server is not ready to handle the request, often due to being down for maintenance or overloaded.

504

Gateway Timeout

The server acting as a gateway did not receive a timely response from an upstream server.

505

HTTP Version Not Supported

The HTTP version used in the request is not supported by the server.

506

Variant Also Negotiates

The server has an internal configuration error — transparent content negotiation for the request results in a circular reference.

507

Insufficient Storage

The server is unable to store the representation needed to complete the request (WebDAV).

508

Loop Detected

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

510

Not Extended

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

511

Network Authentication Required

The client needs to authenticate to gain network access, typically used by captive portals.