HTTP Status Codes Reference

Complete HTTP status codes reference. Search by code or description, filter by category (1xx–5xx), with common use cases and one-click copy.

Showing 35 status codes

100ContinueInformational

The server has received the request headers and the client should proceed to send the request body.

Common use: Used in HTTP/1.1 for large request bodies with Expect: 100-continue header.

101Switching ProtocolsInformational

The server is switching protocols as requested by the client.

Common use: WebSocket upgrade from HTTP.

102ProcessingInformational

The server has received and is processing the request, but no response is available yet.

Common use: WebDAV; prevents client timeout on long operations.

103Early HintsInformational

Used to return some response headers before the final response.

Common use: Preload resources before the full response is ready.

200OKSuccess

The request has succeeded.

Common use: Standard response for successful HTTP requests.

201CreatedSuccess

The request has been fulfilled and a new resource has been created.

Common use: POST requests that create a new resource (user, record, file).

202AcceptedSuccess

The request has been accepted for processing, but processing has not been completed.

Common use: Async operations — job queued but not yet processed.

204No ContentSuccess

The server successfully processed the request but is not returning any content.

Common use: DELETE requests, PUT updates that need no response body.

206Partial ContentSuccess

The server is delivering only part of the resource due to a range header.

Common use: Video streaming, resumable downloads.

207Multi-StatusSuccess

Provides status for multiple independent operations.

Common use: WebDAV; batch operations with mixed results.

301Moved PermanentlyRedirection

The resource has been permanently moved to a new URL.

Common use: URL changes, domain migrations. Search engines update their index.

302FoundRedirection

The resource is temporarily located at a different URL.

Common use: Temporary redirects (login → dashboard). Often misused — use 307 instead.

303See OtherRedirection

The response can be found under a different URL using GET.

Common use: After POST form submission, redirect to GET result page (PRG pattern).

304Not ModifiedRedirection

The resource has not been modified since the last request.

Common use: Browser caching with If-Modified-Since or ETag headers.

307Temporary RedirectRedirection

The request should be repeated with the same method at another URL.

Common use: Like 302 but guarantees method and body are preserved.

308Permanent RedirectRedirection

The resource has permanently moved, method and body preserved.

Common use: Like 301 but guarantees POST stays POST.

400Bad RequestClient Error

The server cannot process the request due to malformed syntax.

Common use: Invalid JSON, missing required fields, validation errors.

401UnauthorizedClient Error

Authentication is required and has failed or has not been provided.

Common use: Missing or invalid auth token/credentials.

403ForbiddenClient Error

The server understood the request but refuses to authorize it.

Common use: User is authenticated but lacks permission for this resource.

404Not FoundClient Error

The requested resource could not be found on the server.

Common use: Invalid URL, deleted resource, typo in endpoint.

405Method Not AllowedClient Error

The HTTP method is not allowed for the requested resource.

Common use: Sending POST to a GET-only endpoint.

406Not AcceptableClient Error

The server cannot produce a response matching the Accept headers.

Common use: Content negotiation failure (requesting XML from JSON-only API).

408Request TimeoutClient Error

The server timed out waiting for the request.

Common use: Client took too long to send the complete request.

409ConflictClient Error

The request conflicts with the current state of the resource.

Common use: Duplicate entry, edit conflict, concurrent modification.

410GoneClient Error

The resource is no longer available and will not be available again.

Common use: Permanently deleted resource — unlike 404, this is intentional.

413Payload Too LargeClient Error

The request entity is larger than the server is willing to process.

Common use: File upload exceeds size limit.

415Unsupported Media TypeClient Error

The media type of the request is not supported.

Common use: Sending form data to an endpoint that expects JSON.

422Unprocessable EntityClient Error

The request is well-formed but semantically incorrect.

Common use: Validation errors — email format wrong, date in past, etc.

429Too Many RequestsClient Error

The user has sent too many requests in a given time period.

Common use: Rate limiting. Check Retry-After header.

451Unavailable For Legal ReasonsClient Error

The resource is unavailable due to legal demands.

Common use: GDPR compliance, government censorship, DMCA takedowns.

500Internal Server ErrorServer Error

The server encountered an unexpected condition that prevented it from fulfilling the request.

Common use: Unhandled exception, bug in server code, database error.

501Not ImplementedServer Error

The server does not support the functionality required to fulfill the request.

Common use: API endpoint exists but feature is not yet built.

502Bad GatewayServer Error

The server received an invalid response from an upstream server.

Common use: Reverse proxy (Nginx) cannot reach the app server.

503Service UnavailableServer Error

The server is temporarily unable to handle the request.

Common use: Server overloaded, maintenance mode, deployment in progress.

504Gateway TimeoutServer Error

The server did not receive a timely response from an upstream server.

Common use: Upstream service is too slow — database timeout, external API timeout.

What this HTTP status codes reference is

Every HTTP response carries a three-digit status code that says what happened. This is a searchable reference of the full set — search by code or by meaning, filter by category, and copy the one you need. It's the fast way to answer "what does 409 mean again?" without leaving your editor.

The five categories

  • 1xx Informational — request received, continuing (rare in practice).
  • 2xx Success — it worked (200 OK, 201 Created, 204 No Content).
  • 3xx Redirection — go elsewhere (301 permanent, 302/307 temporary, 304 Not Modified).
  • 4xx Client error — the request was wrong (400, 401, 403, 404, 429).
  • 5xx Server error — the server failed (500, 502, 503, 504).

Why using the right code matters

Status codes are an API's contract with its clients — caches, retries, and error handling all key off them. Returning 200 with an error body, or 404 where you mean 403, breaks that contract and makes clients behave unpredictably. Picking the semantically correct code is part of a well-designed API.

Frequently asked questions

What's the difference between 4xx and 5xx?

4xx means the client's request was faulty (fix the request); 5xx means the server failed while handling a valid request (fix the server).

401 vs 403?

401 Unauthorized means "you're not authenticated — log in"; 403 Forbidden means "you're authenticated but not allowed".

301 vs 302?

301 is a permanent move (search engines transfer ranking; clients may cache it); 302/307 are temporary.

SharePost

More tools like this