HTTP Status Code
🔴 4xx Client Error Codes (Your Fault)¶
| Code | Name | Plain Meaning | Typical Cause |
|---|---|---|---|
| 400 | Bad Request | Your request is broken | Invalid JSON, missing fields, bad data |
| 401 | Unauthorized | You’re not authenticated | Missing/expired token, not logged in |
| 402 | Payment Required | Payment needed (rare) | Subscription expired, quota exceeded |
| 403 | Forbidden | You’re not allowed | Wrong role, no permission |
| 404 | Not Found | Resource doesn’t exist | Wrong URL, deleted record |
| 405 | Method Not Allowed | HTTP method not supported | Using POST on a GET-only endpoint |
| 408 | Request Timeout | Server closed connection because the client didn't send a complete request within the server's time limit | Slow networks, overloaded servers, or HTTP pre-connection issues |
| 409 | Conflict | Data conflict | Duplicate record, version mismatch |
| 429 | Too Many Requests | You’re sending too many requests | Rate limiting |
🟢 2xx Success Codes¶
| Code | Name | Meaning |
|---|---|---|
| 200 | OK | Request successful |
| 201 | Created | Resource created |
| 202 | Accepted | Request accepted, processing |
| 204 | No Content | Success, no response body |
🟡 3xx Redirect Codes¶
| Code | Name | Meaning |
|---|---|---|
| 301 | Moved Permanently | URL changed forever |
| 302 | Found | Temporary redirect |
| 304 | Not Modified | Use cached version |
🔵 5xx Server Error Codes (Server’s Fault)¶
| Code | Name | Plain Meaning |
|---|---|---|
| 500 | Internal Server Error | Server crashed or bug |
| 502 | Bad Gateway | Invalid upstream response |
| 503 | Service Unavailable | Server overloaded or down |
| 504 | Gateway Timeout | Upstream server too slow |
âš¡ Ultra-Short Memory Rules¶
400→ "Your request is wrong"401→ "Who are you?"403→ "I know you, but no"404→ "That doesn’t exist"409→ "That already exists"429→ "Slow down"500→ "Server broke"503→ "Server busy/down"