Home / Network / HTTP Status Codes Search by code or message
1xx Informational 100
100 Continue The server has received the request headers, and that the client should proceed to send the request body
101
101 Switching Protocols The requester has asked the server to switch protocols and the server is acknowledging that it will do so
Headers: Upgrade
102
102 Processing The server has received the request and is still processing it, so no response is available yet (WebDAV)
103
103 Early Hints The server sends preliminary headers, usually Link headers, so the client can start preloading resources before the final response
Headers: Link
2xx Success 200
200 OK Cacheable by default Standard response for successful HTTP requests
201
201 Created The request has been fulfilled and resulted in a new resource being created
Headers: Location
202
202 Accepted The request has been accepted for processing, but the processing has not been completed
203
203 Non-Authoritative Information Cacheable by default The server successfully processed the request, but is returning information that may be from another source
204
204 No Content Cacheable by default The server successfully processed the request, but is not returning any content
205
205 Reset Content The server successfully processed the request, but is not returning any content. Unlike a 204 response, this response requires that the requester reset the document view
206
206 Partial Content Cacheable by default The server is delivering only part of the resource (byte serving) due to a range header sent by the client
Headers: Content-Range
207
207 Multi-Status The response body holds separate status codes for multiple independent operations (WebDAV)
208
208 Already Reported The members of a binding were already listed in an earlier part of this multistatus response, so they are not repeated (WebDAV)
226
226 IM Used The server fulfilled a GET request, and the response is the result of instance manipulations applied to the current instance
3xx Redirection 300
300 Multiple Choices Cacheable by default Indicates multiple options for the resource that the client may follow
301
301 Moved Permanently Cacheable by default This and all future requests should be directed to the given URI
Headers: Location
Clients may change a POST to a GET when they follow a 301. Use 308 to keep the request method.
302
302 Found The target resource resides temporarily under a different URI
Headers: Location
Clients may change a POST to a GET when they follow a 302. Use 307 to keep the request method.
303
303 See Other The server is redirecting to a different URI which accesses the same resource
Headers: Location
304
304 Not Modified There is no need to retransmit the resource, since the client still has a previously-downloaded copy
305
305 Use Proxy Deprecated The requested resource must be accessed through the proxy given in the response. Deprecated for security reasons
306
306 (Unused) Deprecated Used in an earlier draft of HTTP/1.1 for Switch Proxy. The code is reserved and no longer used
307
307 Temporary Redirect The target resource resides temporarily under a different URI, and the client must not change the request method when it follows the redirect
Headers: Location
Like 302, but the client must keep the request method and body.
308
308 Permanent Redirect Cacheable by default The target resource has a new permanent URI, and the client must not change the request method when it follows the redirect
Headers: Location
Like 301, but the client must keep the request method and body.
4xx Client Error 400
400 Bad Request The request could not be understood by the server due to malformed syntax
Use 400 for malformed syntax. Use 422 when the syntax is valid but the content fails validation.
401
401 Unauthorized Authentication is required and has failed or has not yet been provided
Headers: WWW-Authenticate
Use 401 when the client is not authenticated. Use 403 when the client is authenticated but has no permission.
402
402 Payment Required The 402 (Payment Required) status code is reserved for future use
403
403 Forbidden The server understood the request but refuses to authorize it
Use 403 when the client is authenticated but has no permission. Use 401 when the client is not authenticated.
404
404 Not Found Cacheable by default The requested resource could not be found but may be available again in the future
Use 410 instead when you know the resource was removed on purpose and will not come back.
405
405 Method Not Allowed Cacheable by default A request was made of a resource using a request method not supported by that resource
Headers: Allow
406
406 Not Acceptable The requested resource is only capable of generating content not acceptable according to the Accept headers sent in the request
407
407 Proxy Authentication Required The client must first authenticate itself with the proxy
Headers: Proxy-Authenticate
408
408 Request Timeout The server timed out waiting for the request
409
409 Conflict The request could not be processed because of conflict in the request
410
410 Gone Cacheable by default The resource requested is no longer available and will not be available again
Use 404 instead when you do not know whether the removal is permanent.
411
411 Length Required The request did not specify the length of its content, which is required by the requested resource
412
412 Precondition Failed The server does not meet one of the preconditions that the requester put on the request
413
413 Content Too Large The request is larger than the server is willing or able to process
414
414 URI Too Long Cacheable by default The URI provided was too long for the server to process
415
415 Unsupported Media Type The request entity has a media type which the server or resource does not support
416
416 Range Not Satisfiable The client has asked for a portion of the file (byte serving), but the server cannot supply that portion
Headers: Content-Range
417
417 Expectation Failed The server cannot meet the requirements of the Expect request-header field
418
418 I'm a teapot Reserved. Originally an April Fools joke in RFC 2324 (HTCPCP), and some servers still return it for requests they refuse to handle
421
421 Misdirected Request The request was sent to a server that cannot produce a response for this combination of scheme and authority
422
422 Unprocessable Content The server understands the content type and the syntax of the request content is correct, but it was unable to process the contained instructions
Use 422 when the syntax is valid but the content fails validation. Use 400 for malformed syntax.
423
423 Locked The source or destination resource of the method is locked (WebDAV)
424
424 Failed Dependency The method could not be performed because it depended on another action that failed (WebDAV)
425
425 Too Early The server is unwilling to process a request that might be replayed, such as one sent in TLS early data
426
426 Upgrade Required The client should switch to a different protocol
Headers: Upgrade
428
428 Precondition Required The server requires the request to be conditional, for example with If-Match, to prevent lost updates
429
429 Too Many Requests The client has sent too many requests in a given amount of time (rate limiting). A Retry-After header may say how long to wait
Headers: Retry-After
431
431 Request Header Fields Too Large The server refuses the request because one header field, or all header fields together, are too large
451
451 Unavailable For Legal Reasons The server denies access to the resource as a consequence of a legal demand
5xx Server Error 500
500 Internal Server Error The server encountered an unexpected condition that prevented it from fulfilling the request
501
501 Not Implemented Cacheable by default The server does not support the functionality required to fulfill the request
502
502 Bad Gateway The server, while acting as a gateway or proxy, received an invalid response from an inbound server
The upstream server sent an invalid response. Use 504 when the upstream server did not respond in time.
503
503 Service Unavailable The server is currently unable to handle the request due to a temporary overload or scheduled maintenance
Headers: Retry-After
504
504 Gateway Timeout The server, while acting as a gateway or proxy, did not receive a timely response from an upstream server
The upstream server did not respond in time. Use 502 when it sent an invalid response.
505
505 HTTP Version Not Supported The server does not support, or refuses to support, the major version of HTTP that was used in the request
506
506 Variant Also Negotiates The server has an internal configuration error: the chosen variant resource is itself set up to do content negotiation
507
507 Insufficient Storage The server cannot store the representation needed to complete the request (WebDAV)
508
508 Loop Detected The server ended the operation because it found an infinite loop while processing a request with Depth: infinity (WebDAV)
510
510 Not Extended Further extensions to the request are required for the server to fulfill it. The defining RFC 2774 is now historic
511
511 Network Authentication Required The client needs to authenticate to gain network access, as with a captive portal on public Wi-Fi
No status codes match your search.
How to read HTTP status codes The first digit of a status code is its class. 1xx responses are informational, 2xx mean the request succeeded, 3xx ask the client to go somewhere else, 4xx point to a problem with the request, and 5xx point to a problem on the server.
Link straight to a code with its anchor, for example /http-status-codes.html#404 , or use its Copy link button. To share a search, add ?q=, for example ?q=retry-after .