Developer HTTP Status Code Reference

HTTP Status Code Reference

Search or filter every common HTTP status code to see what it means and when it’s used.

100

Continue

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

101

Switching Protocols

The requester has asked the server to switch protocols, and the server agreed.

102

Processing

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

103

Early Hints

Used to return some response headers before the final HTTP message, e.g. for preloading resources.

200

OK

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

201

Created

The request succeeded and a new resource was created as a result.

202

Accepted

The request has been received but not yet acted upon.

203

Non-Authoritative Information

The returned metadata isn’t from the origin server but from a local or third-party copy.

204

No Content

There is no content to send, but the headers may be useful. The client may reuse its current view.

205

Reset Content

Tells the client to reset the document that sent this request.

206

Partial Content

Used when the Range header is sent to request only part of a resource.

300

Multiple Choices

The request has more than one possible response — the client should choose one.

301

Moved Permanently

The requested resource has been permanently moved to a new URL.

302

Found

The resource temporarily resides at a different URL; future requests should still use the original.

303

See Other

The response can be found at another URL, retrievable with a GET request.

304

Not Modified

The resource hasn’t changed since the last request — the client can use its cached version.

307

Temporary Redirect

Like 302, but the request method and body must not change when reissued.

308

Permanent Redirect

Like 301, but the request method and body must not change when reissued.

400

Bad Request

The server can’t process the request due to a client error, such as malformed syntax.

401

Unauthorized

Authentication is required and has either failed or not been provided.

402

Payment Required

Reserved for future use — originally intended for digital payment systems.

403

Forbidden

The client’s identity is known, but it doesn’t have permission to access the resource.

404

Not Found

The server can’t find the requested resource.

405

Method Not Allowed

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

406

Not Acceptable

No content matching the criteria in the request’s Accept headers is available.

407

Proxy Authentication Required

Authentication with a proxy server is required before the request can proceed.

408

Request Timeout

The server timed out waiting for the request.

409

Conflict

The request conflicts with the current state of the target resource.

410

Gone

The resource is permanently gone and no forwarding address is known.

411

Length Required

The server refuses the request because Content-Length wasn’t specified.

412

Precondition Failed

One or more conditions in the request headers evaluated to false.

413

Payload Too Large

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

414

URI Too Long

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

415

Unsupported Media Type

The media format of the request body isn’t supported by the server.

416

Range Not Satisfiable

The requested Range header value can’t be satisfied for the resource.

417

Expectation Failed

The expectation in the request’s Expect header couldn’t be met.

418

I'm a Teapot

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

422

Unprocessable Entity

The request was well-formed but contains semantic errors and couldn’t be processed.

425

Too Early

The server is unwilling to process a request that might be replayed.

426

Upgrade Required

The client should switch to a different protocol, given in the Upgrade header.

428

Precondition Required

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

429

Too Many Requests

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

431

Request Header Fields Too Large

The server won’t process the request because its header fields are too large.

451

Unavailable For Legal Reasons

The resource is unavailable due to a legal demand, such as government-mandated censorship.

500

Internal Server Error

The server encountered a situation it doesn’t know how to handle.

501

Not Implemented

The request method isn’t supported by the server and can’t be handled.

502

Bad Gateway

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

503

Service Unavailable

The server isn’t ready to handle the request — often due to maintenance or overload.

504

Gateway Timeout

The server, acting as a gateway, didn’t get a response in time from an upstream server.

505

HTTP Version Not Supported

The HTTP version used in the request isn’t supported by the server.

507

Insufficient Storage

The server can’t store the representation needed to complete the request.

508

Loop Detected

The server detected an infinite loop while processing the request.

510

Not Extended

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

511

Network Authentication Required

The client needs to authenticate to gain network access, e.g. a captive portal.

How to use this tool

Search by status code number (e.g. 404) or by name (e.g. Not Found), or filter by category — 1xx informational, 2xx success, 3xx redirection, 4xx client errors, or 5xx server errors — to quickly find what a status code means and when an API or server would return it.

Related Tools

Related Blog Posts

We use cookies

We use cookies for analytics and to support advertising. You can accept all cookies or decline non-essential ones — change this anytime from Cookie Settings in the footer. Privacy Policy