What the server is actually telling you
Every HTTP response starts with a three-digit status code. The first digit is all you need to know who to blame.
- 1xx Hold on Informational
- 2xx Here you go Successful
- 3xx Go away Redirection
- 4xx You fucked up Client error
- 5xx We fucked up Server error
1xx Hold on
2xx Here you go
- 200 OK Here you go.
- 201 Created Made it. Happy now?
- 202 Accepted Got it. I'll get to it. Maybe.
- 203 Non-Authoritative Information Here you go, but I got it from some other guy.
- 204 No Content Done. Nothing to say about it.
- 205 Reset Content Done. Now clear your damn form.
- 206 Partial Content Here's the bit you asked for.
- 207 Multi-Status It's complicated.
- 208 Already Reported I already told you about that one.
- 226 IM Used Here's just what changed.
3xx Go away
- 300 Multiple Choices Pick one, I'm not doing it for you.
- 301 Moved Permanently Doesn't live here any more. Stop coming round.
- 302 Found It's over there. For now.
- 303 See Other Go look over there instead.
- 304 Not Modified Nothing's changed. Use what you've got.
- 305 Use Proxy Talk to my guy. Actually, don't.
- 306 Unused We don't talk about this one.
- 307 Temporary Redirect It's over there for now. Ask the same way.
- 308 Permanent Redirect It's over there forever. Ask the same way.
4xx You fucked up
- 400 Bad Request What the fuck is this?
- 401 Unauthorized Who the fuck are you?
- 402 Payment Required Fuck you, pay me.
- 403 Forbidden I know exactly who you are. No.
- 404 Not Found Never heard of it.
- 405 Method Not Allowed You can't do that here.
- 406 Not Acceptable I've got nothing you'd like.
- 407 Proxy Authentication Required The bouncer wants to see your ID first.
- 408 Request Timeout You took too long. I'm hanging up.
- 409 Conflict That doesn't fit with what I've already got.
- 410 Gone It's dead. It's not coming back.
- 411 Length Required Tell me how big it is first.
- 412 Precondition Failed Your 'only if' didn't hold up.
- 413 Content Too Large That's too fucking big.
- 414 URI Too Long I'm not reading all that.
- 415 Unsupported Media Type I don't speak that.
- 416 Range Not Satisfiable There's nothing at that bit.
- 417 Expectation Failed Lower your expectations.
- 418 I'm a teapot I'm a fucking teapot.
- 421 Misdirected Request Wrong house, mate.
- 422 Unprocessable Content I can read it. It just makes no sense.
- 423 Locked Someone else has it. Hands off.
- 424 Failed Dependency The last thing you asked for failed, so this did too.
- 425 Too Early Slow down, we just met.
- 426 Upgrade Required Not until you upgrade that old shit.
- 428 Precondition Required Say 'only if' or I'm not doing it.
- 429 Too Many Requests Calm the fuck down.
- 431 Request Header Fields Too Large Your headers are too fucking big.
- 451 Unavailable For Legal Reasons My lawyer says I can't show you that.
5xx We fucked up
- 500 Internal Server Error We fucked up.
- 501 Not Implemented We never built that.
- 502 Bad Gateway The guy behind me fucked up.
- 503 Service Unavailable Not now. We're fucked.
- 504 Gateway Timeout The guy behind me isn't answering.
- 505 HTTP Version Not Supported We don't speak that version.
- 506 Variant Also Negotiates We configured ourselves into a circle.
- 507 Insufficient Storage We're out of room.
- 508 Loop Detected We're going round in fucking circles.
- 510 Not Extended We'd need more from you. Nobody uses this.
- 511 Network Authentication Required Sign in to the wifi first.