HTTP Status Codes

Comprehensive reference guide for all HTTP status codes from 1xx to 5xx. Includes descriptions, use cases, and examples.

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 requester has asked the server to switch protocols and the server has agreed to do so.

102
Processing

A WebDAV request may contain many sub-requests involving file operations.

2xx — Success

200
OK

Standard response for successful HTTP requests.

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 the processing has not been completed.

204
No Content

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

206
Partial Content

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

3xx — Redirection

301
Moved Permanently

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

302
Found

Tells the client to look at another URL.

304
Not Modified

Indicates that the resource has not been modified since the version specified by 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.

4xx — Client Errors

400
Bad Request

The server cannot or will not process the request due to an apparent client error.

401
Unauthorized

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

403
Forbidden

The request was valid, but the server is refusing action. The user might not have the necessary permissions.

404
Not Found

The requested resource could not be found but may be available in the future.

405
Method Not Allowed

A request method is not supported for the requested resource.

408
Request Timeout

The server timed out waiting for the request.

409
Conflict

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

410
Gone

Indicates that the resource requested is no longer available and will not be available again.

413
Payload Too Large

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

415
Unsupported Media Type

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

422
Unprocessable Entity

The request was well-formed but was unable to be followed due to semantic errors.

429
Too Many Requests

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

5xx — Server Errors

500
Internal Server Error

A generic error message, given when an unexpected condition was encountered.

501
Not Implemented

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

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 is not ready to handle the request. Common causes are server down for maintenance or overloaded.

504
Gateway Timeout

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

505
HTTP Version Not Supported

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

Related Tools

Frequently Asked Questions

What is the difference between 401 and 403?

401 Unauthorized means the client must authenticate first (no valid credentials). 403 Forbidden means the server understood the request but refuses to authorize it (valid credentials but insufficient permissions).

When should I use 422 vs 400?

400 Bad Request is for malformed requests (invalid JSON, wrong content type). 422 Unprocessable Entity is for requests that are well-formed but semantically invalid (e.g., a field fails validation).

What is the difference between 301 and 302?

301 Moved Permanently tells browsers and search engines to update their links — the resource has moved forever. 302 Found is a temporary redirect — use the new URL for this request only.

When should an API return 204?

204 No Content is used for successful operations that have no response body, like DELETE requests or successful PATCH updates.

About HTTP Status Codes

Comprehensive reference guide for all HTTP status codes from 1xx to 5xx. Includes descriptions, use cases, and examples.

httpstatuscodes404200500reference