botocore 1.37.1__py3-none-any.whl → 1.37.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of botocore might be problematic. Click here for more details.

Files changed (885) hide show
  1. botocore/__init__.py +1 -1
  2. botocore/args.py +1 -0
  3. botocore/data/accessanalyzer/2019-11-01/endpoint-rule-set-1.json.gz +0 -0
  4. botocore/data/accessanalyzer/2019-11-01/service-2.json.gz +0 -0
  5. botocore/data/account/2021-02-01/endpoint-rule-set-1.json.gz +0 -0
  6. botocore/data/account/2021-02-01/service-2.json.gz +0 -0
  7. botocore/data/acm/2015-12-08/endpoint-rule-set-1.json.gz +0 -0
  8. botocore/data/acm/2015-12-08/service-2.json.gz +0 -0
  9. botocore/data/acm-pca/2017-08-22/endpoint-rule-set-1.json.gz +0 -0
  10. botocore/data/acm-pca/2017-08-22/service-2.json.gz +0 -0
  11. botocore/data/amp/2020-08-01/endpoint-rule-set-1.json.gz +0 -0
  12. botocore/data/amp/2020-08-01/service-2.json.gz +0 -0
  13. botocore/data/amplify/2017-07-25/endpoint-rule-set-1.json.gz +0 -0
  14. botocore/data/amplify/2017-07-25/service-2.json.gz +0 -0
  15. botocore/data/amplifybackend/2020-08-11/endpoint-rule-set-1.json.gz +0 -0
  16. botocore/data/amplifybackend/2020-08-11/service-2.json.gz +0 -0
  17. botocore/data/amplifyuibuilder/2021-08-11/endpoint-rule-set-1.json.gz +0 -0
  18. botocore/data/amplifyuibuilder/2021-08-11/service-2.json.gz +0 -0
  19. botocore/data/apigateway/2015-07-09/endpoint-rule-set-1.json.gz +0 -0
  20. botocore/data/apigateway/2015-07-09/service-2.json.gz +0 -0
  21. botocore/data/apigatewaymanagementapi/2018-11-29/endpoint-rule-set-1.json.gz +0 -0
  22. botocore/data/apigatewaymanagementapi/2018-11-29/service-2.json.gz +0 -0
  23. botocore/data/apigatewayv2/2018-11-29/endpoint-rule-set-1.json.gz +0 -0
  24. botocore/data/apigatewayv2/2018-11-29/service-2.json.gz +0 -0
  25. botocore/data/appconfig/2019-10-09/endpoint-rule-set-1.json.gz +0 -0
  26. botocore/data/appconfig/2019-10-09/service-2.json.gz +0 -0
  27. botocore/data/appconfigdata/2021-11-11/endpoint-rule-set-1.json.gz +0 -0
  28. botocore/data/appconfigdata/2021-11-11/service-2.json.gz +0 -0
  29. botocore/data/appfabric/2023-05-19/endpoint-rule-set-1.json.gz +0 -0
  30. botocore/data/appfabric/2023-05-19/service-2.json.gz +0 -0
  31. botocore/data/appflow/2020-08-23/endpoint-rule-set-1.json.gz +0 -0
  32. botocore/data/appflow/2020-08-23/service-2.json.gz +0 -0
  33. botocore/data/appintegrations/2020-07-29/endpoint-rule-set-1.json.gz +0 -0
  34. botocore/data/appintegrations/2020-07-29/service-2.json.gz +0 -0
  35. botocore/data/application-autoscaling/2016-02-06/endpoint-rule-set-1.json.gz +0 -0
  36. botocore/data/application-autoscaling/2016-02-06/service-2.json.gz +0 -0
  37. botocore/data/application-insights/2018-11-25/endpoint-rule-set-1.json.gz +0 -0
  38. botocore/data/application-insights/2018-11-25/service-2.json.gz +0 -0
  39. botocore/data/application-signals/2024-04-15/endpoint-rule-set-1.json.gz +0 -0
  40. botocore/data/application-signals/2024-04-15/service-2.json.gz +0 -0
  41. botocore/data/applicationcostprofiler/2020-09-10/endpoint-rule-set-1.json.gz +0 -0
  42. botocore/data/applicationcostprofiler/2020-09-10/service-2.json.gz +0 -0
  43. botocore/data/appmesh/2018-10-01/endpoint-rule-set-1.json.gz +0 -0
  44. botocore/data/appmesh/2018-10-01/service-2.json.gz +0 -0
  45. botocore/data/appmesh/2019-01-25/endpoint-rule-set-1.json.gz +0 -0
  46. botocore/data/appmesh/2019-01-25/service-2.json.gz +0 -0
  47. botocore/data/apprunner/2020-05-15/endpoint-rule-set-1.json.gz +0 -0
  48. botocore/data/apprunner/2020-05-15/service-2.json.gz +0 -0
  49. botocore/data/appstream/2016-12-01/endpoint-rule-set-1.json.gz +0 -0
  50. botocore/data/appstream/2016-12-01/service-2.json.gz +0 -0
  51. botocore/data/appsync/2017-07-25/endpoint-rule-set-1.json.gz +0 -0
  52. botocore/data/appsync/2017-07-25/service-2.json.gz +0 -0
  53. botocore/data/apptest/2022-12-06/endpoint-rule-set-1.json.gz +0 -0
  54. botocore/data/apptest/2022-12-06/service-2.json.gz +0 -0
  55. botocore/data/arc-zonal-shift/2022-10-30/endpoint-rule-set-1.json.gz +0 -0
  56. botocore/data/arc-zonal-shift/2022-10-30/service-2.json.gz +0 -0
  57. botocore/data/artifact/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  58. botocore/data/artifact/2018-05-10/service-2.json.gz +0 -0
  59. botocore/data/athena/2017-05-18/endpoint-rule-set-1.json.gz +0 -0
  60. botocore/data/athena/2017-05-18/service-2.json.gz +0 -0
  61. botocore/data/auditmanager/2017-07-25/endpoint-rule-set-1.json.gz +0 -0
  62. botocore/data/auditmanager/2017-07-25/service-2.json.gz +0 -0
  63. botocore/data/autoscaling/2011-01-01/endpoint-rule-set-1.json.gz +0 -0
  64. botocore/data/autoscaling/2011-01-01/service-2.json.gz +0 -0
  65. botocore/data/autoscaling-plans/2018-01-06/endpoint-rule-set-1.json.gz +0 -0
  66. botocore/data/autoscaling-plans/2018-01-06/service-2.json.gz +0 -0
  67. botocore/data/b2bi/2022-06-23/endpoint-rule-set-1.json.gz +0 -0
  68. botocore/data/b2bi/2022-06-23/service-2.json.gz +0 -0
  69. botocore/data/backup/2018-11-15/endpoint-rule-set-1.json.gz +0 -0
  70. botocore/data/backup/2018-11-15/service-2.json.gz +0 -0
  71. botocore/data/backup-gateway/2021-01-01/endpoint-rule-set-1.json.gz +0 -0
  72. botocore/data/backup-gateway/2021-01-01/service-2.json.gz +0 -0
  73. botocore/data/backupsearch/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  74. botocore/data/backupsearch/2018-05-10/service-2.json.gz +0 -0
  75. botocore/data/batch/2016-08-10/endpoint-rule-set-1.json.gz +0 -0
  76. botocore/data/batch/2016-08-10/paginators-1.json +12 -0
  77. botocore/data/batch/2016-08-10/service-2.json.gz +0 -0
  78. botocore/data/bcm-data-exports/2023-11-26/endpoint-rule-set-1.json.gz +0 -0
  79. botocore/data/bcm-data-exports/2023-11-26/service-2.json.gz +0 -0
  80. botocore/data/bcm-pricing-calculator/2024-06-19/endpoint-rule-set-1.json.gz +0 -0
  81. botocore/data/bcm-pricing-calculator/2024-06-19/service-2.json.gz +0 -0
  82. botocore/data/bedrock/2023-04-20/endpoint-rule-set-1.json.gz +0 -0
  83. botocore/data/bedrock/2023-04-20/service-2.json.gz +0 -0
  84. botocore/data/bedrock-agent/2023-06-05/endpoint-rule-set-1.json.gz +0 -0
  85. botocore/data/bedrock-agent/2023-06-05/service-2.json.gz +0 -0
  86. botocore/data/bedrock-agent-runtime/2023-07-26/endpoint-rule-set-1.json.gz +0 -0
  87. botocore/data/bedrock-agent-runtime/2023-07-26/paginators-1.json +18 -0
  88. botocore/data/bedrock-agent-runtime/2023-07-26/service-2.json.gz +0 -0
  89. botocore/data/bedrock-data-automation/2023-07-26/endpoint-rule-set-1.json.gz +0 -0
  90. botocore/data/bedrock-data-automation/2023-07-26/service-2.json.gz +0 -0
  91. botocore/data/bedrock-data-automation-runtime/2024-06-13/endpoint-rule-set-1.json.gz +0 -0
  92. botocore/data/bedrock-data-automation-runtime/2024-06-13/service-2.json.gz +0 -0
  93. botocore/data/bedrock-runtime/2023-09-30/endpoint-rule-set-1.json.gz +0 -0
  94. botocore/data/bedrock-runtime/2023-09-30/service-2.json.gz +0 -0
  95. botocore/data/billing/2023-09-07/endpoint-rule-set-1.json.gz +0 -0
  96. botocore/data/billing/2023-09-07/service-2.json.gz +0 -0
  97. botocore/data/billingconductor/2021-07-30/endpoint-rule-set-1.json.gz +0 -0
  98. botocore/data/billingconductor/2021-07-30/service-2.json.gz +0 -0
  99. botocore/data/braket/2019-09-01/endpoint-rule-set-1.json.gz +0 -0
  100. botocore/data/braket/2019-09-01/service-2.json.gz +0 -0
  101. botocore/data/budgets/2016-10-20/endpoint-rule-set-1.json.gz +0 -0
  102. botocore/data/budgets/2016-10-20/service-2.json.gz +0 -0
  103. botocore/data/ce/2017-10-25/endpoint-rule-set-1.json.gz +0 -0
  104. botocore/data/ce/2017-10-25/service-2.json.gz +0 -0
  105. botocore/data/chatbot/2017-10-11/endpoint-rule-set-1.json.gz +0 -0
  106. botocore/data/chatbot/2017-10-11/service-2.json.gz +0 -0
  107. botocore/data/chime/2018-05-01/endpoint-rule-set-1.json.gz +0 -0
  108. botocore/data/chime/2018-05-01/service-2.json.gz +0 -0
  109. botocore/data/chime-sdk-identity/2021-04-20/endpoint-rule-set-1.json.gz +0 -0
  110. botocore/data/chime-sdk-identity/2021-04-20/service-2.json.gz +0 -0
  111. botocore/data/chime-sdk-media-pipelines/2021-07-15/endpoint-rule-set-1.json.gz +0 -0
  112. botocore/data/chime-sdk-media-pipelines/2021-07-15/service-2.json.gz +0 -0
  113. botocore/data/chime-sdk-meetings/2021-07-15/endpoint-rule-set-1.json.gz +0 -0
  114. botocore/data/chime-sdk-meetings/2021-07-15/service-2.json.gz +0 -0
  115. botocore/data/chime-sdk-messaging/2021-05-15/endpoint-rule-set-1.json.gz +0 -0
  116. botocore/data/chime-sdk-messaging/2021-05-15/service-2.json.gz +0 -0
  117. botocore/data/chime-sdk-voice/2022-08-03/endpoint-rule-set-1.json.gz +0 -0
  118. botocore/data/chime-sdk-voice/2022-08-03/service-2.json.gz +0 -0
  119. botocore/data/cleanrooms/2022-02-17/endpoint-rule-set-1.json.gz +0 -0
  120. botocore/data/cleanrooms/2022-02-17/service-2.json.gz +0 -0
  121. botocore/data/cleanroomsml/2023-09-06/endpoint-rule-set-1.json.gz +0 -0
  122. botocore/data/cleanroomsml/2023-09-06/service-2.json.gz +0 -0
  123. botocore/data/cloud9/2017-09-23/endpoint-rule-set-1.json.gz +0 -0
  124. botocore/data/cloud9/2017-09-23/service-2.json.gz +0 -0
  125. botocore/data/cloudcontrol/2021-09-30/endpoint-rule-set-1.json.gz +0 -0
  126. botocore/data/cloudcontrol/2021-09-30/service-2.json.gz +0 -0
  127. botocore/data/clouddirectory/2016-05-10/endpoint-rule-set-1.json.gz +0 -0
  128. botocore/data/clouddirectory/2016-05-10/service-2.json.gz +0 -0
  129. botocore/data/clouddirectory/2017-01-11/endpoint-rule-set-1.json.gz +0 -0
  130. botocore/data/clouddirectory/2017-01-11/service-2.json.gz +0 -0
  131. botocore/data/cloudformation/2010-05-15/endpoint-rule-set-1.json.gz +0 -0
  132. botocore/data/cloudformation/2010-05-15/service-2.json.gz +0 -0
  133. botocore/data/cloudfront/2014-05-31/endpoint-rule-set-1.json.gz +0 -0
  134. botocore/data/cloudfront/2014-05-31/service-2.json.gz +0 -0
  135. botocore/data/cloudfront/2014-10-21/endpoint-rule-set-1.json.gz +0 -0
  136. botocore/data/cloudfront/2014-10-21/service-2.json.gz +0 -0
  137. botocore/data/cloudfront/2014-11-06/endpoint-rule-set-1.json.gz +0 -0
  138. botocore/data/cloudfront/2014-11-06/service-2.json.gz +0 -0
  139. botocore/data/cloudfront/2015-04-17/endpoint-rule-set-1.json.gz +0 -0
  140. botocore/data/cloudfront/2015-04-17/service-2.json.gz +0 -0
  141. botocore/data/cloudfront/2015-07-27/endpoint-rule-set-1.json.gz +0 -0
  142. botocore/data/cloudfront/2015-07-27/service-2.json.gz +0 -0
  143. botocore/data/cloudfront/2015-09-17/endpoint-rule-set-1.json.gz +0 -0
  144. botocore/data/cloudfront/2015-09-17/service-2.json.gz +0 -0
  145. botocore/data/cloudfront/2016-01-13/endpoint-rule-set-1.json.gz +0 -0
  146. botocore/data/cloudfront/2016-01-13/service-2.json.gz +0 -0
  147. botocore/data/cloudfront/2016-01-28/endpoint-rule-set-1.json.gz +0 -0
  148. botocore/data/cloudfront/2016-01-28/service-2.json.gz +0 -0
  149. botocore/data/cloudfront/2016-08-01/endpoint-rule-set-1.json.gz +0 -0
  150. botocore/data/cloudfront/2016-08-01/service-2.json.gz +0 -0
  151. botocore/data/cloudfront/2016-08-20/endpoint-rule-set-1.json.gz +0 -0
  152. botocore/data/cloudfront/2016-08-20/service-2.json.gz +0 -0
  153. botocore/data/cloudfront/2016-09-07/endpoint-rule-set-1.json.gz +0 -0
  154. botocore/data/cloudfront/2016-09-07/service-2.json.gz +0 -0
  155. botocore/data/cloudfront/2016-09-29/endpoint-rule-set-1.json.gz +0 -0
  156. botocore/data/cloudfront/2016-09-29/service-2.json.gz +0 -0
  157. botocore/data/cloudfront/2016-11-25/endpoint-rule-set-1.json.gz +0 -0
  158. botocore/data/cloudfront/2016-11-25/service-2.json.gz +0 -0
  159. botocore/data/cloudfront/2017-03-25/endpoint-rule-set-1.json.gz +0 -0
  160. botocore/data/cloudfront/2017-03-25/service-2.json.gz +0 -0
  161. botocore/data/cloudfront/2017-10-30/endpoint-rule-set-1.json.gz +0 -0
  162. botocore/data/cloudfront/2017-10-30/service-2.json.gz +0 -0
  163. botocore/data/cloudfront/2018-06-18/endpoint-rule-set-1.json.gz +0 -0
  164. botocore/data/cloudfront/2018-06-18/service-2.json.gz +0 -0
  165. botocore/data/cloudfront/2018-11-05/endpoint-rule-set-1.json.gz +0 -0
  166. botocore/data/cloudfront/2018-11-05/service-2.json.gz +0 -0
  167. botocore/data/cloudfront/2019-03-26/endpoint-rule-set-1.json.gz +0 -0
  168. botocore/data/cloudfront/2019-03-26/service-2.json.gz +0 -0
  169. botocore/data/cloudfront/2020-05-31/endpoint-rule-set-1.json.gz +0 -0
  170. botocore/data/cloudfront/2020-05-31/service-2.json.gz +0 -0
  171. botocore/data/cloudfront-keyvaluestore/2022-07-26/endpoint-rule-set-1.json.gz +0 -0
  172. botocore/data/cloudfront-keyvaluestore/2022-07-26/service-2.json.gz +0 -0
  173. botocore/data/cloudhsm/2014-05-30/endpoint-rule-set-1.json.gz +0 -0
  174. botocore/data/cloudhsm/2014-05-30/service-2.json.gz +0 -0
  175. botocore/data/cloudhsmv2/2017-04-28/endpoint-rule-set-1.json.gz +0 -0
  176. botocore/data/cloudhsmv2/2017-04-28/service-2.json.gz +0 -0
  177. botocore/data/cloudsearch/2011-02-01/endpoint-rule-set-1.json.gz +0 -0
  178. botocore/data/cloudsearch/2011-02-01/service-2.json.gz +0 -0
  179. botocore/data/cloudsearch/2013-01-01/endpoint-rule-set-1.json.gz +0 -0
  180. botocore/data/cloudsearch/2013-01-01/service-2.json.gz +0 -0
  181. botocore/data/cloudsearchdomain/2013-01-01/endpoint-rule-set-1.json.gz +0 -0
  182. botocore/data/cloudsearchdomain/2013-01-01/service-2.json.gz +0 -0
  183. botocore/data/cloudtrail/2013-11-01/endpoint-rule-set-1.json.gz +0 -0
  184. botocore/data/cloudtrail/2013-11-01/service-2.json.gz +0 -0
  185. botocore/data/cloudtrail-data/2021-08-11/endpoint-rule-set-1.json.gz +0 -0
  186. botocore/data/cloudtrail-data/2021-08-11/service-2.json.gz +0 -0
  187. botocore/data/cloudwatch/2010-08-01/endpoint-rule-set-1.json.gz +0 -0
  188. botocore/data/cloudwatch/2010-08-01/service-2.json.gz +0 -0
  189. botocore/data/codeartifact/2018-09-22/endpoint-rule-set-1.json.gz +0 -0
  190. botocore/data/codeartifact/2018-09-22/service-2.json.gz +0 -0
  191. botocore/data/codebuild/2016-10-06/endpoint-rule-set-1.json.gz +0 -0
  192. botocore/data/codebuild/2016-10-06/service-2.json.gz +0 -0
  193. botocore/data/codecatalyst/2022-09-28/endpoint-rule-set-1.json.gz +0 -0
  194. botocore/data/codecatalyst/2022-09-28/service-2.json.gz +0 -0
  195. botocore/data/codecommit/2015-04-13/endpoint-rule-set-1.json.gz +0 -0
  196. botocore/data/codecommit/2015-04-13/service-2.json.gz +0 -0
  197. botocore/data/codeconnections/2023-12-01/endpoint-rule-set-1.json.gz +0 -0
  198. botocore/data/codeconnections/2023-12-01/service-2.json.gz +0 -0
  199. botocore/data/codedeploy/2014-10-06/endpoint-rule-set-1.json.gz +0 -0
  200. botocore/data/codedeploy/2014-10-06/service-2.json.gz +0 -0
  201. botocore/data/codeguru-reviewer/2019-09-19/endpoint-rule-set-1.json.gz +0 -0
  202. botocore/data/codeguru-reviewer/2019-09-19/service-2.json.gz +0 -0
  203. botocore/data/codeguru-security/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  204. botocore/data/codeguru-security/2018-05-10/service-2.json.gz +0 -0
  205. botocore/data/codeguruprofiler/2019-07-18/endpoint-rule-set-1.json.gz +0 -0
  206. botocore/data/codeguruprofiler/2019-07-18/service-2.json.gz +0 -0
  207. botocore/data/codepipeline/2015-07-09/endpoint-rule-set-1.json.gz +0 -0
  208. botocore/data/codepipeline/2015-07-09/service-2.json.gz +0 -0
  209. botocore/data/codestar-connections/2019-12-01/endpoint-rule-set-1.json.gz +0 -0
  210. botocore/data/codestar-connections/2019-12-01/service-2.json.gz +0 -0
  211. botocore/data/codestar-notifications/2019-10-15/endpoint-rule-set-1.json.gz +0 -0
  212. botocore/data/codestar-notifications/2019-10-15/service-2.json.gz +0 -0
  213. botocore/data/cognito-identity/2014-06-30/endpoint-rule-set-1.json.gz +0 -0
  214. botocore/data/cognito-identity/2014-06-30/service-2.json.gz +0 -0
  215. botocore/data/cognito-idp/2016-04-18/endpoint-rule-set-1.json.gz +0 -0
  216. botocore/data/cognito-idp/2016-04-18/service-2.json.gz +0 -0
  217. botocore/data/cognito-sync/2014-06-30/endpoint-rule-set-1.json.gz +0 -0
  218. botocore/data/cognito-sync/2014-06-30/service-2.json.gz +0 -0
  219. botocore/data/comprehend/2017-11-27/endpoint-rule-set-1.json.gz +0 -0
  220. botocore/data/comprehend/2017-11-27/service-2.json.gz +0 -0
  221. botocore/data/comprehendmedical/2018-10-30/endpoint-rule-set-1.json.gz +0 -0
  222. botocore/data/comprehendmedical/2018-10-30/service-2.json.gz +0 -0
  223. botocore/data/compute-optimizer/2019-11-01/endpoint-rule-set-1.json.gz +0 -0
  224. botocore/data/compute-optimizer/2019-11-01/service-2.json.gz +0 -0
  225. botocore/data/config/2014-11-12/endpoint-rule-set-1.json.gz +0 -0
  226. botocore/data/config/2014-11-12/service-2.json.gz +0 -0
  227. botocore/data/connect/2017-08-08/endpoint-rule-set-1.json.gz +0 -0
  228. botocore/data/connect/2017-08-08/service-2.json.gz +0 -0
  229. botocore/data/connect-contact-lens/2020-08-21/endpoint-rule-set-1.json.gz +0 -0
  230. botocore/data/connect-contact-lens/2020-08-21/service-2.json.gz +0 -0
  231. botocore/data/connectcampaigns/2021-01-30/endpoint-rule-set-1.json.gz +0 -0
  232. botocore/data/connectcampaigns/2021-01-30/service-2.json.gz +0 -0
  233. botocore/data/connectcampaignsv2/2024-04-23/endpoint-rule-set-1.json.gz +0 -0
  234. botocore/data/connectcampaignsv2/2024-04-23/service-2.json.gz +0 -0
  235. botocore/data/connectcases/2022-10-03/endpoint-rule-set-1.json.gz +0 -0
  236. botocore/data/connectcases/2022-10-03/service-2.json.gz +0 -0
  237. botocore/data/connectparticipant/2018-09-07/endpoint-rule-set-1.json.gz +0 -0
  238. botocore/data/connectparticipant/2018-09-07/service-2.json.gz +0 -0
  239. botocore/data/controlcatalog/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  240. botocore/data/controlcatalog/2018-05-10/service-2.json.gz +0 -0
  241. botocore/data/controltower/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  242. botocore/data/controltower/2018-05-10/service-2.json.gz +0 -0
  243. botocore/data/cost-optimization-hub/2022-07-26/endpoint-rule-set-1.json.gz +0 -0
  244. botocore/data/cost-optimization-hub/2022-07-26/service-2.json.gz +0 -0
  245. botocore/data/cur/2017-01-06/endpoint-rule-set-1.json.gz +0 -0
  246. botocore/data/cur/2017-01-06/service-2.json.gz +0 -0
  247. botocore/data/customer-profiles/2020-08-15/endpoint-rule-set-1.json.gz +0 -0
  248. botocore/data/customer-profiles/2020-08-15/service-2.json.gz +0 -0
  249. botocore/data/databrew/2017-07-25/endpoint-rule-set-1.json.gz +0 -0
  250. botocore/data/databrew/2017-07-25/service-2.json.gz +0 -0
  251. botocore/data/dataexchange/2017-07-25/endpoint-rule-set-1.json.gz +0 -0
  252. botocore/data/dataexchange/2017-07-25/service-2.json.gz +0 -0
  253. botocore/data/datapipeline/2012-10-29/endpoint-rule-set-1.json.gz +0 -0
  254. botocore/data/datapipeline/2012-10-29/service-2.json.gz +0 -0
  255. botocore/data/datasync/2018-11-09/endpoint-rule-set-1.json.gz +0 -0
  256. botocore/data/datasync/2018-11-09/service-2.json.gz +0 -0
  257. botocore/data/datazone/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  258. botocore/data/datazone/2018-05-10/service-2.json.gz +0 -0
  259. botocore/data/dax/2017-04-19/endpoint-rule-set-1.json.gz +0 -0
  260. botocore/data/dax/2017-04-19/service-2.json.gz +0 -0
  261. botocore/data/deadline/2023-10-12/endpoint-rule-set-1.json.gz +0 -0
  262. botocore/data/deadline/2023-10-12/service-2.json.gz +0 -0
  263. botocore/data/detective/2018-10-26/endpoint-rule-set-1.json.gz +0 -0
  264. botocore/data/detective/2018-10-26/service-2.json.gz +0 -0
  265. botocore/data/devicefarm/2015-06-23/endpoint-rule-set-1.json.gz +0 -0
  266. botocore/data/devicefarm/2015-06-23/service-2.json.gz +0 -0
  267. botocore/data/devops-guru/2020-12-01/endpoint-rule-set-1.json.gz +0 -0
  268. botocore/data/devops-guru/2020-12-01/service-2.json.gz +0 -0
  269. botocore/data/directconnect/2012-10-25/endpoint-rule-set-1.json.gz +0 -0
  270. botocore/data/directconnect/2012-10-25/service-2.json.gz +0 -0
  271. botocore/data/discovery/2015-11-01/endpoint-rule-set-1.json.gz +0 -0
  272. botocore/data/discovery/2015-11-01/service-2.json.gz +0 -0
  273. botocore/data/dlm/2018-01-12/endpoint-rule-set-1.json.gz +0 -0
  274. botocore/data/dlm/2018-01-12/service-2.json.gz +0 -0
  275. botocore/data/dms/2016-01-01/endpoint-rule-set-1.json.gz +0 -0
  276. botocore/data/dms/2016-01-01/service-2.json.gz +0 -0
  277. botocore/data/docdb/2014-10-31/endpoint-rule-set-1.json.gz +0 -0
  278. botocore/data/docdb/2014-10-31/service-2.json.gz +0 -0
  279. botocore/data/docdb-elastic/2022-11-28/endpoint-rule-set-1.json.gz +0 -0
  280. botocore/data/docdb-elastic/2022-11-28/service-2.json.gz +0 -0
  281. botocore/data/drs/2020-02-26/endpoint-rule-set-1.json.gz +0 -0
  282. botocore/data/drs/2020-02-26/service-2.json.gz +0 -0
  283. botocore/data/ds/2015-04-16/endpoint-rule-set-1.json.gz +0 -0
  284. botocore/data/ds/2015-04-16/service-2.json.gz +0 -0
  285. botocore/data/ds-data/2023-05-31/endpoint-rule-set-1.json.gz +0 -0
  286. botocore/data/ds-data/2023-05-31/service-2.json.gz +0 -0
  287. botocore/data/dsql/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  288. botocore/data/dsql/2018-05-10/service-2.json.gz +0 -0
  289. botocore/data/dynamodb/2011-12-05/endpoint-rule-set-1.json.gz +0 -0
  290. botocore/data/dynamodb/2012-08-10/endpoint-rule-set-1.json.gz +0 -0
  291. botocore/data/dynamodb/2012-08-10/service-2.json.gz +0 -0
  292. botocore/data/dynamodbstreams/2012-08-10/endpoint-rule-set-1.json.gz +0 -0
  293. botocore/data/dynamodbstreams/2012-08-10/service-2.json.gz +0 -0
  294. botocore/data/ebs/2019-11-02/endpoint-rule-set-1.json.gz +0 -0
  295. botocore/data/ebs/2019-11-02/service-2.json.gz +0 -0
  296. botocore/data/ec2/2014-09-01/endpoint-rule-set-1.json.gz +0 -0
  297. botocore/data/ec2/2014-09-01/service-2.json.gz +0 -0
  298. botocore/data/ec2/2014-10-01/endpoint-rule-set-1.json.gz +0 -0
  299. botocore/data/ec2/2014-10-01/service-2.json.gz +0 -0
  300. botocore/data/ec2/2015-03-01/endpoint-rule-set-1.json.gz +0 -0
  301. botocore/data/ec2/2015-03-01/service-2.json.gz +0 -0
  302. botocore/data/ec2/2015-04-15/endpoint-rule-set-1.json.gz +0 -0
  303. botocore/data/ec2/2015-04-15/service-2.json.gz +0 -0
  304. botocore/data/ec2/2015-10-01/endpoint-rule-set-1.json.gz +0 -0
  305. botocore/data/ec2/2015-10-01/service-2.json.gz +0 -0
  306. botocore/data/ec2/2016-04-01/endpoint-rule-set-1.json.gz +0 -0
  307. botocore/data/ec2/2016-04-01/service-2.json.gz +0 -0
  308. botocore/data/ec2/2016-09-15/endpoint-rule-set-1.json.gz +0 -0
  309. botocore/data/ec2/2016-09-15/service-2.json.gz +0 -0
  310. botocore/data/ec2/2016-11-15/endpoint-rule-set-1.json.gz +0 -0
  311. botocore/data/ec2/2016-11-15/service-2.json.gz +0 -0
  312. botocore/data/ec2-instance-connect/2018-04-02/endpoint-rule-set-1.json.gz +0 -0
  313. botocore/data/ec2-instance-connect/2018-04-02/service-2.json.gz +0 -0
  314. botocore/data/ecr/2015-09-21/endpoint-rule-set-1.json.gz +0 -0
  315. botocore/data/ecr/2015-09-21/service-2.json.gz +0 -0
  316. botocore/data/ecr-public/2020-10-30/endpoint-rule-set-1.json.gz +0 -0
  317. botocore/data/ecr-public/2020-10-30/service-2.json.gz +0 -0
  318. botocore/data/ecs/2014-11-13/endpoint-rule-set-1.json.gz +0 -0
  319. botocore/data/ecs/2014-11-13/service-2.json.gz +0 -0
  320. botocore/data/efs/2015-02-01/endpoint-rule-set-1.json.gz +0 -0
  321. botocore/data/efs/2015-02-01/service-2.json.gz +0 -0
  322. botocore/data/eks/2017-11-01/endpoint-rule-set-1.json.gz +0 -0
  323. botocore/data/eks/2017-11-01/service-2.json.gz +0 -0
  324. botocore/data/eks-auth/2023-11-26/endpoint-rule-set-1.json.gz +0 -0
  325. botocore/data/eks-auth/2023-11-26/service-2.json.gz +0 -0
  326. botocore/data/elasticache/2014-09-30/endpoint-rule-set-1.json.gz +0 -0
  327. botocore/data/elasticache/2014-09-30/service-2.json.gz +0 -0
  328. botocore/data/elasticache/2015-02-02/endpoint-rule-set-1.json.gz +0 -0
  329. botocore/data/elasticache/2015-02-02/service-2.json.gz +0 -0
  330. botocore/data/elasticbeanstalk/2010-12-01/endpoint-rule-set-1.json.gz +0 -0
  331. botocore/data/elasticbeanstalk/2010-12-01/service-2.json.gz +0 -0
  332. botocore/data/elastictranscoder/2012-09-25/endpoint-rule-set-1.json.gz +0 -0
  333. botocore/data/elastictranscoder/2012-09-25/service-2.json.gz +0 -0
  334. botocore/data/elb/2012-06-01/endpoint-rule-set-1.json.gz +0 -0
  335. botocore/data/elb/2012-06-01/service-2.json.gz +0 -0
  336. botocore/data/elbv2/2015-12-01/endpoint-rule-set-1.json.gz +0 -0
  337. botocore/data/elbv2/2015-12-01/service-2.json.gz +0 -0
  338. botocore/data/emr/2009-03-31/endpoint-rule-set-1.json.gz +0 -0
  339. botocore/data/emr/2009-03-31/service-2.json.gz +0 -0
  340. botocore/data/emr-containers/2020-10-01/endpoint-rule-set-1.json.gz +0 -0
  341. botocore/data/emr-containers/2020-10-01/service-2.json.gz +0 -0
  342. botocore/data/emr-serverless/2021-07-13/endpoint-rule-set-1.json.gz +0 -0
  343. botocore/data/emr-serverless/2021-07-13/service-2.json.gz +0 -0
  344. botocore/data/endpoints.json +216 -0
  345. botocore/data/entityresolution/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  346. botocore/data/entityresolution/2018-05-10/service-2.json.gz +0 -0
  347. botocore/data/es/2015-01-01/endpoint-rule-set-1.json.gz +0 -0
  348. botocore/data/es/2015-01-01/service-2.json.gz +0 -0
  349. botocore/data/events/2014-02-03/endpoint-rule-set-1.json.gz +0 -0
  350. botocore/data/events/2014-02-03/service-2.json.gz +0 -0
  351. botocore/data/events/2015-10-07/endpoint-rule-set-1.json.gz +0 -0
  352. botocore/data/events/2015-10-07/service-2.json.gz +0 -0
  353. botocore/data/evidently/2021-02-01/endpoint-rule-set-1.json.gz +0 -0
  354. botocore/data/evidently/2021-02-01/service-2.json.gz +0 -0
  355. botocore/data/finspace/2021-03-12/endpoint-rule-set-1.json.gz +0 -0
  356. botocore/data/finspace/2021-03-12/service-2.json.gz +0 -0
  357. botocore/data/finspace-data/2020-07-13/endpoint-rule-set-1.json.gz +0 -0
  358. botocore/data/finspace-data/2020-07-13/service-2.json.gz +0 -0
  359. botocore/data/firehose/2015-08-04/endpoint-rule-set-1.json.gz +0 -0
  360. botocore/data/firehose/2015-08-04/service-2.json.gz +0 -0
  361. botocore/data/fis/2020-12-01/endpoint-rule-set-1.json.gz +0 -0
  362. botocore/data/fis/2020-12-01/service-2.json.gz +0 -0
  363. botocore/data/fms/2018-01-01/endpoint-rule-set-1.json.gz +0 -0
  364. botocore/data/fms/2018-01-01/service-2.json.gz +0 -0
  365. botocore/data/forecast/2018-06-26/endpoint-rule-set-1.json.gz +0 -0
  366. botocore/data/forecast/2018-06-26/service-2.json.gz +0 -0
  367. botocore/data/forecastquery/2018-06-26/endpoint-rule-set-1.json.gz +0 -0
  368. botocore/data/forecastquery/2018-06-26/service-2.json.gz +0 -0
  369. botocore/data/frauddetector/2019-11-15/endpoint-rule-set-1.json.gz +0 -0
  370. botocore/data/frauddetector/2019-11-15/service-2.json.gz +0 -0
  371. botocore/data/freetier/2023-09-07/endpoint-rule-set-1.json.gz +0 -0
  372. botocore/data/freetier/2023-09-07/service-2.json.gz +0 -0
  373. botocore/data/fsx/2018-03-01/endpoint-rule-set-1.json.gz +0 -0
  374. botocore/data/fsx/2018-03-01/service-2.json.gz +0 -0
  375. botocore/data/gamelift/2015-10-01/endpoint-rule-set-1.json.gz +0 -0
  376. botocore/data/gamelift/2015-10-01/service-2.json.gz +0 -0
  377. botocore/data/geo-maps/2020-11-19/endpoint-rule-set-1.json.gz +0 -0
  378. botocore/data/geo-maps/2020-11-19/service-2.json.gz +0 -0
  379. botocore/data/geo-places/2020-11-19/endpoint-rule-set-1.json.gz +0 -0
  380. botocore/data/geo-places/2020-11-19/service-2.json.gz +0 -0
  381. botocore/data/geo-routes/2020-11-19/endpoint-rule-set-1.json.gz +0 -0
  382. botocore/data/geo-routes/2020-11-19/service-2.json.gz +0 -0
  383. botocore/data/glacier/2012-06-01/endpoint-rule-set-1.json.gz +0 -0
  384. botocore/data/glacier/2012-06-01/service-2.json.gz +0 -0
  385. botocore/data/globalaccelerator/2018-08-08/endpoint-rule-set-1.json.gz +0 -0
  386. botocore/data/globalaccelerator/2018-08-08/service-2.json.gz +0 -0
  387. botocore/data/glue/2017-03-31/endpoint-rule-set-1.json.gz +0 -0
  388. botocore/data/glue/2017-03-31/service-2.json.gz +0 -0
  389. botocore/data/grafana/2020-08-18/endpoint-rule-set-1.json.gz +0 -0
  390. botocore/data/grafana/2020-08-18/service-2.json.gz +0 -0
  391. botocore/data/greengrass/2017-06-07/endpoint-rule-set-1.json.gz +0 -0
  392. botocore/data/greengrass/2017-06-07/service-2.json.gz +0 -0
  393. botocore/data/greengrassv2/2020-11-30/endpoint-rule-set-1.json.gz +0 -0
  394. botocore/data/greengrassv2/2020-11-30/service-2.json.gz +0 -0
  395. botocore/data/groundstation/2019-05-23/endpoint-rule-set-1.json.gz +0 -0
  396. botocore/data/groundstation/2019-05-23/service-2.json.gz +0 -0
  397. botocore/data/guardduty/2017-11-28/endpoint-rule-set-1.json.gz +0 -0
  398. botocore/data/guardduty/2017-11-28/service-2.json.gz +0 -0
  399. botocore/data/health/2016-08-04/endpoint-rule-set-1.json.gz +0 -0
  400. botocore/data/health/2016-08-04/service-2.json.gz +0 -0
  401. botocore/data/healthlake/2017-07-01/endpoint-rule-set-1.json.gz +0 -0
  402. botocore/data/healthlake/2017-07-01/service-2.json.gz +0 -0
  403. botocore/data/iam/2010-05-08/endpoint-rule-set-1.json.gz +0 -0
  404. botocore/data/iam/2010-05-08/service-2.json.gz +0 -0
  405. botocore/data/identitystore/2020-06-15/endpoint-rule-set-1.json.gz +0 -0
  406. botocore/data/identitystore/2020-06-15/service-2.json.gz +0 -0
  407. botocore/data/imagebuilder/2019-12-02/endpoint-rule-set-1.json.gz +0 -0
  408. botocore/data/imagebuilder/2019-12-02/service-2.json.gz +0 -0
  409. botocore/data/importexport/2010-06-01/endpoint-rule-set-1.json.gz +0 -0
  410. botocore/data/importexport/2010-06-01/service-2.json.gz +0 -0
  411. botocore/data/inspector/2015-08-18/endpoint-rule-set-1.json.gz +0 -0
  412. botocore/data/inspector/2015-08-18/service-2.json.gz +0 -0
  413. botocore/data/inspector/2016-02-16/endpoint-rule-set-1.json.gz +0 -0
  414. botocore/data/inspector/2016-02-16/service-2.json.gz +0 -0
  415. botocore/data/inspector-scan/2023-08-08/endpoint-rule-set-1.json.gz +0 -0
  416. botocore/data/inspector-scan/2023-08-08/service-2.json.gz +0 -0
  417. botocore/data/inspector2/2020-06-08/endpoint-rule-set-1.json.gz +0 -0
  418. botocore/data/inspector2/2020-06-08/service-2.json.gz +0 -0
  419. botocore/data/internetmonitor/2021-06-03/endpoint-rule-set-1.json.gz +0 -0
  420. botocore/data/internetmonitor/2021-06-03/service-2.json.gz +0 -0
  421. botocore/data/invoicing/2024-12-01/endpoint-rule-set-1.json.gz +0 -0
  422. botocore/data/invoicing/2024-12-01/service-2.json.gz +0 -0
  423. botocore/data/iot/2015-05-28/endpoint-rule-set-1.json.gz +0 -0
  424. botocore/data/iot/2015-05-28/service-2.json.gz +0 -0
  425. botocore/data/iot-data/2015-05-28/endpoint-rule-set-1.json.gz +0 -0
  426. botocore/data/iot-data/2015-05-28/service-2.json.gz +0 -0
  427. botocore/data/iot-jobs-data/2017-09-29/endpoint-rule-set-1.json.gz +0 -0
  428. botocore/data/iot-jobs-data/2017-09-29/service-2.json.gz +0 -0
  429. botocore/data/iotanalytics/2017-11-27/endpoint-rule-set-1.json.gz +0 -0
  430. botocore/data/iotanalytics/2017-11-27/service-2.json.gz +0 -0
  431. botocore/data/iotdeviceadvisor/2020-09-18/endpoint-rule-set-1.json.gz +0 -0
  432. botocore/data/iotdeviceadvisor/2020-09-18/service-2.json.gz +0 -0
  433. botocore/data/iotevents/2018-07-27/endpoint-rule-set-1.json.gz +0 -0
  434. botocore/data/iotevents/2018-07-27/service-2.json.gz +0 -0
  435. botocore/data/iotevents-data/2018-10-23/endpoint-rule-set-1.json.gz +0 -0
  436. botocore/data/iotevents-data/2018-10-23/service-2.json.gz +0 -0
  437. botocore/data/iotfleethub/2020-11-03/endpoint-rule-set-1.json.gz +0 -0
  438. botocore/data/iotfleethub/2020-11-03/service-2.json.gz +0 -0
  439. botocore/data/iotfleetwise/2021-06-17/endpoint-rule-set-1.json.gz +0 -0
  440. botocore/data/iotfleetwise/2021-06-17/service-2.json.gz +0 -0
  441. botocore/data/iotsecuretunneling/2018-10-05/endpoint-rule-set-1.json.gz +0 -0
  442. botocore/data/iotsecuretunneling/2018-10-05/service-2.json.gz +0 -0
  443. botocore/data/iotsitewise/2019-12-02/endpoint-rule-set-1.json.gz +0 -0
  444. botocore/data/iotsitewise/2019-12-02/service-2.json.gz +0 -0
  445. botocore/data/iotthingsgraph/2018-09-06/endpoint-rule-set-1.json.gz +0 -0
  446. botocore/data/iotthingsgraph/2018-09-06/service-2.json.gz +0 -0
  447. botocore/data/iottwinmaker/2021-11-29/endpoint-rule-set-1.json.gz +0 -0
  448. botocore/data/iottwinmaker/2021-11-29/service-2.json.gz +0 -0
  449. botocore/data/iotwireless/2020-11-22/endpoint-rule-set-1.json.gz +0 -0
  450. botocore/data/iotwireless/2020-11-22/service-2.json.gz +0 -0
  451. botocore/data/ivs/2020-07-14/endpoint-rule-set-1.json.gz +0 -0
  452. botocore/data/ivs/2020-07-14/service-2.json.gz +0 -0
  453. botocore/data/ivs-realtime/2020-07-14/endpoint-rule-set-1.json.gz +0 -0
  454. botocore/data/ivs-realtime/2020-07-14/service-2.json.gz +0 -0
  455. botocore/data/ivschat/2020-07-14/endpoint-rule-set-1.json.gz +0 -0
  456. botocore/data/ivschat/2020-07-14/service-2.json.gz +0 -0
  457. botocore/data/kafka/2018-11-14/endpoint-rule-set-1.json.gz +0 -0
  458. botocore/data/kafka/2018-11-14/service-2.json.gz +0 -0
  459. botocore/data/kafkaconnect/2021-09-14/endpoint-rule-set-1.json.gz +0 -0
  460. botocore/data/kafkaconnect/2021-09-14/service-2.json.gz +0 -0
  461. botocore/data/kendra/2019-02-03/endpoint-rule-set-1.json.gz +0 -0
  462. botocore/data/kendra/2019-02-03/service-2.json.gz +0 -0
  463. botocore/data/kendra-ranking/2022-10-19/endpoint-rule-set-1.json.gz +0 -0
  464. botocore/data/kendra-ranking/2022-10-19/service-2.json.gz +0 -0
  465. botocore/data/keyspaces/2022-02-10/endpoint-rule-set-1.json.gz +0 -0
  466. botocore/data/keyspaces/2022-02-10/service-2.json.gz +0 -0
  467. botocore/data/kinesis/2013-12-02/endpoint-rule-set-1.json.gz +0 -0
  468. botocore/data/kinesis/2013-12-02/service-2.json.gz +0 -0
  469. botocore/data/kinesis-video-archived-media/2017-09-30/endpoint-rule-set-1.json.gz +0 -0
  470. botocore/data/kinesis-video-archived-media/2017-09-30/service-2.json.gz +0 -0
  471. botocore/data/kinesis-video-media/2017-09-30/endpoint-rule-set-1.json.gz +0 -0
  472. botocore/data/kinesis-video-media/2017-09-30/service-2.json.gz +0 -0
  473. botocore/data/kinesis-video-signaling/2019-12-04/endpoint-rule-set-1.json.gz +0 -0
  474. botocore/data/kinesis-video-signaling/2019-12-04/service-2.json.gz +0 -0
  475. botocore/data/kinesis-video-webrtc-storage/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  476. botocore/data/kinesis-video-webrtc-storage/2018-05-10/service-2.json.gz +0 -0
  477. botocore/data/kinesisanalytics/2015-08-14/endpoint-rule-set-1.json.gz +0 -0
  478. botocore/data/kinesisanalytics/2015-08-14/service-2.json.gz +0 -0
  479. botocore/data/kinesisanalyticsv2/2018-05-23/endpoint-rule-set-1.json.gz +0 -0
  480. botocore/data/kinesisanalyticsv2/2018-05-23/service-2.json.gz +0 -0
  481. botocore/data/kinesisvideo/2017-09-30/endpoint-rule-set-1.json.gz +0 -0
  482. botocore/data/kinesisvideo/2017-09-30/service-2.json.gz +0 -0
  483. botocore/data/kms/2014-11-01/endpoint-rule-set-1.json.gz +0 -0
  484. botocore/data/kms/2014-11-01/service-2.json.gz +0 -0
  485. botocore/data/lakeformation/2017-03-31/endpoint-rule-set-1.json.gz +0 -0
  486. botocore/data/lakeformation/2017-03-31/service-2.json.gz +0 -0
  487. botocore/data/lambda/2014-11-11/endpoint-rule-set-1.json.gz +0 -0
  488. botocore/data/lambda/2014-11-11/service-2.json.gz +0 -0
  489. botocore/data/lambda/2015-03-31/endpoint-rule-set-1.json.gz +0 -0
  490. botocore/data/lambda/2015-03-31/service-2.json.gz +0 -0
  491. botocore/data/launch-wizard/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  492. botocore/data/launch-wizard/2018-05-10/service-2.json.gz +0 -0
  493. botocore/data/lex-models/2017-04-19/endpoint-rule-set-1.json.gz +0 -0
  494. botocore/data/lex-models/2017-04-19/service-2.json.gz +0 -0
  495. botocore/data/lex-runtime/2016-11-28/endpoint-rule-set-1.json.gz +0 -0
  496. botocore/data/lex-runtime/2016-11-28/service-2.json.gz +0 -0
  497. botocore/data/lexv2-models/2020-08-07/endpoint-rule-set-1.json.gz +0 -0
  498. botocore/data/lexv2-models/2020-08-07/service-2.json.gz +0 -0
  499. botocore/data/lexv2-runtime/2020-08-07/endpoint-rule-set-1.json.gz +0 -0
  500. botocore/data/lexv2-runtime/2020-08-07/service-2.json.gz +0 -0
  501. botocore/data/license-manager/2018-08-01/endpoint-rule-set-1.json.gz +0 -0
  502. botocore/data/license-manager/2018-08-01/service-2.json.gz +0 -0
  503. botocore/data/license-manager-linux-subscriptions/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  504. botocore/data/license-manager-linux-subscriptions/2018-05-10/service-2.json.gz +0 -0
  505. botocore/data/license-manager-user-subscriptions/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  506. botocore/data/license-manager-user-subscriptions/2018-05-10/service-2.json.gz +0 -0
  507. botocore/data/lightsail/2016-11-28/endpoint-rule-set-1.json.gz +0 -0
  508. botocore/data/lightsail/2016-11-28/service-2.json.gz +0 -0
  509. botocore/data/location/2020-11-19/endpoint-rule-set-1.json.gz +0 -0
  510. botocore/data/location/2020-11-19/service-2.json.gz +0 -0
  511. botocore/data/logs/2014-03-28/endpoint-rule-set-1.json.gz +0 -0
  512. botocore/data/logs/2014-03-28/service-2.json.gz +0 -0
  513. botocore/data/lookoutequipment/2020-12-15/endpoint-rule-set-1.json.gz +0 -0
  514. botocore/data/lookoutequipment/2020-12-15/service-2.json.gz +0 -0
  515. botocore/data/lookoutmetrics/2017-07-25/endpoint-rule-set-1.json.gz +0 -0
  516. botocore/data/lookoutmetrics/2017-07-25/service-2.json.gz +0 -0
  517. botocore/data/lookoutvision/2020-11-20/endpoint-rule-set-1.json.gz +0 -0
  518. botocore/data/lookoutvision/2020-11-20/service-2.json.gz +0 -0
  519. botocore/data/m2/2021-04-28/endpoint-rule-set-1.json.gz +0 -0
  520. botocore/data/m2/2021-04-28/service-2.json.gz +0 -0
  521. botocore/data/machinelearning/2014-12-12/endpoint-rule-set-1.json.gz +0 -0
  522. botocore/data/machinelearning/2014-12-12/service-2.json.gz +0 -0
  523. botocore/data/macie2/2020-01-01/endpoint-rule-set-1.json.gz +0 -0
  524. botocore/data/macie2/2020-01-01/service-2.json.gz +0 -0
  525. botocore/data/mailmanager/2023-10-17/endpoint-rule-set-1.json.gz +0 -0
  526. botocore/data/mailmanager/2023-10-17/service-2.json.gz +0 -0
  527. botocore/data/managedblockchain/2018-09-24/endpoint-rule-set-1.json.gz +0 -0
  528. botocore/data/managedblockchain/2018-09-24/service-2.json.gz +0 -0
  529. botocore/data/managedblockchain-query/2023-05-04/endpoint-rule-set-1.json.gz +0 -0
  530. botocore/data/managedblockchain-query/2023-05-04/service-2.json.gz +0 -0
  531. botocore/data/marketplace-agreement/2020-03-01/endpoint-rule-set-1.json.gz +0 -0
  532. botocore/data/marketplace-agreement/2020-03-01/service-2.json.gz +0 -0
  533. botocore/data/marketplace-catalog/2018-09-17/endpoint-rule-set-1.json.gz +0 -0
  534. botocore/data/marketplace-catalog/2018-09-17/service-2.json.gz +0 -0
  535. botocore/data/marketplace-deployment/2023-01-25/endpoint-rule-set-1.json.gz +0 -0
  536. botocore/data/marketplace-deployment/2023-01-25/service-2.json.gz +0 -0
  537. botocore/data/marketplace-entitlement/2017-01-11/endpoint-rule-set-1.json.gz +0 -0
  538. botocore/data/marketplace-entitlement/2017-01-11/service-2.json.gz +0 -0
  539. botocore/data/marketplace-reporting/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  540. botocore/data/marketplace-reporting/2018-05-10/service-2.json.gz +0 -0
  541. botocore/data/marketplacecommerceanalytics/2015-07-01/endpoint-rule-set-1.json.gz +0 -0
  542. botocore/data/marketplacecommerceanalytics/2015-07-01/service-2.json.gz +0 -0
  543. botocore/data/mediaconnect/2018-11-14/endpoint-rule-set-1.json.gz +0 -0
  544. botocore/data/mediaconnect/2018-11-14/service-2.json.gz +0 -0
  545. botocore/data/mediaconvert/2017-08-29/endpoint-rule-set-1.json.gz +0 -0
  546. botocore/data/mediaconvert/2017-08-29/service-2.json.gz +0 -0
  547. botocore/data/medialive/2017-10-14/endpoint-rule-set-1.json.gz +0 -0
  548. botocore/data/medialive/2017-10-14/service-2.json.gz +0 -0
  549. botocore/data/mediapackage/2017-10-12/endpoint-rule-set-1.json.gz +0 -0
  550. botocore/data/mediapackage/2017-10-12/service-2.json.gz +0 -0
  551. botocore/data/mediapackage-vod/2018-11-07/endpoint-rule-set-1.json.gz +0 -0
  552. botocore/data/mediapackage-vod/2018-11-07/service-2.json.gz +0 -0
  553. botocore/data/mediapackagev2/2022-12-25/endpoint-rule-set-1.json.gz +0 -0
  554. botocore/data/mediapackagev2/2022-12-25/service-2.json.gz +0 -0
  555. botocore/data/mediastore/2017-09-01/endpoint-rule-set-1.json.gz +0 -0
  556. botocore/data/mediastore/2017-09-01/service-2.json.gz +0 -0
  557. botocore/data/mediastore-data/2017-09-01/endpoint-rule-set-1.json.gz +0 -0
  558. botocore/data/mediastore-data/2017-09-01/service-2.json.gz +0 -0
  559. botocore/data/mediatailor/2018-04-23/endpoint-rule-set-1.json.gz +0 -0
  560. botocore/data/mediatailor/2018-04-23/service-2.json.gz +0 -0
  561. botocore/data/medical-imaging/2023-07-19/endpoint-rule-set-1.json.gz +0 -0
  562. botocore/data/medical-imaging/2023-07-19/service-2.json.gz +0 -0
  563. botocore/data/memorydb/2021-01-01/endpoint-rule-set-1.json.gz +0 -0
  564. botocore/data/memorydb/2021-01-01/service-2.json.gz +0 -0
  565. botocore/data/meteringmarketplace/2016-01-14/endpoint-rule-set-1.json.gz +0 -0
  566. botocore/data/meteringmarketplace/2016-01-14/service-2.json.gz +0 -0
  567. botocore/data/mgh/2017-05-31/endpoint-rule-set-1.json.gz +0 -0
  568. botocore/data/mgh/2017-05-31/service-2.json.gz +0 -0
  569. botocore/data/mgn/2020-02-26/endpoint-rule-set-1.json.gz +0 -0
  570. botocore/data/mgn/2020-02-26/service-2.json.gz +0 -0
  571. botocore/data/migration-hub-refactor-spaces/2021-10-26/endpoint-rule-set-1.json.gz +0 -0
  572. botocore/data/migration-hub-refactor-spaces/2021-10-26/service-2.json.gz +0 -0
  573. botocore/data/migrationhub-config/2019-06-30/endpoint-rule-set-1.json.gz +0 -0
  574. botocore/data/migrationhub-config/2019-06-30/service-2.json.gz +0 -0
  575. botocore/data/migrationhuborchestrator/2021-08-28/endpoint-rule-set-1.json.gz +0 -0
  576. botocore/data/migrationhuborchestrator/2021-08-28/service-2.json.gz +0 -0
  577. botocore/data/migrationhubstrategy/2020-02-19/endpoint-rule-set-1.json.gz +0 -0
  578. botocore/data/migrationhubstrategy/2020-02-19/service-2.json.gz +0 -0
  579. botocore/data/mq/2017-11-27/endpoint-rule-set-1.json.gz +0 -0
  580. botocore/data/mq/2017-11-27/service-2.json.gz +0 -0
  581. botocore/data/mturk/2017-01-17/endpoint-rule-set-1.json.gz +0 -0
  582. botocore/data/mturk/2017-01-17/service-2.json.gz +0 -0
  583. botocore/data/mwaa/2020-07-01/endpoint-rule-set-1.json.gz +0 -0
  584. botocore/data/mwaa/2020-07-01/service-2.json.gz +0 -0
  585. botocore/data/neptune/2014-10-31/endpoint-rule-set-1.json.gz +0 -0
  586. botocore/data/neptune/2014-10-31/service-2.json.gz +0 -0
  587. botocore/data/neptune-graph/2023-11-29/endpoint-rule-set-1.json.gz +0 -0
  588. botocore/data/neptune-graph/2023-11-29/service-2.json.gz +0 -0
  589. botocore/data/neptunedata/2023-08-01/endpoint-rule-set-1.json.gz +0 -0
  590. botocore/data/neptunedata/2023-08-01/service-2.json.gz +0 -0
  591. botocore/data/network-firewall/2020-11-12/endpoint-rule-set-1.json.gz +0 -0
  592. botocore/data/network-firewall/2020-11-12/service-2.json.gz +0 -0
  593. botocore/data/networkflowmonitor/2023-04-19/endpoint-rule-set-1.json.gz +0 -0
  594. botocore/data/networkflowmonitor/2023-04-19/service-2.json.gz +0 -0
  595. botocore/data/networkmanager/2019-07-05/endpoint-rule-set-1.json.gz +0 -0
  596. botocore/data/networkmanager/2019-07-05/service-2.json.gz +0 -0
  597. botocore/data/networkmonitor/2023-08-01/endpoint-rule-set-1.json.gz +0 -0
  598. botocore/data/networkmonitor/2023-08-01/service-2.json.gz +0 -0
  599. botocore/data/notifications/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  600. botocore/data/notifications/2018-05-10/service-2.json.gz +0 -0
  601. botocore/data/notificationscontacts/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  602. botocore/data/notificationscontacts/2018-05-10/service-2.json.gz +0 -0
  603. botocore/data/oam/2022-06-10/endpoint-rule-set-1.json.gz +0 -0
  604. botocore/data/oam/2022-06-10/service-2.json.gz +0 -0
  605. botocore/data/observabilityadmin/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  606. botocore/data/observabilityadmin/2018-05-10/service-2.json.gz +0 -0
  607. botocore/data/omics/2022-11-28/endpoint-rule-set-1.json.gz +0 -0
  608. botocore/data/omics/2022-11-28/service-2.json.gz +0 -0
  609. botocore/data/opensearch/2021-01-01/endpoint-rule-set-1.json.gz +0 -0
  610. botocore/data/opensearch/2021-01-01/service-2.json.gz +0 -0
  611. botocore/data/opensearchserverless/2021-11-01/endpoint-rule-set-1.json.gz +0 -0
  612. botocore/data/opensearchserverless/2021-11-01/service-2.json.gz +0 -0
  613. botocore/data/opsworks/2013-02-18/endpoint-rule-set-1.json.gz +0 -0
  614. botocore/data/opsworks/2013-02-18/service-2.json.gz +0 -0
  615. botocore/data/opsworkscm/2016-11-01/endpoint-rule-set-1.json.gz +0 -0
  616. botocore/data/opsworkscm/2016-11-01/service-2.json.gz +0 -0
  617. botocore/data/organizations/2016-11-28/endpoint-rule-set-1.json.gz +0 -0
  618. botocore/data/organizations/2016-11-28/service-2.json.gz +0 -0
  619. botocore/data/osis/2022-01-01/endpoint-rule-set-1.json.gz +0 -0
  620. botocore/data/osis/2022-01-01/service-2.json.gz +0 -0
  621. botocore/data/outposts/2019-12-03/endpoint-rule-set-1.json.gz +0 -0
  622. botocore/data/outposts/2019-12-03/service-2.json.gz +0 -0
  623. botocore/data/panorama/2019-07-24/endpoint-rule-set-1.json.gz +0 -0
  624. botocore/data/panorama/2019-07-24/service-2.json.gz +0 -0
  625. botocore/data/partnercentral-selling/2022-07-26/endpoint-rule-set-1.json.gz +0 -0
  626. botocore/data/partnercentral-selling/2022-07-26/service-2.json.gz +0 -0
  627. botocore/data/payment-cryptography/2021-09-14/endpoint-rule-set-1.json.gz +0 -0
  628. botocore/data/payment-cryptography/2021-09-14/service-2.json.gz +0 -0
  629. botocore/data/payment-cryptography-data/2022-02-03/endpoint-rule-set-1.json.gz +0 -0
  630. botocore/data/payment-cryptography-data/2022-02-03/service-2.json.gz +0 -0
  631. botocore/data/pca-connector-ad/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  632. botocore/data/pca-connector-ad/2018-05-10/service-2.json.gz +0 -0
  633. botocore/data/pca-connector-scep/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  634. botocore/data/pca-connector-scep/2018-05-10/service-2.json.gz +0 -0
  635. botocore/data/pcs/2023-02-10/endpoint-rule-set-1.json.gz +0 -0
  636. botocore/data/pcs/2023-02-10/service-2.json.gz +0 -0
  637. botocore/data/personalize/2018-05-22/endpoint-rule-set-1.json.gz +0 -0
  638. botocore/data/personalize/2018-05-22/service-2.json.gz +0 -0
  639. botocore/data/personalize-events/2018-03-22/endpoint-rule-set-1.json.gz +0 -0
  640. botocore/data/personalize-events/2018-03-22/service-2.json.gz +0 -0
  641. botocore/data/personalize-runtime/2018-05-22/endpoint-rule-set-1.json.gz +0 -0
  642. botocore/data/personalize-runtime/2018-05-22/service-2.json.gz +0 -0
  643. botocore/data/pi/2018-02-27/endpoint-rule-set-1.json.gz +0 -0
  644. botocore/data/pi/2018-02-27/service-2.json.gz +0 -0
  645. botocore/data/pinpoint/2016-12-01/endpoint-rule-set-1.json.gz +0 -0
  646. botocore/data/pinpoint/2016-12-01/service-2.json.gz +0 -0
  647. botocore/data/pinpoint-email/2018-07-26/endpoint-rule-set-1.json.gz +0 -0
  648. botocore/data/pinpoint-email/2018-07-26/service-2.json.gz +0 -0
  649. botocore/data/pinpoint-sms-voice/2018-09-05/endpoint-rule-set-1.json.gz +0 -0
  650. botocore/data/pinpoint-sms-voice/2018-09-05/service-2.json.gz +0 -0
  651. botocore/data/pinpoint-sms-voice-v2/2022-03-31/endpoint-rule-set-1.json.gz +0 -0
  652. botocore/data/pinpoint-sms-voice-v2/2022-03-31/service-2.json.gz +0 -0
  653. botocore/data/pipes/2015-10-07/endpoint-rule-set-1.json.gz +0 -0
  654. botocore/data/pipes/2015-10-07/service-2.json.gz +0 -0
  655. botocore/data/polly/2016-06-10/endpoint-rule-set-1.json.gz +0 -0
  656. botocore/data/polly/2016-06-10/service-2.json.gz +0 -0
  657. botocore/data/pricing/2017-10-15/endpoint-rule-set-1.json.gz +0 -0
  658. botocore/data/pricing/2017-10-15/service-2.json.gz +0 -0
  659. botocore/data/privatenetworks/2021-12-03/endpoint-rule-set-1.json.gz +0 -0
  660. botocore/data/privatenetworks/2021-12-03/service-2.json.gz +0 -0
  661. botocore/data/proton/2020-07-20/endpoint-rule-set-1.json.gz +0 -0
  662. botocore/data/proton/2020-07-20/service-2.json.gz +0 -0
  663. botocore/data/qapps/2023-11-27/endpoint-rule-set-1.json.gz +0 -0
  664. botocore/data/qapps/2023-11-27/service-2.json.gz +0 -0
  665. botocore/data/qbusiness/2023-11-27/endpoint-rule-set-1.json.gz +0 -0
  666. botocore/data/qbusiness/2023-11-27/service-2.json.gz +0 -0
  667. botocore/data/qconnect/2020-10-19/endpoint-rule-set-1.json.gz +0 -0
  668. botocore/data/qconnect/2020-10-19/service-2.json.gz +0 -0
  669. botocore/data/qldb/2019-01-02/endpoint-rule-set-1.json.gz +0 -0
  670. botocore/data/qldb/2019-01-02/service-2.json.gz +0 -0
  671. botocore/data/qldb-session/2019-07-11/endpoint-rule-set-1.json.gz +0 -0
  672. botocore/data/qldb-session/2019-07-11/service-2.json.gz +0 -0
  673. botocore/data/quicksight/2018-04-01/endpoint-rule-set-1.json.gz +0 -0
  674. botocore/data/quicksight/2018-04-01/service-2.json.gz +0 -0
  675. botocore/data/ram/2018-01-04/endpoint-rule-set-1.json.gz +0 -0
  676. botocore/data/ram/2018-01-04/service-2.json.gz +0 -0
  677. botocore/data/rbin/2021-06-15/endpoint-rule-set-1.json.gz +0 -0
  678. botocore/data/rbin/2021-06-15/service-2.json.gz +0 -0
  679. botocore/data/rds/2014-09-01/endpoint-rule-set-1.json.gz +0 -0
  680. botocore/data/rds/2014-09-01/service-2.json.gz +0 -0
  681. botocore/data/rds/2014-10-31/endpoint-rule-set-1.json.gz +0 -0
  682. botocore/data/rds/2014-10-31/service-2.json.gz +0 -0
  683. botocore/data/rds-data/2018-08-01/endpoint-rule-set-1.json.gz +0 -0
  684. botocore/data/rds-data/2018-08-01/service-2.json.gz +0 -0
  685. botocore/data/redshift/2012-12-01/endpoint-rule-set-1.json.gz +0 -0
  686. botocore/data/redshift/2012-12-01/service-2.json.gz +0 -0
  687. botocore/data/redshift-data/2019-12-20/endpoint-rule-set-1.json.gz +0 -0
  688. botocore/data/redshift-data/2019-12-20/service-2.json.gz +0 -0
  689. botocore/data/redshift-serverless/2021-04-21/endpoint-rule-set-1.json.gz +0 -0
  690. botocore/data/redshift-serverless/2021-04-21/paginators-1.json +6 -0
  691. botocore/data/redshift-serverless/2021-04-21/service-2.json.gz +0 -0
  692. botocore/data/rekognition/2016-06-27/endpoint-rule-set-1.json.gz +0 -0
  693. botocore/data/rekognition/2016-06-27/service-2.json.gz +0 -0
  694. botocore/data/repostspace/2022-05-13/endpoint-rule-set-1.json.gz +0 -0
  695. botocore/data/repostspace/2022-05-13/service-2.json.gz +0 -0
  696. botocore/data/resiliencehub/2020-04-30/endpoint-rule-set-1.json.gz +0 -0
  697. botocore/data/resiliencehub/2020-04-30/service-2.json.gz +0 -0
  698. botocore/data/resource-explorer-2/2022-07-28/endpoint-rule-set-1.json.gz +0 -0
  699. botocore/data/resource-explorer-2/2022-07-28/service-2.json.gz +0 -0
  700. botocore/data/resource-groups/2017-11-27/endpoint-rule-set-1.json.gz +0 -0
  701. botocore/data/resource-groups/2017-11-27/service-2.json.gz +0 -0
  702. botocore/data/resourcegroupstaggingapi/2017-01-26/endpoint-rule-set-1.json.gz +0 -0
  703. botocore/data/resourcegroupstaggingapi/2017-01-26/service-2.json.gz +0 -0
  704. botocore/data/robomaker/2018-06-29/endpoint-rule-set-1.json.gz +0 -0
  705. botocore/data/robomaker/2018-06-29/service-2.json.gz +0 -0
  706. botocore/data/rolesanywhere/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  707. botocore/data/rolesanywhere/2018-05-10/service-2.json.gz +0 -0
  708. botocore/data/route53/2013-04-01/endpoint-rule-set-1.json.gz +0 -0
  709. botocore/data/route53/2013-04-01/service-2.json.gz +0 -0
  710. botocore/data/route53-recovery-cluster/2019-12-02/endpoint-rule-set-1.json.gz +0 -0
  711. botocore/data/route53-recovery-cluster/2019-12-02/service-2.json.gz +0 -0
  712. botocore/data/route53-recovery-control-config/2020-11-02/endpoint-rule-set-1.json.gz +0 -0
  713. botocore/data/route53-recovery-control-config/2020-11-02/service-2.json.gz +0 -0
  714. botocore/data/route53-recovery-readiness/2019-12-02/endpoint-rule-set-1.json.gz +0 -0
  715. botocore/data/route53-recovery-readiness/2019-12-02/service-2.json.gz +0 -0
  716. botocore/data/route53domains/2014-05-15/endpoint-rule-set-1.json.gz +0 -0
  717. botocore/data/route53domains/2014-05-15/service-2.json.gz +0 -0
  718. botocore/data/route53profiles/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  719. botocore/data/route53profiles/2018-05-10/service-2.json.gz +0 -0
  720. botocore/data/route53resolver/2018-04-01/endpoint-rule-set-1.json.gz +0 -0
  721. botocore/data/route53resolver/2018-04-01/service-2.json.gz +0 -0
  722. botocore/data/rum/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  723. botocore/data/rum/2018-05-10/service-2.json.gz +0 -0
  724. botocore/data/s3/2006-03-01/endpoint-rule-set-1.json.gz +0 -0
  725. botocore/data/s3/2006-03-01/service-2.json.gz +0 -0
  726. botocore/data/s3control/2018-08-20/endpoint-rule-set-1.json.gz +0 -0
  727. botocore/data/s3control/2018-08-20/service-2.json.gz +0 -0
  728. botocore/data/s3outposts/2017-07-25/endpoint-rule-set-1.json.gz +0 -0
  729. botocore/data/s3outposts/2017-07-25/service-2.json.gz +0 -0
  730. botocore/data/s3tables/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  731. botocore/data/s3tables/2018-05-10/service-2.json.gz +0 -0
  732. botocore/data/sagemaker/2017-07-24/endpoint-rule-set-1.json.gz +0 -0
  733. botocore/data/sagemaker/2017-07-24/service-2.json.gz +0 -0
  734. botocore/data/sagemaker-a2i-runtime/2019-11-07/endpoint-rule-set-1.json.gz +0 -0
  735. botocore/data/sagemaker-a2i-runtime/2019-11-07/service-2.json.gz +0 -0
  736. botocore/data/sagemaker-edge/2020-09-23/endpoint-rule-set-1.json.gz +0 -0
  737. botocore/data/sagemaker-edge/2020-09-23/service-2.json.gz +0 -0
  738. botocore/data/sagemaker-featurestore-runtime/2020-07-01/endpoint-rule-set-1.json.gz +0 -0
  739. botocore/data/sagemaker-featurestore-runtime/2020-07-01/service-2.json.gz +0 -0
  740. botocore/data/sagemaker-geospatial/2020-05-27/endpoint-rule-set-1.json.gz +0 -0
  741. botocore/data/sagemaker-geospatial/2020-05-27/service-2.json.gz +0 -0
  742. botocore/data/sagemaker-metrics/2022-09-30/endpoint-rule-set-1.json.gz +0 -0
  743. botocore/data/sagemaker-metrics/2022-09-30/service-2.json.gz +0 -0
  744. botocore/data/sagemaker-runtime/2017-05-13/endpoint-rule-set-1.json.gz +0 -0
  745. botocore/data/sagemaker-runtime/2017-05-13/service-2.json.gz +0 -0
  746. botocore/data/savingsplans/2019-06-28/endpoint-rule-set-1.json.gz +0 -0
  747. botocore/data/savingsplans/2019-06-28/service-2.json.gz +0 -0
  748. botocore/data/scheduler/2021-06-30/endpoint-rule-set-1.json.gz +0 -0
  749. botocore/data/scheduler/2021-06-30/service-2.json.gz +0 -0
  750. botocore/data/schemas/2019-12-02/endpoint-rule-set-1.json.gz +0 -0
  751. botocore/data/schemas/2019-12-02/service-2.json.gz +0 -0
  752. botocore/data/sdb/2009-04-15/endpoint-rule-set-1.json.gz +0 -0
  753. botocore/data/sdb/2009-04-15/service-2.json.gz +0 -0
  754. botocore/data/secretsmanager/2017-10-17/endpoint-rule-set-1.json.gz +0 -0
  755. botocore/data/secretsmanager/2017-10-17/service-2.json.gz +0 -0
  756. botocore/data/security-ir/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  757. botocore/data/security-ir/2018-05-10/service-2.json.gz +0 -0
  758. botocore/data/securityhub/2018-10-26/endpoint-rule-set-1.json.gz +0 -0
  759. botocore/data/securityhub/2018-10-26/service-2.json.gz +0 -0
  760. botocore/data/securitylake/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  761. botocore/data/securitylake/2018-05-10/service-2.json.gz +0 -0
  762. botocore/data/serverlessrepo/2017-09-08/endpoint-rule-set-1.json.gz +0 -0
  763. botocore/data/serverlessrepo/2017-09-08/service-2.json.gz +0 -0
  764. botocore/data/service-quotas/2019-06-24/endpoint-rule-set-1.json.gz +0 -0
  765. botocore/data/service-quotas/2019-06-24/service-2.json.gz +0 -0
  766. botocore/data/servicecatalog/2015-12-10/endpoint-rule-set-1.json.gz +0 -0
  767. botocore/data/servicecatalog/2015-12-10/service-2.json.gz +0 -0
  768. botocore/data/servicecatalog-appregistry/2020-06-24/endpoint-rule-set-1.json.gz +0 -0
  769. botocore/data/servicecatalog-appregistry/2020-06-24/service-2.json.gz +0 -0
  770. botocore/data/servicediscovery/2017-03-14/endpoint-rule-set-1.json.gz +0 -0
  771. botocore/data/servicediscovery/2017-03-14/service-2.json.gz +0 -0
  772. botocore/data/ses/2010-12-01/endpoint-rule-set-1.json.gz +0 -0
  773. botocore/data/ses/2010-12-01/service-2.json.gz +0 -0
  774. botocore/data/sesv2/2019-09-27/endpoint-rule-set-1.json.gz +0 -0
  775. botocore/data/sesv2/2019-09-27/service-2.json.gz +0 -0
  776. botocore/data/shield/2016-06-02/endpoint-rule-set-1.json.gz +0 -0
  777. botocore/data/shield/2016-06-02/service-2.json.gz +0 -0
  778. botocore/data/signer/2017-08-25/endpoint-rule-set-1.json.gz +0 -0
  779. botocore/data/signer/2017-08-25/service-2.json.gz +0 -0
  780. botocore/data/simspaceweaver/2022-10-28/endpoint-rule-set-1.json.gz +0 -0
  781. botocore/data/simspaceweaver/2022-10-28/service-2.json.gz +0 -0
  782. botocore/data/sms/2016-10-24/endpoint-rule-set-1.json.gz +0 -0
  783. botocore/data/sms/2016-10-24/service-2.json.gz +0 -0
  784. botocore/data/sms-voice/2018-09-05/endpoint-rule-set-1.json.gz +0 -0
  785. botocore/data/sms-voice/2018-09-05/service-2.json.gz +0 -0
  786. botocore/data/snow-device-management/2021-08-04/endpoint-rule-set-1.json.gz +0 -0
  787. botocore/data/snow-device-management/2021-08-04/service-2.json.gz +0 -0
  788. botocore/data/snowball/2016-06-30/endpoint-rule-set-1.json.gz +0 -0
  789. botocore/data/snowball/2016-06-30/service-2.json.gz +0 -0
  790. botocore/data/sns/2010-03-31/endpoint-rule-set-1.json.gz +0 -0
  791. botocore/data/sns/2010-03-31/service-2.json.gz +0 -0
  792. botocore/data/socialmessaging/2024-01-01/endpoint-rule-set-1.json.gz +0 -0
  793. botocore/data/socialmessaging/2024-01-01/service-2.json.gz +0 -0
  794. botocore/data/sqs/2012-11-05/endpoint-rule-set-1.json.gz +0 -0
  795. botocore/data/sqs/2012-11-05/service-2.json.gz +0 -0
  796. botocore/data/ssm/2014-11-06/endpoint-rule-set-1.json.gz +0 -0
  797. botocore/data/ssm/2014-11-06/service-2.json.gz +0 -0
  798. botocore/data/ssm-contacts/2021-05-03/endpoint-rule-set-1.json.gz +0 -0
  799. botocore/data/ssm-contacts/2021-05-03/service-2.json.gz +0 -0
  800. botocore/data/ssm-incidents/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  801. botocore/data/ssm-incidents/2018-05-10/service-2.json.gz +0 -0
  802. botocore/data/ssm-quicksetup/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  803. botocore/data/ssm-quicksetup/2018-05-10/service-2.json.gz +0 -0
  804. botocore/data/ssm-sap/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  805. botocore/data/ssm-sap/2018-05-10/service-2.json.gz +0 -0
  806. botocore/data/sso/2019-06-10/endpoint-rule-set-1.json.gz +0 -0
  807. botocore/data/sso/2019-06-10/service-2.json.gz +0 -0
  808. botocore/data/sso-admin/2020-07-20/endpoint-rule-set-1.json.gz +0 -0
  809. botocore/data/sso-admin/2020-07-20/service-2.json.gz +0 -0
  810. botocore/data/sso-oidc/2019-06-10/endpoint-rule-set-1.json.gz +0 -0
  811. botocore/data/sso-oidc/2019-06-10/service-2.json.gz +0 -0
  812. botocore/data/stepfunctions/2016-11-23/endpoint-rule-set-1.json.gz +0 -0
  813. botocore/data/stepfunctions/2016-11-23/service-2.json.gz +0 -0
  814. botocore/data/storagegateway/2013-06-30/endpoint-rule-set-1.json.gz +0 -0
  815. botocore/data/storagegateway/2013-06-30/service-2.json.gz +0 -0
  816. botocore/data/sts/2011-06-15/endpoint-rule-set-1.json.gz +0 -0
  817. botocore/data/sts/2011-06-15/service-2.json.gz +0 -0
  818. botocore/data/supplychain/2024-01-01/endpoint-rule-set-1.json.gz +0 -0
  819. botocore/data/supplychain/2024-01-01/service-2.json.gz +0 -0
  820. botocore/data/support/2013-04-15/endpoint-rule-set-1.json.gz +0 -0
  821. botocore/data/support/2013-04-15/service-2.json.gz +0 -0
  822. botocore/data/support-app/2021-08-20/endpoint-rule-set-1.json.gz +0 -0
  823. botocore/data/support-app/2021-08-20/service-2.json.gz +0 -0
  824. botocore/data/swf/2012-01-25/endpoint-rule-set-1.json.gz +0 -0
  825. botocore/data/swf/2012-01-25/service-2.json.gz +0 -0
  826. botocore/data/synthetics/2017-10-11/endpoint-rule-set-1.json.gz +0 -0
  827. botocore/data/synthetics/2017-10-11/service-2.json.gz +0 -0
  828. botocore/data/taxsettings/2018-05-10/endpoint-rule-set-1.json.gz +0 -0
  829. botocore/data/taxsettings/2018-05-10/service-2.json.gz +0 -0
  830. botocore/data/textract/2018-06-27/endpoint-rule-set-1.json.gz +0 -0
  831. botocore/data/textract/2018-06-27/service-2.json.gz +0 -0
  832. botocore/data/timestream-influxdb/2023-01-27/endpoint-rule-set-1.json.gz +0 -0
  833. botocore/data/timestream-influxdb/2023-01-27/service-2.json.gz +0 -0
  834. botocore/data/timestream-query/2018-11-01/endpoint-rule-set-1.json.gz +0 -0
  835. botocore/data/timestream-query/2018-11-01/service-2.json.gz +0 -0
  836. botocore/data/timestream-write/2018-11-01/endpoint-rule-set-1.json.gz +0 -0
  837. botocore/data/timestream-write/2018-11-01/service-2.json.gz +0 -0
  838. botocore/data/tnb/2008-10-21/endpoint-rule-set-1.json.gz +0 -0
  839. botocore/data/tnb/2008-10-21/service-2.json.gz +0 -0
  840. botocore/data/transcribe/2017-10-26/endpoint-rule-set-1.json.gz +0 -0
  841. botocore/data/transcribe/2017-10-26/service-2.json.gz +0 -0
  842. botocore/data/transfer/2018-11-05/endpoint-rule-set-1.json.gz +0 -0
  843. botocore/data/transfer/2018-11-05/service-2.json.gz +0 -0
  844. botocore/data/translate/2017-07-01/endpoint-rule-set-1.json.gz +0 -0
  845. botocore/data/translate/2017-07-01/service-2.json.gz +0 -0
  846. botocore/data/trustedadvisor/2022-09-15/endpoint-rule-set-1.json.gz +0 -0
  847. botocore/data/trustedadvisor/2022-09-15/service-2.json.gz +0 -0
  848. botocore/data/verifiedpermissions/2021-12-01/endpoint-rule-set-1.json.gz +0 -0
  849. botocore/data/verifiedpermissions/2021-12-01/service-2.json.gz +0 -0
  850. botocore/data/voice-id/2021-09-27/endpoint-rule-set-1.json.gz +0 -0
  851. botocore/data/voice-id/2021-09-27/service-2.json.gz +0 -0
  852. botocore/data/vpc-lattice/2022-11-30/endpoint-rule-set-1.json.gz +0 -0
  853. botocore/data/vpc-lattice/2022-11-30/service-2.json.gz +0 -0
  854. botocore/data/waf/2015-08-24/endpoint-rule-set-1.json.gz +0 -0
  855. botocore/data/waf/2015-08-24/service-2.json.gz +0 -0
  856. botocore/data/waf-regional/2016-11-28/endpoint-rule-set-1.json.gz +0 -0
  857. botocore/data/waf-regional/2016-11-28/service-2.json.gz +0 -0
  858. botocore/data/wafv2/2019-07-29/endpoint-rule-set-1.json.gz +0 -0
  859. botocore/data/wafv2/2019-07-29/service-2.json.gz +0 -0
  860. botocore/data/wellarchitected/2020-03-31/endpoint-rule-set-1.json.gz +0 -0
  861. botocore/data/wellarchitected/2020-03-31/service-2.json.gz +0 -0
  862. botocore/data/wisdom/2020-10-19/endpoint-rule-set-1.json.gz +0 -0
  863. botocore/data/wisdom/2020-10-19/service-2.json.gz +0 -0
  864. botocore/data/workdocs/2016-05-01/endpoint-rule-set-1.json.gz +0 -0
  865. botocore/data/workdocs/2016-05-01/service-2.json.gz +0 -0
  866. botocore/data/workmail/2017-10-01/endpoint-rule-set-1.json.gz +0 -0
  867. botocore/data/workmail/2017-10-01/service-2.json.gz +0 -0
  868. botocore/data/workmailmessageflow/2019-05-01/endpoint-rule-set-1.json.gz +0 -0
  869. botocore/data/workmailmessageflow/2019-05-01/service-2.json.gz +0 -0
  870. botocore/data/workspaces/2015-04-08/endpoint-rule-set-1.json.gz +0 -0
  871. botocore/data/workspaces/2015-04-08/service-2.json.gz +0 -0
  872. botocore/data/workspaces-thin-client/2023-08-22/endpoint-rule-set-1.json.gz +0 -0
  873. botocore/data/workspaces-thin-client/2023-08-22/service-2.json.gz +0 -0
  874. botocore/data/workspaces-web/2020-07-08/endpoint-rule-set-1.json.gz +0 -0
  875. botocore/data/workspaces-web/2020-07-08/service-2.json.gz +0 -0
  876. botocore/data/xray/2016-04-12/endpoint-rule-set-1.json.gz +0 -0
  877. botocore/data/xray/2016-04-12/service-2.json.gz +0 -0
  878. botocore/parsers.py +381 -44
  879. botocore/serialize.py +308 -0
  880. {botocore-1.37.1.dist-info → botocore-1.37.3.dist-info}/METADATA +1 -1
  881. {botocore-1.37.1.dist-info → botocore-1.37.3.dist-info}/RECORD +885 -885
  882. {botocore-1.37.1.dist-info → botocore-1.37.3.dist-info}/LICENSE.txt +0 -0
  883. {botocore-1.37.1.dist-info → botocore-1.37.3.dist-info}/NOTICE +0 -0
  884. {botocore-1.37.1.dist-info → botocore-1.37.3.dist-info}/WHEEL +0 -0
  885. {botocore-1.37.1.dist-info → botocore-1.37.3.dist-info}/top_level.txt +0 -0
