SmartKitio

Developer topics · Updated 2026-10-04

HTTP Status Codes Explained

Every HTTP response carries a three-digit status code. The first digit is the class; the rest names the specific outcome. Reading the class quickly tells you whether to retry, follow a redirect, fix the request, or inspect the server.

Classes at a glance

Status code classes

RangeMeaningTypical client action
1xxInformationalWait for the next response
2xxSuccessUse the body / treat as done
3xxRedirectionFollow Location when appropriate
4xxClient errorFix the request or credentials
5xxServer errorRetry with backoff or alert ops

Codes you will see constantly

  • 200 OK — request succeeded.
  • 201 Created — a new resource was created.
  • 204 No Content — success with an empty body.
  • 301 Moved Permanently / 302 Found — redirect; caching and method handling differ.
  • 304 Not Modified — cached copy is still valid.
  • 400 Bad Request — malformed syntax or invalid framing.
  • 401 Unauthorized — authentication required or failed.
  • 403 Forbidden — authenticated but not allowed.
  • 404 Not Found — no resource at this target.
  • 409 Conflict — state conflict (common in APIs).
  • 429 Too Many Requests — rate limited; respect Retry-After when present.
  • 500 Internal Server Error — unexpected server failure.
  • 502 Bad Gateway / 503 Service Unavailable — upstream or temporary outage.

Practical tips

  • Do not treat every non-200 as a hard failure—3xx may be normal.
  • Log the status, URL, and correlation ID together when debugging.
  • For APIs, read the response body; many apps put machine-readable error details there.

SmartKitio’s HTTP status lookup lists codes and short explanations for reference while you debug. It does not send requests to your servers.

Try these SmartKitio tools

Use a tool when you want a result; keep this guide open when you want the method.

Browse family: Developer Tools

Related articles

Broader reading that connects to this guide—when the topic deserves more than a how-to.

Related guides