← Home

HTTP Status Codes Cheatsheet

Complete reference of HTTP response status codes with explanations. Bookmark this page for quick lookups during API development.

1xxInformational

100
Continue

Server received request headers; client should proceed to send the body.

101
Switching Protocols

Server is switching protocols as requested by the client (e.g., to WebSocket).

102
Processing

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.

2xxSuccess

200
OK

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

201
Created

The request succeeded and a new resource was created. Typically used for POST.

202
Accepted

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

203
Non-Authoritative Information

The returned metadata is from a local or third-party copy, not the origin server.

204
No Content

The server successfully processed the request but returns no content.

205
Reset Content

Like 204, but requires the requester to reset the document view.

206
Partial Content

The server is delivering only part of the resource due to a range header.

207
Multi-Status

WebDAV: the message body contains multiple status codes for multiple operations.

208
Already Reported

WebDAV: members of a binding have already been enumerated.

226
IM Used

The server has fulfilled a GET request and the response represents instance-manipulations.

3xxRedirection

300
Multiple Choices

There are multiple options for the resource that the client may follow.

301
Moved Permanently

This and all future requests should be directed to the given URL.

302
Found

Temporary redirect. The resource is temporarily at a different URL.

303
See Other

The response can be found under another URL using a GET method.

304
Not Modified

The resource has not been modified since the last request (caching).

307
Temporary Redirect

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

308
Permanent Redirect

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

4xxClient Errors

400
Bad Request

The server cannot process the request due to malformed syntax.

401
Unauthorized

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

402
Payment Required

Reserved for future use. Some APIs use this for rate limiting.

403
Forbidden

The server understood the request but refuses to authorize it.

404
Not Found

The requested resource could not be found on the server.

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 Accept headers.

407
Proxy Authentication Required

The client must authenticate with the proxy.

408
Request Timeout

The server timed out waiting for the request.

409
Conflict

The request conflicts with the current state of the server.

410
Gone

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

411
Length Required

The request did not specify the Content-Length header, which is required.

412
Precondition Failed

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

413
Payload Too Large

The request is larger than the server is willing 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 that the server does not support.

416
Range Not Satisfiable

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

418
I'm a Teapot

Easter egg defined in RFC 2324. The server refuses to brew coffee with a teapot.

422
Unprocessable Entity

The request was well-formed but has semantic errors.

429
Too Many Requests

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

451
Unavailable For Legal Reasons

The resource is unavailable due to legal demands (censorship).

5xxServer Errors

500
Internal Server Error

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

501
Not Implemented

The server does not support the functionality required to fulfill the request.

502
Bad Gateway

The server received an invalid response from an upstream server.

503
Service Unavailable

The server is currently unable to handle the request (overloaded or maintenance).

504
Gateway Timeout

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

505
HTTP Version Not Supported

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

507
Insufficient Storage

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

508
Loop Detected

The server detected an infinite loop while processing the request.

511
Network Authentication Required

The client needs to authenticate to gain network access (captive portal).

Frequently Asked Questions

What is the difference between 401 and 403?

401 Unauthorized means the request lacks valid authentication credentials. 403 Forbidden means the server understood the request but refuses to authorize it — even if the user is authenticated, they don't have permission.

When should I use 301 vs 302?

Use 301 for permanent redirects (the old URL will never return). Use 302 for temporary redirects (the old URL will be available again). For SEO, 301 passes link equity to the new URL.

What does 418 I'm a Teapot mean?

It's an April Fools' joke from RFC 2324 (Hyper Text Coffee Pot Control Protocol). It has no practical use but is included in many implementations as an Easter egg.

What is the most common HTTP error code?

404 Not Found is the most commonly encountered error by users. For developers, 500 Internal Server Error is the most common server-side error.

Related Resources