← Back to Tools

HTTP Status Codes & Headers

Search and inspect HTTP response status codes and security headers with developer explanations.

100RFC 9110

Continue

Initial part of request received, client can continue.

Sent to indicate that the initial part of a request has been received and has not yet been rejected by the server.

Class: 1xx
101RFC 9110

Switching Protocols

Server is switching protocols (e.g. WebSocket upgrade).

Sent in response to an Upgrade request header from the client to indicate the protocol the server is switching to.

Class: 1xx
103RFC 8297

Early Hints

Preloading critical page resources before final headers.

Used to return some response headers before final HTTP message, allowing browser to preload resources.

Class: 1xx
200RFC 9110

OK

The request has succeeded.

Standard response for successful HTTP requests. The payload depends on the method (GET, POST, etc.).

Class: 2xx
201RFC 9110

Created

Resource successfully created (POST/PUT).

The request has succeeded and has led to the creation of a new resource, typically referenced in the Location header.

Class: 2xx
202RFC 9110

Accepted

Request accepted for asynchronous background processing.

The request has been accepted for processing, but the processing has not been completed.

Class: 2xx
204RFC 9110

No Content

Action succeeded, no response body returned.

The server has successfully fulfilled the request and there is no additional content to send in the response payload body.

Class: 2xx
206RFC 9110

Partial Content

Range header partial byte request fulfilled.

Sent in response to a Range header from the client when downloading large media or resuming downloads.

Class: 2xx
301RFC 9110

Moved Permanently

Resource permanently moved to a new URI.

The target resource has been assigned a new permanent URI and any future references to this resource should use one of the returned URIs.

Class: 3xx
302RFC 9110

Found

Temporary redirect to a different URI.

Tells the client to look at (browse to) another URL temporarily.

Class: 3xx
304RFC 9110

Not Modified

Cached version is still fresh and valid (ETag/If-Modified-Since).

Indicates that the resource has not been modified since the version specified by the request headers If-Modified-Since or If-None-Match.

Class: 3xx
307RFC 9110

Temporary Redirect

Temporary redirect preserving original HTTP method (e.g. POST).

Directs client to request URI with same method as used in the original request.

Class: 3xx
308RFC 9110

Permanent Redirect

Permanent redirect preserving original HTTP method.

The request and all future requests should be repeated using another URI, retaining original HTTP verb.

Class: 3xx
400RFC 9110

Bad Request

Malformed syntax, invalid JSON, or invalid parameters.

The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing).

Class: 4xx
401RFC 9110

Unauthorized

Authentication credentials required or invalid.

Similar to 403 Forbidden, but specifically for use when authentication is required and has failed or has not yet been provided.

Class: 4xx
403RFC 9110

Forbidden

Authenticated client lacks permission for the resource.

The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource.

Class: 4xx
404RFC 9110

Not Found

Requested resource could not be found.

The server has not found anything matching the Request-URI. In APIs, this means the endpoint or identifier doesn't exist.

Class: 4xx
405RFC 9110

Method Not Allowed

HTTP verb (GET/POST/DELETE) not supported by endpoint.

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

Class: 4xx
408RFC 9110

Request Timeout

Server timed out waiting for the client request.

The server did not receive a complete request message within the time that it was prepared to wait.

Class: 4xx
409RFC 9110

Conflict

Request conflicts with current state of resource (e.g. duplicate key).

Indicates that the request could not be processed because of conflict in the current state of the resource.

Class: 4xx
422RFC 9110

Unprocessable Entity

Semantic validation errors in request body.

The server understands the content type of the request entity, and the syntax is correct, but was unable to process the contained instructions.

Class: 4xx
429RFC 6585

Too Many Requests

Rate limit exceeded.

The user has sent too many requests in a given amount of time (rate limiting). Usually paired with Retry-After header.

Class: 4xx
500RFC 9110

Internal Server Error

Generic server-side unexpected condition or crash.

A generic error message, given when an unexpected condition was encountered and no more specific message is suitable.

Class: 5xx
502RFC 9110

Bad Gateway

Upstream server returned an invalid response.

The server, while acting as a gateway or proxy, received an invalid response from the inbound server it accessed while attempting to fulfill the request.

Class: 5xx
503RFC 9110

Service Unavailable

Server overloaded or down for maintenance.

The server is currently unable to handle the request due to a temporary overloading or maintenance of the server.

Class: 5xx
504RFC 9110

Gateway Timeout

Upstream server did not reply in time.

The server, while acting as a gateway or proxy, did not receive a timely response from an upstream server.

Class: 5xx