Updated June 26, 2026
HTTP status codes
HTTP status codes are three-digit responses a server returns for each request. The first digit sets the class: 1xx informational, 2xx success, 3xx redirection, 4xx client error, and 5xx server error.
1xx — Informational
The request was received and the process is continuing.
| Code | Name | Meaning |
|---|---|---|
100 | Continue | The client should continue sending the request body. |
101 | Switching Protocols | The server agrees to switch protocols, for example to WebSocket. |
103 | Early Hints | Sends preliminary headers so the browser can start preloading resources. |
2xx — Success
The request was received, understood, and accepted.
| Code | Name | Meaning |
|---|---|---|
200 | OK | Standard success response with a body. |
201 | Created | The request succeeded and a new resource was created. |
202 | Accepted | Accepted for processing, but not yet completed. |
204 | No Content | Success with no response body to return. |
206 | Partial Content | Part of the resource is returned, used for range requests and resumable downloads. |
3xx — Redirection
Further action is needed to complete the request.
| Code | Name | Meaning |
|---|---|---|
301 | Moved Permanently | The resource has a new permanent URL; update links and bookmarks. |
302 | Found | Temporary redirect; the original URL should still be used in future. |
303 | See Other | Redirect to another URL using a GET request, often after a form POST. |
304 | Not Modified | The cached copy is still valid; no body is sent. |
307 | Temporary Redirect | Like 302, but the method and body must not change. |
308 | Permanent Redirect | Like 301, but the method and body must not change. |
4xx — Client error
The request was malformed or not allowed.
| Code | Name | Meaning |
|---|---|---|
400 | Bad Request | The server could not understand the request, often a syntax error. |
401 | Unauthorized | Authentication is required and has failed or is missing. |
403 | Forbidden | Authenticated but not allowed to access the resource. |
404 | Not Found | The resource does not exist at this URL. |
405 | Method Not Allowed | The HTTP method is not supported for this resource. |
409 | Conflict | The request conflicts with the current state, such as a version clash. |
410 | Gone | The resource was deliberately removed and will not return. |
422 | Unprocessable Content | The request was well-formed but failed validation. |
429 | Too Many Requests | The client has sent too many requests and is being rate limited. |
5xx — Server error
The server failed to fulfil a valid request.
| Code | Name | Meaning |
|---|---|---|
500 | Internal Server Error | A generic, unexpected server-side failure. |
501 | Not Implemented | The server does not support the functionality required. |
502 | Bad Gateway | An upstream server returned an invalid response. |
503 | Service Unavailable | The server is overloaded or down for maintenance. |
504 | Gateway Timeout | An upstream server did not respond in time. |
301 when a URL has moved for good so search engines transfer ranking to the new address. Use 302 or 307 for a temporary move where the original URL should keep its value.References
Questions
What is the difference between 401 and 403?
401 Unauthorized means you are not authenticated, so logging in may help. 403 Forbidden means you are authenticated but still not allowed, so logging in will not change anything.
Is 404 a server error?
No. 404 is a 4xx client error: the request reached the server fine, but the resource does not exist at that URL.