HTTP Status Codes

Header: winhttp.h

These constants and corresponding values indicate HTTP status codes returned by servers on the Internet.

SymbolicCodeDescription
SP32000Minimum supported client
HTTP_STATUS_CONTINUE100The request can be continued.
HTTP_STATUS_SWITCH_PROTOCOLS101The server has switched protocols in an upgrade header.
HTTP_STATUS_OK200The request completed successfully.
HTTP_STATUS_CREATED201The request has been fulfilled and resulted in the creation of a new resource.
HTTP_STATUS_ACCEPTED202The request has been accepted for processing, but the processing has not been completed.
HTTP_STATUS_PARTIAL203The returned meta information in the entity-header is not the definitive set available from the originating server.
HTTP_STATUS_NO_CONTENT204The server has fulfilled the request, but there is no new information to send back.
HTTP_STATUS_RESET_CONTENT205The request has been completed, and the client program should reset the document view that caused the request to be sent to allow the user to easily initiate another input action.
HTTP_STATUS_PARTIAL_CONTENT206The server has fulfilled the partial GET request for the resource.
HTTP_STATUS_WEBDAV_MULTI_STATUS207During a World Wide Web Distributed Authoring and Versioning (WebDAV) operation, this indicates multiple status codes for a single response. The response body contains Extensible Markup Language (XML) that describes the status codes. For more information, see [HTTP Extensions for Distributed Authoring](../webdav/webdav-portal.md).
HTTP_STATUS_AMBIGUOUS300The requested resource is available at one or more locations.
HTTP_STATUS_MOVED301The requested resource has been assigned to a new permanent Uniform Resource Identifier (URI), and any future references to this resource should be done using one of the returned URIs.
HTTP_STATUS_REDIRECT302The requested resource resides temporarily under a different URI.
HTTP_STATUS_REDIRECT_METHOD303The response to the request can be found under a different URI and should be retrieved using a GET [*HTTP verb*](glossary.md) on that resource.
HTTP_STATUS_NOT_MODIFIED304The requested resource has not been modified.
HTTP_STATUS_USE_PROXY305The requested resource must be accessed through the proxy given by the location field.
HTTP_STATUS_REDIRECT_KEEP_VERB307The redirected request keeps the same [*HTTP verb*](glossary.md). HTTP/1.1 behavior.
HTTP_STATUS_BAD_REQUEST400The request could not be processed by the server due to invalid syntax.
HTTP_STATUS_DENIED401The requested resource requires user authentication.
HTTP_STATUS_PAYMENT_REQ402Not implemented in the HTTP protocol.
HTTP_STATUS_FORBIDDEN403The server understood the request, but cannot fulfill it.
HTTP_STATUS_NOT_FOUND404The server has not found anything that matches the requested URI.
HTTP_STATUS_BAD_METHOD405The [*HTTP verb*](glossary.md) used is not allowed.
HTTP_STATUS_NONE_ACCEPTABLE406No responses acceptable to the client were found.
HTTP_STATUS_PROXY_AUTH_REQ407Proxy authentication required.
HTTP_STATUS_REQUEST_TIMEOUT408The server timed out waiting for the request.
HTTP_STATUS_CONFLICT409The request could not be completed due to a conflict with the current state of the resource. The user should resubmit with more information.
HTTP_STATUS_GONE410The requested resource is no longer available at the server, and no forwarding address is known.
HTTP_STATUS_LENGTH_REQUIRED411The server cannot accept the request without a defined content length.
HTTP_STATUS_PRECOND_FAILED412The precondition given in one or more of the request header fields evaluated to false when it was tested on the server.
HTTP_STATUS_REQUEST_TOO_LARGE413The server cannot process the request because the request entity is larger than the server is able to process.
HTTP_STATUS_URI_TOO_LONG414The server cannot service the request because the request URI is longer than the server can interpret.
HTTP_STATUS_UNSUPPORTED_MEDIA415The server cannot service the request because the entity of the request is in a format not supported by the requested resource for the requested method.
HTTP_STATUS_RETRY_WITH449The request should be retried after doing the appropriate action.
HTTP_STATUS_SERVER_ERROR500The server encountered an unexpected condition that prevented it from fulfilling the request.
HTTP_STATUS_NOT_SUPPORTED501The server does not support the functionality required to fulfill the request.
HTTP_STATUS_BAD_GATEWAY502The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request.
HTTP_STATUS_SERVICE_UNAVAIL503The service is temporarily overloaded.
HTTP_STATUS_GATEWAY_TIMEOUT504The request was timed out waiting for a gateway.
HTTP_STATUS_VERSION_NOT_SUP505The server does not support the HTTP protocol version that was used in the request message.
41 entries

Article text from the Win32 documentation (opens in a new tab), by Microsoft, under the CC BY 4.0 (opens in a new tab) licence.