$devtoolkit.sh/tools/http-status-reference

HTTP Status Reference

Searchable reference of all HTTP status codes with descriptions.

43 of 43 codes shown

1xx Informational
100
ContinueThe server has received the request headers and the client should proceed to send the request body.Use case: Large file uploads where the server pre-validates headers before accepting the body.
101
Switching ProtocolsThe requester has asked the server to switch protocols and the server has agreed.Use case: WebSocket handshake upgrade from HTTP.
102
ProcessingThe server has received and is processing the request, but no response is available yet.Use case: WebDAV requests that may take a long time to complete.
103
Early HintsUsed to return some response headers before final HTTP message.Use case: Preloading CSS/JS resources before the final response is ready.
2xx Success
200
OKThe request has succeeded.Use case: Standard successful GET, POST, or PUT responses.
201
CreatedThe request has been fulfilled and resulted in a new resource being created.Use case: Successful POST creating a new record in a REST API.
202
AcceptedThe request has been accepted for processing, but processing has not been completed.Use case: Async job queuing where results are fetched later.
203
Non-Authoritative InformationThe returned meta-information is from a cached copy rather than the origin server.Use case: Proxy servers returning cached data.
204
No ContentThe server successfully processed the request but is not returning any content.Use case: DELETE requests, or PUT/PATCH when no body is needed in response.
205
Reset ContentThe server successfully processed the request but asks the client to reset the document view.Use case: Clearing a form after a successful submission.
206
Partial ContentThe server is delivering only part of the resource due to a range header sent by the client.Use case: Video streaming, resumable file downloads.
3xx Redirection
300
Multiple ChoicesIndicates multiple options for the resource from which the client may choose.Use case: Offering multiple file formats for download.
301
Moved PermanentlyThis and all future requests should be directed to the given URI.Use case: Permanent URL redirects; tells search engines to update their index.
302
FoundTells the client to look at (browse to) another URL temporarily.Use case: Temporary redirects during maintenance.
303
See OtherThe response to the request can be found under another URI using a GET method.Use case: Post/Redirect/Get pattern after form submissions.
304
Not ModifiedIndicates the resource has not been modified since the version specified by the request headers.Use case: Browser caching — serves cached content when ETag/Last-Modified matches.
307
Temporary RedirectThe request should be repeated with another URI but future requests can still use the original URI.Use case: Temporary redirect preserving the original HTTP method.
308
Permanent RedirectThe request and all future requests should be repeated using another URI.Use case: Permanent redirect preserving the HTTP method (unlike 301).
4xx Client Error
400
Bad RequestThe server cannot or will not process the request due to a client error.Use case: Malformed JSON body, invalid query parameters.
401
UnauthorizedAuthentication is required and has failed or has not been provided.Use case: Missing or invalid Bearer token in API requests.
402
Payment RequiredReserved for future use; originally intended for digital payment systems.Use case: Sometimes used for rate-limiting paid API tiers.
403
ForbiddenThe server understood the request but refuses to authorize it.Use case: Authenticated user lacks permission to access a resource.
404
Not FoundThe requested resource could not be found on the server.Use case: Missing pages, deleted resources, wrong API endpoints.
405
Method Not AllowedThe request method is known by the server but not supported by the target resource.Use case: POSTing to a GET-only endpoint.
406
Not AcceptableThe server cannot produce a response matching the list of acceptable values in the request.Use case: Content negotiation failure (Accept headers mismatch).
408
Request TimeoutThe server timed out waiting for the request.Use case: Slow client connections that take too long to send a request body.
409
ConflictThe request could not be processed because of conflict in the current state of the resource.Use case: Duplicate record creation, edit conflicts in collaborative editing.
410
GoneThe resource requested is no longer available and will not be available again.Use case: Permanently deleted resources; tells search engines to deindex.
411
Length RequiredThe request did not specify the length of its content.Use case: Server requires Content-Length header for uploads.
412
Precondition FailedThe server does not meet one of the preconditions that the requester put on the request.Use case: Conditional requests (If-Match, If-Unmodified-Since) that fail.
413
Content Too LargeThe request is larger than the server is willing or able to process.Use case: File uploads exceeding server size limits.
414
URI Too LongThe URI provided was too long for the server to process.Use case: Extremely long query strings or encoded data in the URL.
415
Unsupported Media TypeThe request entity has a media type which the server or resource does not support.Use case: Sending XML to an endpoint that only accepts JSON.
422
Unprocessable ContentThe request was well-formed but was unable to be followed due to semantic errors.Use case: REST API validation errors (valid JSON but invalid business logic).
425
Too EarlyIndicates the server is unwilling to risk processing a request that might be replayed.Use case: TLS early data (0-RTT) replay protection.
429
Too Many RequestsThe user has sent too many requests in a given amount of time (rate limiting).Use case: API rate limiting; include Retry-After header.
451
Unavailable For Legal ReasonsThe resource is unavailable due to a legal demand to deny access.Use case: Content blocked by government order or DMCA takedown.
5xx Server Error
500
Internal Server ErrorA generic error message indicating an unexpected condition was encountered.Use case: Unhandled exceptions, crashes, and misconfigured servers.
501
Not ImplementedThe server does not support the functionality required to fulfill the request.Use case: HTTP methods the server does not implement (e.g. PATCH on legacy systems).
502
Bad GatewayThe server, while acting as a gateway or proxy, received an invalid response.Use case: Upstream API or microservice is down or returning garbage.
503
Service UnavailableThe server is not ready to handle the request, typically due to maintenance or overloading.Use case: Deployments, maintenance windows, overloaded servers.
504
Gateway TimeoutThe server, while acting as a gateway, did not receive a timely response from an upstream server.Use case: Slow database queries or downstream APIs timing out.
505
HTTP Version Not SupportedThe server does not support the HTTP protocol version used in the request.Use case: Client sending HTTP/3 to a server that only speaks HTTP/1.1.

Related Tools

FAQ

What do 4xx codes mean?
4xx codes indicate client errors — the request contains bad syntax or cannot be fulfilled. Common examples: 400 Bad Request, 401 Unauthorized, 404 Not Found.
What do 5xx codes mean?
5xx codes indicate server errors — the server failed to fulfil a valid request. Examples: 500 Internal Server Error, 503 Service Unavailable.
What is the difference between 301 and 302?
301 is a permanent redirect; search engines update their index. 302 is temporary; search engines keep the original URL indexed.

A comprehensive, searchable reference table of all standard HTTP status codes from 1xx Informational to 5xx Server Errors. Each entry includes the code, official name, description, and common use cases. Filter by code number or keyword to quickly find what you need.

/tools/http-status-referencev1.0.0