HTTP Status Code Reference
HTTP status codes are three-digit responses a server sends after each request. They're grouped into five classes: 1xx informational, 2xx success, 3xx redirection, 4xx client error, and 5xx server error. The meanings below follow RFC 9110 (standards) with common unofficial extensions noted separately.
Most Common Codes Developers Meet
200 OK β the request succeeded. 301 Moved Permanently β the URL has permanently moved (use in redirects for SEO). 404 Not Found β the resource doesn't exist. 401 Unauthorized β authentication required. 403 Forbidden β no permission. 429 Too Many Requests β rate-limited. 500 Internal Server Error β something broke on the server.
Quick look-up: uncommon status codes
Most searches for a status code are for one specific number. Look it up here first β the full table below has the RFC text.
| Code | Name | Standard? | Typical cause |
|---|---|---|---|
| 1xx | Informational class | RFC 9110 | 100 Continue, 101 Switching Protocols, 103 Early Hints β the server is talking before the final response. |
| 209 | Content Returned | unofficial | Legacy IIS code; a 2xx success you will rarely see in modern stacks. |
| 210 | Content Different | unofficial | Legacy IIS code for a variant of the requested resource. |
| 305 | Use Proxy | RFC 9110 (deprecated) | The resource must be accessed through a proxy; removed from practice for security reasons. |
| 423 | Locked | RFC 4918 (WebDAV) | The resource is locked β common in WebDAV/Collabora when another user is editing the file. |
| 430 | Request Header Fields Too Large (variant) | unofficial | Not in RFC 9110; some servers return 430 for oversized headers instead of 431. Treat as a client error. |
| 512 | Unknown upstream error | unofficial | Historical nginx/WebDAV code for a malformed upstream response. |
| 514 | Upstream error (variant) | unofficial | Same family as 512; usually the origin returned something the gateway could not parse. |
| 561 | Unauthorized | unofficial | AWS-specific code for an unauthenticated request. |
Related free tools
- JSON Formatter β pretty-print the API body that came with the error code.
- Regex Tester β parse status codes out of access logs.
- JWT Decoder β inspect the token behind a 401 or 403.
- URL Encoder / Decoder β fix malformed URLs that cause 400-class errors.
- Diff Checker β compare two API responses before and after a fix.
HTTP Status Codes FAQ
What does the first digit tell me? 1=info, 2=success, 3=redirect, 4=your client's fault, 5=server's fault. Which is better for redirects: 301 or 302? 301 is permanent (SEO passes link equity), 302 is temporary. What's an unofficial code? Codes like 418 I'm a Teapot are fun extensions that aren't part of the RFC β use them for internal tools, not public APIs.
What is HTTP 423? 423 Locked means the resource is locked (WebDAV, e.g. a file being edited by another user). What is HTTP 430? 430 is not an official code; some servers return it to mean "Request Header Fields Too Large"-like rejection β treat it as a client error and fix the request. What are HTTP 512, 513 and 514? Unofficial server codes historically used by WebDAV/nginx when the origin returns an unknown error; 512/514 usually mean the upstream response was malformed. What is HTTP 561? An unofficial AWS code meaning Unauthorized. What is HTTP 209 or 210? Unofficial IIS 2xx codes (Content Returned, Content Different) β not part of RFC 9110.