HTTP Status Codes Flashcards
100
Continue
The client should continue sending its request. This is a special status code.
101
Switching Protocol
The client has used the Upgrade header to request the user of an alternative protocol and the server has agreed
200
OK
This is the generic successful Request message response, which is the code sent most often when a request is filled normally
201
Created
The request was successful and resulted in a resource being created. This is a typical response to a PUT method
202
Accepted
The request was accepted by the server, but it has not yet been processed. This is an intentionally noncommittal response that does not tell the client whether or not the request will be carried out. The client determines the eventual disposition of the request in some unspecified way. It is only used in special circumstances.
203
Non-Authoritative Source
The request was successful, but some of the information returned by the server came from a third party, rather than from the original server associated with the resource
204
No Content
The request was successful, but the server has determined that it does not need to return to the client an entity body
205
Reset Content
The request was successful; the server is telling the client that it should reset the document from which the request was generated so that a duplicate request is not sent. This code is intended for use with forms.
206
Partial Content
The server has successfully fulfilled a partial GET request.
300
Multiple Choices
The resource is represented in more than one way on the server. The server is returning information describing these representations, so the client can pick the most appropriate one, a process called agent-driven negotiation.
301
Moved Permanently
The resource requested has been moved to a new URL permanently. Any future requests for this resource should use the new URL. This is the proper method of handling situations where a file on a server is renamed or moved to a new directory. Most people don’t bother setting this up, which is wy URLs break so often, resulting in 404 errors.
302
Found
The resource requested is temporarily using a different URL. The client should continue to use the original URL.
303
See Other
The response for the request can be found at a different URL, which the server specifies. The client must do a fresh GET on that URL to see the results of the prior result.
304
Not Modified
The client sent a conditional GET request, but the resource has not been modified since the specified data/time, so the server has not sent it.
305
Use Proxy
To access the requested resource, the client must use a proxy, whose URL is given by the server in its response.
306
(unused)
Defined in an earlier version of HTTP and no longer used
103
Early Hints
This status code is primarily intended to be used with the Link header, letting the user agent start preloading resources while the server prepares a response.
307
Temporary Redirect
The resource is temporarily located at a different URL than the one the client specified. Note that 302 and 307 are basically the same status code. Code 307 was created to clear up some confusion related to 302 that occurred in earlier versions of HTTP.
400
Bad Request
This is a generic response when the request cannot be understood or carried out due to a problem on the client’s end.
401
Unauthorized
The client is not authorized to access the resource. This is often returned if an attempt is made to access a resource protected by a password or some other means without the appropriate credentials
402
Payment Required
This is reserved for future use. The initial aim for creating this code was using it for digital payment systems, however this status code is used very rarely and no standard convention exists.
308
Permanent Redirect
This means that the resource is now permanently located at another URI, specified by the Location: HTTP Response header. This has the same semantics as the 301 Moved Permanently HTTP response code, with the exception that the user agent must not change the HTTP method used: if a POST was used in the first request, a POST must be used in the second request.
403
Forbidden
The request has been disallowed by the server. This is a generic “no way” response that is not related to authorization. For example, if the maintainer of a website blocks access to it from a particular client, any requests from that client will result in a 403 reply.
404
Not Found
The most common HTTP error message. This is returned when the server cannot locate the requested resource. It usually occurs due to the server having moved (or removed) the resource or the client giving an invalid URL
405
Method Not Allowed
The requested method is not allowed for the specified reason. The response includes an Allow header that indicated which methods the server with permit.
406
Not Acceptable
The client sent a request that specifies limitations that the server cannot meet for the specified resource. This error may occur if an overly restrictive list of conditions is placed into a request such that the server cannot return any part of the resource.
407
Proxy Authentication Required
This is similar to 401, but the client must for authenticate itself with the proxy
408
Request Timeout
The server was expecting the client to send a request within a particular time frame and the client didn’t send it
409
Conflict
The request could not be filled because of a conflict of some sort related to the resource. This most often occurs in response to a PUT method, such as if one user tries to PUT a resource that another user has open for editing.
410
Gone
The resource is no longer available at the server, which does not know its new URL. This is a more specific version of the 404 code that is used only if the server knows that the resource was intentionally removed. It is seen rarely (if ever)
411
Length Required
The request requires a Content-Length header field and one was not included
412
Precondition Failed
This indicates that the client specified a precondition in its request, such as the use of an If-Match header, which evaluated to a false value. This indicates that the condition was not satisfied, so the request is not being filled. This is used by clients in special cases to ensure that they do not accidentally receive the wrong resource.
413
Request Entity Too Large
The server has refused to fulfill the request because the entity that the client is requesting is too large
414
Request URI Too Long
The server has refused to fulfill the request because the URL specified is longer than the server can process. This rarely occurs with properly formed URLs, but may be seen if clients try to send gibberish to the server.
415
Unsupported Media Type
The request cannot be processed because it contains an entity using a media type the server does not support
416
Requested Range Not Satisfiable
The client included a Range header specifying a range of values that is not valid for the resource. An example might be requesting bytes 3000 through 4000 of a 2400 byte file.
417
Expectation Failed
The request included an Expect header that could not be satisfied by the server.
418
I’m a Teapot
The server refuses the attempt to brew coffee with a teapot.
421
Misdirected Request
The request was directed at a server that is not able to produce a response. This can be sent by a server that is not configured to produce responses for the combination of scheme and authority that are included in the request URI.
425
Too Early
Indicates that the server is unwilling to risk processing a request that might be replayed.
426
Upgrade Required
The server refuses to perform the request using the current protocol but might be willing to do so after the client upgrades to a different protocol. The server sends an Upgrade header in a 426 response to indicate the required protocol(s).
428
Precondition Required
The origin server requires the request to be conditional. This response is intended to prevent the ‘lost update’ problem, where a client GETs a resource’s state, modifies it and PUTs it back to the server, when meanwhile a third party has modified the state on the server, leading to a conflict.
429
Too Many Requests
The user has sent too many requests in a given amount of time (“rate limiting”).
431
Request Header Fields Too Large
The server is unwilling to process the request because its header fields are too large. The request may be resubmitted after reducing the size of the request header fields.
451
Unavailable for Legal Reasons
The user agent requested a resource that cannot legally be provided, such as a web page censored by a government.
500
Internal Server Error
This is a generic error message indicating that the request could not be fulfilled due to a server problem
501
Not Implemented
The server does not know how to carry out the request, so it cannot satisfy it.
502
Bad Gateway
The server, while acting as a gateway or proxy, received an invalid response from another server it tried to access on the client’s behalf
503
Service Unavailable
The server is temporarily unable to fulfill the request for internal reasons. This is often returned when a server is overloaded or down for maintenance.
504
Gateway Timeout
The server, while acting as a gateway or proxy, timed out while waiting for a response from another server it tried to access on the client’s behalf.
505
HTTP Version Not Supported
The request used a version of HTTP that the server does not understand.
506
Variant Also Negotiates
The server has an internal configuration error: the chosen variant resource is configured to engage in transparent content negotiation itself, and is therefore not a proper end point in the negotiation process.
510
Not Extended
Further extensions to the request are required for the server to fulfill it.
511
Network Authentication Required
Indicates that the client needs to authenticate to gain network access.