botocore/parsers.py CHANGED
@@ -24,30 +24,34 @@ showing the inheritance hierarchy of the response classes.
24
24
  ::
25
25
 
26
26
 
27
-
28
- +--------------+
29
- |ResponseParser|
30
- +--------------+
31
- ^ ^ ^
32
- +--------------------+ | +-------------------+
33
- | | |
34
- +----------+----------+ +------+-------+ +-------+------+
35
- |BaseXMLResponseParser| |BaseRestParser| |BaseJSONParser|
36
- +---------------------+ +--------------+ +--------------+
37
- ^ ^ ^ ^ ^ ^
38
- | | | | | |
39
- | | | | | |
40
- | ++----------+-+ +-+-----------++ |
41
- | |RestXMLParser| |RestJSONParser| |
42
- +-----+-----+ +-------------+ +--------------+ +----+-----+
43
- |QueryParser| |JSONParser|
44
- +-----------+ +----------+
45
-
27
+ +-------------------+
28
+ | ResponseParser |
29
+ +-------------------+
30
+ ^ ^ ^ ^ ^
31
+ | | | | |
32
+ | | | | +--------------------------------------------+
33
+ | | | +-----------------------------+ |
34
+ | | | | |
35
+ +--------------------+ | +----------------+ | |
36
+ | | | | |
37
+ +----------+----------+ +------+-------+ +-------+------+ +------+-------+ +------+--------+
38
+ |BaseXMLResponseParser| |BaseRestParser| |BaseJSONParser| |BaseCBORParser| |BaseRpcV2Parser|
39
+ +---------------------+ +--------------+ +--------------+ +----------+---+ +-+-------------+
40
+ ^ ^ ^ ^ ^ ^ ^ ^
41
+ | | | | | | | |
42
+ | | | | | | | |
43
+ | ++----------+-+ +-+--------+---+ | +---+---------+-+
44
+ | |RestXMLParser| |RestJSONParser| | |RpcV2CBORParser|
45
+ +-----+-----+ +-------------+ +--------------+ | +---+---------+-+
46
+ |QueryParser| |
47
+ +-----------+ +----+-----+
48
+ |JSONParser|
49
+ +----------+
46
50
 
