DevToolsKit

HTTP Status Codes

Every code, in plain English.

1xx · Informational

100ContinueHeaders accepted; send the request body.
101Switching ProtocolsProtocol upgrade accepted (e.g. to WebSocket).
102ProcessingWebDAV: request received, still working on it.
103Early HintsPreload headers sent before the final response.

2xx · Success

200OKRequest succeeded; body carries the result.
201CreatedA new resource was created (typical POST answer).
202AcceptedQueued for later processing; no result yet.
203Non-Authoritative InformationA proxy modified the response headers.
204No ContentSuccess with an empty body — common for DELETE.
205Reset ContentSuccess; the client should reset its form/view.
206Partial ContentAnswer to a Range request (resumable downloads).
207Multi-StatusWebDAV: per-resource statuses in one body.
208Already ReportedWebDAV: members already listed, not repeated.
226IM UsedDelta encoding applied to the response.

3xx · Redirection

300Multiple ChoicesSeveral representations; client must pick.
301Moved PermanentlyNew canonical URL; update bookmarks and SEO.
302FoundTemporary redirect (historically misused for 303).
303See OtherFollow with GET to a different URL — right after POST.
304Not ModifiedCached copy is still fresh; no body sent.
307Temporary RedirectRedirect keeping the method and body.
308Permanent Redirect301 that also keeps the method and body.

4xx · Client errors

400Bad RequestMalformed syntax or invalid parameters.
401UnauthorizedMissing or bad authentication credentials.
402Payment RequiredReserved; used by some APIs for billing blocks.
403ForbiddenAuthenticated or not, you may not do this.
404Not FoundNo resource at this URL (or none you may see).
405Method Not AllowedResource exists, but not for this verb.
406Not AcceptableNo representation matching the Accept headers.
407Proxy Authentication RequiredAuthenticate with the proxy first.
408Request TimeoutClient took too long to send the request.
409ConflictState conflict — e.g. edit war or duplicate create.
410GoneDeleted on purpose, permanently.
411Length RequiredContent-Length header is required.
412Precondition FailedAn If-* header condition was not met.
413Content Too LargeRequest body bigger than the server allows.
414URI Too LongThe request target exceeds server limits.
415Unsupported Media TypeBody format the server cannot handle.
416Range Not SatisfiableRequested range falls outside the resource.
417Expectation FailedThe Expect header cannot be satisfied.
418I'm a teapotRFC 2324 Easter egg — refuses to brew coffee.
421Misdirected RequestSent to a server not authoritative for it.
422Unprocessable ContentWell-formed but semantically invalid.
423LockedWebDAV: the resource is locked.
424Failed DependencyWebDAV: a dependent action failed.
425Too EarlyServer refuses to replay a risky early request.
426Upgrade RequiredClient must switch protocols (e.g. TLS).
428Precondition RequiredServer requires If-Match-style headers.
429Too Many RequestsRate limited — check Retry-After.
431Request Header Fields Too LargeHeaders exceed server limits.
451Unavailable For Legal ReasonsBlocked for legal demands (Fahrenheit 451).

5xx · Server errors

500Internal Server ErrorGeneric server-side failure.
501Not ImplementedThe server does not support this functionality.
502Bad GatewayUpstream server sent an invalid response.
503Service UnavailableOverloaded or down for maintenance.
504Gateway TimeoutUpstream server took too long.
505HTTP Version Not SupportedThe request line used an unknown version.
506Variant Also NegotiatesContent negotiation misconfiguration.
507Insufficient StorageWebDAV: no space left to complete the action.
508Loop DetectedWebDAV: infinite loop while processing.
510Not ExtendedFurther extensions are required.
511Network Authentication RequiredCaptive portal wants a login.

About this tool

A searchable reference of HTTP status codes — 1xx through 5xx — with one-line explanations of what each means and when you would see it.

It runs completely in your browser — no input is sent anywhere, and this page loads no ads or third-party scripts, so it is safe to use with data you would not paste into a hosted service.

Related tools