DevGizmo

HTTP Status Codes

Complete searchable reference of all HTTP response status codes with plain-English descriptions.

61 status codes in database

1xx Informational

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. HTTP → WebSocket).

102

Processing

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

103

Early Hints

Allows the user agent to start preloading resources while the server prepares a final response.

2xx Success

200

OK

Standard response for successful HTTP requests. The actual response depends on the request method.

201

Created

The request has been fulfilled, resulting in the creation of a new resource.

202

Accepted

The request has been accepted for processing, but processing is not complete.

203

Non-Authoritative Information

The server successfully processed the request, but is returning information from another source.

204

No Content

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

205

Reset Content

The server successfully processed the request, 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 in the request.

207

Multi-Status

The message body contains multiple separate response codes (WebDAV).

208

Already Reported

The members of a DAV binding have already been enumerated in a previous reply (WebDAV).

226

IM Used

The server has fulfilled a GET request for the resource, applying one or more instance manipulations.

3xx Redirection

300

Multiple Choices

Multiple options for the resource are available; the user or browser should choose one.

301

Moved Permanently

This and all future requests should be directed to the given URI. Used for permanent redirects.

302

Found

The resource resides temporarily under a different URI. The client should continue using the original URI.

303

See Other

The response to the request can be found under a different URI using a GET request.

304

Not Modified

The resource has not been modified since the version specified in the request headers.

307

Temporary Redirect

The request should be repeated with another URI, but future requests should still use the original URI.

308

Permanent Redirect

The request and all future requests should be repeated using another URI (method must not change).

4xx Client Error

400

Bad Request

The server cannot or will not process the request due to a client error (malformed syntax, invalid request).

401

Unauthorized

Authentication is required and has failed, or not yet been provided.

402

Payment Required

Reserved for future use. Some services use it to indicate a payment is required.

403

Forbidden

The server understood the request but refuses to authorise it.

404

Not Found

The requested resource could not be found. May be available again in the future.

405

Method Not Allowed

A request method is not supported for the requested resource (e.g. POST to a read-only endpoint).

406

Not Acceptable

The requested resource is capable of generating only content not acceptable according to Accept headers.

407

Proxy Authentication Required

The client must first authenticate itself with the proxy.

408

Request Timeout

The server timed out waiting for the request.

409

Conflict

The request cannot be completed due to a conflict with the current state of the resource.

410

Gone

The resource is no longer available and will not be available again.

411

Length Required

The request did not specify the length of its content, which is required by the resource.

412

Precondition Failed

The server does not meet one of the preconditions in the request header fields.

413

Content Too Large

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

414

URI Too Long

The URI provided was too long for the server to process.

415

Unsupported Media Type

The request entity has a media type which the server or resource does not support.

416

Range Not Satisfiable

The client has asked for a portion of the file, but the server cannot supply that portion.

417

Expectation Failed

The server cannot meet the requirements of the Expect request-header field.

418

I'm a Teapot

RFC 2324 Easter egg: a teapot refuses to brew coffee. Sometimes used by developers as a fun error.

421

Misdirected Request

The request was directed at a server that cannot produce a response.

422

Unprocessable Content

The request was well-formed but could not be followed due to semantic errors (WebDAV / APIs).

423

Locked

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

424

Failed Dependency

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

425

Too Early

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

426

Upgrade Required

The client should switch to a different protocol such as TLS/1.3.

428

Precondition Required

The origin server requires the request to be conditional.

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 resource cannot be provided for legal reasons (e.g. censored content).

5xx Server Error

500

Internal Server Error

A generic error message when the server encounters an unexpected condition.

501

Not Implemented

The server either does not recognise the request method, or lacks the ability to fulfil it.

502

Bad Gateway

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

503

Service Unavailable

The server cannot handle the request because it is temporarily overloaded or down for maintenance.

504

Gateway Timeout

The server was acting as a gateway or proxy and did not receive a timely response from the upstream.

505

HTTP Version Not Supported

The server does not support the HTTP protocol version used in the request.

506

Variant Also Negotiates

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 (e.g. captive portal).

HTTP Status Code Categories

HTTP status codes are three-digit integers grouped by their first digit into five classes. 1xx Informational codes indicate the request was received and the process is continuing. 2xx Success codes confirm the request was successfully received, understood, and accepted. 3xx Redirection codes tell the client further action is needed to complete the request. 4xx Client Errors indicate the request contains bad syntax or cannot be fulfilled by the server due to a client mistake. 5xx Server Errors indicate the server failed to fulfil a valid request.

Most Common Codes

Every web developer encounters a core set of status codes daily: 200 (OK), 201 (Created), 204 (No Content), 301 (Moved Permanently), 302 (Found), 304 (Not Modified), 400 (Bad Request), 401 (Unauthorized), 403 (Forbidden), 404 (Not Found), 422 (Unprocessable Content), 429 (Too Many Requests), 500 (Internal Server Error), 502 (Bad Gateway), and 503 (Service Unavailable). Understanding these codes is fundamental to debugging APIs, configuring web servers, and implementing correct HTTP behaviour.