HTTP Status Codes Reference

A quick reference for common HTTP status codes, their reason phrases, and descriptions.

CodeReason PhraseDescription
100ContinueThe server has received the request headers and the client should proceed to send the request body.
101Switching ProtocolsThe server is switching protocols according to the Upgrade header sent by the client.
102ProcessingWebDAV; The server has received and is processing the request, but no response is available yet.
103Early HintsUsed to return some response headers before final HTTP message.
200OKThe request has succeeded. The meaning of the success depends on the HTTP method.
201CreatedThe request has been fulfilled and resulted in a new resource being created.
202AcceptedThe request has been accepted for processing, but the processing has not been completed.
203Non-Authoritative InformationThe server is a transforming proxy that received a 200 OK from its origin, but is returning a modified version of the origin's response.
204No ContentThe server successfully processed the request and is not returning any content.
205Reset ContentThe server successfully processed the request, but is not returning any content and requires that the requester reset the document view.
206Partial ContentThe server is delivering only part of the resource due to a range header sent by the client.
300Multiple ChoicesThe request has more than one possible response. The user agent or user should choose one of them.
301Moved PermanentlyThe URL of the requested resource has been changed permanently. The new URL is given in the response.
302FoundThe URL of the requested resource has been changed temporarily. Further changes in the URL might be made in the future.
303See OtherThe server sent this response to direct the client to get the requested resource at another URI with a GET request.
304Not ModifiedUsed for caching purposes. It tells the client that the response has not been modified, so the client can continue to use the same cached version of the response.
307Temporary RedirectThe server sends this response to direct the client to get the requested resource at another URI with same method that was used in the prior request.
308Permanent RedirectThis means that the resource is now permanently located at another URI, specified by the Location: HTTP Response header.
400Bad RequestThe server cannot or will not process the request due to something that is perceived to be a client error.
401UnauthorizedAuthentication is required and has failed or has not yet been provided.
402Payment RequiredReserved for future use. Originally intended for digital payment systems.
403ForbiddenThe client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource.
404Not FoundThe server cannot find the requested resource. Links that lead to a 404 page are often called broken or dead links.
405Method Not AllowedThe request method is known by the server but is not supported by the target resource.
406Not AcceptableThe server cannot produce a response matching the list of acceptable values defined in the request's proactive content negotiation headers.
408Request TimeoutThe server would like to shut down this unused connection. It is sent on an idle connection by some servers, even without any previous request by the client.
409ConflictThe request conflicts with the current state of the server.
410GoneThe requested content has been permanently deleted from server, with no forwarding address.
418I'm a teapotThe server refuses the attempt to brew coffee with a teapot. (April Fools' joke RFC)
429Too Many RequestsThe user has sent too many requests in a given amount of time ("rate limiting").
500Internal Server ErrorThe server has encountered a situation it doesn't know how to handle.
501Not ImplementedThe request method is not supported by the server and cannot be handled.
502Bad GatewayThe server, while acting as a gateway or proxy, received an invalid response from the upstream server.
503Service UnavailableThe server is not ready to handle the request. Common causes are a server that is down for maintenance or that is overloaded.
504Gateway TimeoutThe server is acting as a gateway and cannot get a response in time.
505HTTP Version Not SupportedThe HTTP version used in the request is not supported by the server.

About HTTP Status Codes

HTTP status codes are issued by a server in response to a client's request made to the server. They are three-digit integers where the first digit defines the class of response.

  • 1xx (Informational): The request was received, continuing process.
  • 2xx (Successful): The request was successfully received, understood, and accepted.
  • 3xx (Redirection): Further action needs to be taken in order to complete the request.
  • 4xx (Client Error): The request contains bad syntax or cannot be fulfilled.
  • 5xx (Server Error): The server failed to fulfill an apparently valid request.

This page provides a reference for common codes. For a complete and official list, refer to the IANA HTTP Status Code Registry.