Skip to content

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"