HTTP Status Codes
1xx โ Informational
| Code | Name | Description |
|---|---|---|
| 100 | Continue | Client should continue with request |
| 101 | Switching Protocols | Server is switching protocols (e.g., to WebSocket) |
| 103 | Early Hints | Preload headers before final response |
2xx โ Success
| Code | Name | Description |
|---|---|---|
| 200 | OK | Standard success response |
| 201 | Created | Resource created (POST/PUT) |
| 202 | Accepted | Request accepted, processing async |
| 204 | No Content | Success with no response body (DELETE) |
| 206 | Partial Content | Range request fulfilled (video streaming) |
3xx โ Redirection
| Code | Name | Description |
|---|---|---|
| 301 | Moved Permanently | URL permanently changed โ SEO juice transferred |
| 302 | Found (Temporary) | Temporary redirect โ use for A/B testing |
| 303 | See Other | Redirect to GET after POST (PRG pattern) |
| 304 | Not Modified | Client cache is still valid |
| 307 | Temporary Redirect | Temporary, preserves HTTP method |
| 308 | Permanent Redirect | Permanent, preserves HTTP method |
4xx โ Client Errors
| Code | Name | Description |
|---|---|---|
| 400 | Bad Request | Malformed request syntax or invalid parameters |
| 401 | Unauthorized | Authentication required (not authenticated) |
| 403 | Forbidden | Authenticated but not authorized |
| 404 | Not Found | Resource does not exist |
| 405 | Method Not Allowed | HTTP method not supported |
| 408 | Request Timeout | Server timed out waiting for request |
| 409 | Conflict | Resource state conflict (e.g., duplicate) |
| 410 | Gone | Resource permanently deleted |
| 413 | Payload Too Large | Request body exceeds server limit |
| 422 | Unprocessable Entity | Validation error (common in REST APIs) |
| 429 | Too Many Requests | Rate limit exceeded |
5xx โ Server Errors
| Code | Name | Description |
|---|---|---|
| 500 | Internal Server Error | Generic server error โ check logs |
| 501 | Not Implemented | Server doesn't support this feature |
| 502 | Bad Gateway | Upstream server returned invalid response |
| 503 | Service Unavailable | Server overloaded or under maintenance |
| 504 | Gateway Timeout | Upstream server did not respond in time |
| 507 | Insufficient Storage | Server ran out of storage |
| 511 | Network Auth Required | Captive portal (hotel/airport WiFi) |