47
51
  The diagram above shows that there is a base class, ``ResponseParser`` that
48
52
  contains logic that is similar amongst all the different protocols (``query``,
49
- ``json``, ``rest-json``, ``rest-xml``). Amongst the various services there
50
- is shared logic that can be grouped several ways:
53
+ ``json``, ``rest-json``, ``rest-xml``, ``smithy-rpc-v2-cbor``). Amongst the various services
54
+ there is shared logic that can be grouped several ways:
51
55
 
52
56
  * The ``query`` and ``rest-xml`` both have XML bodies that are parsed in the
53
57
  same way.
@@ -117,13 +121,17 @@ Each call to ``parse()`` returns a dict has this form::
117
121
 
118
122
  import base64
119
123
  import http.client
124
+ import io
120
125
  import json
121
126
  import logging
127
+ import os
122
128
  import re
129
+ import struct
123
130
 
124
131
  from botocore.compat import ETree, XMLParseError
125
132
  from botocore.eventstream import EventStream, NoInitialResponseError
126
133
  from botocore.utils import (
134
+ CachedProperty,
127
135
  ensure_boolean,
128
136
  is_json_value_header,
129
137
  lowercase_dict,
@@ -384,6 +392,21 @@ class ResponseParser:
384
392
  def _handle_unknown_tagged_union_member(self, tag):
385
393
  return {'SDK_UNKNOWN_MEMBER': {'name': tag}}
386
394
 
395
+ def _do_query_compatible_error_parse(self, code, headers, error):
396
+ """
397
+ Error response may contain an x-amzn-query-error header to translate
398
+ errors codes from former `query` services into other protocols. We use this
399
+ to do our lookup in the errorfactory for modeled errors.
400
+ """
401
+ query_error = headers['x-amzn-query-error']
402
+ query_error_components = query_error.split(';')
403
+
404
+ if len(query_error_components) == 2 and query_error_components[0]:
405
+ error['Error']['QueryErrorCode'] = code
406
+ error['Error']['Type'] = query_error_components[1]
407
+ return query_error_components[0]
408
+ return code
409
+
387
410
 
388
411
  class BaseXMLResponseParser(ResponseParser):
389
412
  def __init__(self, timestamp_parser=None, blob_parser=None):
@@ -727,21 +750,6 @@ class BaseJSONParser(ResponseParser):
727
750
  self._inject_response_metadata(error, response['headers'])
728
751
  return error
729
752
 
730
- def _do_query_compatible_error_parse(self, code, headers, error):
731
- """
732
- Error response may contain an x-amzn-query-error header to translate
733
- errors codes from former `query` services into `json`. We use this to
734
- do our lookup in the errorfactory for modeled errors.
735
- """
736
- query_error = headers['x-amzn-query-error']
737
- query_error_components = query_error.split(';')
738
-
739
- if len(query_error_components) == 2 and query_error_components[0]:
740
- error['Error']['QueryErrorCode'] = code
741
- error['Error']['Type'] = query_error_components[1]
742
- return query_error_components[0]
743
- return code
744
-
745
753
  def _inject_response_metadata(self, parsed, headers):
746
754
  if 'x-amzn-requestid' in headers:
747
755
  parsed.setdefault('ResponseMetadata', {})['RequestId'] = headers[
@@ -761,6 +769,199 @@ class BaseJSONParser(ResponseParser):
761
769
  return {'message': body}
762
770
 
763
771
 
772
+ class BaseCBORParser(ResponseParser):
773
+ INDEFINITE_ITEM_ADDITIONAL_INFO = 31
774
+ BREAK_CODE = 0xFF
775
+
776
+ @CachedProperty
777
+ def major_type_to_parsing_method_map(self):
778
+ return {
779
+ 0: self._parse_unsigned_integer,
780
+ 1: self._parse_negative_integer,
781
+ 2: self._parse_byte_string,
782
+ 3: self._parse_text_string,
783
+ 4: self._parse_array,
784
+ 5: self._parse_map,
785
+ 6: self._parse_tag,
786
+ 7: self._parse_simple_and_float,
787
+ }
788
+
789
+ def get_peekable_stream_from_bytes(self, bytes):
790
+ return io.BufferedReader(io.BytesIO(bytes))
791
+
792
+ def parse_data_item(self, stream):
793
+ # CBOR data is divided into "data items", and each data item starts
794
+ # with an initial byte that describes how the following bytes should be parsed
795
+ initial_byte = self._read_bytes_as_int(stream, 1)
796
+ # The highest order three bits of the initial byte describe the CBOR major type
797
+ major_type = initial_byte >> 5
798
+ # The lowest order 5 bits of the initial byte tells us more information about
799
+ # how the bytes should be parsed that will be used
800
+ additional_info = initial_byte & 0b00011111
801
+
802
+ if major_type in self.major_type_to_parsing_method_map:
803
+ method = self.major_type_to_parsing_method_map[major_type]
804
+ return method(stream, additional_info)
805
+ else:
806
+ raise ResponseParserError(
807
+ f"Unsupported inital byte found for data item- "
808
+ f"Major type:{major_type}, Additional info: "
809
+ f"{additional_info}"
810
+ )
811
+
812
+ # Major type 0 - unsigned integers
813
+ def _parse_unsigned_integer(self, stream, additional_info):
814
+ additional_info_to_num_bytes = {
815
+ 24: 1,
816
+ 25: 2,
817
+ 26: 4,
818
+ 27: 8,
819
+ }
820
+ # Values under 24 don't need a full byte to be stored; their values are
821
+ # instead stored as the "additional info" in the initial byte
822
+ if additional_info < 24:
823
+ return additional_info
824
+ elif additional_info in additional_info_to_num_bytes:
825
+ num_bytes = additional_info_to_num_bytes[additional_info]
826
+ return self._read_bytes_as_int(stream, num_bytes)
827
+ else:
828
+ raise ResponseParserError(
829
+ "Invalid CBOR integer returned from the service; unparsable "
830
+ f"additional info found for major type 0 or 1: {additional_info}"
831
+ )
832
+
833
+ # Major type 1 - negative integers
834
+ def _parse_negative_integer(self, stream, additional_info):
835
+ return -1 - self._parse_unsigned_integer(stream, additional_info)
836
+
837
+ # Major type 2 - byte string
838
+ def _parse_byte_string(self, stream, additional_info):
839
+ if additional_info != self.INDEFINITE_ITEM_ADDITIONAL_INFO:
840
+ length = self._parse_unsigned_integer(stream, additional_info)
841
+ return self._read_from_stream(stream, length)
842
+ else:
843
+ chunks = []
844
+ while True:
845
+ if self._handle_break_code(stream):
846
+ break
847
+ initial_byte = self._read_bytes_as_int(stream, 1)
848
+ additional_info = initial_byte & 0b00011111
849
+ length = self._parse_unsigned_integer(stream, additional_info)
850
+ chunks.append(self._read_from_stream(stream, length))
851
+ return b''.join(chunks)
852
+
853
+ # Major type 3 - text string
854
+ def _parse_text_string(self, stream, additional_info):
855
+ return self._parse_byte_string(stream, additional_info).decode('utf-8')
856
+
857
+ # Major type 4 - lists
858
+ def _parse_array(self, stream, additional_info):
859
+ if additional_info != self.INDEFINITE_ITEM_ADDITIONAL_INFO:
860
+ length = self._parse_unsigned_integer(stream, additional_info)
861
+ return [self.parse_data_item(stream) for _ in range(length)]
862
+ else:
863
+ items = []
864
+ while not self._handle_break_code(stream):
865
+ items.append(self.parse_data_item(stream))
866
+ return items
867
+
868
+ # Major type 5 - maps
869
+ def _parse_map(self, stream, additional_info):
870
+ items = {}
871
+ if additional_info != self.INDEFINITE_ITEM_ADDITIONAL_INFO:
872
+ length = self._parse_unsigned_integer(stream, additional_info)
873
+ for _ in range(length):
874
+ self._parse_key_value_pair(stream, items)
875
+ return items
876
+
877
+ else:
878
+ while not self._handle_break_code(stream):
879
+ self._parse_key_value_pair(stream, items)
880
+ return items
881
+
882
+ def _parse_key_value_pair(self, stream, items):
883
+ key = self.parse_data_item(stream)
884
+ value = self.parse_data_item(stream)
885
+ if value is not None:
886
+ items[key] = value
887
+
888
+ # Major type 6 is tags. The only tag we currently support is tag 1 for unix
889
+ # timestamps
890
+ def _parse_tag(self, stream, additional_info):
891
+ tag = self._parse_unsigned_integer(stream, additional_info)
892
+ value = self.parse_data_item(stream)
893
+ if tag == 1: # Epoch-based date/time in milliseconds
894
+ return self._parse_datetime(value)
895
+ else:
896
+ raise ResponseParserError(
897
+ f"Found CBOR tag not supported by botocore: {tag}"
898
+ )
899
+
900
+ def _parse_datetime(self, value):
901
+ if isinstance(value, (int, float)):
902
+ return self._timestamp_parser(value)
903
+ else:
904
+ raise ResponseParserError(
905
+ f"Unable to parse datetime value: {value}"
906
+ )
907
+
908
+ # Major type 7 includes floats and "simple" types. Supported simple types are
909
+ # currently boolean values, CBOR's null, and CBOR's undefined type. All other
910
+ # values are either floats or invalid.
911
+ def _parse_simple_and_float(self, stream, additional_info):
912
+ # For major type 7, values 20-23 correspond to CBOR "simple" values
913
+ additional_info_simple_values = {
914
+ 20: False, # CBOR false
915
+ 21: True, # CBOR true
916
+ 22: None, # CBOR null
917
+ 23: None, # CBOR undefined
918
+ }
919
+ # First we check if the additional info corresponds to a supported simple value
920
+ if additional_info in additional_info_simple_values:
921
+ return additional_info_simple_values[additional_info]
922
+
923
+ # If it's not a simple value, we need to parse it into the correct format and
924
+ # number fo bytes
925
+ float_formats = {
926
+ 25: ('>e', 2),
927
+ 26: ('>f', 4),
928
+ 27: ('>d', 8),
929
+ }
930
+
931
+ if additional_info in float_formats:
932
+ float_format, num_bytes = float_formats[additional_info]
933
+ return struct.unpack(
934
+ float_format, self._read_from_stream(stream, num_bytes)
935
+ )[0]
936
+ raise ResponseParserError(
937
+ f"Invalid additional info found for major type 7: {additional_info}. "
938
+ f"This indicates an unsupported simple type or an indefinite float value"
939
+ )
940
+
941
+ # This helper method is intended for use when parsing indefinite length items.
942
+ # It does nothing if the next byte is not the break code. If the next byte is
943
+ # the break code, it advances past that byte and returns True so the calling
944
+ # method knows to stop parsing that data item.
945
+ def _handle_break_code(self, stream):
946
+ if int.from_bytes(stream.peek(1)[:1], 'big') == self.BREAK_CODE:
947
+ stream.seek(1, os.SEEK_CUR)
948
+ return True
949
+
950
+ def _read_bytes_as_int(self, stream, num_bytes):
951
+ byte = self._read_from_stream(stream, num_bytes)
952
+ return int.from_bytes(byte, 'big')
953
+
954
+ def _read_from_stream(self, stream, num_bytes):
955
+ value = stream.read(num_bytes)
956
+ if len(value) != num_bytes:
957
+ raise ResponseParserError(
958
+ "End of stream reached; this indicates a "
959
+ "malformed CBOR response from the server or an "
960
+ "issue in botocore"
961
+ )
962
+ return value
963
+
964
+
764
965
  class BaseEventStreamParser(ResponseParser):
765
966
  def _do_parse(self, response, shape):
766
967
  final_parsed = {}
@@ -838,7 +1039,7 @@ class BaseEventStreamParser(ResponseParser):
838
1039
 
839
1040
  def _initial_body_parse(self, body_contents):
840
1041
  # This method should do the initial xml/json parsing of the
841
- # body. We we still need to walk the parsed body in order
1042
+ # body. We still need to walk the parsed body in order
842
1043
  # to convert types, but this method will do the first round
843
1044
  # of parsing.
844
1045
  raise NotImplementedError("_initial_body_parse")
@@ -856,6 +1057,15 @@ class EventStreamXMLParser(BaseEventStreamParser, BaseXMLResponseParser):
856
1057
  return self._parse_xml_string_to_dom(xml_string)
857
1058
 
858
1059
 
1060
+ class EventStreamCBORParser(BaseEventStreamParser, BaseCBORParser):
1061
+ def _initial_body_parse(self, body_contents):
1062
+ if body_contents == b'':
1063
+ return {}
1064
+ return self.parse_data_item(
1065
+ self.get_peekable_stream_from_bytes(body_contents)
1066
+ )
1067
+
1068
+
859
1069
  class JSONParser(BaseJSONParser):
860
1070
  EVENT_STREAM_PARSER_CLS = EventStreamJSONParser
861
1071
 
@@ -995,7 +1205,7 @@ class BaseRestParser(ResponseParser):
995
1205
 
996
1206
  def _initial_body_parse(self, body_contents):
997
1207
  # This method should do the initial xml/json parsing of the
998
- # body. We we still need to walk the parsed body in order
1208
+ # body. We still need to walk the parsed body in order
999
1209
  # to convert types, but this method will do the first round
1000
1210
  # of parsing.
1001
1211
  raise NotImplementedError("_initial_body_parse")
@@ -1015,6 +1225,77 @@ class BaseRestParser(ResponseParser):
1015
1225
  return super()._handle_list(shape, node)
1016
1226
 
1017
1227
 
1228
+ class BaseRpcV2Parser(ResponseParser):
1229
+ def _do_parse(self, response, shape):
1230
+ parsed = {}
1231
+ if shape is not None:
1232
+ event_stream_name = shape.event_stream_name
1233
+ if event_stream_name:
1234
+ parsed = self._handle_event_stream(
1235
+ response, shape, event_stream_name
1236
+ )
1237
+ else:
1238
+ parsed = {}
1239
+ self._parse_payload(response, shape, parsed)
1240
+ parsed['ResponseMetadata'] = self._populate_response_metadata(
1241
+ response
1242
+ )
1243
+ return parsed
1244
+
1245
+ def _add_modeled_parse(self, response, shape, final_parsed):
1246
+ if shape is None:
1247
+ return final_parsed
1248
+ self._parse_payload(response, shape, final_parsed)
1249
+
1250
+ def _do_modeled_error_parse(self, response, shape):
1251
+ final_parsed = {}
1252
+ self._add_modeled_parse(response, shape, final_parsed)
1253
+ return final_parsed
1254
+
1255
+ def _populate_response_metadata(self, response):
1256
+ metadata = {}
1257
+ headers = response['headers']
1258
+ if 'x-amzn-requestid' in headers:
1259
+ metadata['RequestId'] = headers['x-amzn-requestid']
1260
+ return metadata
1261
+
1262
+ def _handle_structure(self, shape, node):
1263
+ parsed = {}
1264
+ members = shape.members
1265
+ if shape.is_tagged_union:
1266
+ cleaned_value = node.copy()
1267
+ cleaned_value.pop("__type", None)
1268
+ cleaned_value = {
1269
+ k: v for k, v in cleaned_value.items() if v is not None
1270
+ }
1271
+ if len(cleaned_value) != 1:
1272
+ error_msg = (
1273
+ "Invalid service response: %s must have one and only "
1274
+ "one member set."
1275
+ )
1276
+ raise ResponseParserError(error_msg % shape.name)
1277
+ for member_name in members:
1278
+ member_shape = members[member_name]
1279
+ member_node = node.get(member_name)
1280
+ if member_node is not None:
1281
+ parsed[member_name] = self._parse_shape(
1282
+ member_shape, member_node
1283
+ )
1284
+ return parsed
1285
+
1286
+ def _parse_payload(self, response, shape, final_parsed):
1287
+ original_parsed = self._initial_body_parse(response['body'])
1288
+ body_parsed = self._parse_shape(shape, original_parsed)
1289
+ final_parsed.update(body_parsed)
1290
+
1291
+ def _initial_body_parse(self, body_contents):
1292
+ # This method should do the initial parsing of the
1293
+ # body. We still need to walk the parsed body in order
1294
+ # to convert types, but this method will do the first round
1295
+ # of parsing.
1296
+ raise NotImplementedError("_initial_body_parse")
1297
+
1298
+
1018
1299
  class RestJSONParser(BaseRestParser, BaseJSONParser):
1019
1300
  EVENT_STREAM_PARSER_CLS = EventStreamJSONParser
1020
1301
 
@@ -1035,12 +1316,11 @@ class RestJSONParser(BaseRestParser, BaseJSONParser):
1035
1316
  code = response['headers']['x-amzn-errortype']
1036
1317
  elif 'code' in body or 'Code' in body:
1037
1318
  code = body.get('code', body.get('Code', ''))
1038
- if code is not None:
1039
- if ':' in code:
1040
- code = code.split(':', 1)[0]
1041
- if '#' in code:
1042
- code = code.rsplit('#', 1)[1]
1043
- error['Error']['Code'] = code
1319
+ if code is None:
1320
+ return
1321
+ if isinstance(code, str):
1322
+ code = code.split(':', 1)[0].rsplit('#', 1)[-1]
1323
+ error['Error']['Code'] = code
1044
1324
 
1045
1325
  def _handle_boolean(self, shape, value):
1046
1326
  return ensure_boolean(value)
@@ -1055,6 +1335,62 @@ class RestJSONParser(BaseRestParser, BaseJSONParser):
1055
1335
  _handle_double = _handle_float
1056
1336
 
1057
1337
 
1338
+ class RpcV2CBORParser(BaseRpcV2Parser, BaseCBORParser):
1339
+ EVENT_STREAM_PARSER_CLS = EventStreamCBORParser
1340
+
1341
+ def _initial_body_parse(self, body_contents):
1342
+ if body_contents == b'':
1343
+ return body_contents
1344
+ body_contents_stream = self.get_peekable_stream_from_bytes(
1345
+ body_contents
1346
+ )
1347
+ return self.parse_data_item(body_contents_stream)
1348
+
1349
+ def _do_error_parse(self, response, shape):
1350
+ body = self._initial_body_parse(response['body'])
1351
+ error = {
1352
+ "Error": {
1353
+ "Message": body.get('message', body.get('Message', '')),
1354
+ "Code": '',
1355
+ },
1356
+ "ResponseMetadata": {},
1357
+ }
1358
+ headers = response['headers']
1359
+
1360
+ code = body.get('__type')
1361
+ if code is None:
1362
+ response_code = response.get('status_code')
1363
+ if response_code is not None:
1364
+ code = str(response_code)
1365
+ if code is not None:
1366
+ if ':' in code:
1367
+ code = code.split(':', 1)[0]
1368
+ if '#' in code:
1369
+ code = code.rsplit('#', 1)[1]
1370
+ if 'x-amzn-query-error' in headers:
1371
+ code = self._do_query_compatible_error_parse(
1372
+ code, headers, error
1373
+ )
1374
+ error['Error']['Code'] = code
1375
+ if 'x-amzn-requestid' in headers:
1376
+ error.setdefault('ResponseMetadata', {})['RequestId'] = headers[
1377
+ 'x-amzn-requestid'
1378
+ ]
1379
+ return error
1380
+
1381
+ def _handle_event_stream(self, response, shape, event_name):
1382
+ event_stream_shape = shape.members[event_name]
1383
+ event_stream = self._create_event_stream(response, event_stream_shape)
1384
+ try:
1385
+ event = event_stream.get_initial_response()
1386
+ except NoInitialResponseError:
1387
+ error_msg = 'First event was not of type initial-response'
1388
+ raise ResponseParserError(error_msg)
1389
+ parsed = self._initial_body_parse(event.payload)
1390
+ parsed[event_name] = event_stream
1391
+ return parsed
1392
+
1393
+
1058
1394
  class RestXMLParser(BaseRestParser, BaseXMLResponseParser):
1059
1395
  EVENT_STREAM_PARSER_CLS = EventStreamXMLParser
1060
1396
 
@@ -1139,4 +1475,5 @@ PROTOCOL_PARSERS = {
1139
1475
  'json': JSONParser,
1140
1476
  'rest-json': RestJSONParser,
1141
1477
  'rest-xml': RestXMLParser,
1478
+ 'smithy-rpc-v2-cbor': RpcV2CBORParser,
1142
1479
  }