HTTP Status Code Reference

ClientRuns entirely in your browser

Look up HTTP status codes by number, name, or keyword, grouped by class.

1xx Informational (4) 2xx Success (10) 3xx Redirection (8) 4xx Client Error (29) 5xx Server Error (11)

CodeNameCopy
100
Continue
The initial part of a request has been received and the client should continue.
101
Switching Protocols
The server agrees to switch protocols, as requested by an Upgrade header.
102
Processing
The server has received and is processing the request, but no response is available yet.
103
Early Hints
Preliminary headers sent before the final response, e.g. to preload resources.

CodeNameCopy
200
OK
The request succeeded and the response body contains the result.
Use 204 instead when the request succeeded but there is no body to return.
201
Created
The request succeeded and a new resource was created as a result.
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 request succeeded but there is no content to send in the response body.
Use 200 instead when a response body is present.
205
Reset Content
The request succeeded; the client should reset the document view that sent the request.
206
Partial Content
Delivers only part of the resource, as requested by a Range header.
207
Multi-Status
Conveys multiple status codes for independent operations in a single response.
208
Already Reported
The members of a DAV binding have already been enumerated in a previous reply.
226
IM Used
The server fulfilled the request and the response is an instance-manipulation result.

CodeNameCopy
300
Multiple Choices
There are multiple possible representations of the resource for the client to choose from.
301
Moved Permanently
The resource has permanently moved to a new URL given by the Location header.
Permanent and may change the request method. Use 308 to keep the method fixed, or 302/307 for a temporary move.
302
Found
The resource temporarily resides at a different URL; the original URL should be reused later.
Temporary and, historically, browsers may change the request method. Use 307 to guarantee the method is preserved.
303
See Other
The response to the request can be found at another URL, fetched with a GET request.
304
Not Modified
The cached version of the resource is still valid; no body is returned.
305
Use Proxy
The requested resource must be accessed through the proxy given by the Location header.
Deprecated due to security concerns; most clients ignore it.
307
Temporary Redirect
The resource temporarily resides at a different URL; the request method must not change.
Temporary, unlike 301/308. Preserves the method, unlike 302 in older clients.
308
Permanent Redirect
The resource has permanently moved to a new URL; the request method must not change.
Permanent, like 301, but guarantees the method is preserved.

CodeNameCopy
400
Bad Request
The server cannot process the request due to malformed syntax or invalid data.
Use 422 instead when the syntax is valid but the semantics/validation fail.
401
Unauthorized
Authentication is required and has failed or not yet been provided.
Really means "unauthenticated" — the client is not logged in. Use 403 when the client is identified but lacks permission.
402
Payment Required
Reserved for future use; occasionally used by APIs for payment/billing failures.
403
Forbidden
The client is authenticated but does not have permission to access the resource.
The client is known but not allowed. Use 401 when the client has not authenticated at all.
404
Not Found
The server cannot find the requested resource.
405
Method Not Allowed
The request method is not supported for the requested resource.
406
Not Acceptable
No representation of the resource matches the criteria in the Accept headers.
407
Proxy Authentication Required
The client must first authenticate itself with a proxy.
408
Request Timeout
The server timed out waiting for the request from the client.
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 a Content-Length header was not defined.
412
Precondition Failed
A condition in one of the request header fields evaluated to false.
413
Content Too Large
The request body is larger than the server is willing or able to process.
414
URI Too Long
The URI requested by the client is longer than the server is willing to interpret.
415
Unsupported Media Type
The request body has a media format that the server does not support.
416
Range Not Satisfiable
The Range header value cannot be fulfilled for the target resource.
417
Expectation Failed
The expectation given in the request Expect header could not be met.
418
I'm a Teapot
A joke status code from the Hyper Text Coffee Pot Control Protocol; servers should not implement it.
April Fools' Day RFC 2324 (1998); not a serious status code.
421
Misdirected Request
The request was directed at a server that cannot produce a response for it.
422
Unprocessable Content
The request is well-formed but contains semantic errors that prevent processing.
Use 400 instead when the request body itself is malformed (not valid syntax).
423
Locked
The resource being accessed is locked.
424
Failed Dependency
The request failed because it depended on another request that failed.
425
Too Early
The server is unwilling to risk processing a request that might be replayed.
426
Upgrade Required
The server refuses to perform the request using the current protocol.
428
Precondition Required
The origin server requires the request to be conditional, e.g. to prevent lost updates.
429
Too Many Requests
The client has sent too many requests in a given amount of time.
Often paired with a Retry-After header telling the client how long to wait.
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 is unavailable due to a legal demand, such as government censorship.

CodeNameCopy
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, acting as a gateway, received an invalid response from an upstream server.
The gateway itself is fine, but the upstream response it received was invalid — different from 503, where the server (or upstream) is simply unavailable.
503
Service Unavailable
The server is temporarily unable to handle the request, often due to overload or maintenance.
Usually temporary; often paired with a Retry-After header. Different from 502, which reports a bad upstream response.
504
Gateway Timeout
The server, acting as a gateway, did not receive a timely response from an upstream server.
The gateway timed out waiting on an upstream server, unlike 502 (invalid response) or 503 (server unavailable).
505
HTTP Version Not Supported
The server does not support the HTTP protocol version used in the request.
506
Variant Also Negotiates
The server has an internal configuration error: the chosen variant resource is itself negotiable.
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.
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. via a captive portal.
© 2026 Jalu Wibowo Aji — Toolkit, privacy-first web utilities. Everything runs locally. Nothing is ever uploaded.