1 #ifndef AWS_HTTP_STATUS_CODE_H
2 #define AWS_HTTP_STATUS_CODE_H
3 
4 /**
5  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
6  * SPDX-License-Identifier: Apache-2.0.
7  */
8 
9 /*
10  * Define most of the http response codes we probably will use.
11  * https://www.iana.org/assignments/http-status-codes/http-status-codes.txt
12  * This is NOT a definitive list of codes.
13  */
14 enum aws_http_status_code {
15     /*
16      * This is a special response code defined for convenience in error processing,
17      * indicating processing of http request met error and didn't reach server.
18      */
19     AWS_HTTP_STATUS_CODE_UNKNOWN = -1,
20     AWS_HTTP_STATUS_CODE_100_CONTINUE = 100,
21     AWS_HTTP_STATUS_CODE_101_SWITCHING_PROTOCOLS = 101,
22     AWS_HTTP_STATUS_CODE_102_PROCESSING = 102,
23     AWS_HTTP_STATUS_CODE_103_EARLY_HINTS = 103,
24     AWS_HTTP_STATUS_CODE_200_OK = 200,
25     AWS_HTTP_STATUS_CODE_201_CREATED = 201,
26     AWS_HTTP_STATUS_CODE_202_ACCEPTED = 202,
27     AWS_HTTP_STATUS_CODE_203_NON_AUTHORITATIVE_INFORMATION = 203,
28     AWS_HTTP_STATUS_CODE_204_NO_CONTENT = 204,
29     AWS_HTTP_STATUS_CODE_205_RESET_CONTENT = 205,
30     AWS_HTTP_STATUS_CODE_206_PARTIAL_CONTENT = 206,
31     AWS_HTTP_STATUS_CODE_207_MULTI_STATUS = 207,
32     AWS_HTTP_STATUS_CODE_208_ALREADY_REPORTED = 208,
33     AWS_HTTP_STATUS_CODE_226_IM_USED = 226,
34     AWS_HTTP_STATUS_CODE_300_MULTIPLE_CHOICES = 300,
35     AWS_HTTP_STATUS_CODE_301_MOVED_PERMANENTLY = 301,
36     AWS_HTTP_STATUS_CODE_302_FOUND = 302,
37     AWS_HTTP_STATUS_CODE_303_SEE_OTHER = 303,
38     AWS_HTTP_STATUS_CODE_304_NOT_MODIFIED = 304,
39     AWS_HTTP_STATUS_CODE_305_USE_PROXY = 305,
40     AWS_HTTP_STATUS_CODE_307_TEMPORARY_REDIRECT = 307,
41     AWS_HTTP_STATUS_CODE_308_PERMANENT_REDIRECT = 308,
42     AWS_HTTP_STATUS_CODE_400_BAD_REQUEST = 400,
43     AWS_HTTP_STATUS_CODE_401_UNAUTHORIZED = 401,
44     AWS_HTTP_STATUS_CODE_402_PAYMENT_REQUIRED = 402,
45     AWS_HTTP_STATUS_CODE_403_FORBIDDEN = 403,
46     AWS_HTTP_STATUS_CODE_404_NOT_FOUND = 404,
47     AWS_HTTP_STATUS_CODE_405_METHOD_NOT_ALLOWED = 405,
48     AWS_HTTP_STATUS_CODE_406_NOT_ACCEPTABLE = 406,
49     AWS_HTTP_STATUS_CODE_407_PROXY_AUTHENTICATION_REQUIRED = 407,
50     AWS_HTTP_STATUS_CODE_408_REQUEST_TIMEOUT = 408,
51     AWS_HTTP_STATUS_CODE_409_CONFLICT = 409,
52     AWS_HTTP_STATUS_CODE_410_GONE = 410,
53     AWS_HTTP_STATUS_CODE_411_LENGTH_REQUIRED = 411,
54     AWS_HTTP_STATUS_CODE_412_PRECONDITION_FAILED = 412,
55     AWS_HTTP_STATUS_CODE_413_REQUEST_ENTITY_TOO_LARGE = 413,
56     AWS_HTTP_STATUS_CODE_414_REQUEST_URI_TOO_LONG = 414,
57     AWS_HTTP_STATUS_CODE_415_UNSUPPORTED_MEDIA_TYPE = 415,
58     AWS_HTTP_STATUS_CODE_416_REQUESTED_RANGE_NOT_SATISFIABLE = 416,
59     AWS_HTTP_STATUS_CODE_417_EXPECTATION_FAILED = 417,
60     AWS_HTTP_STATUS_CODE_421_MISDIRECTED_REQUEST = 421,
61     AWS_HTTP_STATUS_CODE_422_UNPROCESSABLE_ENTITY = 422,
62     AWS_HTTP_STATUS_CODE_423_LOCKED = 423,
63     AWS_HTTP_STATUS_CODE_424_FAILED_DEPENDENCY = 424,
64     AWS_HTTP_STATUS_CODE_425_TOO_EARLY = 425,
65     AWS_HTTP_STATUS_CODE_426_UPGRADE_REQUIRED = 426,
66     AWS_HTTP_STATUS_CODE_428_PRECONDITION_REQUIRED = 428,
67     AWS_HTTP_STATUS_CODE_429_TOO_MANY_REQUESTS = 429,
68     AWS_HTTP_STATUS_CODE_431_REQUEST_HEADER_FIELDS_TOO_LARGE = 431,
69     AWS_HTTP_STATUS_CODE_451_UNAVAILABLE_FOR_LEGAL_REASON = 451,
70     AWS_HTTP_STATUS_CODE_500_INTERNAL_SERVER_ERROR = 500,
71     AWS_HTTP_STATUS_CODE_501_NOT_IMPLEMENTED = 501,
72     AWS_HTTP_STATUS_CODE_502_BAD_GATEWAY = 502,
73     AWS_HTTP_STATUS_CODE_503_SERVICE_UNAVAILABLE = 503,
74     AWS_HTTP_STATUS_CODE_504_GATEWAY_TIMEOUT = 504,
75     AWS_HTTP_STATUS_CODE_505_HTTP_VERSION_NOT_SUPPORTED = 505,
76     AWS_HTTP_STATUS_CODE_506_VARIANT_ALSO_NEGOTIATES = 506,
77     AWS_HTTP_STATUS_CODE_507_INSUFFICIENT_STORAGE = 507,
78     AWS_HTTP_STATUS_CODE_508_LOOP_DETECTED = 508,
79     AWS_HTTP_STATUS_CODE_510_NOT_EXTENDED = 510,
80     AWS_HTTP_STATUS_CODE_511_NETWORK_AUTHENTICATION_REQUIRED = 511,
81 };
82 #endif /* AWS_HTTP_STATUS_CODE_H */
83