aws-cdk-lib 2.195.0__py3-none-any.whl → 2.224.0__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 aws-cdk-lib might be problematic. Click here for more details.

Files changed (572) hide show
  1. aws_cdk/__init__.py +1806 -417
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.195.0.jsii.tgz → aws-cdk-lib@2.224.0.jsii.tgz} +0 -0
  4. aws_cdk/alexa_ask/__init__.py +12 -2
  5. aws_cdk/aws_accessanalyzer/__init__.py +323 -6
  6. aws_cdk/aws_acmpca/__init__.py +53 -10
  7. aws_cdk/aws_aiops/__init__.py +1019 -0
  8. aws_cdk/aws_amazonmq/__init__.py +357 -313
  9. aws_cdk/aws_amplify/__init__.py +173 -17
  10. aws_cdk/aws_amplifyuibuilder/__init__.py +35 -6
  11. aws_cdk/aws_apigateway/__init__.py +1245 -215
  12. aws_cdk/aws_apigatewayv2/__init__.py +3890 -476
  13. aws_cdk/aws_apigatewayv2_integrations/__init__.py +94 -16
  14. aws_cdk/aws_appconfig/__init__.py +618 -91
  15. aws_cdk/aws_appflow/__init__.py +151 -6
  16. aws_cdk/aws_appintegrations/__init__.py +546 -6
  17. aws_cdk/aws_applicationautoscaling/__init__.py +75 -10
  18. aws_cdk/aws_applicationinsights/__init__.py +13 -2
  19. aws_cdk/aws_applicationsignals/__init__.py +374 -6
  20. aws_cdk/aws_appmesh/__init__.py +136 -26
  21. aws_cdk/aws_apprunner/__init__.py +66 -18
  22. aws_cdk/aws_appstream/__init__.py +309 -55
  23. aws_cdk/aws_appsync/__init__.py +350 -94
  24. aws_cdk/aws_apptest/__init__.py +71 -2
  25. aws_cdk/aws_aps/__init__.py +2188 -94
  26. aws_cdk/aws_arcregionswitch/__init__.py +5095 -0
  27. aws_cdk/aws_arczonalshift/__init__.py +39 -12
  28. aws_cdk/aws_athena/__init__.py +365 -29
  29. aws_cdk/aws_auditmanager/__init__.py +71 -2
  30. aws_cdk/aws_autoscaling/__init__.py +165 -60
  31. aws_cdk/aws_autoscaling_common/__init__.py +3 -0
  32. aws_cdk/aws_autoscalingplans/__init__.py +13 -2
  33. aws_cdk/aws_b2bi/__init__.py +1819 -99
  34. aws_cdk/aws_backup/__init__.py +370 -42
  35. aws_cdk/aws_backupgateway/__init__.py +13 -2
  36. aws_cdk/aws_batch/__init__.py +1462 -163
  37. aws_cdk/aws_bcmdataexports/__init__.py +21 -2
  38. aws_cdk/aws_bedrock/__init__.py +7867 -727
  39. aws_cdk/aws_bedrockagentcore/__init__.py +10425 -0
  40. aws_cdk/aws_billingconductor/__init__.py +197 -11
  41. aws_cdk/aws_budgets/__init__.py +611 -4
  42. aws_cdk/aws_cassandra/__init__.py +247 -6
  43. aws_cdk/aws_ce/__init__.py +35 -6
  44. aws_cdk/aws_certificatemanager/__init__.py +258 -32
  45. aws_cdk/aws_chatbot/__init__.py +76 -6
  46. aws_cdk/aws_cleanrooms/__init__.py +709 -206
  47. aws_cdk/aws_cleanroomsml/__init__.py +13 -2
  48. aws_cdk/aws_cloud9/__init__.py +13 -2
  49. aws_cdk/aws_cloudformation/__init__.py +362 -189
  50. aws_cdk/aws_cloudfront/__init__.py +2188 -674
  51. aws_cdk/aws_cloudfront/experimental/__init__.py +114 -16
  52. aws_cdk/aws_cloudfront_origins/__init__.py +615 -74
  53. aws_cdk/aws_cloudtrail/__init__.py +311 -21
  54. aws_cdk/aws_cloudwatch/__init__.py +3093 -1038
  55. aws_cdk/aws_cloudwatch_actions/__init__.py +75 -1
  56. aws_cdk/aws_codeartifact/__init__.py +35 -6
  57. aws_cdk/aws_codebuild/__init__.py +1303 -135
  58. aws_cdk/aws_codecommit/__init__.py +29 -9
  59. aws_cdk/aws_codeconnections/__init__.py +13 -2
  60. aws_cdk/aws_codedeploy/__init__.py +130 -6
  61. aws_cdk/aws_codeguruprofiler/__init__.py +80 -2
  62. aws_cdk/aws_codegurureviewer/__init__.py +13 -2
  63. aws_cdk/aws_codepipeline/__init__.py +177 -71
  64. aws_cdk/aws_codepipeline_actions/__init__.py +753 -4
  65. aws_cdk/aws_codestar/__init__.py +13 -2
  66. aws_cdk/aws_codestarconnections/__init__.py +35 -6
  67. aws_cdk/aws_codestarnotifications/__init__.py +22 -2
  68. aws_cdk/aws_cognito/__init__.py +905 -92
  69. aws_cdk/aws_cognito_identitypool/__init__.py +23 -12
  70. aws_cdk/aws_comprehend/__init__.py +24 -4
  71. aws_cdk/aws_config/__init__.py +227 -30
  72. aws_cdk/aws_connect/__init__.py +2736 -191
  73. aws_cdk/aws_connectcampaigns/__init__.py +13 -2
  74. aws_cdk/aws_connectcampaignsv2/__init__.py +268 -6
  75. aws_cdk/aws_controltower/__init__.py +35 -6
  76. aws_cdk/aws_cur/__init__.py +100 -4
  77. aws_cdk/aws_customerprofiles/__init__.py +617 -27
  78. aws_cdk/aws_databrew/__init__.py +68 -12
  79. aws_cdk/aws_datapipeline/__init__.py +42 -2
  80. aws_cdk/aws_datasync/__init__.py +1514 -977
  81. aws_cdk/aws_datazone/__init__.py +7426 -1763
  82. aws_cdk/aws_dax/__init__.py +83 -6
  83. aws_cdk/aws_deadline/__init__.py +511 -36
  84. aws_cdk/aws_detective/__init__.py +35 -6
  85. aws_cdk/aws_devicefarm/__init__.py +68 -12
  86. aws_cdk/aws_devopsguru/__init__.py +37 -6
  87. aws_cdk/aws_directoryservice/__init__.py +53 -4
  88. aws_cdk/aws_dlm/__init__.py +13 -2
  89. aws_cdk/aws_dms/__init__.py +184 -27
  90. aws_cdk/aws_docdb/__init__.py +350 -49
  91. aws_cdk/aws_docdbelastic/__init__.py +13 -2
  92. aws_cdk/aws_dsql/__init__.py +386 -16
  93. aws_cdk/aws_dynamodb/__init__.py +1479 -170
  94. aws_cdk/aws_ec2/__init__.py +10465 -1335
  95. aws_cdk/aws_ecr/__init__.py +637 -43
  96. aws_cdk/aws_ecr_assets/__init__.py +10 -0
  97. aws_cdk/aws_ecs/__init__.py +6629 -490
  98. aws_cdk/aws_ecs_patterns/__init__.py +124 -12
  99. aws_cdk/aws_efs/__init__.py +276 -24
  100. aws_cdk/aws_eks/__init__.py +1132 -227
  101. aws_cdk/aws_elasticache/__init__.py +378 -25
  102. aws_cdk/aws_elasticbeanstalk/__init__.py +75 -8
  103. aws_cdk/aws_elasticloadbalancing/__init__.py +22 -2
  104. aws_cdk/aws_elasticloadbalancingv2/__init__.py +1796 -123
  105. aws_cdk/aws_elasticsearch/__init__.py +291 -9
  106. aws_cdk/aws_emr/__init__.py +219 -18
  107. aws_cdk/aws_emrcontainers/__init__.py +71 -2
  108. aws_cdk/aws_emrserverless/__init__.py +188 -3
  109. aws_cdk/aws_entityresolution/__init__.py +585 -58
  110. aws_cdk/aws_events/__init__.py +1007 -126
  111. aws_cdk/aws_events_targets/__init__.py +398 -65
  112. aws_cdk/aws_eventschemas/__init__.py +46 -8
  113. aws_cdk/aws_evidently/__init__.py +57 -10
  114. aws_cdk/aws_evs/__init__.py +2244 -0
  115. aws_cdk/aws_finspace/__init__.py +71 -2
  116. aws_cdk/aws_fis/__init__.py +26 -4
  117. aws_cdk/aws_fms/__init__.py +35 -6
  118. aws_cdk/aws_forecast/__init__.py +24 -4
  119. aws_cdk/aws_frauddetector/__init__.py +79 -14
  120. aws_cdk/aws_fsx/__init__.py +1349 -127
  121. aws_cdk/aws_gamelift/__init__.py +755 -94
  122. aws_cdk/aws_gameliftstreams/__init__.py +44 -22
  123. aws_cdk/aws_globalaccelerator/__init__.py +73 -14
  124. aws_cdk/aws_glue/__init__.py +1455 -378
  125. aws_cdk/aws_grafana/__init__.py +13 -2
  126. aws_cdk/aws_greengrass/__init__.py +654 -32
  127. aws_cdk/aws_greengrassv2/__init__.py +53 -4
  128. aws_cdk/aws_groundstation/__init__.py +122 -6
  129. aws_cdk/aws_guardduty/__init__.py +1613 -123
  130. aws_cdk/aws_healthimaging/__init__.py +71 -2
  131. aws_cdk/aws_healthlake/__init__.py +42 -2
  132. aws_cdk/aws_iam/__init__.py +921 -141
  133. aws_cdk/aws_identitystore/__init__.py +24 -4
  134. aws_cdk/aws_imagebuilder/__init__.py +1454 -199
  135. aws_cdk/aws_inspector/__init__.py +44 -6
  136. aws_cdk/aws_inspectorv2/__init__.py +2285 -243
  137. aws_cdk/aws_internetmonitor/__init__.py +71 -2
  138. aws_cdk/aws_invoicing/__init__.py +13 -2
  139. aws_cdk/aws_iot/__init__.py +1760 -64
  140. aws_cdk/aws_iotanalytics/__init__.py +162 -8
  141. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +106 -40
  142. aws_cdk/aws_iotevents/__init__.py +122 -6
  143. aws_cdk/aws_iotfleethub/__init__.py +71 -2
  144. aws_cdk/aws_iotfleetwise/__init__.py +195 -14
  145. aws_cdk/aws_iotsitewise/__init__.py +1837 -89
  146. aws_cdk/aws_iotthingsgraph/__init__.py +13 -2
  147. aws_cdk/aws_iottwinmaker/__init__.py +115 -10
  148. aws_cdk/aws_iotwireless/__init__.py +649 -22
  149. aws_cdk/aws_ivs/__init__.py +561 -57
  150. aws_cdk/aws_ivschat/__init__.py +24 -4
  151. aws_cdk/aws_kafkaconnect/__init__.py +35 -6
  152. aws_cdk/aws_kendra/__init__.py +120 -28
  153. aws_cdk/aws_kendraranking/__init__.py +13 -2
  154. aws_cdk/aws_kinesis/__init__.py +641 -23
  155. aws_cdk/aws_kinesisanalytics/__init__.py +467 -96
  156. aws_cdk/aws_kinesisanalyticsv2/__init__.py +207 -19
  157. aws_cdk/aws_kinesisfirehose/__init__.py +3087 -295
  158. aws_cdk/aws_kinesisvideo/__init__.py +24 -4
  159. aws_cdk/aws_kms/__init__.py +204 -45
  160. aws_cdk/aws_lakeformation/__init__.py +80 -15
  161. aws_cdk/aws_lambda/__init__.py +2236 -297
  162. aws_cdk/aws_lambda_event_sources/__init__.py +638 -1
  163. aws_cdk/aws_lambda_nodejs/__init__.py +63 -24
  164. aws_cdk/aws_launchwizard/__init__.py +13 -2
  165. aws_cdk/aws_lex/__init__.py +2162 -212
  166. aws_cdk/aws_licensemanager/__init__.py +24 -4
  167. aws_cdk/aws_lightsail/__init__.py +2958 -1322
  168. aws_cdk/aws_location/__init__.py +618 -14
  169. aws_cdk/aws_logs/__init__.py +6014 -923
  170. aws_cdk/aws_lookoutequipment/__init__.py +13 -2
  171. aws_cdk/aws_lookoutmetrics/__init__.py +38 -6
  172. aws_cdk/aws_lookoutvision/__init__.py +71 -2
  173. aws_cdk/aws_m2/__init__.py +94 -19
  174. aws_cdk/aws_macie/__init__.py +49 -11
  175. aws_cdk/aws_managedblockchain/__init__.py +180 -6
  176. aws_cdk/aws_mediaconnect/__init__.py +101 -18
  177. aws_cdk/aws_mediaconvert/__init__.py +35 -6
  178. aws_cdk/aws_medialive/__init__.py +1938 -532
  179. aws_cdk/aws_mediapackage/__init__.py +59 -12
  180. aws_cdk/aws_mediapackagev2/__init__.py +1616 -233
  181. aws_cdk/aws_mediastore/__init__.py +13 -2
  182. aws_cdk/aws_mediatailor/__init__.py +583 -12
  183. aws_cdk/aws_memorydb/__init__.py +271 -12
  184. aws_cdk/aws_mpa/__init__.py +1495 -0
  185. aws_cdk/aws_msk/__init__.py +108 -22
  186. aws_cdk/aws_mwaa/__init__.py +121 -9
  187. aws_cdk/aws_neptune/__init__.py +290 -78
  188. aws_cdk/aws_neptunegraph/__init__.py +24 -4
  189. aws_cdk/aws_networkfirewall/__init__.py +1184 -164
  190. aws_cdk/aws_networkmanager/__init__.py +349 -33
  191. aws_cdk/aws_nimblestudio/__init__.py +283 -408
  192. aws_cdk/aws_notifications/__init__.py +317 -12
  193. aws_cdk/aws_notificationscontacts/__init__.py +13 -2
  194. aws_cdk/aws_oam/__init__.py +24 -4
  195. aws_cdk/aws_observabilityadmin/__init__.py +2561 -0
  196. aws_cdk/aws_odb/__init__.py +5872 -0
  197. aws_cdk/aws_omics/__init__.py +2967 -162
  198. aws_cdk/aws_opensearchserverless/__init__.py +312 -37
  199. aws_cdk/aws_opensearchservice/__init__.py +501 -19
  200. aws_cdk/aws_opsworks/__init__.py +235 -139
  201. aws_cdk/aws_opsworkscm/__init__.py +16 -52
  202. aws_cdk/aws_organizations/__init__.py +70 -10
  203. aws_cdk/aws_osis/__init__.py +167 -2
  204. aws_cdk/aws_panorama/__init__.py +181 -9
  205. aws_cdk/aws_paymentcryptography/__init__.py +24 -4
  206. aws_cdk/aws_pcaconnectorad/__init__.py +59 -10
  207. aws_cdk/aws_pcaconnectorscep/__init__.py +24 -4
  208. aws_cdk/aws_pcs/__init__.py +516 -64
  209. aws_cdk/aws_personalize/__init__.py +46 -8
  210. aws_cdk/aws_pinpoint/__init__.py +329 -38
  211. aws_cdk/aws_pinpointemail/__init__.py +48 -8
  212. aws_cdk/aws_pipes/__init__.py +12 -2
  213. aws_cdk/aws_proton/__init__.py +37 -6
  214. aws_cdk/aws_qbusiness/__init__.py +635 -34
  215. aws_cdk/aws_qldb/__init__.py +24 -4
  216. aws_cdk/aws_quicksight/__init__.py +7900 -1160
  217. aws_cdk/aws_ram/__init__.py +24 -4
  218. aws_cdk/aws_rbin/__init__.py +12 -2
  219. aws_cdk/aws_rds/__init__.py +3721 -573
  220. aws_cdk/aws_redshift/__init__.py +143 -20
  221. aws_cdk/aws_redshiftserverless/__init__.py +699 -11
  222. aws_cdk/aws_refactorspaces/__init__.py +64 -14
  223. aws_cdk/aws_rekognition/__init__.py +93 -6
  224. aws_cdk/aws_resiliencehub/__init__.py +24 -4
  225. aws_cdk/aws_resourceexplorer2/__init__.py +35 -6
  226. aws_cdk/aws_resourcegroups/__init__.py +82 -4
  227. aws_cdk/aws_robomaker/__init__.py +72 -12
  228. aws_cdk/aws_rolesanywhere/__init__.py +194 -19
  229. aws_cdk/aws_route53/__init__.py +3965 -1436
  230. aws_cdk/aws_route53_targets/__init__.py +3 -0
  231. aws_cdk/aws_route53profiles/__init__.py +37 -6
  232. aws_cdk/aws_route53recoverycontrol/__init__.py +46 -8
  233. aws_cdk/aws_route53recoveryreadiness/__init__.py +104 -8
  234. aws_cdk/aws_route53resolver/__init__.py +189 -40
  235. aws_cdk/aws_rtbfabric/__init__.py +3498 -0
  236. aws_cdk/aws_rum/__init__.py +13 -2
  237. aws_cdk/aws_s3/__init__.py +1742 -221
  238. aws_cdk/aws_s3_assets/__init__.py +11 -11
  239. aws_cdk/aws_s3_deployment/__init__.py +153 -11
  240. aws_cdk/aws_s3_notifications/__init__.py +7 -7
  241. aws_cdk/aws_s3express/__init__.py +1053 -6
  242. aws_cdk/aws_s3objectlambda/__init__.py +68 -16
  243. aws_cdk/aws_s3outposts/__init__.py +46 -8
  244. aws_cdk/aws_s3tables/__init__.py +2000 -323
  245. aws_cdk/aws_s3vectors/__init__.py +1378 -0
  246. aws_cdk/aws_sagemaker/__init__.py +6848 -373
  247. aws_cdk/aws_sam/__init__.py +79 -14
  248. aws_cdk/aws_scheduler/__init__.py +249 -4
  249. aws_cdk/aws_sdb/__init__.py +12 -2
  250. aws_cdk/aws_secretsmanager/__init__.py +194 -14
  251. aws_cdk/aws_securityhub/__init__.py +3121 -176
  252. aws_cdk/aws_securitylake/__init__.py +46 -8
  253. aws_cdk/aws_servicecatalog/__init__.py +429 -246
  254. aws_cdk/aws_servicecatalogappregistry/__init__.py +164 -8
  255. aws_cdk/aws_servicediscovery/__init__.py +188 -47
  256. aws_cdk/aws_ses/__init__.py +2265 -369
  257. aws_cdk/aws_shield/__init__.py +46 -8
  258. aws_cdk/aws_signer/__init__.py +33 -4
  259. aws_cdk/aws_simspaceweaver/__init__.py +42 -2
  260. aws_cdk/aws_smsvoice/__init__.py +4716 -0
  261. aws_cdk/aws_sns/__init__.py +263 -29
  262. aws_cdk/aws_sns_subscriptions/__init__.py +265 -2
  263. aws_cdk/aws_sqs/__init__.py +223 -14
  264. aws_cdk/aws_ssm/__init__.py +413 -58
  265. aws_cdk/aws_ssmcontacts/__init__.py +98 -9
  266. aws_cdk/aws_ssmguiconnect/__init__.py +20 -9
  267. aws_cdk/aws_ssmincidents/__init__.py +24 -4
  268. aws_cdk/aws_ssmquicksetup/__init__.py +393 -8
  269. aws_cdk/aws_sso/__init__.py +70 -12
  270. aws_cdk/aws_stepfunctions/__init__.py +823 -94
  271. aws_cdk/aws_stepfunctions_tasks/__init__.py +2323 -150
  272. aws_cdk/aws_supportapp/__init__.py +39 -6
  273. aws_cdk/aws_synthetics/__init__.py +1088 -126
  274. aws_cdk/aws_systemsmanagersap/__init__.py +13 -2
  275. aws_cdk/aws_timestream/__init__.py +104 -8
  276. aws_cdk/aws_transfer/__init__.py +784 -87
  277. aws_cdk/aws_verifiedpermissions/__init__.py +306 -13
  278. aws_cdk/aws_voiceid/__init__.py +54 -5
  279. aws_cdk/aws_vpclattice/__init__.py +589 -231
  280. aws_cdk/aws_waf/__init__.py +79 -14
  281. aws_cdk/aws_wafregional/__init__.py +123 -22
  282. aws_cdk/aws_wafv2/__init__.py +1183 -64
  283. aws_cdk/aws_wisdom/__init__.py +1403 -90
  284. aws_cdk/aws_workspaces/__init__.py +134 -6
  285. aws_cdk/aws_workspacesinstances/__init__.py +3940 -0
  286. aws_cdk/aws_workspacesthinclient/__init__.py +79 -10
  287. aws_cdk/aws_workspacesweb/__init__.py +1057 -141
  288. aws_cdk/aws_xray/__init__.py +48 -8
  289. aws_cdk/cloud_assembly_schema/__init__.py +368 -48
  290. aws_cdk/custom_resources/__init__.py +58 -12
  291. aws_cdk/cx_api/__init__.py +125 -21
  292. aws_cdk/interfaces/__init__.py +739 -0
  293. aws_cdk/interfaces/alexa_ask/__init__.py +146 -0
  294. aws_cdk/interfaces/aws_accessanalyzer/__init__.py +146 -0
  295. aws_cdk/interfaces/aws_acmpca/__init__.py +501 -0
  296. aws_cdk/interfaces/aws_aiops/__init__.py +146 -0
  297. aws_cdk/interfaces/aws_amazonmq/__init__.py +386 -0
  298. aws_cdk/interfaces/aws_amplify/__init__.py +352 -0
  299. aws_cdk/interfaces/aws_amplifyuibuilder/__init__.py +454 -0
  300. aws_cdk/interfaces/aws_apigateway/__init__.py +2486 -0
  301. aws_cdk/interfaces/aws_apigatewayv2/__init__.py +1651 -0
  302. aws_cdk/interfaces/aws_appconfig/__init__.py +1020 -0
  303. aws_cdk/interfaces/aws_appflow/__init__.py +404 -0
  304. aws_cdk/interfaces/aws_appintegrations/__init__.py +396 -0
  305. aws_cdk/interfaces/aws_applicationautoscaling/__init__.py +307 -0
  306. aws_cdk/interfaces/aws_applicationinsights/__init__.py +148 -0
  307. aws_cdk/interfaces/aws_applicationsignals/__init__.py +358 -0
  308. aws_cdk/interfaces/aws_appmesh/__init__.py +888 -0
  309. aws_cdk/interfaces/aws_apprunner/__init__.py +564 -0
  310. aws_cdk/interfaces/aws_appstream/__init__.py +1482 -0
  311. aws_cdk/interfaces/aws_appsync/__init__.py +1326 -0
  312. aws_cdk/interfaces/aws_apptest/__init__.py +163 -0
  313. aws_cdk/interfaces/aws_aps/__init__.py +558 -0
  314. aws_cdk/interfaces/aws_arcregionswitch/__init__.py +146 -0
  315. aws_cdk/interfaces/aws_arczonalshift/__init__.py +273 -0
  316. aws_cdk/interfaces/aws_athena/__init__.py +575 -0
  317. aws_cdk/interfaces/aws_auditmanager/__init__.py +163 -0
  318. aws_cdk/interfaces/aws_autoscaling/__init__.py +705 -0
  319. aws_cdk/interfaces/aws_autoscalingplans/__init__.py +148 -0
  320. aws_cdk/interfaces/aws_b2bi/__init__.py +524 -0
  321. aws_cdk/interfaces/aws_backup/__init__.py +955 -0
  322. aws_cdk/interfaces/aws_backupgateway/__init__.py +146 -0
  323. aws_cdk/interfaces/aws_batch/__init__.py +681 -0
  324. aws_cdk/interfaces/aws_bcmdataexports/__init__.py +146 -0
  325. aws_cdk/interfaces/aws_bedrock/__init__.py +1942 -0
  326. aws_cdk/interfaces/aws_bedrockagentcore/__init__.py +934 -0
  327. aws_cdk/interfaces/aws_billing/__init__.py +146 -0
  328. aws_cdk/interfaces/aws_billingconductor/__init__.py +463 -0
  329. aws_cdk/interfaces/aws_budgets/__init__.py +261 -0
  330. aws_cdk/interfaces/aws_cassandra/__init__.py +381 -0
  331. aws_cdk/interfaces/aws_ce/__init__.py +352 -0
  332. aws_cdk/interfaces/aws_certificatemanager/__init__.py +251 -0
  333. aws_cdk/interfaces/aws_chatbot/__init__.py +366 -0
  334. aws_cdk/interfaces/aws_cleanrooms/__init__.py +1103 -0
  335. aws_cdk/interfaces/aws_cleanroomsml/__init__.py +148 -0
  336. aws_cdk/interfaces/aws_cloud9/__init__.py +166 -0
  337. aws_cdk/interfaces/aws_cloudformation/__init__.py +1919 -0
  338. aws_cdk/interfaces/aws_cloudfront/__init__.py +1998 -0
  339. aws_cdk/interfaces/aws_cloudtrail/__init__.py +570 -0
  340. aws_cdk/interfaces/aws_cloudwatch/__init__.py +733 -0
  341. aws_cdk/interfaces/aws_codeartifact/__init__.py +352 -0
  342. aws_cdk/interfaces/aws_codebuild/__init__.py +487 -0
  343. aws_cdk/interfaces/aws_codecommit/__init__.py +163 -0
  344. aws_cdk/interfaces/aws_codeconnections/__init__.py +146 -0
  345. aws_cdk/interfaces/aws_codedeploy/__init__.py +352 -0
  346. aws_cdk/interfaces/aws_codeguruprofiler/__init__.py +168 -0
  347. aws_cdk/interfaces/aws_codegurureviewer/__init__.py +148 -0
  348. aws_cdk/interfaces/aws_codepipeline/__init__.py +388 -0
  349. aws_cdk/interfaces/aws_codestar/__init__.py +146 -0
  350. aws_cdk/interfaces/aws_codestarconnections/__init__.py +370 -0
  351. aws_cdk/interfaces/aws_codestarnotifications/__init__.py +148 -0
  352. aws_cdk/interfaces/aws_cognito/__init__.py +1929 -0
  353. aws_cdk/interfaces/aws_comprehend/__init__.py +251 -0
  354. aws_cdk/interfaces/aws_config/__init__.py +1165 -0
  355. aws_cdk/interfaces/aws_connect/__init__.py +2949 -0
  356. aws_cdk/interfaces/aws_connectcampaigns/__init__.py +146 -0
  357. aws_cdk/interfaces/aws_connectcampaignsv2/__init__.py +146 -0
  358. aws_cdk/interfaces/aws_controltower/__init__.py +394 -0
  359. aws_cdk/interfaces/aws_cur/__init__.py +146 -0
  360. aws_cdk/interfaces/aws_customerprofiles/__init__.py +915 -0
  361. aws_cdk/interfaces/aws_databrew/__init__.py +661 -0
  362. aws_cdk/interfaces/aws_datapipeline/__init__.py +146 -0
  363. aws_cdk/interfaces/aws_datasync/__init__.py +1384 -0
  364. aws_cdk/interfaces/aws_datazone/__init__.py +2238 -0
  365. aws_cdk/interfaces/aws_dax/__init__.py +364 -0
  366. aws_cdk/interfaces/aws_deadline/__init__.py +1303 -0
  367. aws_cdk/interfaces/aws_detective/__init__.py +364 -0
  368. aws_cdk/interfaces/aws_devicefarm/__init__.py +663 -0
  369. aws_cdk/interfaces/aws_devopsguru/__init__.py +362 -0
  370. aws_cdk/interfaces/aws_directoryservice/__init__.py +251 -0
  371. aws_cdk/interfaces/aws_dlm/__init__.py +166 -0
  372. aws_cdk/interfaces/aws_dms/__init__.py +1176 -0
  373. aws_cdk/interfaces/aws_docdb/__init__.py +560 -0
  374. aws_cdk/interfaces/aws_docdbelastic/__init__.py +146 -0
  375. aws_cdk/interfaces/aws_dsql/__init__.py +146 -0
  376. aws_cdk/interfaces/aws_dynamodb/__init__.py +278 -0
  377. aws_cdk/interfaces/aws_ec2/__init__.py +11963 -0
  378. aws_cdk/interfaces/aws_ecr/__init__.py +814 -0
  379. aws_cdk/interfaces/aws_ecs/__init__.py +845 -0
  380. aws_cdk/interfaces/aws_efs/__init__.py +392 -0
  381. aws_cdk/interfaces/aws_eks/__init__.py +948 -0
  382. aws_cdk/interfaces/aws_elasticache/__init__.py +1108 -0
  383. aws_cdk/interfaces/aws_elasticbeanstalk/__init__.py +503 -0
  384. aws_cdk/interfaces/aws_elasticloadbalancing/__init__.py +148 -0
  385. aws_cdk/interfaces/aws_elasticloadbalancingv2/__init__.py +795 -0
  386. aws_cdk/interfaces/aws_elasticsearch/__init__.py +158 -0
  387. aws_cdk/interfaces/aws_emr/__init__.py +913 -0
  388. aws_cdk/interfaces/aws_emrcontainers/__init__.py +168 -0
  389. aws_cdk/interfaces/aws_emrserverless/__init__.py +166 -0
  390. aws_cdk/interfaces/aws_entityresolution/__init__.py +608 -0
  391. aws_cdk/interfaces/aws_events/__init__.py +872 -0
  392. aws_cdk/interfaces/aws_eventschemas/__init__.py +455 -0
  393. aws_cdk/interfaces/aws_evidently/__init__.py +558 -0
  394. aws_cdk/interfaces/aws_evs/__init__.py +166 -0
  395. aws_cdk/interfaces/aws_finspace/__init__.py +166 -0
  396. aws_cdk/interfaces/aws_fis/__init__.py +271 -0
  397. aws_cdk/interfaces/aws_fms/__init__.py +364 -0
  398. aws_cdk/interfaces/aws_forecast/__init__.py +249 -0
  399. aws_cdk/interfaces/aws_frauddetector/__init__.py +764 -0
  400. aws_cdk/interfaces/aws_fsx/__init__.py +663 -0
  401. aws_cdk/interfaces/aws_gamelift/__init__.py +1325 -0
  402. aws_cdk/interfaces/aws_gameliftstreams/__init__.py +249 -0
  403. aws_cdk/interfaces/aws_globalaccelerator/__init__.py +461 -0
  404. aws_cdk/interfaces/aws_glue/__init__.py +2377 -0
  405. aws_cdk/interfaces/aws_grafana/__init__.py +146 -0
  406. aws_cdk/interfaces/aws_greengrass/__init__.py +1871 -0
  407. aws_cdk/interfaces/aws_greengrassv2/__init__.py +251 -0
  408. aws_cdk/interfaces/aws_groundstation/__init__.py +396 -0
  409. aws_cdk/interfaces/aws_guardduty/__init__.py +1225 -0
  410. aws_cdk/interfaces/aws_healthimaging/__init__.py +163 -0
  411. aws_cdk/interfaces/aws_healthlake/__init__.py +146 -0
  412. aws_cdk/interfaces/aws_iam/__init__.py +1803 -0
  413. aws_cdk/interfaces/aws_identitystore/__init__.py +288 -0
  414. aws_cdk/interfaces/aws_imagebuilder/__init__.py +984 -0
  415. aws_cdk/interfaces/aws_inspector/__init__.py +354 -0
  416. aws_cdk/interfaces/aws_inspectorv2/__init__.py +467 -0
  417. aws_cdk/interfaces/aws_internetmonitor/__init__.py +163 -0
  418. aws_cdk/interfaces/aws_invoicing/__init__.py +146 -0
  419. aws_cdk/interfaces/aws_iot/__init__.py +3483 -0
  420. aws_cdk/interfaces/aws_iotanalytics/__init__.py +455 -0
  421. aws_cdk/interfaces/aws_iotcoredeviceadvisor/__init__.py +168 -0
  422. aws_cdk/interfaces/aws_iotevents/__init__.py +352 -0
  423. aws_cdk/interfaces/aws_iotfleethub/__init__.py +166 -0
  424. aws_cdk/interfaces/aws_iotfleetwise/__init__.py +892 -0
  425. aws_cdk/interfaces/aws_iotsitewise/__init__.py +1097 -0
  426. aws_cdk/interfaces/aws_iotthingsgraph/__init__.py +146 -0
  427. aws_cdk/interfaces/aws_iottwinmaker/__init__.py +711 -0
  428. aws_cdk/interfaces/aws_iotwireless/__init__.py +1401 -0
  429. aws_cdk/interfaces/aws_ivs/__init__.py +1075 -0
  430. aws_cdk/interfaces/aws_ivschat/__init__.py +251 -0
  431. aws_cdk/interfaces/aws_kafkaconnect/__init__.py +354 -0
  432. aws_cdk/interfaces/aws_kendra/__init__.py +428 -0
  433. aws_cdk/interfaces/aws_kendraranking/__init__.py +166 -0
  434. aws_cdk/interfaces/aws_kinesis/__init__.py +364 -0
  435. aws_cdk/interfaces/aws_kinesisanalytics/__init__.py +364 -0
  436. aws_cdk/interfaces/aws_kinesisanalyticsv2/__init__.py +479 -0
  437. aws_cdk/interfaces/aws_kinesisfirehose/__init__.py +168 -0
  438. aws_cdk/interfaces/aws_kinesisvideo/__init__.py +283 -0
  439. aws_cdk/interfaces/aws_kms/__init__.py +376 -0
  440. aws_cdk/interfaces/aws_lakeformation/__init__.py +860 -0
  441. aws_cdk/interfaces/aws_lambda/__init__.py +1141 -0
  442. aws_cdk/interfaces/aws_launchwizard/__init__.py +146 -0
  443. aws_cdk/interfaces/aws_lex/__init__.py +513 -0
  444. aws_cdk/interfaces/aws_licensemanager/__init__.py +249 -0
  445. aws_cdk/interfaces/aws_lightsail/__init__.py +1744 -0
  446. aws_cdk/interfaces/aws_location/__init__.py +879 -0
  447. aws_cdk/interfaces/aws_logs/__init__.py +1667 -0
  448. aws_cdk/interfaces/aws_lookoutequipment/__init__.py +168 -0
  449. aws_cdk/interfaces/aws_lookoutmetrics/__init__.py +251 -0
  450. aws_cdk/interfaces/aws_lookoutvision/__init__.py +163 -0
  451. aws_cdk/interfaces/aws_m2/__init__.py +352 -0
  452. aws_cdk/interfaces/aws_macie/__init__.py +512 -0
  453. aws_cdk/interfaces/aws_managedblockchain/__init__.py +381 -0
  454. aws_cdk/interfaces/aws_mediaconnect/__init__.py +1028 -0
  455. aws_cdk/interfaces/aws_mediaconvert/__init__.py +396 -0
  456. aws_cdk/interfaces/aws_medialive/__init__.py +1755 -0
  457. aws_cdk/interfaces/aws_mediapackage/__init__.py +644 -0
  458. aws_cdk/interfaces/aws_mediapackagev2/__init__.py +618 -0
  459. aws_cdk/interfaces/aws_mediastore/__init__.py +146 -0
  460. aws_cdk/interfaces/aws_mediatailor/__init__.py +788 -0
  461. aws_cdk/interfaces/aws_memorydb/__init__.py +685 -0
  462. aws_cdk/interfaces/aws_mpa/__init__.py +249 -0
  463. aws_cdk/interfaces/aws_msk/__init__.py +764 -0
  464. aws_cdk/interfaces/aws_mwaa/__init__.py +166 -0
  465. aws_cdk/interfaces/aws_neptune/__init__.py +663 -0
  466. aws_cdk/interfaces/aws_neptunegraph/__init__.py +265 -0
  467. aws_cdk/interfaces/aws_networkfirewall/__init__.py +669 -0
  468. aws_cdk/interfaces/aws_networkmanager/__init__.py +1832 -0
  469. aws_cdk/interfaces/aws_nimblestudio/__init__.py +388 -0
  470. aws_cdk/interfaces/aws_notifications/__init__.py +868 -0
  471. aws_cdk/interfaces/aws_notificationscontacts/__init__.py +148 -0
  472. aws_cdk/interfaces/aws_oam/__init__.py +249 -0
  473. aws_cdk/interfaces/aws_observabilityadmin/__init__.py +362 -0
  474. aws_cdk/interfaces/aws_odb/__init__.py +562 -0
  475. aws_cdk/interfaces/aws_omics/__init__.py +838 -0
  476. aws_cdk/interfaces/aws_opensearchserverless/__init__.py +859 -0
  477. aws_cdk/interfaces/aws_opensearchservice/__init__.py +283 -0
  478. aws_cdk/interfaces/aws_opsworks/__init__.py +772 -0
  479. aws_cdk/interfaces/aws_opsworkscm/__init__.py +146 -0
  480. aws_cdk/interfaces/aws_organizations/__init__.py +646 -0
  481. aws_cdk/interfaces/aws_osis/__init__.py +146 -0
  482. aws_cdk/interfaces/aws_panorama/__init__.py +420 -0
  483. aws_cdk/interfaces/aws_paymentcryptography/__init__.py +249 -0
  484. aws_cdk/interfaces/aws_pcaconnectorad/__init__.py +608 -0
  485. aws_cdk/interfaces/aws_pcaconnectorscep/__init__.py +249 -0
  486. aws_cdk/interfaces/aws_pcs/__init__.py +352 -0
  487. aws_cdk/interfaces/aws_personalize/__init__.py +455 -0
  488. aws_cdk/interfaces/aws_pinpoint/__init__.py +2125 -0
  489. aws_cdk/interfaces/aws_pinpointemail/__init__.py +467 -0
  490. aws_cdk/interfaces/aws_pipes/__init__.py +158 -0
  491. aws_cdk/interfaces/aws_proton/__init__.py +360 -0
  492. aws_cdk/interfaces/aws_qbusiness/__init__.py +1122 -0
  493. aws_cdk/interfaces/aws_qldb/__init__.py +283 -0
  494. aws_cdk/interfaces/aws_quicksight/__init__.py +1566 -0
  495. aws_cdk/interfaces/aws_ram/__init__.py +249 -0
  496. aws_cdk/interfaces/aws_rbin/__init__.py +146 -0
  497. aws_cdk/interfaces/aws_rds/__init__.py +1780 -0
  498. aws_cdk/interfaces/aws_redshift/__init__.py +1104 -0
  499. aws_cdk/interfaces/aws_redshiftserverless/__init__.py +356 -0
  500. aws_cdk/interfaces/aws_refactorspaces/__init__.py +605 -0
  501. aws_cdk/interfaces/aws_rekognition/__init__.py +406 -0
  502. aws_cdk/interfaces/aws_resiliencehub/__init__.py +251 -0
  503. aws_cdk/interfaces/aws_resourceexplorer2/__init__.py +354 -0
  504. aws_cdk/interfaces/aws_resourcegroups/__init__.py +261 -0
  505. aws_cdk/interfaces/aws_robomaker/__init__.py +673 -0
  506. aws_cdk/interfaces/aws_rolesanywhere/__init__.py +384 -0
  507. aws_cdk/interfaces/aws_route53/__init__.py +804 -0
  508. aws_cdk/interfaces/aws_route53profiles/__init__.py +368 -0
  509. aws_cdk/interfaces/aws_route53recoverycontrol/__init__.py +463 -0
  510. aws_cdk/interfaces/aws_route53recoveryreadiness/__init__.py +535 -0
  511. aws_cdk/interfaces/aws_route53resolver/__init__.py +1356 -0
  512. aws_cdk/interfaces/aws_rtbfabric/__init__.py +352 -0
  513. aws_cdk/interfaces/aws_rum/__init__.py +146 -0
  514. aws_cdk/interfaces/aws_s3/__init__.py +1171 -0
  515. aws_cdk/interfaces/aws_s3express/__init__.py +392 -0
  516. aws_cdk/interfaces/aws_s3objectlambda/__init__.py +271 -0
  517. aws_cdk/interfaces/aws_s3outposts/__init__.py +455 -0
  518. aws_cdk/interfaces/aws_s3tables/__init__.py +575 -0
  519. aws_cdk/interfaces/aws_s3vectors/__init__.py +354 -0
  520. aws_cdk/interfaces/aws_sagemaker/__init__.py +3797 -0
  521. aws_cdk/interfaces/aws_sam/__init__.py +603 -0
  522. aws_cdk/interfaces/aws_scheduler/__init__.py +286 -0
  523. aws_cdk/interfaces/aws_sdb/__init__.py +146 -0
  524. aws_cdk/interfaces/aws_secretsmanager/__init__.py +461 -0
  525. aws_cdk/interfaces/aws_securityhub/__init__.py +1499 -0
  526. aws_cdk/interfaces/aws_securitylake/__init__.py +474 -0
  527. aws_cdk/interfaces/aws_servicecatalog/__init__.py +1829 -0
  528. aws_cdk/interfaces/aws_servicecatalogappregistry/__init__.py +557 -0
  529. aws_cdk/interfaces/aws_servicediscovery/__init__.py +636 -0
  530. aws_cdk/interfaces/aws_ses/__init__.py +2018 -0
  531. aws_cdk/interfaces/aws_shield/__init__.py +455 -0
  532. aws_cdk/interfaces/aws_signer/__init__.py +266 -0
  533. aws_cdk/interfaces/aws_simspaceweaver/__init__.py +146 -0
  534. aws_cdk/interfaces/aws_smsvoice/__init__.py +892 -0
  535. aws_cdk/interfaces/aws_sns/__init__.py +455 -0
  536. aws_cdk/interfaces/aws_sqs/__init__.py +364 -0
  537. aws_cdk/interfaces/aws_ssm/__init__.py +982 -0
  538. aws_cdk/interfaces/aws_ssmcontacts/__init__.py +455 -0
  539. aws_cdk/interfaces/aws_ssmguiconnect/__init__.py +146 -0
  540. aws_cdk/interfaces/aws_ssmincidents/__init__.py +249 -0
  541. aws_cdk/interfaces/aws_ssmquicksetup/__init__.py +253 -0
  542. aws_cdk/interfaces/aws_sso/__init__.py +797 -0
  543. aws_cdk/interfaces/aws_stepfunctions/__init__.py +459 -0
  544. aws_cdk/interfaces/aws_supportapp/__init__.py +372 -0
  545. aws_cdk/interfaces/aws_synthetics/__init__.py +249 -0
  546. aws_cdk/interfaces/aws_systemsmanagersap/__init__.py +148 -0
  547. aws_cdk/interfaces/aws_timestream/__init__.py +526 -0
  548. aws_cdk/interfaces/aws_transfer/__init__.py +967 -0
  549. aws_cdk/interfaces/aws_verifiedpermissions/__init__.py +538 -0
  550. aws_cdk/interfaces/aws_voiceid/__init__.py +146 -0
  551. aws_cdk/interfaces/aws_vpclattice/__init__.py +1418 -0
  552. aws_cdk/interfaces/aws_waf/__init__.py +764 -0
  553. aws_cdk/interfaces/aws_wafregional/__init__.py +1182 -0
  554. aws_cdk/interfaces/aws_wafv2/__init__.py +870 -0
  555. aws_cdk/interfaces/aws_wisdom/__init__.py +1556 -0
  556. aws_cdk/interfaces/aws_workspaces/__init__.py +352 -0
  557. aws_cdk/interfaces/aws_workspacesinstances/__init__.py +390 -0
  558. aws_cdk/interfaces/aws_workspacesthinclient/__init__.py +168 -0
  559. aws_cdk/interfaces/aws_workspacesweb/__init__.py +1085 -0
  560. aws_cdk/interfaces/aws_xray/__init__.py +457 -0
  561. aws_cdk/lambda_layer_awscli/__init__.py +6 -0
  562. aws_cdk/lambda_layer_node_proxy_agent/__init__.py +6 -0
  563. aws_cdk/pipelines/__init__.py +202 -52
  564. aws_cdk/region_info/__init__.py +3 -0
  565. aws_cdk/triggers/__init__.py +66 -18
  566. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/METADATA +418 -18
  567. aws_cdk_lib-2.224.0.dist-info/RECORD +584 -0
  568. aws_cdk_lib-2.195.0.dist-info/RECORD +0 -304
  569. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/LICENSE +0 -0
  570. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/NOTICE +0 -0
  571. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/WHEEL +0 -0
  572. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/top_level.txt +0 -0
@@ -458,6 +458,32 @@ get_message_integration = apigateway.AwsIntegration(
458
458
  )
459
459
  ```
460
460
 
461
+ ### Lambda Integration Permissions
462
+
463
+ By default, creating a `LambdaIntegration` will add a permission for API Gateway to invoke your AWS Lambda function, scoped to the specific method which uses the integration.
464
+
465
+ If you reuse the same AWS Lambda function for many integrations, the AWS Lambda permission policy size can be exceeded by adding a separate policy statement for each method which invokes the AWS Lambda function. To avoid this, you can opt to scope permissions to any method on the API by setting `scopePermissionToMethod` to `false`, and this will ensure only a single policy statement is added to the AWS Lambda permission policy.
466
+
467
+ ```python
468
+ # book: apigateway.Resource
469
+ # backend: lambda.Function
470
+
471
+
472
+ get_book_integration = apigateway.LambdaIntegration(backend,
473
+ scope_permission_to_method=False
474
+ )
475
+ create_book_integration = apigateway.LambdaIntegration(backend,
476
+ scope_permission_to_method=False
477
+ )
478
+
479
+ book.add_method("GET", get_book_integration)
480
+ book.add_method("POST", create_book_integration)
481
+ ```
482
+
483
+ In the above example, a single permission is added, shared by both `getBookIntegration` and `createBookIntegration`.
484
+
485
+ Note that setting `scopePermissionToMethod` to `false` will always allow test invocations, no matter the value specified for `allowTestInvoke`.
486
+
461
487
  ## Usage Plan & API Keys
462
488
 
463
489
  A usage plan specifies who can access one or more deployed API stages and methods, and the rate at which they can be
@@ -1845,6 +1871,15 @@ api = apigateway.SpecRestApi(self, "books-api",
1845
1871
  )
1846
1872
  ```
1847
1873
 
1874
+ `SpecRestApi` also supports binary media types, similar to `RestApi`:
1875
+
1876
+ ```python
1877
+ api = apigateway.SpecRestApi(self, "books-api",
1878
+ api_definition=apigateway.ApiDefinition.from_asset("path-to-file.json"),
1879
+ binary_media_types=["image/png", "application/pdf"]
1880
+ )
1881
+ ```
1882
+
1848
1883
  ### Endpoint configuration
1849
1884
 
1850
1885
  By default, `SpecRestApi` will create an edge optimized endpoint.
@@ -1975,13 +2010,60 @@ from ..aws_iam import (
1975
2010
  PolicyStatement as _PolicyStatement_0fe33853,
1976
2011
  )
1977
2012
  from ..aws_kinesisfirehose import CfnDeliveryStream as _CfnDeliveryStream_8f3b1735
1978
- from ..aws_kms import IKey as _IKey_5f11635f
1979
2013
  from ..aws_lambda import IFunction as _IFunction_6adb0ab8
1980
2014
  from ..aws_logs import ILogGroup as _ILogGroup_3c4fa718
1981
2015
  from ..aws_s3 import IBucket as _IBucket_42e086fd
1982
2016
  from ..aws_s3_assets import AssetOptions as _AssetOptions_2aa69621
1983
2017
  from ..aws_sagemaker import IEndpoint as _IEndpoint_58fe201a
1984
2018
  from ..aws_stepfunctions import IStateMachine as _IStateMachine_73e8d2b0
2019
+ from ..interfaces.aws_apigateway import (
2020
+ AccountReference as _AccountReference_3ce7fd09,
2021
+ ApiKeyReference as _ApiKeyReference_6382fd3a,
2022
+ AuthorizerReference as _AuthorizerReference_9227c976,
2023
+ BasePathMappingReference as _BasePathMappingReference_0fb943e6,
2024
+ BasePathMappingV2Reference as _BasePathMappingV2Reference_bd6138fa,
2025
+ ClientCertificateReference as _ClientCertificateReference_dc31fb12,
2026
+ DeploymentReference as _DeploymentReference_d6bd3ce1,
2027
+ DocumentationPartReference as _DocumentationPartReference_95653832,
2028
+ DocumentationVersionReference as _DocumentationVersionReference_b6913e6e,
2029
+ DomainNameAccessAssociationReference as _DomainNameAccessAssociationReference_558a7d70,
2030
+ DomainNameReference as _DomainNameReference_f4138423,
2031
+ DomainNameV2Reference as _DomainNameV2Reference_ca1122a1,
2032
+ GatewayResponseReference as _GatewayResponseReference_0f1f239c,
2033
+ IAccountRef as _IAccountRef_4b89af6a,
2034
+ IApiKeyRef as _IApiKeyRef_6e16b46a,
2035
+ IAuthorizerRef as _IAuthorizerRef_5e7c8723,
2036
+ IBasePathMappingRef as _IBasePathMappingRef_79bb1c6e,
2037
+ IBasePathMappingV2Ref as _IBasePathMappingV2Ref_e433a169,
2038
+ IClientCertificateRef as _IClientCertificateRef_2a4b2b38,
2039
+ IDeploymentRef as _IDeploymentRef_e5a0678c,
2040
+ IDocumentationPartRef as _IDocumentationPartRef_07703b39,
2041
+ IDocumentationVersionRef as _IDocumentationVersionRef_bdf6c8eb,
2042
+ IDomainNameAccessAssociationRef as _IDomainNameAccessAssociationRef_f9b99574,
2043
+ IDomainNameRef as _IDomainNameRef_8b0ccf94,
2044
+ IDomainNameV2Ref as _IDomainNameV2Ref_e2e9faf2,
2045
+ IGatewayResponseRef as _IGatewayResponseRef_d5aa66ef,
2046
+ IMethodRef as _IMethodRef_6ea24188,
2047
+ IModelRef as _IModelRef_19f34fa7,
2048
+ IRequestValidatorRef as _IRequestValidatorRef_ad0e2de5,
2049
+ IResourceRef as _IResourceRef_c7defb81,
2050
+ IRestApiRef as _IRestApiRef_72dcbda0,
2051
+ IStageRef as _IStageRef_b829c330,
2052
+ IUsagePlanKeyRef as _IUsagePlanKeyRef_465586fc,
2053
+ IUsagePlanRef as _IUsagePlanRef_7a28b470,
2054
+ IVpcLinkRef as _IVpcLinkRef_0afd9621,
2055
+ MethodReference as _MethodReference_cf812dcd,
2056
+ ModelReference as _ModelReference_19c194a0,
2057
+ RequestValidatorReference as _RequestValidatorReference_432e1849,
2058
+ ResourceReference as _ResourceReference_c72d8a5a,
2059
+ RestApiReference as _RestApiReference_0863f937,
2060
+ StageReference as _StageReference_3eb94694,
2061
+ UsagePlanKeyReference as _UsagePlanKeyReference_cfe985c6,
2062
+ UsagePlanReference as _UsagePlanReference_3d3ec4d2,
2063
+ VpcLinkReference as _VpcLinkReference_cccde188,
2064
+ )
2065
+ from ..interfaces.aws_kms import IKeyRef as _IKeyRef_d4fc6ef3
2066
+ from ..interfaces.aws_s3 import IBucketRef as _IBucketRef_3debe44e
1985
2067
 
1986
2068
 
1987
2069
  @jsii.data_type(
@@ -2195,6 +2277,15 @@ class AccessLogField(
2195
2277
  '''The API callers AWS account ID.'''
2196
2278
  return typing.cast(builtins.str, jsii.sinvoke(cls, "contextCallerAccountId", []))
2197
2279
 
2280
+ @jsii.member(jsii_name="contextConnectionId")
2281
+ @builtins.classmethod
2282
+ def context_connection_id(cls) -> builtins.str:
2283
+ '''A unique ID for the connection that can be used to make a callback to the client.
2284
+
2285
+ :see: https://docs.aws.amazon.com/apigateway/latest/developerguide/websocket-api-logging.html
2286
+ '''
2287
+ return typing.cast(builtins.str, jsii.sinvoke(cls, "contextConnectionId", []))
2288
+
2198
2289
  @jsii.member(jsii_name="contextCustomDomainBasePathMatched")
2199
2290
  @builtins.classmethod
2200
2291
  def context_custom_domain_base_path_matched(cls) -> builtins.str:
@@ -2252,6 +2343,15 @@ class AccessLogField(
2252
2343
  '''A string containing a detailed validation error message.'''
2253
2344
  return typing.cast(builtins.str, jsii.sinvoke(cls, "contextErrorValidationErrorString", []))
2254
2345
 
2346
+ @jsii.member(jsii_name="contextEventType")
2347
+ @builtins.classmethod
2348
+ def context_event_type(cls) -> builtins.str:
2349
+ '''The event type: CONNECT, MESSAGE, or DISCONNECT.
2350
+
2351
+ :see: https://docs.aws.amazon.com/apigateway/latest/developerguide/websocket-api-logging.html
2352
+ '''
2353
+ return typing.cast(builtins.str, jsii.sinvoke(cls, "contextEventType", []))
2354
+
2255
2355
  @jsii.member(jsii_name="contextExtendedRequestId")
2256
2356
  @builtins.classmethod
2257
2357
  def context_extended_request_id(cls) -> builtins.str:
@@ -2606,6 +2706,15 @@ class AccessLogField(
2606
2706
  '''
2607
2707
  return typing.cast(builtins.str, jsii.sinvoke(cls, "contextResponseOverrideStatus", []))
2608
2708
 
2709
+ @jsii.member(jsii_name="contextRouteKey")
2710
+ @builtins.classmethod
2711
+ def context_route_key(cls) -> builtins.str:
2712
+ '''The selected route key.
2713
+
2714
+ :see: https://docs.aws.amazon.com/apigateway/latest/developerguide/websocket-api-logging.html
2715
+ '''
2716
+ return typing.cast(builtins.str, jsii.sinvoke(cls, "contextRouteKey", []))
2717
+
2609
2718
  @jsii.member(jsii_name="contextStage")
2610
2719
  @builtins.classmethod
2611
2720
  def context_stage(cls) -> builtins.str:
@@ -2699,6 +2808,15 @@ class AccessLogFormat(
2699
2808
  )
2700
2809
  '''
2701
2810
 
2811
+ def __init__(self, format: builtins.str) -> None:
2812
+ '''
2813
+ :param format: -
2814
+ '''
2815
+ if __debug__:
2816
+ type_hints = typing.get_type_hints(_typecheckingstub__0bc4acaae324fa465c0ae63ddfa13df8085530150092a3990e1815dea9b745ec)
2817
+ check_type(argname="argument format", value=format, expected_type=type_hints["format"])
2818
+ jsii.create(self.__class__, self, [format])
2819
+
2702
2820
  @jsii.member(jsii_name="clf")
2703
2821
  @builtins.classmethod
2704
2822
  def clf(cls) -> "AccessLogFormat":
@@ -2846,21 +2964,10 @@ class ApiDefinition(
2846
2964
 
2847
2965
  Example::
2848
2966
 
2849
- my_api_definition = apigateway.ApiDefinition.from_asset("path-to-file.json")
2850
- spec_rest_api = apigateway.SpecRestApi(self, "my-specrest-api",
2851
- deploy=False,
2852
- api_definition=my_api_definition
2853
- )
2854
-
2855
- # Use `stageName` to deploy to an existing stage
2856
- deployment = apigateway.Deployment(self, "my-deployment",
2857
- api=spec_rest_api,
2858
- stage_name="dev",
2859
- retain_deployments=True
2967
+ api = apigateway.SpecRestApi(self, "books-api",
2968
+ api_definition=apigateway.ApiDefinition.from_asset("path-to-file.json"),
2969
+ mode=apigateway.RestApiMode.MERGE
2860
2970
  )
2861
-
2862
- # Trigger a new deployment on OpenAPI definition updates
2863
- deployment.add_to_logical_id(my_api_definition)
2864
2971
  '''
2865
2972
 
2866
2973
  def __init__(self) -> None:
@@ -2875,7 +2982,7 @@ class ApiDefinition(
2875
2982
  deploy_time: typing.Optional[builtins.bool] = None,
2876
2983
  display_name: typing.Optional[builtins.str] = None,
2877
2984
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
2878
- source_kms_key: typing.Optional[_IKey_5f11635f] = None,
2985
+ source_kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
2879
2986
  asset_hash: typing.Optional[builtins.str] = None,
2880
2987
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
2881
2988
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -3007,7 +3114,7 @@ class ApiDefinition(
3007
3114
  def bind_after_create(
3008
3115
  self,
3009
3116
  _scope: _constructs_77d1e7e8.Construct,
3010
- _rest_api: "IRestApi",
3117
+ _rest_api: _IRestApiRef_72dcbda0,
3011
3118
  ) -> None:
3012
3119
  '''Called after the CFN RestApi resource has been created to allow the Api Definition to bind to it.
3013
3120
 
@@ -3310,7 +3417,7 @@ class AssetApiDefinition(
3310
3417
  deploy_time: typing.Optional[builtins.bool] = None,
3311
3418
  display_name: typing.Optional[builtins.str] = None,
3312
3419
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
3313
- source_kms_key: typing.Optional[_IKey_5f11635f] = None,
3420
+ source_kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
3314
3421
  asset_hash: typing.Optional[builtins.str] = None,
3315
3422
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
3316
3423
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -3364,7 +3471,7 @@ class AssetApiDefinition(
3364
3471
  def bind_after_create(
3365
3472
  self,
3366
3473
  scope: _constructs_77d1e7e8.Construct,
3367
- rest_api: "IRestApi",
3474
+ rest_api: _IRestApiRef_72dcbda0,
3368
3475
  ) -> None:
3369
3476
  '''Called after the CFN RestApi resource has been created to allow the Api Definition to bind to it.
3370
3477
 
@@ -3620,8 +3727,8 @@ class BasePathMapping(
3620
3727
  scope: _constructs_77d1e7e8.Construct,
3621
3728
  id: builtins.str,
3622
3729
  *,
3623
- domain_name: "IDomainName",
3624
- rest_api: "IRestApi",
3730
+ domain_name: _IDomainNameRef_8b0ccf94,
3731
+ rest_api: _IRestApiRef_72dcbda0,
3625
3732
  attach_to_stage: typing.Optional[builtins.bool] = None,
3626
3733
  base_path: typing.Optional[builtins.str] = None,
3627
3734
  stage: typing.Optional["Stage"] = None,
@@ -3649,6 +3756,12 @@ class BasePathMapping(
3649
3756
 
3650
3757
  jsii.create(self.__class__, self, [scope, id, props])
3651
3758
 
3759
+ @jsii.python.classproperty
3760
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
3761
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
3762
+ '''Uniquely identifies this class.'''
3763
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
3764
+
3652
3765
 
3653
3766
  @jsii.data_type(
3654
3767
  jsii_type="aws-cdk-lib.aws_apigateway.BasePathMappingOptions",
@@ -3760,8 +3873,8 @@ class BasePathMappingProps(BasePathMappingOptions):
3760
3873
  attach_to_stage: typing.Optional[builtins.bool] = None,
3761
3874
  base_path: typing.Optional[builtins.str] = None,
3762
3875
  stage: typing.Optional["Stage"] = None,
3763
- domain_name: "IDomainName",
3764
- rest_api: "IRestApi",
3876
+ domain_name: _IDomainNameRef_8b0ccf94,
3877
+ rest_api: _IRestApiRef_72dcbda0,
3765
3878
  ) -> None:
3766
3879
  '''
3767
3880
  :param attach_to_stage: Whether to attach the base path mapping to a stage. Use this property to create a base path mapping without attaching it to the Rest API default stage. This property is ignored if ``stage`` is provided. Default: - true
@@ -3840,18 +3953,18 @@ class BasePathMappingProps(BasePathMappingOptions):
3840
3953
  return typing.cast(typing.Optional["Stage"], result)
3841
3954
 
3842
3955
  @builtins.property
3843
- def domain_name(self) -> "IDomainName":
3956
+ def domain_name(self) -> _IDomainNameRef_8b0ccf94:
3844
3957
  '''The DomainName to associate with this base path mapping.'''
3845
3958
  result = self._values.get("domain_name")
3846
3959
  assert result is not None, "Required property 'domain_name' is missing"
3847
- return typing.cast("IDomainName", result)
3960
+ return typing.cast(_IDomainNameRef_8b0ccf94, result)
3848
3961
 
3849
3962
  @builtins.property
3850
- def rest_api(self) -> "IRestApi":
3963
+ def rest_api(self) -> _IRestApiRef_72dcbda0:
3851
3964
  '''The RestApi resource to target.'''
3852
3965
  result = self._values.get("rest_api")
3853
3966
  assert result is not None, "Required property 'rest_api' is missing"
3854
- return typing.cast("IRestApi", result)
3967
+ return typing.cast(_IRestApiRef_72dcbda0, result)
3855
3968
 
3856
3969
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
3857
3970
  return isinstance(rhs, self.__class__) and rhs._values == self._values
@@ -3865,7 +3978,7 @@ class BasePathMappingProps(BasePathMappingOptions):
3865
3978
  )
3866
3979
 
3867
3980
 
3868
- @jsii.implements(_IInspectable_c2943556)
3981
+ @jsii.implements(_IInspectable_c2943556, _IAccountRef_4b89af6a)
3869
3982
  class CfnAccount(
3870
3983
  _CfnResource_9df397a6,
3871
3984
  metaclass=jsii.JSIIMeta,
@@ -3899,7 +4012,8 @@ class CfnAccount(
3899
4012
  *,
3900
4013
  cloud_watch_role_arn: typing.Optional[builtins.str] = None,
3901
4014
  ) -> None:
3902
- '''
4015
+ '''Create a new ``AWS::ApiGateway::Account``.
4016
+
3903
4017
  :param scope: Scope in which this resource is defined.
3904
4018
  :param id: Construct identifier for this resource (unique in its scope).
3905
4019
  :param cloud_watch_role_arn: The ARN of an Amazon CloudWatch role for the current Account.
@@ -3942,6 +4056,12 @@ class CfnAccount(
3942
4056
  '''The CloudFormation resource type name for this resource class.'''
3943
4057
  return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
3944
4058
 
4059
+ @builtins.property
4060
+ @jsii.member(jsii_name="accountRef")
4061
+ def account_ref(self) -> _AccountReference_3ce7fd09:
4062
+ '''A reference to a Account resource.'''
4063
+ return typing.cast(_AccountReference_3ce7fd09, jsii.get(self, "accountRef"))
4064
+
3945
4065
  @builtins.property
3946
4066
  @jsii.member(jsii_name="attrId")
3947
4067
  def attr_id(self) -> builtins.str:
@@ -4028,7 +4148,7 @@ class CfnAccountProps:
4028
4148
  )
4029
4149
 
4030
4150
 
4031
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
4151
+ @jsii.implements(_IInspectable_c2943556, _IApiKeyRef_6e16b46a, _ITaggable_36806126)
4032
4152
  class CfnApiKey(
4033
4153
  _CfnResource_9df397a6,
4034
4154
  metaclass=jsii.JSIIMeta,
@@ -4080,7 +4200,8 @@ class CfnApiKey(
4080
4200
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4081
4201
  value: typing.Optional[builtins.str] = None,
4082
4202
  ) -> None:
4083
- '''
4203
+ '''Create a new ``AWS::ApiGateway::ApiKey``.
4204
+
4084
4205
  :param scope: Scope in which this resource is defined.
4085
4206
  :param id: Construct identifier for this resource (unique in its scope).
4086
4207
  :param customer_id: An AWS Marketplace customer identifier, when integrating with the AWS SaaS Marketplace.
@@ -4109,6 +4230,27 @@ class CfnApiKey(
4109
4230
 
4110
4231
  jsii.create(self.__class__, self, [scope, id, props])
4111
4232
 
4233
+ @jsii.member(jsii_name="fromApiKeyId")
4234
+ @builtins.classmethod
4235
+ def from_api_key_id(
4236
+ cls,
4237
+ scope: _constructs_77d1e7e8.Construct,
4238
+ id: builtins.str,
4239
+ api_key_id: builtins.str,
4240
+ ) -> _IApiKeyRef_6e16b46a:
4241
+ '''Creates a new IApiKeyRef from a apiKeyId.
4242
+
4243
+ :param scope: -
4244
+ :param id: -
4245
+ :param api_key_id: -
4246
+ '''
4247
+ if __debug__:
4248
+ type_hints = typing.get_type_hints(_typecheckingstub__d28618723a7da86eac262dd6fcbd57647bc2aa89de83959534c6b5288f040fef)
4249
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
4250
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
4251
+ check_type(argname="argument api_key_id", value=api_key_id, expected_type=type_hints["api_key_id"])
4252
+ return typing.cast(_IApiKeyRef_6e16b46a, jsii.sinvoke(cls, "fromApiKeyId", [scope, id, api_key_id]))
4253
+
4112
4254
  @jsii.member(jsii_name="inspect")
4113
4255
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
4114
4256
  '''Examines the CloudFormation resource and discloses attributes.
@@ -4139,6 +4281,12 @@ class CfnApiKey(
4139
4281
  '''The CloudFormation resource type name for this resource class.'''
4140
4282
  return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
4141
4283
 
4284
+ @builtins.property
4285
+ @jsii.member(jsii_name="apiKeyRef")
4286
+ def api_key_ref(self) -> _ApiKeyReference_6382fd3a:
4287
+ '''A reference to a ApiKey resource.'''
4288
+ return typing.cast(_ApiKeyReference_6382fd3a, jsii.get(self, "apiKeyRef"))
4289
+
4142
4290
  @builtins.property
4143
4291
  @jsii.member(jsii_name="attrApiKeyId")
4144
4292
  def attr_api_key_id(self) -> builtins.str:
@@ -4544,7 +4692,7 @@ class CfnApiKeyProps:
4544
4692
  )
4545
4693
 
4546
4694
 
4547
- @jsii.implements(_IInspectable_c2943556)
4695
+ @jsii.implements(_IInspectable_c2943556, _IAuthorizerRef_5e7c8723)
4548
4696
  class CfnAuthorizer(
4549
4697
  _CfnResource_9df397a6,
4550
4698
  metaclass=jsii.JSIIMeta,
@@ -4596,7 +4744,8 @@ class CfnAuthorizer(
4596
4744
  identity_validation_expression: typing.Optional[builtins.str] = None,
4597
4745
  provider_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
4598
4746
  ) -> None:
4599
- '''
4747
+ '''Create a new ``AWS::ApiGateway::Authorizer``.
4748
+
4600
4749
  :param scope: Scope in which this resource is defined.
4601
4750
  :param id: Construct identifier for this resource (unique in its scope).
4602
4751
  :param name: The name of the authorizer.
@@ -4670,6 +4819,12 @@ class CfnAuthorizer(
4670
4819
  '''
4671
4820
  return typing.cast(builtins.str, jsii.get(self, "attrAuthorizerId"))
4672
4821
 
4822
+ @builtins.property
4823
+ @jsii.member(jsii_name="authorizerRef")
4824
+ def authorizer_ref(self) -> _AuthorizerReference_9227c976:
4825
+ '''A reference to a Authorizer resource.'''
4826
+ return typing.cast(_AuthorizerReference_9227c976, jsii.get(self, "authorizerRef"))
4827
+
4673
4828
  @builtins.property
4674
4829
  @jsii.member(jsii_name="cfnProperties")
4675
4830
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
@@ -5031,7 +5186,7 @@ class CfnAuthorizerProps:
5031
5186
  )
5032
5187
 
5033
5188
 
5034
- @jsii.implements(_IInspectable_c2943556)
5189
+ @jsii.implements(_IInspectable_c2943556, _IBasePathMappingRef_79bb1c6e)
5035
5190
  class CfnBasePathMapping(
5036
5191
  _CfnResource_9df397a6,
5037
5192
  metaclass=jsii.JSIIMeta,
@@ -5073,7 +5228,8 @@ class CfnBasePathMapping(
5073
5228
  rest_api_id: typing.Optional[builtins.str] = None,
5074
5229
  stage: typing.Optional[builtins.str] = None,
5075
5230
  ) -> None:
5076
- '''
5231
+ '''Create a new ``AWS::ApiGateway::BasePathMapping``.
5232
+
5077
5233
  :param scope: Scope in which this resource is defined.
5078
5234
  :param id_: Construct identifier for this resource (unique in its scope).
5079
5235
  :param domain_name: The domain name of the BasePathMapping resource to be described.
@@ -5126,6 +5282,12 @@ class CfnBasePathMapping(
5126
5282
  '''The CloudFormation resource type name for this resource class.'''
5127
5283
  return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
5128
5284
 
5285
+ @builtins.property
5286
+ @jsii.member(jsii_name="basePathMappingRef")
5287
+ def base_path_mapping_ref(self) -> _BasePathMappingReference_0fb943e6:
5288
+ '''A reference to a BasePathMapping resource.'''
5289
+ return typing.cast(_BasePathMappingReference_0fb943e6, jsii.get(self, "basePathMappingRef"))
5290
+
5129
5291
  @builtins.property
5130
5292
  @jsii.member(jsii_name="cfnProperties")
5131
5293
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
@@ -5320,7 +5482,7 @@ class CfnBasePathMappingProps:
5320
5482
  )
5321
5483
 
5322
5484
 
5323
- @jsii.implements(_IInspectable_c2943556)
5485
+ @jsii.implements(_IInspectable_c2943556, _IBasePathMappingV2Ref_e433a169)
5324
5486
  class CfnBasePathMappingV2(
5325
5487
  _CfnResource_9df397a6,
5326
5488
  metaclass=jsii.JSIIMeta,
@@ -5360,7 +5522,8 @@ class CfnBasePathMappingV2(
5360
5522
  base_path: typing.Optional[builtins.str] = None,
5361
5523
  stage: typing.Optional[builtins.str] = None,
5362
5524
  ) -> None:
5363
- '''
5525
+ '''Create a new ``AWS::ApiGateway::BasePathMappingV2``.
5526
+
5364
5527
  :param scope: Scope in which this resource is defined.
5365
5528
  :param id: Construct identifier for this resource (unique in its scope).
5366
5529
  :param domain_name_arn: The ARN of the domain name for the BasePathMappingV2 resource to be described.
@@ -5420,6 +5583,12 @@ class CfnBasePathMappingV2(
5420
5583
  '''
5421
5584
  return typing.cast(builtins.str, jsii.get(self, "attrBasePathMappingArn"))
5422
5585
 
5586
+ @builtins.property
5587
+ @jsii.member(jsii_name="basePathMappingV2Ref")
5588
+ def base_path_mapping_v2_ref(self) -> _BasePathMappingV2Reference_bd6138fa:
5589
+ '''A reference to a BasePathMappingV2 resource.'''
5590
+ return typing.cast(_BasePathMappingV2Reference_bd6138fa, jsii.get(self, "basePathMappingV2Ref"))
5591
+
5423
5592
  @builtins.property
5424
5593
  @jsii.member(jsii_name="cfnProperties")
5425
5594
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
@@ -5591,7 +5760,7 @@ class CfnBasePathMappingV2Props:
5591
5760
  )
5592
5761
 
5593
5762
 
5594
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
5763
+ @jsii.implements(_IInspectable_c2943556, _IClientCertificateRef_2a4b2b38, _ITaggable_36806126)
5595
5764
  class CfnClientCertificate(
5596
5765
  _CfnResource_9df397a6,
5597
5766
  metaclass=jsii.JSIIMeta,
@@ -5626,7 +5795,8 @@ class CfnClientCertificate(
5626
5795
  description: typing.Optional[builtins.str] = None,
5627
5796
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
5628
5797
  ) -> None:
5629
- '''
5798
+ '''Create a new ``AWS::ApiGateway::ClientCertificate``.
5799
+
5630
5800
  :param scope: Scope in which this resource is defined.
5631
5801
  :param id: Construct identifier for this resource (unique in its scope).
5632
5802
  :param description: The description of the client certificate.
@@ -5640,6 +5810,27 @@ class CfnClientCertificate(
5640
5810
 
5641
5811
  jsii.create(self.__class__, self, [scope, id, props])
5642
5812
 
5813
+ @jsii.member(jsii_name="fromClientCertificateId")
5814
+ @builtins.classmethod
5815
+ def from_client_certificate_id(
5816
+ cls,
5817
+ scope: _constructs_77d1e7e8.Construct,
5818
+ id: builtins.str,
5819
+ client_certificate_id: builtins.str,
5820
+ ) -> _IClientCertificateRef_2a4b2b38:
5821
+ '''Creates a new IClientCertificateRef from a clientCertificateId.
5822
+
5823
+ :param scope: -
5824
+ :param id: -
5825
+ :param client_certificate_id: -
5826
+ '''
5827
+ if __debug__:
5828
+ type_hints = typing.get_type_hints(_typecheckingstub__0a5e31aa2352a567ea0a97f6b3c305db593bab1d23ed323eab3a574cdbc20b53)
5829
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
5830
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
5831
+ check_type(argname="argument client_certificate_id", value=client_certificate_id, expected_type=type_hints["client_certificate_id"])
5832
+ return typing.cast(_IClientCertificateRef_2a4b2b38, jsii.sinvoke(cls, "fromClientCertificateId", [scope, id, client_certificate_id]))
5833
+
5643
5834
  @jsii.member(jsii_name="inspect")
5644
5835
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
5645
5836
  '''Examines the CloudFormation resource and discloses attributes.
@@ -5686,6 +5877,12 @@ class CfnClientCertificate(
5686
5877
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
5687
5878
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
5688
5879
 
5880
+ @builtins.property
5881
+ @jsii.member(jsii_name="clientCertificateRef")
5882
+ def client_certificate_ref(self) -> _ClientCertificateReference_dc31fb12:
5883
+ '''A reference to a ClientCertificate resource.'''
5884
+ return typing.cast(_ClientCertificateReference_dc31fb12, jsii.get(self, "clientCertificateRef"))
5885
+
5689
5886
  @builtins.property
5690
5887
  @jsii.member(jsii_name="tags")
5691
5888
  def tags(self) -> _TagManager_0a598cb3:
@@ -5795,7 +5992,7 @@ class CfnClientCertificateProps:
5795
5992
  )
5796
5993
 
5797
5994
 
5798
- @jsii.implements(_IInspectable_c2943556)
5995
+ @jsii.implements(_IInspectable_c2943556, _IDeploymentRef_e5a0678c)
5799
5996
  class CfnDeployment(
5800
5997
  _CfnResource_9df397a6,
5801
5998
  metaclass=jsii.JSIIMeta,
@@ -5888,7 +6085,8 @@ class CfnDeployment(
5888
6085
  stage_description: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDeployment.StageDescriptionProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5889
6086
  stage_name: typing.Optional[builtins.str] = None,
5890
6087
  ) -> None:
5891
- '''
6088
+ '''Create a new ``AWS::ApiGateway::Deployment``.
6089
+
5892
6090
  :param scope: Scope in which this resource is defined.
5893
6091
  :param id: Construct identifier for this resource (unique in its scope).
5894
6092
  :param rest_api_id: The string identifier of the associated RestApi.
@@ -5957,6 +6155,12 @@ class CfnDeployment(
5957
6155
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
5958
6156
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
5959
6157
 
6158
+ @builtins.property
6159
+ @jsii.member(jsii_name="deploymentRef")
6160
+ def deployment_ref(self) -> _DeploymentReference_d6bd3ce1:
6161
+ '''A reference to a Deployment resource.'''
6162
+ return typing.cast(_DeploymentReference_d6bd3ce1, jsii.get(self, "deploymentRef"))
6163
+
5960
6164
  @builtins.property
5961
6165
  @jsii.member(jsii_name="restApiId")
5962
6166
  def rest_api_id(self) -> builtins.str:
@@ -6337,6 +6541,8 @@ class CfnDeployment(
6337
6541
  ) -> None:
6338
6542
  '''The ``MethodSetting`` property type configures settings for all methods in a stage.
6339
6543
 
6544
+ If you modify this property type, you must create a new deployment for your API.
6545
+
6340
6546
  The ``MethodSettings`` property of the `Amazon API Gateway Deployment StageDescription <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html>`_ property type contains a list of ``MethodSetting`` property types.
6341
6547
 
6342
6548
  :param cache_data_encrypted: Specifies whether the cached responses are encrypted.
@@ -7116,7 +7322,7 @@ class CfnDeploymentProps:
7116
7322
  )
7117
7323
 
7118
7324
 
7119
- @jsii.implements(_IInspectable_c2943556)
7325
+ @jsii.implements(_IInspectable_c2943556, _IDocumentationPartRef_07703b39)
7120
7326
  class CfnDocumentationPart(
7121
7327
  _CfnResource_9df397a6,
7122
7328
  metaclass=jsii.JSIIMeta,
@@ -7158,7 +7364,8 @@ class CfnDocumentationPart(
7158
7364
  properties: builtins.str,
7159
7365
  rest_api_id: builtins.str,
7160
7366
  ) -> None:
7161
- '''
7367
+ '''Create a new ``AWS::ApiGateway::DocumentationPart``.
7368
+
7162
7369
  :param scope: Scope in which this resource is defined.
7163
7370
  :param id: Construct identifier for this resource (unique in its scope).
7164
7371
  :param location: The location of the targeted API entity of the to-be-created documentation part.
@@ -7219,6 +7426,12 @@ class CfnDocumentationPart(
7219
7426
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
7220
7427
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
7221
7428
 
7429
+ @builtins.property
7430
+ @jsii.member(jsii_name="documentationPartRef")
7431
+ def documentation_part_ref(self) -> _DocumentationPartReference_95653832:
7432
+ '''A reference to a DocumentationPart resource.'''
7433
+ return typing.cast(_DocumentationPartReference_95653832, jsii.get(self, "documentationPartRef"))
7434
+
7222
7435
  @builtins.property
7223
7436
  @jsii.member(jsii_name="location")
7224
7437
  def location(
@@ -7501,7 +7714,7 @@ class CfnDocumentationPartProps:
7501
7714
  )
7502
7715
 
7503
7716
 
7504
- @jsii.implements(_IInspectable_c2943556)
7717
+ @jsii.implements(_IInspectable_c2943556, _IDocumentationVersionRef_bdf6c8eb)
7505
7718
  class CfnDocumentationVersion(
7506
7719
  _CfnResource_9df397a6,
7507
7720
  metaclass=jsii.JSIIMeta,
@@ -7539,7 +7752,8 @@ class CfnDocumentationVersion(
7539
7752
  rest_api_id: builtins.str,
7540
7753
  description: typing.Optional[builtins.str] = None,
7541
7754
  ) -> None:
7542
- '''
7755
+ '''Create a new ``AWS::ApiGateway::DocumentationVersion``.
7756
+
7543
7757
  :param scope: Scope in which this resource is defined.
7544
7758
  :param id: Construct identifier for this resource (unique in its scope).
7545
7759
  :param documentation_version: The version identifier of the to-be-updated documentation version.
@@ -7593,6 +7807,12 @@ class CfnDocumentationVersion(
7593
7807
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
7594
7808
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
7595
7809
 
7810
+ @builtins.property
7811
+ @jsii.member(jsii_name="documentationVersionRef")
7812
+ def documentation_version_ref(self) -> _DocumentationVersionReference_b6913e6e:
7813
+ '''A reference to a DocumentationVersion resource.'''
7814
+ return typing.cast(_DocumentationVersionReference_b6913e6e, jsii.get(self, "documentationVersionRef"))
7815
+
7596
7816
  @builtins.property
7597
7817
  @jsii.member(jsii_name="documentationVersion")
7598
7818
  def documentation_version(self) -> builtins.str:
@@ -7726,7 +7946,7 @@ class CfnDocumentationVersionProps:
7726
7946
  )
7727
7947
 
7728
7948
 
7729
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
7949
+ @jsii.implements(_IInspectable_c2943556, _IDomainNameRef_8b0ccf94, _ITaggable_36806126)
7730
7950
  class CfnDomainName(
7731
7951
  _CfnResource_9df397a6,
7732
7952
  metaclass=jsii.JSIIMeta,
@@ -7734,7 +7954,7 @@ class CfnDomainName(
7734
7954
  ):
7735
7955
  '''The ``AWS::ApiGateway::DomainName`` resource specifies a public custom domain name for your API in API Gateway.
7736
7956
 
7737
- To create a custom domain name for private APIs, use `AWS::ApiGateway::DomainV2 <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2.html>`_ .
7957
+ To create a custom domain name for private APIs, use `AWS::ApiGateway::DomainNameV2 <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2.html>`_ .
7738
7958
 
7739
7959
  You can use a custom domain name to provide a URL that's more intuitive and easier to recall. For more information about using custom domain names, see `Set up Custom Domain Name for an API in API Gateway <https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html>`_ in the *API Gateway Developer Guide* .
7740
7960
 
@@ -7761,6 +7981,7 @@ class CfnDomainName(
7761
7981
  ),
7762
7982
  ownership_verification_certificate_arn="ownershipVerificationCertificateArn",
7763
7983
  regional_certificate_arn="regionalCertificateArn",
7984
+ routing_mode="routingMode",
7764
7985
  security_policy="securityPolicy",
7765
7986
  tags=[CfnTag(
7766
7987
  key="key",
@@ -7780,18 +8001,21 @@ class CfnDomainName(
7780
8001
  mutual_tls_authentication: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDomainName.MutualTlsAuthenticationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7781
8002
  ownership_verification_certificate_arn: typing.Optional[builtins.str] = None,
7782
8003
  regional_certificate_arn: typing.Optional[builtins.str] = None,
8004
+ routing_mode: typing.Optional[builtins.str] = None,
7783
8005
  security_policy: typing.Optional[builtins.str] = None,
7784
8006
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
7785
8007
  ) -> None:
7786
- '''
8008
+ '''Create a new ``AWS::ApiGateway::DomainName``.
8009
+
7787
8010
  :param scope: Scope in which this resource is defined.
7788
8011
  :param id: Construct identifier for this resource (unique in its scope).
7789
- :param certificate_arn: The reference to an AWS -managed certificate that will be used by edge-optimized endpoint or private endpoint for this domain name. AWS Certificate Manager is the only supported source.
8012
+ :param certificate_arn: The reference to an AWS -managed certificate that will be used by edge-optimized endpoint or private endpoint for this domain name. Certificate Manager is the only supported source.
7790
8013
  :param domain_name: The custom domain name as an API host name, for example, ``my-api.example.com`` .
7791
8014
  :param endpoint_configuration: The endpoint configuration of this DomainName showing the endpoint types and IP address types of the domain name.
7792
8015
  :param mutual_tls_authentication: The mutual TLS authentication configuration for a custom domain name. If specified, API Gateway performs two-way authentication between the client and the server. Clients must present a trusted certificate to access your API.
7793
8016
  :param ownership_verification_certificate_arn: The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the RegionalCertificateArn.
7794
- :param regional_certificate_arn: The reference to an AWS -managed certificate that will be used for validating the regional domain name. AWS Certificate Manager is the only supported source.
8017
+ :param regional_certificate_arn: The reference to an AWS -managed certificate that will be used for validating the regional domain name. Certificate Manager is the only supported source.
8018
+ :param routing_mode: The routing mode for this domain name. The routing mode determines how API Gateway sends traffic from your custom domain name to your public APIs. Default: - "BASE_PATH_MAPPING_ONLY"
7795
8019
  :param security_policy: The Transport Layer Security (TLS) version + cipher suite for this DomainName. The valid values are ``TLS_1_0`` and ``TLS_1_2`` .
7796
8020
  :param tags: The collection of tags. Each tag element is associated with a given resource.
7797
8021
  '''
@@ -7806,12 +8030,55 @@ class CfnDomainName(
7806
8030
  mutual_tls_authentication=mutual_tls_authentication,
7807
8031
  ownership_verification_certificate_arn=ownership_verification_certificate_arn,
7808
8032
  regional_certificate_arn=regional_certificate_arn,
8033
+ routing_mode=routing_mode,
7809
8034
  security_policy=security_policy,
7810
8035
  tags=tags,
7811
8036
  )
7812
8037
 
7813
8038
  jsii.create(self.__class__, self, [scope, id, props])
7814
8039
 
8040
+ @jsii.member(jsii_name="fromDomainName")
8041
+ @builtins.classmethod
8042
+ def from_domain_name(
8043
+ cls,
8044
+ scope: _constructs_77d1e7e8.Construct,
8045
+ id: builtins.str,
8046
+ domain_name: builtins.str,
8047
+ ) -> _IDomainNameRef_8b0ccf94:
8048
+ '''Creates a new IDomainNameRef from a domainName.
8049
+
8050
+ :param scope: -
8051
+ :param id: -
8052
+ :param domain_name: -
8053
+ '''
8054
+ if __debug__:
8055
+ type_hints = typing.get_type_hints(_typecheckingstub__7573cabb5591aeca76fca113dbdb083344840ea756b892b5b440934d48a9afb3)
8056
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
8057
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
8058
+ check_type(argname="argument domain_name", value=domain_name, expected_type=type_hints["domain_name"])
8059
+ return typing.cast(_IDomainNameRef_8b0ccf94, jsii.sinvoke(cls, "fromDomainName", [scope, id, domain_name]))
8060
+
8061
+ @jsii.member(jsii_name="fromDomainNameArn")
8062
+ @builtins.classmethod
8063
+ def from_domain_name_arn(
8064
+ cls,
8065
+ scope: _constructs_77d1e7e8.Construct,
8066
+ id: builtins.str,
8067
+ arn: builtins.str,
8068
+ ) -> _IDomainNameRef_8b0ccf94:
8069
+ '''Creates a new IDomainNameRef from an ARN.
8070
+
8071
+ :param scope: -
8072
+ :param id: -
8073
+ :param arn: -
8074
+ '''
8075
+ if __debug__:
8076
+ type_hints = typing.get_type_hints(_typecheckingstub__7594371e62564d813ae77a2f2b52731cbf46dfc26d0b9ee7957708a268f7536f)
8077
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
8078
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
8079
+ check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
8080
+ return typing.cast(_IDomainNameRef_8b0ccf94, jsii.sinvoke(cls, "fromDomainNameArn", [scope, id, arn]))
8081
+
7815
8082
  @jsii.member(jsii_name="inspect")
7816
8083
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
7817
8084
  '''Examines the CloudFormation resource and discloses attributes.
@@ -7866,6 +8133,15 @@ class CfnDomainName(
7866
8133
  '''
7867
8134
  return typing.cast(builtins.str, jsii.get(self, "attrDistributionHostedZoneId"))
7868
8135
 
8136
+ @builtins.property
8137
+ @jsii.member(jsii_name="attrDomainNameArn")
8138
+ def attr_domain_name_arn(self) -> builtins.str:
8139
+ '''The ARN of the domain name.
8140
+
8141
+ :cloudformationAttribute: DomainNameArn
8142
+ '''
8143
+ return typing.cast(builtins.str, jsii.get(self, "attrDomainNameArn"))
8144
+
7869
8145
  @builtins.property
7870
8146
  @jsii.member(jsii_name="attrRegionalDomainName")
7871
8147
  def attr_regional_domain_name(self) -> builtins.str:
@@ -7891,6 +8167,12 @@ class CfnDomainName(
7891
8167
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
7892
8168
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
7893
8169
 
8170
+ @builtins.property
8171
+ @jsii.member(jsii_name="domainNameRef")
8172
+ def domain_name_ref(self) -> _DomainNameReference_f4138423:
8173
+ '''A reference to a DomainName resource.'''
8174
+ return typing.cast(_DomainNameReference_f4138423, jsii.get(self, "domainNameRef"))
8175
+
7894
8176
  @builtins.property
7895
8177
  @jsii.member(jsii_name="tags")
7896
8178
  def tags(self) -> _TagManager_0a598cb3:
@@ -7988,6 +8270,19 @@ class CfnDomainName(
7988
8270
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
7989
8271
  jsii.set(self, "regionalCertificateArn", value) # pyright: ignore[reportArgumentType]
7990
8272
 
8273
+ @builtins.property
8274
+ @jsii.member(jsii_name="routingMode")
8275
+ def routing_mode(self) -> typing.Optional[builtins.str]:
8276
+ '''The routing mode for this domain name.'''
8277
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "routingMode"))
8278
+
8279
+ @routing_mode.setter
8280
+ def routing_mode(self, value: typing.Optional[builtins.str]) -> None:
8281
+ if __debug__:
8282
+ type_hints = typing.get_type_hints(_typecheckingstub__dd7aa5f6176c73c0592dc8b18cb02baf6d8eb11e8fb20244d07a64f574cf3e93)
8283
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8284
+ jsii.set(self, "routingMode", value) # pyright: ignore[reportArgumentType]
8285
+
7991
8286
  @builtins.property
7992
8287
  @jsii.member(jsii_name="securityPolicy")
7993
8288
  def security_policy(self) -> typing.Optional[builtins.str]:
@@ -8170,7 +8465,7 @@ class CfnDomainName(
8170
8465
  )
8171
8466
 
8172
8467
 
8173
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
8468
+ @jsii.implements(_IInspectable_c2943556, _IDomainNameAccessAssociationRef_f9b99574, _ITaggableV2_4e6798f8)
8174
8469
  class CfnDomainNameAccessAssociation(
8175
8470
  _CfnResource_9df397a6,
8176
8471
  metaclass=jsii.JSIIMeta,
@@ -8215,7 +8510,8 @@ class CfnDomainNameAccessAssociation(
8215
8510
  domain_name_arn: builtins.str,
8216
8511
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
8217
8512
  ) -> None:
8218
- '''
8513
+ '''Create a new ``AWS::ApiGateway::DomainNameAccessAssociation``.
8514
+
8219
8515
  :param scope: Scope in which this resource is defined.
8220
8516
  :param id: Construct identifier for this resource (unique in its scope).
8221
8517
  :param access_association_source: The identifier of the domain name access association source. For a ``VPCE`` , the value is the VPC endpoint ID.
@@ -8288,6 +8584,14 @@ class CfnDomainNameAccessAssociation(
8288
8584
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
8289
8585
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
8290
8586
 
8587
+ @builtins.property
8588
+ @jsii.member(jsii_name="domainNameAccessAssociationRef")
8589
+ def domain_name_access_association_ref(
8590
+ self,
8591
+ ) -> _DomainNameAccessAssociationReference_558a7d70:
8592
+ '''A reference to a DomainNameAccessAssociation resource.'''
8593
+ return typing.cast(_DomainNameAccessAssociationReference_558a7d70, jsii.get(self, "domainNameAccessAssociationRef"))
8594
+
8291
8595
  @builtins.property
8292
8596
  @jsii.member(jsii_name="accessAssociationSource")
8293
8597
  def access_association_source(self) -> builtins.str:
@@ -8469,6 +8773,7 @@ class CfnDomainNameAccessAssociationProps:
8469
8773
  "mutual_tls_authentication": "mutualTlsAuthentication",
8470
8774
  "ownership_verification_certificate_arn": "ownershipVerificationCertificateArn",
8471
8775
  "regional_certificate_arn": "regionalCertificateArn",
8776
+ "routing_mode": "routingMode",
8472
8777
  "security_policy": "securityPolicy",
8473
8778
  "tags": "tags",
8474
8779
  },
@@ -8483,17 +8788,19 @@ class CfnDomainNameProps:
8483
8788
  mutual_tls_authentication: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDomainName.MutualTlsAuthenticationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8484
8789
  ownership_verification_certificate_arn: typing.Optional[builtins.str] = None,
8485
8790
  regional_certificate_arn: typing.Optional[builtins.str] = None,
8791
+ routing_mode: typing.Optional[builtins.str] = None,
8486
8792
  security_policy: typing.Optional[builtins.str] = None,
8487
8793
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
8488
8794
  ) -> None:
8489
8795
  '''Properties for defining a ``CfnDomainName``.
8490
8796
 
8491
- :param certificate_arn: The reference to an AWS -managed certificate that will be used by edge-optimized endpoint or private endpoint for this domain name. AWS Certificate Manager is the only supported source.
8797
+ :param certificate_arn: The reference to an AWS -managed certificate that will be used by edge-optimized endpoint or private endpoint for this domain name. Certificate Manager is the only supported source.
8492
8798
  :param domain_name: The custom domain name as an API host name, for example, ``my-api.example.com`` .
8493
8799
  :param endpoint_configuration: The endpoint configuration of this DomainName showing the endpoint types and IP address types of the domain name.
8494
8800
  :param mutual_tls_authentication: The mutual TLS authentication configuration for a custom domain name. If specified, API Gateway performs two-way authentication between the client and the server. Clients must present a trusted certificate to access your API.
8495
8801
  :param ownership_verification_certificate_arn: The ARN of the public certificate issued by ACM to validate ownership of your custom domain. Only required when configuring mutual TLS and using an ACM imported or private CA certificate ARN as the RegionalCertificateArn.
8496
- :param regional_certificate_arn: The reference to an AWS -managed certificate that will be used for validating the regional domain name. AWS Certificate Manager is the only supported source.
8802
+ :param regional_certificate_arn: The reference to an AWS -managed certificate that will be used for validating the regional domain name. Certificate Manager is the only supported source.
8803
+ :param routing_mode: The routing mode for this domain name. The routing mode determines how API Gateway sends traffic from your custom domain name to your public APIs. Default: - "BASE_PATH_MAPPING_ONLY"
8497
8804
  :param security_policy: The Transport Layer Security (TLS) version + cipher suite for this DomainName. The valid values are ``TLS_1_0`` and ``TLS_1_2`` .
8498
8805
  :param tags: The collection of tags. Each tag element is associated with a given resource.
8499
8806
 
@@ -8519,6 +8826,7 @@ class CfnDomainNameProps:
8519
8826
  ),
8520
8827
  ownership_verification_certificate_arn="ownershipVerificationCertificateArn",
8521
8828
  regional_certificate_arn="regionalCertificateArn",
8829
+ routing_mode="routingMode",
8522
8830
  security_policy="securityPolicy",
8523
8831
  tags=[CfnTag(
8524
8832
  key="key",
@@ -8534,6 +8842,7 @@ class CfnDomainNameProps:
8534
8842
  check_type(argname="argument mutual_tls_authentication", value=mutual_tls_authentication, expected_type=type_hints["mutual_tls_authentication"])
8535
8843
  check_type(argname="argument ownership_verification_certificate_arn", value=ownership_verification_certificate_arn, expected_type=type_hints["ownership_verification_certificate_arn"])
8536
8844
  check_type(argname="argument regional_certificate_arn", value=regional_certificate_arn, expected_type=type_hints["regional_certificate_arn"])
8845
+ check_type(argname="argument routing_mode", value=routing_mode, expected_type=type_hints["routing_mode"])
8537
8846
  check_type(argname="argument security_policy", value=security_policy, expected_type=type_hints["security_policy"])
8538
8847
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
8539
8848
  self._values: typing.Dict[builtins.str, typing.Any] = {}
@@ -8549,6 +8858,8 @@ class CfnDomainNameProps:
8549
8858
  self._values["ownership_verification_certificate_arn"] = ownership_verification_certificate_arn
8550
8859
  if regional_certificate_arn is not None:
8551
8860
  self._values["regional_certificate_arn"] = regional_certificate_arn
8861
+ if routing_mode is not None:
8862
+ self._values["routing_mode"] = routing_mode
8552
8863
  if security_policy is not None:
8553
8864
  self._values["security_policy"] = security_policy
8554
8865
  if tags is not None:
@@ -8558,7 +8869,7 @@ class CfnDomainNameProps:
8558
8869
  def certificate_arn(self) -> typing.Optional[builtins.str]:
8559
8870
  '''The reference to an AWS -managed certificate that will be used by edge-optimized endpoint or private endpoint for this domain name.
8560
8871
 
8561
- AWS Certificate Manager is the only supported source.
8872
+ Certificate Manager is the only supported source.
8562
8873
 
8563
8874
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-certificatearn
8564
8875
  '''
@@ -8613,13 +8924,26 @@ class CfnDomainNameProps:
8613
8924
  def regional_certificate_arn(self) -> typing.Optional[builtins.str]:
8614
8925
  '''The reference to an AWS -managed certificate that will be used for validating the regional domain name.
8615
8926
 
8616
- AWS Certificate Manager is the only supported source.
8927
+ Certificate Manager is the only supported source.
8617
8928
 
8618
8929
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-regionalcertificatearn
8619
8930
  '''
8620
8931
  result = self._values.get("regional_certificate_arn")
8621
8932
  return typing.cast(typing.Optional[builtins.str], result)
8622
8933
 
8934
+ @builtins.property
8935
+ def routing_mode(self) -> typing.Optional[builtins.str]:
8936
+ '''The routing mode for this domain name.
8937
+
8938
+ The routing mode determines how API Gateway sends traffic from your custom domain name to your public APIs.
8939
+
8940
+ :default: - "BASE_PATH_MAPPING_ONLY"
8941
+
8942
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html#cfn-apigateway-domainname-routingmode
8943
+ '''
8944
+ result = self._values.get("routing_mode")
8945
+ return typing.cast(typing.Optional[builtins.str], result)
8946
+
8623
8947
  @builtins.property
8624
8948
  def security_policy(self) -> typing.Optional[builtins.str]:
8625
8949
  '''The Transport Layer Security (TLS) version + cipher suite for this DomainName.
@@ -8654,7 +8978,7 @@ class CfnDomainNameProps:
8654
8978
  )
8655
8979
 
8656
8980
 
8657
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
8981
+ @jsii.implements(_IInspectable_c2943556, _IDomainNameV2Ref_e2e9faf2, _ITaggableV2_4e6798f8)
8658
8982
  class CfnDomainNameV2(
8659
8983
  _CfnResource_9df397a6,
8660
8984
  metaclass=jsii.JSIIMeta,
@@ -8684,6 +9008,7 @@ class CfnDomainNameV2(
8684
9008
  types=["types"]
8685
9009
  ),
8686
9010
  policy=policy,
9011
+ routing_mode="routingMode",
8687
9012
  security_policy="securityPolicy",
8688
9013
  tags=[CfnTag(
8689
9014
  key="key",
@@ -8701,16 +9026,19 @@ class CfnDomainNameV2(
8701
9026
  domain_name: typing.Optional[builtins.str] = None,
8702
9027
  endpoint_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDomainNameV2.EndpointConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
8703
9028
  policy: typing.Any = None,
9029
+ routing_mode: typing.Optional[builtins.str] = None,
8704
9030
  security_policy: typing.Optional[builtins.str] = None,
8705
9031
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
8706
9032
  ) -> None:
8707
- '''
9033
+ '''Create a new ``AWS::ApiGateway::DomainNameV2``.
9034
+
8708
9035
  :param scope: Scope in which this resource is defined.
8709
9036
  :param id: Construct identifier for this resource (unique in its scope).
8710
9037
  :param certificate_arn: The reference to an AWS -managed certificate that will be used by the private endpoint for this domain name. AWS Certificate Manager is the only supported source.
8711
9038
  :param domain_name: Represents a custom domain name as a user-friendly host name of an API (RestApi).
8712
9039
  :param endpoint_configuration: The endpoint configuration to indicate the types of endpoints an API (RestApi) or its custom domain name (DomainName) has and the IP address types that can invoke it.
8713
9040
  :param policy: A stringified JSON policy document that applies to the ``execute-api`` service for this DomainName regardless of the caller and Method configuration. You can use ``Fn::ToJsonString`` to enter your ``policy`` . For more information, see `Fn::ToJsonString <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ToJsonString.html>`_ .
9041
+ :param routing_mode: The routing mode for this domain name. The routing mode determines how API Gateway sends traffic from your custom domain name to your private APIs. Default: - "BASE_PATH_MAPPING_ONLY"
8714
9042
  :param security_policy: The Transport Layer Security (TLS) version + cipher suite for this DomainName. Only ``TLS_1_2`` is supported.
8715
9043
  :param tags: The collection of tags. Each tag element is associated with a given resource.
8716
9044
  '''
@@ -8723,6 +9051,7 @@ class CfnDomainNameV2(
8723
9051
  domain_name=domain_name,
8724
9052
  endpoint_configuration=endpoint_configuration,
8725
9053
  policy=policy,
9054
+ routing_mode=routing_mode,
8726
9055
  security_policy=security_policy,
8727
9056
  tags=tags,
8728
9057
  )
@@ -8788,6 +9117,12 @@ class CfnDomainNameV2(
8788
9117
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
8789
9118
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
8790
9119
 
9120
+ @builtins.property
9121
+ @jsii.member(jsii_name="domainNameV2Ref")
9122
+ def domain_name_v2_ref(self) -> _DomainNameV2Reference_ca1122a1:
9123
+ '''A reference to a DomainNameV2 resource.'''
9124
+ return typing.cast(_DomainNameV2Reference_ca1122a1, jsii.get(self, "domainNameV2Ref"))
9125
+
8791
9126
  @builtins.property
8792
9127
  @jsii.member(jsii_name="certificateArn")
8793
9128
  def certificate_arn(self) -> typing.Optional[builtins.str]:
@@ -8845,6 +9180,19 @@ class CfnDomainNameV2(
8845
9180
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8846
9181
  jsii.set(self, "policy", value) # pyright: ignore[reportArgumentType]
8847
9182
 
9183
+ @builtins.property
9184
+ @jsii.member(jsii_name="routingMode")
9185
+ def routing_mode(self) -> typing.Optional[builtins.str]:
9186
+ '''The routing mode for this domain name.'''
9187
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "routingMode"))
9188
+
9189
+ @routing_mode.setter
9190
+ def routing_mode(self, value: typing.Optional[builtins.str]) -> None:
9191
+ if __debug__:
9192
+ type_hints = typing.get_type_hints(_typecheckingstub__3941c41ed4b2ba9b551f85789cc8fe17846ac57ce1372a7894034cd0c04cc4a9)
9193
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
9194
+ jsii.set(self, "routingMode", value) # pyright: ignore[reportArgumentType]
9195
+
8848
9196
  @builtins.property
8849
9197
  @jsii.member(jsii_name="securityPolicy")
8850
9198
  def security_policy(self) -> typing.Optional[builtins.str]:
@@ -8885,7 +9233,7 @@ class CfnDomainNameV2(
8885
9233
  ) -> None:
8886
9234
  '''The endpoint configuration to indicate the types of endpoints an API (RestApi) or its custom domain name (DomainName) has and the IP address types that can invoke it.
8887
9235
 
8888
- :param ip_address_type:
9236
+ :param ip_address_type: The IP address types that can invoke an API (RestApi) or a DomainName. Use ``ipv4`` to allow only IPv4 addresses to invoke an API or DomainName, or use ``dualstack`` to allow both IPv4 and IPv6 addresses to invoke an API or a DomainName. For the ``PRIVATE`` endpoint type, only ``dualstack`` is supported.
8889
9237
  :param types: A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"`` . For a regional API and its custom domain name, the endpoint type is ``REGIONAL`` . For a private API, the endpoint type is ``PRIVATE`` .
8890
9238
 
8891
9239
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainnamev2-endpointconfiguration.html
@@ -8914,7 +9262,10 @@ class CfnDomainNameV2(
8914
9262
 
8915
9263
  @builtins.property
8916
9264
  def ip_address_type(self) -> typing.Optional[builtins.str]:
8917
- '''
9265
+ '''The IP address types that can invoke an API (RestApi) or a DomainName.
9266
+
9267
+ Use ``ipv4`` to allow only IPv4 addresses to invoke an API or DomainName, or use ``dualstack`` to allow both IPv4 and IPv6 addresses to invoke an API or a DomainName. For the ``PRIVATE`` endpoint type, only ``dualstack`` is supported.
9268
+
8918
9269
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainnamev2-endpointconfiguration.html#cfn-apigateway-domainnamev2-endpointconfiguration-ipaddresstype
8919
9270
  '''
8920
9271
  result = self._values.get("ip_address_type")
@@ -8951,6 +9302,7 @@ class CfnDomainNameV2(
8951
9302
  "domain_name": "domainName",
8952
9303
  "endpoint_configuration": "endpointConfiguration",
8953
9304
  "policy": "policy",
9305
+ "routing_mode": "routingMode",
8954
9306
  "security_policy": "securityPolicy",
8955
9307
  "tags": "tags",
8956
9308
  },
@@ -8963,6 +9315,7 @@ class CfnDomainNameV2Props:
8963
9315
  domain_name: typing.Optional[builtins.str] = None,
8964
9316
  endpoint_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDomainNameV2.EndpointConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8965
9317
  policy: typing.Any = None,
9318
+ routing_mode: typing.Optional[builtins.str] = None,
8966
9319
  security_policy: typing.Optional[builtins.str] = None,
8967
9320
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
8968
9321
  ) -> None:
@@ -8972,6 +9325,7 @@ class CfnDomainNameV2Props:
8972
9325
  :param domain_name: Represents a custom domain name as a user-friendly host name of an API (RestApi).
8973
9326
  :param endpoint_configuration: The endpoint configuration to indicate the types of endpoints an API (RestApi) or its custom domain name (DomainName) has and the IP address types that can invoke it.
8974
9327
  :param policy: A stringified JSON policy document that applies to the ``execute-api`` service for this DomainName regardless of the caller and Method configuration. You can use ``Fn::ToJsonString`` to enter your ``policy`` . For more information, see `Fn::ToJsonString <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ToJsonString.html>`_ .
9328
+ :param routing_mode: The routing mode for this domain name. The routing mode determines how API Gateway sends traffic from your custom domain name to your private APIs. Default: - "BASE_PATH_MAPPING_ONLY"
8975
9329
  :param security_policy: The Transport Layer Security (TLS) version + cipher suite for this DomainName. Only ``TLS_1_2`` is supported.
8976
9330
  :param tags: The collection of tags. Each tag element is associated with a given resource.
8977
9331
 
@@ -8994,6 +9348,7 @@ class CfnDomainNameV2Props:
8994
9348
  types=["types"]
8995
9349
  ),
8996
9350
  policy=policy,
9351
+ routing_mode="routingMode",
8997
9352
  security_policy="securityPolicy",
8998
9353
  tags=[CfnTag(
8999
9354
  key="key",
@@ -9007,6 +9362,7 @@ class CfnDomainNameV2Props:
9007
9362
  check_type(argname="argument domain_name", value=domain_name, expected_type=type_hints["domain_name"])
9008
9363
  check_type(argname="argument endpoint_configuration", value=endpoint_configuration, expected_type=type_hints["endpoint_configuration"])
9009
9364
  check_type(argname="argument policy", value=policy, expected_type=type_hints["policy"])
9365
+ check_type(argname="argument routing_mode", value=routing_mode, expected_type=type_hints["routing_mode"])
9010
9366
  check_type(argname="argument security_policy", value=security_policy, expected_type=type_hints["security_policy"])
9011
9367
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
9012
9368
  self._values: typing.Dict[builtins.str, typing.Any] = {}
@@ -9018,6 +9374,8 @@ class CfnDomainNameV2Props:
9018
9374
  self._values["endpoint_configuration"] = endpoint_configuration
9019
9375
  if policy is not None:
9020
9376
  self._values["policy"] = policy
9377
+ if routing_mode is not None:
9378
+ self._values["routing_mode"] = routing_mode
9021
9379
  if security_policy is not None:
9022
9380
  self._values["security_policy"] = security_policy
9023
9381
  if tags is not None:
@@ -9065,6 +9423,19 @@ class CfnDomainNameV2Props:
9065
9423
  result = self._values.get("policy")
9066
9424
  return typing.cast(typing.Any, result)
9067
9425
 
9426
+ @builtins.property
9427
+ def routing_mode(self) -> typing.Optional[builtins.str]:
9428
+ '''The routing mode for this domain name.
9429
+
9430
+ The routing mode determines how API Gateway sends traffic from your custom domain name to your private APIs.
9431
+
9432
+ :default: - "BASE_PATH_MAPPING_ONLY"
9433
+
9434
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2.html#cfn-apigateway-domainnamev2-routingmode
9435
+ '''
9436
+ result = self._values.get("routing_mode")
9437
+ return typing.cast(typing.Optional[builtins.str], result)
9438
+
9068
9439
  @builtins.property
9069
9440
  def security_policy(self) -> typing.Optional[builtins.str]:
9070
9441
  '''The Transport Layer Security (TLS) version + cipher suite for this DomainName.
@@ -9099,7 +9470,7 @@ class CfnDomainNameV2Props:
9099
9470
  )
9100
9471
 
9101
9472
 
9102
- @jsii.implements(_IInspectable_c2943556)
9473
+ @jsii.implements(_IInspectable_c2943556, _IGatewayResponseRef_d5aa66ef)
9103
9474
  class CfnGatewayResponse(
9104
9475
  _CfnResource_9df397a6,
9105
9476
  metaclass=jsii.JSIIMeta,
@@ -9145,7 +9516,8 @@ class CfnGatewayResponse(
9145
9516
  response_templates: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
9146
9517
  status_code: typing.Optional[builtins.str] = None,
9147
9518
  ) -> None:
9148
- '''
9519
+ '''Create a new ``AWS::ApiGateway::GatewayResponse``.
9520
+
9149
9521
  :param scope: Scope in which this resource is defined.
9150
9522
  :param id: Construct identifier for this resource (unique in its scope).
9151
9523
  :param response_type: The response type of the associated GatewayResponse.
@@ -9214,6 +9586,12 @@ class CfnGatewayResponse(
9214
9586
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
9215
9587
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
9216
9588
 
9589
+ @builtins.property
9590
+ @jsii.member(jsii_name="gatewayResponseRef")
9591
+ def gateway_response_ref(self) -> _GatewayResponseReference_0f1f239c:
9592
+ '''A reference to a GatewayResponse resource.'''
9593
+ return typing.cast(_GatewayResponseReference_0f1f239c, jsii.get(self, "gatewayResponseRef"))
9594
+
9217
9595
  @builtins.property
9218
9596
  @jsii.member(jsii_name="responseType")
9219
9597
  def response_type(self) -> builtins.str:
@@ -9423,7 +9801,7 @@ class CfnGatewayResponseProps:
9423
9801
  )
9424
9802
 
9425
9803
 
9426
- @jsii.implements(_IInspectable_c2943556)
9804
+ @jsii.implements(_IInspectable_c2943556, _IMethodRef_6ea24188)
9427
9805
  class CfnMethod(
9428
9806
  _CfnResource_9df397a6,
9429
9807
  metaclass=jsii.JSIIMeta,
@@ -9482,6 +9860,7 @@ class CfnMethod(
9482
9860
  request_templates={
9483
9861
  "request_templates_key": "requestTemplates"
9484
9862
  },
9863
+ response_transfer_mode="responseTransferMode",
9485
9864
  timeout_in_millis=123,
9486
9865
  uri="uri"
9487
9866
  ),
@@ -9526,7 +9905,8 @@ class CfnMethod(
9526
9905
  request_parameters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[builtins.bool, _IResolvable_da3f097b]]]] = None,
9527
9906
  request_validator_id: typing.Optional[builtins.str] = None,
9528
9907
  ) -> None:
9529
- '''
9908
+ '''Create a new ``AWS::ApiGateway::Method``.
9909
+
9530
9910
  :param scope: Scope in which this resource is defined.
9531
9911
  :param id: Construct identifier for this resource (unique in its scope).
9532
9912
  :param http_method: The method's HTTP verb.
@@ -9600,6 +9980,12 @@ class CfnMethod(
9600
9980
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
9601
9981
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
9602
9982
 
9983
+ @builtins.property
9984
+ @jsii.member(jsii_name="methodRef")
9985
+ def method_ref(self) -> _MethodReference_cf812dcd:
9986
+ '''A reference to a Method resource.'''
9987
+ return typing.cast(_MethodReference_cf812dcd, jsii.get(self, "methodRef"))
9988
+
9603
9989
  @builtins.property
9604
9990
  @jsii.member(jsii_name="httpMethod")
9605
9991
  def http_method(self) -> builtins.str:
@@ -9813,6 +10199,7 @@ class CfnMethod(
9813
10199
  "passthrough_behavior": "passthroughBehavior",
9814
10200
  "request_parameters": "requestParameters",
9815
10201
  "request_templates": "requestTemplates",
10202
+ "response_transfer_mode": "responseTransferMode",
9816
10203
  "timeout_in_millis": "timeoutInMillis",
9817
10204
  "uri": "uri",
9818
10205
  },
@@ -9833,6 +10220,7 @@ class CfnMethod(
9833
10220
  passthrough_behavior: typing.Optional[builtins.str] = None,
9834
10221
  request_parameters: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
9835
10222
  request_templates: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
10223
+ response_transfer_mode: typing.Optional[builtins.str] = None,
9836
10224
  timeout_in_millis: typing.Optional[jsii.Number] = None,
9837
10225
  uri: typing.Optional[builtins.str] = None,
9838
10226
  ) -> None:
@@ -9850,7 +10238,8 @@ class CfnMethod(
9850
10238
  :param passthrough_behavior: Specifies how the method request body of an unmapped content type will be passed through the integration request to the back end without transformation. A content type is unmapped if no mapping template is defined in the integration or the content type does not match any of the mapped content types, as specified in ``requestTemplates`` . The valid value is one of the following: ``WHEN_NO_MATCH`` : passes the method request body through the integration request to the back end without transformation when the method request content type does not match any content type associated with the mapping templates defined in the integration request. ``WHEN_NO_TEMPLATES`` : passes the method request body through the integration request to the back end without transformation when no mapping template is defined in the integration request. If a template is defined when this option is selected, the method request of an unmapped content-type will be rejected with an HTTP 415 Unsupported Media Type response. ``NEVER`` : rejects the method request with an HTTP 415 Unsupported Media Type response when either the method request content type does not match any content type associated with the mapping templates defined in the integration request or no mapping template is defined in the integration request.
9851
10239
  :param request_parameters: A key-value map specifying request parameters that are passed from the method request to the back end. The key is an integration request parameter name and the associated value is a method request parameter value or static value that must be enclosed within single quotes and pre-encoded as required by the back end. The method request parameter value must match the pattern of ``method.request.{location}.{name}`` , where ``location`` is ``querystring`` , ``path`` , or ``header`` and ``name`` must be a valid and unique method request parameter name.
9852
10240
  :param request_templates: Represents a map of Velocity templates that are applied on the request payload based on the value of the Content-Type header sent by the client. The content type value is the key in this map, and the template (as a String) is the value.
9853
- :param timeout_in_millis: Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.
10241
+ :param response_transfer_mode: Default: - "BUFFERED"
10242
+ :param timeout_in_millis: Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds. You can increase the default value to longer than 29 seconds for Regional or private APIs only.
9854
10243
  :param uri: Specifies Uniform Resource Identifier (URI) of the integration endpoint. For ``HTTP`` or ``HTTP_PROXY`` integrations, the URI must be a fully formed, encoded HTTP(S) URL according to the RFC-3986 specification for standard integrations. If ``connectionType`` is ``VPC_LINK`` specify the Network Load Balancer DNS name. For ``AWS`` or ``AWS_PROXY`` integrations, the URI is of the form ``arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}`` . Here, {Region} is the API Gateway region (e.g., us-east-1); {service} is the name of the integrated AWS service (e.g., s3); and {subdomain} is a designated subdomain supported by certain AWS service for fast host-name lookup. action can be used for an AWS service action-based API, using an Action={name}&{p1}={v1}&p2={v2}... query string. The ensuing {service_api} refers to a supported action {name} plus any required input parameters. Alternatively, path can be used for an AWS service path-based API. The ensuing service_api refers to the path to an AWS service resource, including the region of the integrated AWS service, if applicable. For example, for integration with the S3 API of GetObject, the uri can be either ``arn:aws:apigateway:us-west-2:s3:action/GetObject&Bucket={bucket}&Key={key}`` or ``arn:aws:apigateway:us-west-2:s3:path/{bucket}/{key}``
9855
10244
 
9856
10245
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integration.html
@@ -9893,6 +10282,7 @@ class CfnMethod(
9893
10282
  request_templates={
9894
10283
  "request_templates_key": "requestTemplates"
9895
10284
  },
10285
+ response_transfer_mode="responseTransferMode",
9896
10286
  timeout_in_millis=123,
9897
10287
  uri="uri"
9898
10288
  )
@@ -9911,6 +10301,7 @@ class CfnMethod(
9911
10301
  check_type(argname="argument passthrough_behavior", value=passthrough_behavior, expected_type=type_hints["passthrough_behavior"])
9912
10302
  check_type(argname="argument request_parameters", value=request_parameters, expected_type=type_hints["request_parameters"])
9913
10303
  check_type(argname="argument request_templates", value=request_templates, expected_type=type_hints["request_templates"])
10304
+ check_type(argname="argument response_transfer_mode", value=response_transfer_mode, expected_type=type_hints["response_transfer_mode"])
9914
10305
  check_type(argname="argument timeout_in_millis", value=timeout_in_millis, expected_type=type_hints["timeout_in_millis"])
9915
10306
  check_type(argname="argument uri", value=uri, expected_type=type_hints["uri"])
9916
10307
  self._values: typing.Dict[builtins.str, typing.Any] = {
@@ -9938,6 +10329,8 @@ class CfnMethod(
9938
10329
  self._values["request_parameters"] = request_parameters
9939
10330
  if request_templates is not None:
9940
10331
  self._values["request_templates"] = request_templates
10332
+ if response_transfer_mode is not None:
10333
+ self._values["response_transfer_mode"] = response_transfer_mode
9941
10334
  if timeout_in_millis is not None:
9942
10335
  self._values["timeout_in_millis"] = timeout_in_millis
9943
10336
  if uri is not None:
@@ -10080,11 +10473,21 @@ class CfnMethod(
10080
10473
  result = self._values.get("request_templates")
10081
10474
  return typing.cast(typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]], result)
10082
10475
 
10476
+ @builtins.property
10477
+ def response_transfer_mode(self) -> typing.Optional[builtins.str]:
10478
+ '''
10479
+ :default: - "BUFFERED"
10480
+
10481
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integration.html#cfn-apigateway-method-integration-responsetransfermode
10482
+ '''
10483
+ result = self._values.get("response_transfer_mode")
10484
+ return typing.cast(typing.Optional[builtins.str], result)
10485
+
10083
10486
  @builtins.property
10084
10487
  def timeout_in_millis(self) -> typing.Optional[jsii.Number]:
10085
10488
  '''Custom timeout between 50 and 29,000 milliseconds.
10086
10489
 
10087
- The default value is 29,000 milliseconds or 29 seconds.
10490
+ The default value is 29,000 milliseconds or 29 seconds. You can increase the default value to longer than 29 seconds for Regional or private APIs only.
10088
10491
 
10089
10492
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integration.html#cfn-apigateway-method-integration-timeoutinmillis
10090
10493
  '''
@@ -10465,6 +10868,7 @@ class CfnMethodProps:
10465
10868
  request_templates={
10466
10869
  "request_templates_key": "requestTemplates"
10467
10870
  },
10871
+ response_transfer_mode="responseTransferMode",
10468
10872
  timeout_in_millis=123,
10469
10873
  uri="uri"
10470
10874
  ),
@@ -10685,7 +11089,7 @@ class CfnMethodProps:
10685
11089
  )
10686
11090
 
10687
11091
 
10688
- @jsii.implements(_IInspectable_c2943556)
11092
+ @jsii.implements(_IInspectable_c2943556, _IModelRef_19f34fa7)
10689
11093
  class CfnModel(
10690
11094
  _CfnResource_9df397a6,
10691
11095
  metaclass=jsii.JSIIMeta,
@@ -10727,7 +11131,8 @@ class CfnModel(
10727
11131
  name: typing.Optional[builtins.str] = None,
10728
11132
  schema: typing.Any = None,
10729
11133
  ) -> None:
10730
- '''
11134
+ '''Create a new ``AWS::ApiGateway::Model``.
11135
+
10731
11136
  :param scope: Scope in which this resource is defined.
10732
11137
  :param id: Construct identifier for this resource (unique in its scope).
10733
11138
  :param rest_api_id: The string identifier of the associated RestApi.
@@ -10785,6 +11190,12 @@ class CfnModel(
10785
11190
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
10786
11191
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
10787
11192
 
11193
+ @builtins.property
11194
+ @jsii.member(jsii_name="modelRef")
11195
+ def model_ref(self) -> _ModelReference_19c194a0:
11196
+ '''A reference to a Model resource.'''
11197
+ return typing.cast(_ModelReference_19c194a0, jsii.get(self, "modelRef"))
11198
+
10788
11199
  @builtins.property
10789
11200
  @jsii.member(jsii_name="restApiId")
10790
11201
  def rest_api_id(self) -> builtins.str:
@@ -10985,7 +11396,7 @@ class CfnModelProps:
10985
11396
  )
10986
11397
 
10987
11398
 
10988
- @jsii.implements(_IInspectable_c2943556)
11399
+ @jsii.implements(_IInspectable_c2943556, _IRequestValidatorRef_ad0e2de5)
10989
11400
  class CfnRequestValidator(
10990
11401
  _CfnResource_9df397a6,
10991
11402
  metaclass=jsii.JSIIMeta,
@@ -11025,7 +11436,8 @@ class CfnRequestValidator(
11025
11436
  validate_request_body: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
11026
11437
  validate_request_parameters: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
11027
11438
  ) -> None:
11028
- '''
11439
+ '''Create a new ``AWS::ApiGateway::RequestValidator``.
11440
+
11029
11441
  :param scope: Scope in which this resource is defined.
11030
11442
  :param id: Construct identifier for this resource (unique in its scope).
11031
11443
  :param rest_api_id: The string identifier of the associated RestApi.
@@ -11092,6 +11504,12 @@ class CfnRequestValidator(
11092
11504
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
11093
11505
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
11094
11506
 
11507
+ @builtins.property
11508
+ @jsii.member(jsii_name="requestValidatorRef")
11509
+ def request_validator_ref(self) -> _RequestValidatorReference_432e1849:
11510
+ '''A reference to a RequestValidator resource.'''
11511
+ return typing.cast(_RequestValidatorReference_432e1849, jsii.get(self, "requestValidatorRef"))
11512
+
11095
11513
  @builtins.property
11096
11514
  @jsii.member(jsii_name="restApiId")
11097
11515
  def rest_api_id(self) -> builtins.str:
@@ -11268,7 +11686,7 @@ class CfnRequestValidatorProps:
11268
11686
  )
11269
11687
 
11270
11688
 
11271
- @jsii.implements(_IInspectable_c2943556)
11689
+ @jsii.implements(_IInspectable_c2943556, _IResourceRef_c7defb81)
11272
11690
  class CfnResource(
11273
11691
  _CfnResource_9df397a6,
11274
11692
  metaclass=jsii.JSIIMeta,
@@ -11302,7 +11720,8 @@ class CfnResource(
11302
11720
  path_part: builtins.str,
11303
11721
  rest_api_id: builtins.str,
11304
11722
  ) -> None:
11305
- '''
11723
+ '''Create a new ``AWS::ApiGateway::Resource``.
11724
+
11306
11725
  :param scope: Scope in which this resource is defined.
11307
11726
  :param id: Construct identifier for this resource (unique in its scope).
11308
11727
  :param parent_id: The parent resource's identifier.
@@ -11365,6 +11784,12 @@ class CfnResource(
11365
11784
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
11366
11785
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
11367
11786
 
11787
+ @builtins.property
11788
+ @jsii.member(jsii_name="resourceRef")
11789
+ def resource_ref(self) -> _ResourceReference_c72d8a5a:
11790
+ '''A reference to a Resource resource.'''
11791
+ return typing.cast(_ResourceReference_c72d8a5a, jsii.get(self, "resourceRef"))
11792
+
11368
11793
  @builtins.property
11369
11794
  @jsii.member(jsii_name="parentId")
11370
11795
  def parent_id(self) -> builtins.str:
@@ -11496,7 +11921,7 @@ class CfnResourceProps:
11496
11921
  )
11497
11922
 
11498
11923
 
11499
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
11924
+ @jsii.implements(_IInspectable_c2943556, _IRestApiRef_72dcbda0, _ITaggable_36806126)
11500
11925
  class CfnRestApi(
11501
11926
  _CfnResource_9df397a6,
11502
11927
  metaclass=jsii.JSIIMeta,
@@ -11548,6 +11973,7 @@ class CfnRestApi(
11548
11973
  "parameters_key": "parameters"
11549
11974
  },
11550
11975
  policy=policy,
11976
+ security_policy="securityPolicy",
11551
11977
  tags=[CfnTag(
11552
11978
  key="key",
11553
11979
  value="value"
@@ -11574,9 +12000,11 @@ class CfnRestApi(
11574
12000
  name: typing.Optional[builtins.str] = None,
11575
12001
  parameters: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
11576
12002
  policy: typing.Any = None,
12003
+ security_policy: typing.Optional[builtins.str] = None,
11577
12004
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
11578
12005
  ) -> None:
11579
- '''
12006
+ '''Create a new ``AWS::ApiGateway::RestApi``.
12007
+
11580
12008
  :param scope: Scope in which this resource is defined.
11581
12009
  :param id: Construct identifier for this resource (unique in its scope).
11582
12010
  :param api_key_source_type: The source of the API key for metering requests according to a usage plan. Valid values are: ``HEADER`` to read the API key from the ``X-API-Key`` header of a request. ``AUTHORIZER`` to read the API key from the ``UsageIdentifierKey`` from a custom authorizer.
@@ -11593,6 +12021,7 @@ class CfnRestApi(
11593
12021
  :param name: The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification.
11594
12022
  :param parameters: Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'`` .
11595
12023
  :param policy: A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"`` .
12024
+ :param security_policy:
11596
12025
  :param tags: The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:`` . The tag value can be up to 256 characters.
11597
12026
  '''
11598
12027
  if __debug__:
@@ -11614,11 +12043,33 @@ class CfnRestApi(
11614
12043
  name=name,
11615
12044
  parameters=parameters,
11616
12045
  policy=policy,
12046
+ security_policy=security_policy,
11617
12047
  tags=tags,
11618
12048
  )
11619
12049
 
11620
12050
  jsii.create(self.__class__, self, [scope, id, props])
11621
12051
 
12052
+ @jsii.member(jsii_name="fromRestApiId")
12053
+ @builtins.classmethod
12054
+ def from_rest_api_id(
12055
+ cls,
12056
+ scope: _constructs_77d1e7e8.Construct,
12057
+ id: builtins.str,
12058
+ rest_api_id: builtins.str,
12059
+ ) -> _IRestApiRef_72dcbda0:
12060
+ '''Creates a new IRestApiRef from a restApiId.
12061
+
12062
+ :param scope: -
12063
+ :param id: -
12064
+ :param rest_api_id: -
12065
+ '''
12066
+ if __debug__:
12067
+ type_hints = typing.get_type_hints(_typecheckingstub__f098f990bc47fb67b4869dd0692c7805f635c5b6966164b81e7977eedb0e23a7)
12068
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
12069
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
12070
+ check_type(argname="argument rest_api_id", value=rest_api_id, expected_type=type_hints["rest_api_id"])
12071
+ return typing.cast(_IRestApiRef_72dcbda0, jsii.sinvoke(cls, "fromRestApiId", [scope, id, rest_api_id]))
12072
+
11622
12073
  @jsii.member(jsii_name="inspect")
11623
12074
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
11624
12075
  '''Examines the CloudFormation resource and discloses attributes.
@@ -11672,6 +12123,12 @@ class CfnRestApi(
11672
12123
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
11673
12124
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
11674
12125
 
12126
+ @builtins.property
12127
+ @jsii.member(jsii_name="restApiRef")
12128
+ def rest_api_ref(self) -> _RestApiReference_0863f937:
12129
+ '''A reference to a RestApi resource.'''
12130
+ return typing.cast(_RestApiReference_0863f937, jsii.get(self, "restApiRef"))
12131
+
11675
12132
  @builtins.property
11676
12133
  @jsii.member(jsii_name="tags")
11677
12134
  def tags(self) -> _TagManager_0a598cb3:
@@ -11888,6 +12345,18 @@ class CfnRestApi(
11888
12345
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
11889
12346
  jsii.set(self, "policy", value) # pyright: ignore[reportArgumentType]
11890
12347
 
12348
+ @builtins.property
12349
+ @jsii.member(jsii_name="securityPolicy")
12350
+ def security_policy(self) -> typing.Optional[builtins.str]:
12351
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "securityPolicy"))
12352
+
12353
+ @security_policy.setter
12354
+ def security_policy(self, value: typing.Optional[builtins.str]) -> None:
12355
+ if __debug__:
12356
+ type_hints = typing.get_type_hints(_typecheckingstub__b5cbad8ea7b13cc4138aea2c1f4832de11327b51e38539bb2f152732a2d44409)
12357
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
12358
+ jsii.set(self, "securityPolicy", value) # pyright: ignore[reportArgumentType]
12359
+
11891
12360
  @builtins.property
11892
12361
  @jsii.member(jsii_name="tagsRaw")
11893
12362
  def tags_raw(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
@@ -12128,6 +12597,7 @@ class CfnRestApi(
12128
12597
  "name": "name",
12129
12598
  "parameters": "parameters",
12130
12599
  "policy": "policy",
12600
+ "security_policy": "securityPolicy",
12131
12601
  "tags": "tags",
12132
12602
  },
12133
12603
  )
@@ -12149,6 +12619,7 @@ class CfnRestApiProps:
12149
12619
  name: typing.Optional[builtins.str] = None,
12150
12620
  parameters: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
12151
12621
  policy: typing.Any = None,
12622
+ security_policy: typing.Optional[builtins.str] = None,
12152
12623
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
12153
12624
  ) -> None:
12154
12625
  '''Properties for defining a ``CfnRestApi``.
@@ -12167,6 +12638,7 @@ class CfnRestApiProps:
12167
12638
  :param name: The name of the RestApi. A name is required if the REST API is not based on an OpenAPI specification.
12168
12639
  :param parameters: Custom header parameters as part of the request. For example, to exclude DocumentationParts from an imported API, set ``ignore=documentation`` as a ``parameters`` value, as in the AWS CLI command of ``aws apigateway import-rest-api --parameters ignore=documentation --body 'file:///path/to/imported-api-body.json'`` .
12169
12640
  :param policy: A policy document that contains the permissions for the ``RestApi`` resource. To set the ARN for the policy, use the ``!Join`` intrinsic function with ``""`` as delimiter and values of ``"execute-api:/"`` and ``"*"`` .
12641
+ :param security_policy:
12170
12642
  :param tags: The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with ``aws:`` . The tag value can be up to 256 characters.
12171
12643
 
12172
12644
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html
@@ -12207,6 +12679,7 @@ class CfnRestApiProps:
12207
12679
  "parameters_key": "parameters"
12208
12680
  },
12209
12681
  policy=policy,
12682
+ security_policy="securityPolicy",
12210
12683
  tags=[CfnTag(
12211
12684
  key="key",
12212
12685
  value="value"
@@ -12229,6 +12702,7 @@ class CfnRestApiProps:
12229
12702
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
12230
12703
  check_type(argname="argument parameters", value=parameters, expected_type=type_hints["parameters"])
12231
12704
  check_type(argname="argument policy", value=policy, expected_type=type_hints["policy"])
12705
+ check_type(argname="argument security_policy", value=security_policy, expected_type=type_hints["security_policy"])
12232
12706
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
12233
12707
  self._values: typing.Dict[builtins.str, typing.Any] = {}
12234
12708
  if api_key_source_type is not None:
@@ -12259,6 +12733,8 @@ class CfnRestApiProps:
12259
12733
  self._values["parameters"] = parameters
12260
12734
  if policy is not None:
12261
12735
  self._values["policy"] = policy
12736
+ if security_policy is not None:
12737
+ self._values["security_policy"] = security_policy
12262
12738
  if tags is not None:
12263
12739
  self._values["tags"] = tags
12264
12740
 
@@ -12430,6 +12906,14 @@ class CfnRestApiProps:
12430
12906
  result = self._values.get("policy")
12431
12907
  return typing.cast(typing.Any, result)
12432
12908
 
12909
+ @builtins.property
12910
+ def security_policy(self) -> typing.Optional[builtins.str]:
12911
+ '''
12912
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-securitypolicy
12913
+ '''
12914
+ result = self._values.get("security_policy")
12915
+ return typing.cast(typing.Optional[builtins.str], result)
12916
+
12433
12917
  @builtins.property
12434
12918
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
12435
12919
  '''The key-value map of strings.
@@ -12453,7 +12937,7 @@ class CfnRestApiProps:
12453
12937
  )
12454
12938
 
12455
12939
 
12456
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
12940
+ @jsii.implements(_IInspectable_c2943556, _IStageRef_b829c330, _ITaggable_36806126)
12457
12941
  class CfnStage(
12458
12942
  _CfnResource_9df397a6,
12459
12943
  metaclass=jsii.JSIIMeta,
@@ -12537,7 +13021,8 @@ class CfnStage(
12537
13021
  tracing_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
12538
13022
  variables: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
12539
13023
  ) -> None:
12540
- '''
13024
+ '''Create a new ``AWS::ApiGateway::Stage``.
13025
+
12541
13026
  :param scope: Scope in which this resource is defined.
12542
13027
  :param id: Construct identifier for this resource (unique in its scope).
12543
13028
  :param rest_api_id: The string identifier of the associated RestApi.
@@ -12613,6 +13098,12 @@ class CfnStage(
12613
13098
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
12614
13099
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
12615
13100
 
13101
+ @builtins.property
13102
+ @jsii.member(jsii_name="stageRef")
13103
+ def stage_ref(self) -> _StageReference_3eb94694:
13104
+ '''A reference to a Stage resource.'''
13105
+ return typing.cast(_StageReference_3eb94694, jsii.get(self, "stageRef"))
13106
+
12616
13107
  @builtins.property
12617
13108
  @jsii.member(jsii_name="tags")
12618
13109
  def tags(self) -> _TagManager_0a598cb3:
@@ -13561,7 +14052,7 @@ class CfnStageProps:
13561
14052
  )
13562
14053
 
13563
14054
 
13564
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
14055
+ @jsii.implements(_IInspectable_c2943556, _IUsagePlanRef_7a28b470, _ITaggable_36806126)
13565
14056
  class CfnUsagePlan(
13566
14057
  _CfnResource_9df397a6,
13567
14058
  metaclass=jsii.JSIIMeta,
@@ -13624,7 +14115,8 @@ class CfnUsagePlan(
13624
14115
  throttle: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnUsagePlan.ThrottleSettingsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
13625
14116
  usage_plan_name: typing.Optional[builtins.str] = None,
13626
14117
  ) -> None:
13627
- '''
14118
+ '''Create a new ``AWS::ApiGateway::UsagePlan``.
14119
+
13628
14120
  :param scope: Scope in which this resource is defined.
13629
14121
  :param id: Construct identifier for this resource (unique in its scope).
13630
14122
  :param api_stages: The associated API stages of a usage plan.
@@ -13649,6 +14141,27 @@ class CfnUsagePlan(
13649
14141
 
13650
14142
  jsii.create(self.__class__, self, [scope, id, props])
13651
14143
 
14144
+ @jsii.member(jsii_name="fromUsagePlanId")
14145
+ @builtins.classmethod
14146
+ def from_usage_plan_id(
14147
+ cls,
14148
+ scope: _constructs_77d1e7e8.Construct,
14149
+ id: builtins.str,
14150
+ usage_plan_id: builtins.str,
14151
+ ) -> _IUsagePlanRef_7a28b470:
14152
+ '''Creates a new IUsagePlanRef from a usagePlanId.
14153
+
14154
+ :param scope: -
14155
+ :param id: -
14156
+ :param usage_plan_id: -
14157
+ '''
14158
+ if __debug__:
14159
+ type_hints = typing.get_type_hints(_typecheckingstub__44855889c228ef5d7500d8d4056967324b295b7a5290ae6aa891ab901acb2c2e)
14160
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
14161
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
14162
+ check_type(argname="argument usage_plan_id", value=usage_plan_id, expected_type=type_hints["usage_plan_id"])
14163
+ return typing.cast(_IUsagePlanRef_7a28b470, jsii.sinvoke(cls, "fromUsagePlanId", [scope, id, usage_plan_id]))
14164
+
13652
14165
  @jsii.member(jsii_name="inspect")
13653
14166
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
13654
14167
  '''Examines the CloudFormation resource and discloses attributes.
@@ -13701,6 +14214,12 @@ class CfnUsagePlan(
13701
14214
  '''Tag Manager which manages the tags for this resource.'''
13702
14215
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
13703
14216
 
14217
+ @builtins.property
14218
+ @jsii.member(jsii_name="usagePlanRef")
14219
+ def usage_plan_ref(self) -> _UsagePlanReference_3d3ec4d2:
14220
+ '''A reference to a UsagePlan resource.'''
14221
+ return typing.cast(_UsagePlanReference_3d3ec4d2, jsii.get(self, "usagePlanRef"))
14222
+
13704
14223
  @builtins.property
13705
14224
  @jsii.member(jsii_name="apiStages")
13706
14225
  def api_stages(
@@ -14048,7 +14567,7 @@ class CfnUsagePlan(
14048
14567
  )
14049
14568
 
14050
14569
 
14051
- @jsii.implements(_IInspectable_c2943556)
14570
+ @jsii.implements(_IInspectable_c2943556, _IUsagePlanKeyRef_465586fc)
14052
14571
  class CfnUsagePlanKey(
14053
14572
  _CfnResource_9df397a6,
14054
14573
  metaclass=jsii.JSIIMeta,
@@ -14084,7 +14603,8 @@ class CfnUsagePlanKey(
14084
14603
  key_type: builtins.str,
14085
14604
  usage_plan_id: builtins.str,
14086
14605
  ) -> None:
14087
- '''
14606
+ '''Create a new ``AWS::ApiGateway::UsagePlanKey``.
14607
+
14088
14608
  :param scope: Scope in which this resource is defined.
14089
14609
  :param id: Construct identifier for this resource (unique in its scope).
14090
14610
  :param key_id: The Id of the UsagePlanKey resource.
@@ -14147,6 +14667,12 @@ class CfnUsagePlanKey(
14147
14667
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
14148
14668
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
14149
14669
 
14670
+ @builtins.property
14671
+ @jsii.member(jsii_name="usagePlanKeyRef")
14672
+ def usage_plan_key_ref(self) -> _UsagePlanKeyReference_cfe985c6:
14673
+ '''A reference to a UsagePlanKey resource.'''
14674
+ return typing.cast(_UsagePlanKeyReference_cfe985c6, jsii.get(self, "usagePlanKeyRef"))
14675
+
14150
14676
  @builtins.property
14151
14677
  @jsii.member(jsii_name="keyId")
14152
14678
  def key_id(self) -> builtins.str:
@@ -14443,7 +14969,7 @@ class CfnUsagePlanProps:
14443
14969
  )
14444
14970
 
14445
14971
 
14446
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
14972
+ @jsii.implements(_IInspectable_c2943556, _IVpcLinkRef_0afd9621, _ITaggable_36806126)
14447
14973
  class CfnVpcLink(
14448
14974
  _CfnResource_9df397a6,
14449
14975
  metaclass=jsii.JSIIMeta,
@@ -14486,7 +15012,8 @@ class CfnVpcLink(
14486
15012
  description: typing.Optional[builtins.str] = None,
14487
15013
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
14488
15014
  ) -> None:
14489
- '''
15015
+ '''Create a new ``AWS::ApiGateway::VpcLink``.
15016
+
14490
15017
  :param scope: Scope in which this resource is defined.
14491
15018
  :param id: Construct identifier for this resource (unique in its scope).
14492
15019
  :param name: The name used to label and identify the VPC link.
@@ -14504,6 +15031,27 @@ class CfnVpcLink(
14504
15031
 
14505
15032
  jsii.create(self.__class__, self, [scope, id, props])
14506
15033
 
15034
+ @jsii.member(jsii_name="fromVpcLinkId")
15035
+ @builtins.classmethod
15036
+ def from_vpc_link_id(
15037
+ cls,
15038
+ scope: _constructs_77d1e7e8.Construct,
15039
+ id: builtins.str,
15040
+ vpc_link_id: builtins.str,
15041
+ ) -> _IVpcLinkRef_0afd9621:
15042
+ '''Creates a new IVpcLinkRef from a vpcLinkId.
15043
+
15044
+ :param scope: -
15045
+ :param id: -
15046
+ :param vpc_link_id: -
15047
+ '''
15048
+ if __debug__:
15049
+ type_hints = typing.get_type_hints(_typecheckingstub__c1a057c69ce236d79b8b6fb912b05b1084e8253b79689c49d313f733ba403dfd)
15050
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
15051
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
15052
+ check_type(argname="argument vpc_link_id", value=vpc_link_id, expected_type=type_hints["vpc_link_id"])
15053
+ return typing.cast(_IVpcLinkRef_0afd9621, jsii.sinvoke(cls, "fromVpcLinkId", [scope, id, vpc_link_id]))
15054
+
14507
15055
  @jsii.member(jsii_name="inspect")
14508
15056
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
14509
15057
  '''Examines the CloudFormation resource and discloses attributes.
@@ -14556,6 +15104,12 @@ class CfnVpcLink(
14556
15104
  '''Tag Manager which manages the tags for this resource.'''
14557
15105
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
14558
15106
 
15107
+ @builtins.property
15108
+ @jsii.member(jsii_name="vpcLinkRef")
15109
+ def vpc_link_ref(self) -> _VpcLinkReference_cccde188:
15110
+ '''A reference to a VpcLink resource.'''
15111
+ return typing.cast(_VpcLinkReference_cccde188, jsii.get(self, "vpcLinkRef"))
15112
+
14559
15113
  @builtins.property
14560
15114
  @jsii.member(jsii_name="name")
14561
15115
  def name(self) -> builtins.str:
@@ -15236,6 +15790,12 @@ class Deployment(
15236
15790
  check_type(argname="argument data", value=data, expected_type=type_hints["data"])
15237
15791
  return typing.cast(None, jsii.invoke(self, "addToLogicalId", [data]))
15238
15792
 
15793
+ @jsii.python.classproperty
15794
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
15795
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
15796
+ '''Uniquely identifies this class.'''
15797
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
15798
+
15239
15799
  @builtins.property
15240
15800
  @jsii.member(jsii_name="api")
15241
15801
  def api(self) -> "IRestApi":
@@ -16252,7 +16812,7 @@ class IAccessLogDestination(typing_extensions.Protocol):
16252
16812
  '''Access log destination for a RestApi Stage.'''
16253
16813
 
16254
16814
  @jsii.member(jsii_name="bind")
16255
- def bind(self, stage: "IStage") -> AccessLogDestinationConfig:
16815
+ def bind(self, stage: _IStageRef_b829c330) -> AccessLogDestinationConfig:
16256
16816
  '''Binds this destination to the RestApi Stage.
16257
16817
 
16258
16818
  :param stage: -
@@ -16266,7 +16826,7 @@ class _IAccessLogDestinationProxy:
16266
16826
  __jsii_type__: typing.ClassVar[str] = "aws-cdk-lib.aws_apigateway.IAccessLogDestination"
16267
16827
 
16268
16828
  @jsii.member(jsii_name="bind")
16269
- def bind(self, stage: "IStage") -> AccessLogDestinationConfig:
16829
+ def bind(self, stage: _IStageRef_b829c330) -> AccessLogDestinationConfig:
16270
16830
  '''Binds this destination to the RestApi Stage.
16271
16831
 
16272
16832
  :param stage: -
@@ -16281,7 +16841,7 @@ typing.cast(typing.Any, IAccessLogDestination).__jsii_proxy_class__ = lambda : _
16281
16841
 
16282
16842
 
16283
16843
  @jsii.interface(jsii_type="aws-cdk-lib.aws_apigateway.IApiKey")
16284
- class IApiKey(_IResource_c80c4260, typing_extensions.Protocol):
16844
+ class IApiKey(_IResource_c80c4260, _IApiKeyRef_6e16b46a, typing_extensions.Protocol):
16285
16845
  '''API keys are alphanumeric string values that you distribute to app developer customers to grant access to your API.'''
16286
16846
 
16287
16847
  @builtins.property
@@ -16302,6 +16862,7 @@ class IApiKey(_IResource_c80c4260, typing_extensions.Protocol):
16302
16862
 
16303
16863
  class _IApiKeyProxy(
16304
16864
  jsii.proxy_for(_IResource_c80c4260), # type: ignore[misc]
16865
+ jsii.proxy_for(_IApiKeyRef_6e16b46a), # type: ignore[misc]
16305
16866
  ):
16306
16867
  '''API keys are alphanumeric string values that you distribute to app developer customers to grant access to your API.'''
16307
16868
 
@@ -16371,7 +16932,11 @@ typing.cast(typing.Any, IAuthorizer).__jsii_proxy_class__ = lambda : _IAuthorize
16371
16932
 
16372
16933
 
16373
16934
  @jsii.interface(jsii_type="aws-cdk-lib.aws_apigateway.IDomainName")
16374
- class IDomainName(_IResource_c80c4260, typing_extensions.Protocol):
16935
+ class IDomainName(
16936
+ _IResource_c80c4260,
16937
+ _IDomainNameRef_8b0ccf94,
16938
+ typing_extensions.Protocol,
16939
+ ):
16375
16940
  @builtins.property
16376
16941
  @jsii.member(jsii_name="domainName")
16377
16942
  def domain_name(self) -> builtins.str:
@@ -16402,6 +16967,7 @@ class IDomainName(_IResource_c80c4260, typing_extensions.Protocol):
16402
16967
 
16403
16968
  class _IDomainNameProxy(
16404
16969
  jsii.proxy_for(_IResource_c80c4260), # type: ignore[misc]
16970
+ jsii.proxy_for(_IDomainNameRef_8b0ccf94), # type: ignore[misc]
16405
16971
  ):
16406
16972
  __jsii_type__: typing.ClassVar[str] = "aws-cdk-lib.aws_apigateway.IDomainName"
16407
16973
 
@@ -16437,7 +17003,11 @@ typing.cast(typing.Any, IDomainName).__jsii_proxy_class__ = lambda : _IDomainNam
16437
17003
 
16438
17004
 
16439
17005
  @jsii.interface(jsii_type="aws-cdk-lib.aws_apigateway.IGatewayResponse")
16440
- class IGatewayResponse(_IResource_c80c4260, typing_extensions.Protocol):
17006
+ class IGatewayResponse(
17007
+ _IResource_c80c4260,
17008
+ _IGatewayResponseRef_d5aa66ef,
17009
+ typing_extensions.Protocol,
17010
+ ):
16441
17011
  '''Represents gateway response resource.'''
16442
17012
 
16443
17013
  pass
@@ -16445,6 +17015,7 @@ class IGatewayResponse(_IResource_c80c4260, typing_extensions.Protocol):
16445
17015
 
16446
17016
  class _IGatewayResponseProxy(
16447
17017
  jsii.proxy_for(_IResource_c80c4260), # type: ignore[misc]
17018
+ jsii.proxy_for(_IGatewayResponseRef_d5aa66ef), # type: ignore[misc]
16448
17019
  ):
16449
17020
  '''Represents gateway response resource.'''
16450
17021
 
@@ -16514,7 +17085,11 @@ typing.cast(typing.Any, IRequestValidator).__jsii_proxy_class__ = lambda : _IReq
16514
17085
 
16515
17086
 
16516
17087
  @jsii.interface(jsii_type="aws-cdk-lib.aws_apigateway.IResource")
16517
- class IResource(_IResource_c80c4260, typing_extensions.Protocol):
17088
+ class IResource(
17089
+ _IResource_c80c4260,
17090
+ _IResourceRef_c7defb81,
17091
+ typing_extensions.Protocol,
17092
+ ):
16518
17093
  @builtins.property
16519
17094
  @jsii.member(jsii_name="api")
16520
17095
  def api(self) -> "IRestApi":
@@ -16703,6 +17278,7 @@ class IResource(_IResource_c80c4260, typing_extensions.Protocol):
16703
17278
 
16704
17279
  class _IResourceProxy(
16705
17280
  jsii.proxy_for(_IResource_c80c4260), # type: ignore[misc]
17281
+ jsii.proxy_for(_IResourceRef_c7defb81), # type: ignore[misc]
16706
17282
  ):
16707
17283
  __jsii_type__: typing.ClassVar[str] = "aws-cdk-lib.aws_apigateway.IResource"
16708
17284
 
@@ -16946,7 +17522,7 @@ typing.cast(typing.Any, IResource).__jsii_proxy_class__ = lambda : _IResourcePro
16946
17522
 
16947
17523
 
16948
17524
  @jsii.interface(jsii_type="aws-cdk-lib.aws_apigateway.IRestApi")
16949
- class IRestApi(_IResource_c80c4260, typing_extensions.Protocol):
17525
+ class IRestApi(_IResource_c80c4260, _IRestApiRef_72dcbda0, typing_extensions.Protocol):
16950
17526
  @builtins.property
16951
17527
  @jsii.member(jsii_name="restApiId")
16952
17528
  def rest_api_id(self) -> builtins.str:
@@ -17029,6 +17605,7 @@ class IRestApi(_IResource_c80c4260, typing_extensions.Protocol):
17029
17605
 
17030
17606
  class _IRestApiProxy(
17031
17607
  jsii.proxy_for(_IResource_c80c4260), # type: ignore[misc]
17608
+ jsii.proxy_for(_IRestApiRef_72dcbda0), # type: ignore[misc]
17032
17609
  ):
17033
17610
  __jsii_type__: typing.ClassVar[str] = "aws-cdk-lib.aws_apigateway.IRestApi"
17034
17611
 
@@ -17124,7 +17701,7 @@ typing.cast(typing.Any, IRestApi).__jsii_proxy_class__ = lambda : _IRestApiProxy
17124
17701
 
17125
17702
 
17126
17703
  @jsii.interface(jsii_type="aws-cdk-lib.aws_apigateway.IStage")
17127
- class IStage(_IResource_c80c4260, typing_extensions.Protocol):
17704
+ class IStage(_IResource_c80c4260, _IStageRef_b829c330, typing_extensions.Protocol):
17128
17705
  '''Represents an APIGateway Stage.'''
17129
17706
 
17130
17707
  @builtins.property
@@ -17169,6 +17746,7 @@ class IStage(_IResource_c80c4260, typing_extensions.Protocol):
17169
17746
 
17170
17747
  class _IStageProxy(
17171
17748
  jsii.proxy_for(_IResource_c80c4260), # type: ignore[misc]
17749
+ jsii.proxy_for(_IStageRef_b829c330), # type: ignore[misc]
17172
17750
  ):
17173
17751
  '''Represents an APIGateway Stage.'''
17174
17752
 
@@ -17230,7 +17808,11 @@ typing.cast(typing.Any, IStage).__jsii_proxy_class__ = lambda : _IStageProxy
17230
17808
 
17231
17809
 
17232
17810
  @jsii.interface(jsii_type="aws-cdk-lib.aws_apigateway.IUsagePlan")
17233
- class IUsagePlan(_IResource_c80c4260, typing_extensions.Protocol):
17811
+ class IUsagePlan(
17812
+ _IResource_c80c4260,
17813
+ _IUsagePlanRef_7a28b470,
17814
+ typing_extensions.Protocol,
17815
+ ):
17234
17816
  '''A UsagePlan, either managed by this CDK app, or imported.'''
17235
17817
 
17236
17818
  @builtins.property
@@ -17245,7 +17827,7 @@ class IUsagePlan(_IResource_c80c4260, typing_extensions.Protocol):
17245
17827
  @jsii.member(jsii_name="addApiKey")
17246
17828
  def add_api_key(
17247
17829
  self,
17248
- api_key: IApiKey,
17830
+ api_key: _IApiKeyRef_6e16b46a,
17249
17831
  *,
17250
17832
  override_logical_id: typing.Optional[builtins.str] = None,
17251
17833
  ) -> None:
@@ -17259,6 +17841,7 @@ class IUsagePlan(_IResource_c80c4260, typing_extensions.Protocol):
17259
17841
 
17260
17842
  class _IUsagePlanProxy(
17261
17843
  jsii.proxy_for(_IResource_c80c4260), # type: ignore[misc]
17844
+ jsii.proxy_for(_IUsagePlanRef_7a28b470), # type: ignore[misc]
17262
17845
  ):
17263
17846
  '''A UsagePlan, either managed by this CDK app, or imported.'''
17264
17847
 
@@ -17276,7 +17859,7 @@ class _IUsagePlanProxy(
17276
17859
  @jsii.member(jsii_name="addApiKey")
17277
17860
  def add_api_key(
17278
17861
  self,
17279
- api_key: IApiKey,
17862
+ api_key: _IApiKeyRef_6e16b46a,
17280
17863
  *,
17281
17864
  override_logical_id: typing.Optional[builtins.str] = None,
17282
17865
  ) -> None:
@@ -17297,7 +17880,7 @@ typing.cast(typing.Any, IUsagePlan).__jsii_proxy_class__ = lambda : _IUsagePlanP
17297
17880
 
17298
17881
 
17299
17882
  @jsii.interface(jsii_type="aws-cdk-lib.aws_apigateway.IVpcLink")
17300
- class IVpcLink(_IResource_c80c4260, typing_extensions.Protocol):
17883
+ class IVpcLink(_IResource_c80c4260, _IVpcLinkRef_0afd9621, typing_extensions.Protocol):
17301
17884
  '''Represents an API Gateway VpcLink.'''
17302
17885
 
17303
17886
  @builtins.property
@@ -17312,6 +17895,7 @@ class IVpcLink(_IResource_c80c4260, typing_extensions.Protocol):
17312
17895
 
17313
17896
  class _IVpcLinkProxy(
17314
17897
  jsii.proxy_for(_IResource_c80c4260), # type: ignore[misc]
17898
+ jsii.proxy_for(_IVpcLinkRef_0afd9621), # type: ignore[misc]
17315
17899
  ):
17316
17900
  '''Represents an API Gateway VpcLink.'''
17317
17901
 
@@ -18391,7 +18975,7 @@ class JsonSchema:
18391
18975
  def __init__(
18392
18976
  self,
18393
18977
  *,
18394
- additional_items: typing.Optional[typing.Sequence[typing.Union["JsonSchema", typing.Dict[builtins.str, typing.Any]]]] = None,
18978
+ additional_items: typing.Optional[typing.Union[builtins.bool, typing.Union["JsonSchema", typing.Dict[builtins.str, typing.Any]]]] = None,
18395
18979
  additional_properties: typing.Optional[typing.Union[builtins.bool, typing.Union["JsonSchema", typing.Dict[builtins.str, typing.Any]]]] = None,
18396
18980
  all_of: typing.Optional[typing.Sequence[typing.Union["JsonSchema", typing.Dict[builtins.str, typing.Any]]]] = None,
18397
18981
  any_of: typing.Optional[typing.Sequence[typing.Union["JsonSchema", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -18624,9 +19208,11 @@ class JsonSchema:
18624
19208
  self._values["unique_items"] = unique_items
18625
19209
 
18626
19210
  @builtins.property
18627
- def additional_items(self) -> typing.Optional[typing.List["JsonSchema"]]:
19211
+ def additional_items(
19212
+ self,
19213
+ ) -> typing.Optional[typing.Union[builtins.bool, "JsonSchema"]]:
18628
19214
  result = self._values.get("additional_items")
18629
- return typing.cast(typing.Optional[typing.List["JsonSchema"]], result)
19215
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, "JsonSchema"]], result)
18630
19216
 
18631
19217
  @builtins.property
18632
19218
  def additional_properties(
@@ -19246,6 +19832,7 @@ class LambdaAuthorizerProps:
19246
19832
  "vpc_link": "vpcLink",
19247
19833
  "allow_test_invoke": "allowTestInvoke",
19248
19834
  "proxy": "proxy",
19835
+ "scope_permission_to_method": "scopePermissionToMethod",
19249
19836
  },
19250
19837
  )
19251
19838
  class LambdaIntegrationOptions(IntegrationOptions):
@@ -19266,6 +19853,7 @@ class LambdaIntegrationOptions(IntegrationOptions):
19266
19853
  vpc_link: typing.Optional[IVpcLink] = None,
19267
19854
  allow_test_invoke: typing.Optional[builtins.bool] = None,
19268
19855
  proxy: typing.Optional[builtins.bool] = None,
19856
+ scope_permission_to_method: typing.Optional[builtins.bool] = None,
19269
19857
  ) -> None:
19270
19858
  '''
19271
19859
  :param cache_key_parameters: A list of request parameters whose values are to be cached. It determines request parameters that will make it into the cache key.
@@ -19280,23 +19868,27 @@ class LambdaIntegrationOptions(IntegrationOptions):
19280
19868
  :param request_templates: A map of Apache Velocity templates that are applied on the request payload. The template that API Gateway uses is based on the value of the Content-Type header that's sent by the client. The content type value is the key, and the template is the value (specified as a string), such as the following snippet:: { "application/json": "{ \\"statusCode\\": 200 }" }
19281
19869
  :param timeout: The maximum amount of time an integration will run before it returns without a response. By default, the value must be between 50 milliseconds and 29 seconds. The upper bound can be increased for regional and private Rest APIs only, via a quota increase request for your acccount. This increase might require a reduction in your account-level throttle quota limit. See {@link https://docs.aws.amazon.com/apigateway/latest/developerguide/limits.html Amazon API Gateway quotas} for more details. Default: Duration.seconds(29)
19282
19870
  :param vpc_link: The VpcLink used for the integration. Required if connectionType is VPC_LINK
19283
- :param allow_test_invoke: Allow invoking method from AWS Console UI (for testing purposes). This will add another permission to the AWS Lambda resource policy which will allow the ``test-invoke-stage`` stage to invoke this handler. If this is set to ``false``, the function will only be usable from the deployment endpoint. Default: true
19871
+ :param allow_test_invoke: Allow invoking method from AWS Console UI (for testing purposes). This will add another permission to the AWS Lambda resource policy which will allow the ``test-invoke-stage`` stage to invoke this handler. If this is set to ``false``, the function will only be usable from the deployment endpoint. Note that this property is ignored when ``scopePermissionToMethod`` is ``false``. Default: true
19284
19872
  :param proxy: Use proxy integration or normal (request/response mapping) integration. Default: true
19873
+ :param scope_permission_to_method: Scope the permission for invoking the AWS Lambda down to the specific method associated with this integration. If this is set to ``false``, the permission will allow invoking the AWS Lambda from any method. This is useful for reducing the AWS Lambda policy size for cases where the same AWS Lambda function is reused for many integrations. Note that this will always allow test invocations. Default: true
19285
19874
 
19286
19875
  :exampleMetadata: infused
19287
19876
 
19288
19877
  Example::
19289
19878
 
19879
+ # book: apigateway.Resource
19290
19880
  # backend: lambda.Function
19291
19881
 
19292
19882
 
19293
- api = apigateway.LambdaRestApi(self, "myapi",
19294
- handler=backend,
19295
- integration_options=apigateway.LambdaIntegrationOptions(
19296
- allow_test_invoke=False,
19297
- timeout=Duration.seconds(1)
19298
- )
19883
+ get_book_integration = apigateway.LambdaIntegration(backend,
19884
+ scope_permission_to_method=False
19885
+ )
19886
+ create_book_integration = apigateway.LambdaIntegration(backend,
19887
+ scope_permission_to_method=False
19299
19888
  )
19889
+
19890
+ book.add_method("GET", get_book_integration)
19891
+ book.add_method("POST", create_book_integration)
19300
19892
  '''
19301
19893
  if __debug__:
19302
19894
  type_hints = typing.get_type_hints(_typecheckingstub__ce30eee1096e0566120e3d64f9e65409fa005cc047656a224902fd86cd15c8b0)
@@ -19314,6 +19906,7 @@ class LambdaIntegrationOptions(IntegrationOptions):
19314
19906
  check_type(argname="argument vpc_link", value=vpc_link, expected_type=type_hints["vpc_link"])
19315
19907
  check_type(argname="argument allow_test_invoke", value=allow_test_invoke, expected_type=type_hints["allow_test_invoke"])
19316
19908
  check_type(argname="argument proxy", value=proxy, expected_type=type_hints["proxy"])
19909
+ check_type(argname="argument scope_permission_to_method", value=scope_permission_to_method, expected_type=type_hints["scope_permission_to_method"])
19317
19910
  self._values: typing.Dict[builtins.str, typing.Any] = {}
19318
19911
  if cache_key_parameters is not None:
19319
19912
  self._values["cache_key_parameters"] = cache_key_parameters
@@ -19343,6 +19936,8 @@ class LambdaIntegrationOptions(IntegrationOptions):
19343
19936
  self._values["allow_test_invoke"] = allow_test_invoke
19344
19937
  if proxy is not None:
19345
19938
  self._values["proxy"] = proxy
19939
+ if scope_permission_to_method is not None:
19940
+ self._values["scope_permission_to_method"] = scope_permission_to_method
19346
19941
 
19347
19942
  @builtins.property
19348
19943
  def cache_key_parameters(self) -> typing.Optional[typing.List[builtins.str]]:
@@ -19499,6 +20094,8 @@ class LambdaIntegrationOptions(IntegrationOptions):
19499
20094
  is set to ``false``, the function will only be usable from the deployment
19500
20095
  endpoint.
19501
20096
 
20097
+ Note that this property is ignored when ``scopePermissionToMethod`` is ``false``.
20098
+
19502
20099
  :default: true
19503
20100
  '''
19504
20101
  result = self._values.get("allow_test_invoke")
@@ -19515,6 +20112,21 @@ class LambdaIntegrationOptions(IntegrationOptions):
19515
20112
  result = self._values.get("proxy")
19516
20113
  return typing.cast(typing.Optional[builtins.bool], result)
19517
20114
 
20115
+ @builtins.property
20116
+ def scope_permission_to_method(self) -> typing.Optional[builtins.bool]:
20117
+ '''Scope the permission for invoking the AWS Lambda down to the specific method associated with this integration.
20118
+
20119
+ If this is set to ``false``, the permission will allow invoking the AWS Lambda
20120
+ from any method. This is useful for reducing the AWS Lambda policy size
20121
+ for cases where the same AWS Lambda function is reused for many integrations.
20122
+
20123
+ Note that this will always allow test invocations.
20124
+
20125
+ :default: true
20126
+ '''
20127
+ result = self._values.get("scope_permission_to_method")
20128
+ return typing.cast(typing.Optional[builtins.bool], result)
20129
+
19518
20130
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
19519
20131
  return isinstance(rhs, self.__class__) and rhs._values == self._values
19520
20132
 
@@ -19558,7 +20170,7 @@ class LogGroupLogDestination(
19558
20170
  jsii.create(self.__class__, self, [log_group])
19559
20171
 
19560
20172
  @jsii.member(jsii_name="bind")
19561
- def bind(self, _stage: IStage) -> AccessLogDestinationConfig:
20173
+ def bind(self, _stage: _IStageRef_b829c330) -> AccessLogDestinationConfig:
19562
20174
  '''Binds this destination to the CloudWatch Logs.
19563
20175
 
19564
20176
  :param _stage: -
@@ -19757,11 +20369,12 @@ class Method(
19757
20369
  def metric(
19758
20370
  self,
19759
20371
  metric_name: builtins.str,
19760
- stage: IStage,
20372
+ stage: _IStageRef_b829c330,
19761
20373
  *,
19762
20374
  account: typing.Optional[builtins.str] = None,
19763
20375
  color: typing.Optional[builtins.str] = None,
19764
20376
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
20377
+ id: typing.Optional[builtins.str] = None,
19765
20378
  label: typing.Optional[builtins.str] = None,
19766
20379
  period: typing.Optional[_Duration_4839e8c3] = None,
19767
20380
  region: typing.Optional[builtins.str] = None,
@@ -19769,6 +20382,7 @@ class Method(
19769
20382
  stack_region: typing.Optional[builtins.str] = None,
19770
20383
  statistic: typing.Optional[builtins.str] = None,
19771
20384
  unit: typing.Optional[_Unit_61bc6f70] = None,
20385
+ visible: typing.Optional[builtins.bool] = None,
19772
20386
  ) -> _Metric_e396a4dc:
19773
20387
  '''Returns the given named metric for this API method.
19774
20388
 
@@ -19777,6 +20391,7 @@ class Method(
19777
20391
  :param account: Account which this metric comes from. Default: - Deployment account.
19778
20392
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
19779
20393
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
20394
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
19780
20395
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
19781
20396
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
19782
20397
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -19784,6 +20399,7 @@ class Method(
19784
20399
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
19785
20400
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
19786
20401
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
20402
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
19787
20403
  '''
19788
20404
  if __debug__:
19789
20405
  type_hints = typing.get_type_hints(_typecheckingstub__5673792ec70e78f31bd42c8b5fa76d95f3d27fb475ced2b715241422b9a73c79)
@@ -19793,6 +20409,7 @@ class Method(
19793
20409
  account=account,
19794
20410
  color=color,
19795
20411
  dimensions_map=dimensions_map,
20412
+ id=id,
19796
20413
  label=label,
19797
20414
  period=period,
19798
20415
  region=region,
@@ -19800,6 +20417,7 @@ class Method(
19800
20417
  stack_region=stack_region,
19801
20418
  statistic=statistic,
19802
20419
  unit=unit,
20420
+ visible=visible,
19803
20421
  )
19804
20422
 
19805
20423
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metric", [metric_name, stage, props]))
@@ -19807,11 +20425,12 @@ class Method(
19807
20425
  @jsii.member(jsii_name="metricCacheHitCount")
19808
20426
  def metric_cache_hit_count(
19809
20427
  self,
19810
- stage: IStage,
20428
+ stage: _IStageRef_b829c330,
19811
20429
  *,
19812
20430
  account: typing.Optional[builtins.str] = None,
19813
20431
  color: typing.Optional[builtins.str] = None,
19814
20432
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
20433
+ id: typing.Optional[builtins.str] = None,
19815
20434
  label: typing.Optional[builtins.str] = None,
19816
20435
  period: typing.Optional[_Duration_4839e8c3] = None,
19817
20436
  region: typing.Optional[builtins.str] = None,
@@ -19819,6 +20438,7 @@ class Method(
19819
20438
  stack_region: typing.Optional[builtins.str] = None,
19820
20439
  statistic: typing.Optional[builtins.str] = None,
19821
20440
  unit: typing.Optional[_Unit_61bc6f70] = None,
20441
+ visible: typing.Optional[builtins.bool] = None,
19822
20442
  ) -> _Metric_e396a4dc:
19823
20443
  '''Metric for the number of requests served from the API cache in a given period.
19824
20444
 
@@ -19826,6 +20446,7 @@ class Method(
19826
20446
  :param account: Account which this metric comes from. Default: - Deployment account.
19827
20447
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
19828
20448
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
20449
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
19829
20450
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
19830
20451
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
19831
20452
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -19833,6 +20454,7 @@ class Method(
19833
20454
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
19834
20455
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
19835
20456
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
20457
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
19836
20458
 
19837
20459
  :default: - sum over 5 minutes
19838
20460
  '''
@@ -19843,6 +20465,7 @@ class Method(
19843
20465
  account=account,
19844
20466
  color=color,
19845
20467
  dimensions_map=dimensions_map,
20468
+ id=id,
19846
20469
  label=label,
19847
20470
  period=period,
19848
20471
  region=region,
@@ -19850,6 +20473,7 @@ class Method(
19850
20473
  stack_region=stack_region,
19851
20474
  statistic=statistic,
19852
20475
  unit=unit,
20476
+ visible=visible,
19853
20477
  )
19854
20478
 
19855
20479
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricCacheHitCount", [stage, props]))
@@ -19857,11 +20481,12 @@ class Method(
19857
20481
  @jsii.member(jsii_name="metricCacheMissCount")
19858
20482
  def metric_cache_miss_count(
19859
20483
  self,
19860
- stage: IStage,
20484
+ stage: _IStageRef_b829c330,
19861
20485
  *,
19862
20486
  account: typing.Optional[builtins.str] = None,
19863
20487
  color: typing.Optional[builtins.str] = None,
19864
20488
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
20489
+ id: typing.Optional[builtins.str] = None,
19865
20490
  label: typing.Optional[builtins.str] = None,
19866
20491
  period: typing.Optional[_Duration_4839e8c3] = None,
19867
20492
  region: typing.Optional[builtins.str] = None,
@@ -19869,6 +20494,7 @@ class Method(
19869
20494
  stack_region: typing.Optional[builtins.str] = None,
19870
20495
  statistic: typing.Optional[builtins.str] = None,
19871
20496
  unit: typing.Optional[_Unit_61bc6f70] = None,
20497
+ visible: typing.Optional[builtins.bool] = None,
19872
20498
  ) -> _Metric_e396a4dc:
19873
20499
  '''Metric for the number of requests served from the backend in a given period, when API caching is enabled.
19874
20500
 
@@ -19876,6 +20502,7 @@ class Method(
19876
20502
  :param account: Account which this metric comes from. Default: - Deployment account.
19877
20503
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
19878
20504
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
20505
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
19879
20506
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
19880
20507
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
19881
20508
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -19883,6 +20510,7 @@ class Method(
19883
20510
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
19884
20511
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
19885
20512
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
20513
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
19886
20514
 
19887
20515
  :default: - sum over 5 minutes
19888
20516
  '''
@@ -19893,6 +20521,7 @@ class Method(
19893
20521
  account=account,
19894
20522
  color=color,
19895
20523
  dimensions_map=dimensions_map,
20524
+ id=id,
19896
20525
  label=label,
19897
20526
  period=period,
19898
20527
  region=region,
@@ -19900,6 +20529,7 @@ class Method(
19900
20529
  stack_region=stack_region,
19901
20530
  statistic=statistic,
19902
20531
  unit=unit,
20532
+ visible=visible,
19903
20533
  )
19904
20534
 
19905
20535
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricCacheMissCount", [stage, props]))
@@ -19907,11 +20537,12 @@ class Method(
19907
20537
  @jsii.member(jsii_name="metricClientError")
19908
20538
  def metric_client_error(
19909
20539
  self,
19910
- stage: IStage,
20540
+ stage: _IStageRef_b829c330,
19911
20541
  *,
19912
20542
  account: typing.Optional[builtins.str] = None,
19913
20543
  color: typing.Optional[builtins.str] = None,
19914
20544
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
20545
+ id: typing.Optional[builtins.str] = None,
19915
20546
  label: typing.Optional[builtins.str] = None,
19916
20547
  period: typing.Optional[_Duration_4839e8c3] = None,
19917
20548
  region: typing.Optional[builtins.str] = None,
@@ -19919,6 +20550,7 @@ class Method(
19919
20550
  stack_region: typing.Optional[builtins.str] = None,
19920
20551
  statistic: typing.Optional[builtins.str] = None,
19921
20552
  unit: typing.Optional[_Unit_61bc6f70] = None,
20553
+ visible: typing.Optional[builtins.bool] = None,
19922
20554
  ) -> _Metric_e396a4dc:
19923
20555
  '''Metric for the number of client-side errors captured in a given period.
19924
20556
 
@@ -19926,6 +20558,7 @@ class Method(
19926
20558
  :param account: Account which this metric comes from. Default: - Deployment account.
19927
20559
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
19928
20560
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
20561
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
19929
20562
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
19930
20563
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
19931
20564
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -19933,6 +20566,7 @@ class Method(
19933
20566
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
19934
20567
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
19935
20568
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
20569
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
19936
20570
 
19937
20571
  :default: - sum over 5 minutes
19938
20572
  '''
@@ -19943,6 +20577,7 @@ class Method(
19943
20577
  account=account,
19944
20578
  color=color,
19945
20579
  dimensions_map=dimensions_map,
20580
+ id=id,
19946
20581
  label=label,
19947
20582
  period=period,
19948
20583
  region=region,
@@ -19950,6 +20585,7 @@ class Method(
19950
20585
  stack_region=stack_region,
19951
20586
  statistic=statistic,
19952
20587
  unit=unit,
20588
+ visible=visible,
19953
20589
  )
19954
20590
 
19955
20591
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricClientError", [stage, props]))
@@ -19957,11 +20593,12 @@ class Method(
19957
20593
  @jsii.member(jsii_name="metricCount")
19958
20594
  def metric_count(
19959
20595
  self,
19960
- stage: IStage,
20596
+ stage: _IStageRef_b829c330,
19961
20597
  *,
19962
20598
  account: typing.Optional[builtins.str] = None,
19963
20599
  color: typing.Optional[builtins.str] = None,
19964
20600
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
20601
+ id: typing.Optional[builtins.str] = None,
19965
20602
  label: typing.Optional[builtins.str] = None,
19966
20603
  period: typing.Optional[_Duration_4839e8c3] = None,
19967
20604
  region: typing.Optional[builtins.str] = None,
@@ -19969,6 +20606,7 @@ class Method(
19969
20606
  stack_region: typing.Optional[builtins.str] = None,
19970
20607
  statistic: typing.Optional[builtins.str] = None,
19971
20608
  unit: typing.Optional[_Unit_61bc6f70] = None,
20609
+ visible: typing.Optional[builtins.bool] = None,
19972
20610
  ) -> _Metric_e396a4dc:
19973
20611
  '''Metric for the total number API requests in a given period.
19974
20612
 
@@ -19976,6 +20614,7 @@ class Method(
19976
20614
  :param account: Account which this metric comes from. Default: - Deployment account.
19977
20615
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
19978
20616
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
20617
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
19979
20618
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
19980
20619
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
19981
20620
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -19983,6 +20622,7 @@ class Method(
19983
20622
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
19984
20623
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
19985
20624
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
20625
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
19986
20626
 
19987
20627
  :default: - sample count over 5 minutes
19988
20628
  '''
@@ -19993,6 +20633,7 @@ class Method(
19993
20633
  account=account,
19994
20634
  color=color,
19995
20635
  dimensions_map=dimensions_map,
20636
+ id=id,
19996
20637
  label=label,
19997
20638
  period=period,
19998
20639
  region=region,
@@ -20000,6 +20641,7 @@ class Method(
20000
20641
  stack_region=stack_region,
20001
20642
  statistic=statistic,
20002
20643
  unit=unit,
20644
+ visible=visible,
20003
20645
  )
20004
20646
 
20005
20647
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricCount", [stage, props]))
@@ -20007,11 +20649,12 @@ class Method(
20007
20649
  @jsii.member(jsii_name="metricIntegrationLatency")
20008
20650
  def metric_integration_latency(
20009
20651
  self,
20010
- stage: IStage,
20652
+ stage: _IStageRef_b829c330,
20011
20653
  *,
20012
20654
  account: typing.Optional[builtins.str] = None,
20013
20655
  color: typing.Optional[builtins.str] = None,
20014
20656
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
20657
+ id: typing.Optional[builtins.str] = None,
20015
20658
  label: typing.Optional[builtins.str] = None,
20016
20659
  period: typing.Optional[_Duration_4839e8c3] = None,
20017
20660
  region: typing.Optional[builtins.str] = None,
@@ -20019,6 +20662,7 @@ class Method(
20019
20662
  stack_region: typing.Optional[builtins.str] = None,
20020
20663
  statistic: typing.Optional[builtins.str] = None,
20021
20664
  unit: typing.Optional[_Unit_61bc6f70] = None,
20665
+ visible: typing.Optional[builtins.bool] = None,
20022
20666
  ) -> _Metric_e396a4dc:
20023
20667
  '''Metric for the time between when API Gateway relays a request to the backend and when it receives a response from the backend.
20024
20668
 
@@ -20026,6 +20670,7 @@ class Method(
20026
20670
  :param account: Account which this metric comes from. Default: - Deployment account.
20027
20671
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
20028
20672
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
20673
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
20029
20674
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
20030
20675
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
20031
20676
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -20033,6 +20678,7 @@ class Method(
20033
20678
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
20034
20679
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
20035
20680
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
20681
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
20036
20682
 
20037
20683
  :default: - average over 5 minutes.
20038
20684
  '''
@@ -20043,6 +20689,7 @@ class Method(
20043
20689
  account=account,
20044
20690
  color=color,
20045
20691
  dimensions_map=dimensions_map,
20692
+ id=id,
20046
20693
  label=label,
20047
20694
  period=period,
20048
20695
  region=region,
@@ -20050,6 +20697,7 @@ class Method(
20050
20697
  stack_region=stack_region,
20051
20698
  statistic=statistic,
20052
20699
  unit=unit,
20700
+ visible=visible,
20053
20701
  )
20054
20702
 
20055
20703
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricIntegrationLatency", [stage, props]))
@@ -20057,11 +20705,12 @@ class Method(
20057
20705
  @jsii.member(jsii_name="metricLatency")
20058
20706
  def metric_latency(
20059
20707
  self,
20060
- stage: IStage,
20708
+ stage: _IStageRef_b829c330,
20061
20709
  *,
20062
20710
  account: typing.Optional[builtins.str] = None,
20063
20711
  color: typing.Optional[builtins.str] = None,
20064
20712
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
20713
+ id: typing.Optional[builtins.str] = None,
20065
20714
  label: typing.Optional[builtins.str] = None,
20066
20715
  period: typing.Optional[_Duration_4839e8c3] = None,
20067
20716
  region: typing.Optional[builtins.str] = None,
@@ -20069,6 +20718,7 @@ class Method(
20069
20718
  stack_region: typing.Optional[builtins.str] = None,
20070
20719
  statistic: typing.Optional[builtins.str] = None,
20071
20720
  unit: typing.Optional[_Unit_61bc6f70] = None,
20721
+ visible: typing.Optional[builtins.bool] = None,
20072
20722
  ) -> _Metric_e396a4dc:
20073
20723
  '''The time between when API Gateway receives a request from a client and when it returns a response to the client.
20074
20724
 
@@ -20078,6 +20728,7 @@ class Method(
20078
20728
  :param account: Account which this metric comes from. Default: - Deployment account.
20079
20729
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
20080
20730
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
20731
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
20081
20732
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
20082
20733
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
20083
20734
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -20085,6 +20736,7 @@ class Method(
20085
20736
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
20086
20737
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
20087
20738
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
20739
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
20088
20740
 
20089
20741
  :default: - average over 5 minutes.
20090
20742
  '''
@@ -20095,6 +20747,7 @@ class Method(
20095
20747
  account=account,
20096
20748
  color=color,
20097
20749
  dimensions_map=dimensions_map,
20750
+ id=id,
20098
20751
  label=label,
20099
20752
  period=period,
20100
20753
  region=region,
@@ -20102,6 +20755,7 @@ class Method(
20102
20755
  stack_region=stack_region,
20103
20756
  statistic=statistic,
20104
20757
  unit=unit,
20758
+ visible=visible,
20105
20759
  )
20106
20760
 
20107
20761
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricLatency", [stage, props]))
@@ -20109,11 +20763,12 @@ class Method(
20109
20763
  @jsii.member(jsii_name="metricServerError")
20110
20764
  def metric_server_error(
20111
20765
  self,
20112
- stage: IStage,
20766
+ stage: _IStageRef_b829c330,
20113
20767
  *,
20114
20768
  account: typing.Optional[builtins.str] = None,
20115
20769
  color: typing.Optional[builtins.str] = None,
20116
20770
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
20771
+ id: typing.Optional[builtins.str] = None,
20117
20772
  label: typing.Optional[builtins.str] = None,
20118
20773
  period: typing.Optional[_Duration_4839e8c3] = None,
20119
20774
  region: typing.Optional[builtins.str] = None,
@@ -20121,6 +20776,7 @@ class Method(
20121
20776
  stack_region: typing.Optional[builtins.str] = None,
20122
20777
  statistic: typing.Optional[builtins.str] = None,
20123
20778
  unit: typing.Optional[_Unit_61bc6f70] = None,
20779
+ visible: typing.Optional[builtins.bool] = None,
20124
20780
  ) -> _Metric_e396a4dc:
20125
20781
  '''Metric for the number of server-side errors captured in a given period.
20126
20782
 
@@ -20128,6 +20784,7 @@ class Method(
20128
20784
  :param account: Account which this metric comes from. Default: - Deployment account.
20129
20785
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
20130
20786
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
20787
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
20131
20788
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
20132
20789
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
20133
20790
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -20135,6 +20792,7 @@ class Method(
20135
20792
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
20136
20793
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
20137
20794
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
20795
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
20138
20796
 
20139
20797
  :default: - sum over 5 minutes
20140
20798
  '''
@@ -20145,6 +20803,7 @@ class Method(
20145
20803
  account=account,
20146
20804
  color=color,
20147
20805
  dimensions_map=dimensions_map,
20806
+ id=id,
20148
20807
  label=label,
20149
20808
  period=period,
20150
20809
  region=region,
@@ -20152,10 +20811,17 @@ class Method(
20152
20811
  stack_region=stack_region,
20153
20812
  statistic=statistic,
20154
20813
  unit=unit,
20814
+ visible=visible,
20155
20815
  )
20156
20816
 
20157
20817
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricServerError", [stage, props]))
20158
20818
 
20819
+ @jsii.python.classproperty
20820
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
20821
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
20822
+ '''Uniquely identifies this class.'''
20823
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
20824
+
20159
20825
  @builtins.property
20160
20826
  @jsii.member(jsii_name="api")
20161
20827
  def api(self) -> IRestApi:
@@ -21207,6 +21873,12 @@ class Model(
21207
21873
  '''
21208
21874
  return typing.cast(IModel, jsii.sget(cls, "ERROR_MODEL"))
21209
21875
 
21876
+ @jsii.python.classproperty
21877
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
21878
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
21879
+ '''Uniquely identifies this class.'''
21880
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
21881
+
21210
21882
  @builtins.property
21211
21883
  @jsii.member(jsii_name="modelId")
21212
21884
  def model_id(self) -> builtins.str:
@@ -21404,7 +22076,7 @@ class ModelProps(ModelOptions):
21404
22076
  model_props = apigateway.ModelProps(
21405
22077
  rest_api=rest_api,
21406
22078
  schema=apigateway.JsonSchema(
21407
- additional_items=[json_schema_],
22079
+ additional_items=False,
21408
22080
  additional_properties=False,
21409
22081
  all_of=[json_schema_],
21410
22082
  any_of=[json_schema_],
@@ -21863,6 +22535,18 @@ class RateLimitedApiKey(
21863
22535
  check_type(argname="argument grantee", value=grantee, expected_type=type_hints["grantee"])
21864
22536
  return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grantWrite", [grantee]))
21865
22537
 
22538
+ @jsii.python.classproperty
22539
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
22540
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
22541
+ '''Uniquely identifies this class.'''
22542
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
22543
+
22544
+ @builtins.property
22545
+ @jsii.member(jsii_name="apiKeyRef")
22546
+ def api_key_ref(self) -> _ApiKeyReference_6382fd3a:
22547
+ '''A reference to a ApiKey resource.'''
22548
+ return typing.cast(_ApiKeyReference_6382fd3a, jsii.get(self, "apiKeyRef"))
22549
+
21866
22550
  @builtins.property
21867
22551
  @jsii.member(jsii_name="keyArn")
21868
22552
  def key_arn(self) -> builtins.str:
@@ -22462,6 +23146,12 @@ class RequestValidator(
22462
23146
  check_type(argname="argument request_validator_id", value=request_validator_id, expected_type=type_hints["request_validator_id"])
22463
23147
  return typing.cast(IRequestValidator, jsii.sinvoke(cls, "fromRequestValidatorId", [scope, id, request_validator_id]))
22464
23148
 
23149
+ @jsii.python.classproperty
23150
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
23151
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
23152
+ '''Uniquely identifies this class.'''
23153
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
23154
+
22465
23155
  @builtins.property
22466
23156
  @jsii.member(jsii_name="requestValidatorId")
22467
23157
  def request_validator_id(self) -> builtins.str:
@@ -23002,6 +23692,12 @@ class ResourceBase(
23002
23692
  '''The ID of the resource.'''
23003
23693
  ...
23004
23694
 
23695
+ @builtins.property
23696
+ @jsii.member(jsii_name="resourceRef")
23697
+ def resource_ref(self) -> _ResourceReference_c72d8a5a:
23698
+ '''A reference to a Resource resource.'''
23699
+ return typing.cast(_ResourceReference_c72d8a5a, jsii.get(self, "resourceRef"))
23700
+
23005
23701
  @builtins.property
23006
23702
  @jsii.member(jsii_name="defaultCorsPreflightOptions")
23007
23703
  @abc.abstractmethod
@@ -23981,6 +24677,7 @@ class RestApiBase(
23981
24677
  account: typing.Optional[builtins.str] = None,
23982
24678
  color: typing.Optional[builtins.str] = None,
23983
24679
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
24680
+ id: typing.Optional[builtins.str] = None,
23984
24681
  label: typing.Optional[builtins.str] = None,
23985
24682
  period: typing.Optional[_Duration_4839e8c3] = None,
23986
24683
  region: typing.Optional[builtins.str] = None,
@@ -23988,6 +24685,7 @@ class RestApiBase(
23988
24685
  stack_region: typing.Optional[builtins.str] = None,
23989
24686
  statistic: typing.Optional[builtins.str] = None,
23990
24687
  unit: typing.Optional[_Unit_61bc6f70] = None,
24688
+ visible: typing.Optional[builtins.bool] = None,
23991
24689
  ) -> _Metric_e396a4dc:
23992
24690
  '''Returns the given named metric for this API.
23993
24691
 
@@ -23995,6 +24693,7 @@ class RestApiBase(
23995
24693
  :param account: Account which this metric comes from. Default: - Deployment account.
23996
24694
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
23997
24695
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
24696
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
23998
24697
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
23999
24698
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
24000
24699
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -24002,6 +24701,7 @@ class RestApiBase(
24002
24701
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
24003
24702
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
24004
24703
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
24704
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
24005
24705
  '''
24006
24706
  if __debug__:
24007
24707
  type_hints = typing.get_type_hints(_typecheckingstub__83e0007c5bc1aeac14243c8f05dab576ffb55853642cfe1f4a1352b59dda08cf)
@@ -24010,6 +24710,7 @@ class RestApiBase(
24010
24710
  account=account,
24011
24711
  color=color,
24012
24712
  dimensions_map=dimensions_map,
24713
+ id=id,
24013
24714
  label=label,
24014
24715
  period=period,
24015
24716
  region=region,
@@ -24017,6 +24718,7 @@ class RestApiBase(
24017
24718
  stack_region=stack_region,
24018
24719
  statistic=statistic,
24019
24720
  unit=unit,
24721
+ visible=visible,
24020
24722
  )
24021
24723
 
24022
24724
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metric", [metric_name, props]))
@@ -24028,6 +24730,7 @@ class RestApiBase(
24028
24730
  account: typing.Optional[builtins.str] = None,
24029
24731
  color: typing.Optional[builtins.str] = None,
24030
24732
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
24733
+ id: typing.Optional[builtins.str] = None,
24031
24734
  label: typing.Optional[builtins.str] = None,
24032
24735
  period: typing.Optional[_Duration_4839e8c3] = None,
24033
24736
  region: typing.Optional[builtins.str] = None,
@@ -24035,6 +24738,7 @@ class RestApiBase(
24035
24738
  stack_region: typing.Optional[builtins.str] = None,
24036
24739
  statistic: typing.Optional[builtins.str] = None,
24037
24740
  unit: typing.Optional[_Unit_61bc6f70] = None,
24741
+ visible: typing.Optional[builtins.bool] = None,
24038
24742
  ) -> _Metric_e396a4dc:
24039
24743
  '''Metric for the number of requests served from the API cache in a given period.
24040
24744
 
@@ -24043,6 +24747,7 @@ class RestApiBase(
24043
24747
  :param account: Account which this metric comes from. Default: - Deployment account.
24044
24748
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
24045
24749
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
24750
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
24046
24751
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
24047
24752
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
24048
24753
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -24050,11 +24755,13 @@ class RestApiBase(
24050
24755
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
24051
24756
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
24052
24757
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
24758
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
24053
24759
  '''
24054
24760
  props = _MetricOptions_1788b62f(
24055
24761
  account=account,
24056
24762
  color=color,
24057
24763
  dimensions_map=dimensions_map,
24764
+ id=id,
24058
24765
  label=label,
24059
24766
  period=period,
24060
24767
  region=region,
@@ -24062,6 +24769,7 @@ class RestApiBase(
24062
24769
  stack_region=stack_region,
24063
24770
  statistic=statistic,
24064
24771
  unit=unit,
24772
+ visible=visible,
24065
24773
  )
24066
24774
 
24067
24775
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricCacheHitCount", [props]))
@@ -24073,6 +24781,7 @@ class RestApiBase(
24073
24781
  account: typing.Optional[builtins.str] = None,
24074
24782
  color: typing.Optional[builtins.str] = None,
24075
24783
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
24784
+ id: typing.Optional[builtins.str] = None,
24076
24785
  label: typing.Optional[builtins.str] = None,
24077
24786
  period: typing.Optional[_Duration_4839e8c3] = None,
24078
24787
  region: typing.Optional[builtins.str] = None,
@@ -24080,6 +24789,7 @@ class RestApiBase(
24080
24789
  stack_region: typing.Optional[builtins.str] = None,
24081
24790
  statistic: typing.Optional[builtins.str] = None,
24082
24791
  unit: typing.Optional[_Unit_61bc6f70] = None,
24792
+ visible: typing.Optional[builtins.bool] = None,
24083
24793
  ) -> _Metric_e396a4dc:
24084
24794
  '''Metric for the number of requests served from the backend in a given period, when API caching is enabled.
24085
24795
 
@@ -24088,6 +24798,7 @@ class RestApiBase(
24088
24798
  :param account: Account which this metric comes from. Default: - Deployment account.
24089
24799
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
24090
24800
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
24801
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
24091
24802
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
24092
24803
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
24093
24804
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -24095,11 +24806,13 @@ class RestApiBase(
24095
24806
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
24096
24807
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
24097
24808
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
24809
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
24098
24810
  '''
24099
24811
  props = _MetricOptions_1788b62f(
24100
24812
  account=account,
24101
24813
  color=color,
24102
24814
  dimensions_map=dimensions_map,
24815
+ id=id,
24103
24816
  label=label,
24104
24817
  period=period,
24105
24818
  region=region,
@@ -24107,6 +24820,7 @@ class RestApiBase(
24107
24820
  stack_region=stack_region,
24108
24821
  statistic=statistic,
24109
24822
  unit=unit,
24823
+ visible=visible,
24110
24824
  )
24111
24825
 
24112
24826
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricCacheMissCount", [props]))
@@ -24118,6 +24832,7 @@ class RestApiBase(
24118
24832
  account: typing.Optional[builtins.str] = None,
24119
24833
  color: typing.Optional[builtins.str] = None,
24120
24834
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
24835
+ id: typing.Optional[builtins.str] = None,
24121
24836
  label: typing.Optional[builtins.str] = None,
24122
24837
  period: typing.Optional[_Duration_4839e8c3] = None,
24123
24838
  region: typing.Optional[builtins.str] = None,
@@ -24125,6 +24840,7 @@ class RestApiBase(
24125
24840
  stack_region: typing.Optional[builtins.str] = None,
24126
24841
  statistic: typing.Optional[builtins.str] = None,
24127
24842
  unit: typing.Optional[_Unit_61bc6f70] = None,
24843
+ visible: typing.Optional[builtins.bool] = None,
24128
24844
  ) -> _Metric_e396a4dc:
24129
24845
  '''Metric for the number of client-side errors captured in a given period.
24130
24846
 
@@ -24133,6 +24849,7 @@ class RestApiBase(
24133
24849
  :param account: Account which this metric comes from. Default: - Deployment account.
24134
24850
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
24135
24851
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
24852
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
24136
24853
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
24137
24854
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
24138
24855
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -24140,11 +24857,13 @@ class RestApiBase(
24140
24857
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
24141
24858
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
24142
24859
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
24860
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
24143
24861
  '''
24144
24862
  props = _MetricOptions_1788b62f(
24145
24863
  account=account,
24146
24864
  color=color,
24147
24865
  dimensions_map=dimensions_map,
24866
+ id=id,
24148
24867
  label=label,
24149
24868
  period=period,
24150
24869
  region=region,
@@ -24152,6 +24871,7 @@ class RestApiBase(
24152
24871
  stack_region=stack_region,
24153
24872
  statistic=statistic,
24154
24873
  unit=unit,
24874
+ visible=visible,
24155
24875
  )
24156
24876
 
24157
24877
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricClientError", [props]))
@@ -24163,6 +24883,7 @@ class RestApiBase(
24163
24883
  account: typing.Optional[builtins.str] = None,
24164
24884
  color: typing.Optional[builtins.str] = None,
24165
24885
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
24886
+ id: typing.Optional[builtins.str] = None,
24166
24887
  label: typing.Optional[builtins.str] = None,
24167
24888
  period: typing.Optional[_Duration_4839e8c3] = None,
24168
24889
  region: typing.Optional[builtins.str] = None,
@@ -24170,6 +24891,7 @@ class RestApiBase(
24170
24891
  stack_region: typing.Optional[builtins.str] = None,
24171
24892
  statistic: typing.Optional[builtins.str] = None,
24172
24893
  unit: typing.Optional[_Unit_61bc6f70] = None,
24894
+ visible: typing.Optional[builtins.bool] = None,
24173
24895
  ) -> _Metric_e396a4dc:
24174
24896
  '''Metric for the total number API requests in a given period.
24175
24897
 
@@ -24178,6 +24900,7 @@ class RestApiBase(
24178
24900
  :param account: Account which this metric comes from. Default: - Deployment account.
24179
24901
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
24180
24902
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
24903
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
24181
24904
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
24182
24905
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
24183
24906
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -24185,11 +24908,13 @@ class RestApiBase(
24185
24908
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
24186
24909
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
24187
24910
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
24911
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
24188
24912
  '''
24189
24913
  props = _MetricOptions_1788b62f(
24190
24914
  account=account,
24191
24915
  color=color,
24192
24916
  dimensions_map=dimensions_map,
24917
+ id=id,
24193
24918
  label=label,
24194
24919
  period=period,
24195
24920
  region=region,
@@ -24197,6 +24922,7 @@ class RestApiBase(
24197
24922
  stack_region=stack_region,
24198
24923
  statistic=statistic,
24199
24924
  unit=unit,
24925
+ visible=visible,
24200
24926
  )
24201
24927
 
24202
24928
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricCount", [props]))
@@ -24208,6 +24934,7 @@ class RestApiBase(
24208
24934
  account: typing.Optional[builtins.str] = None,
24209
24935
  color: typing.Optional[builtins.str] = None,
24210
24936
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
24937
+ id: typing.Optional[builtins.str] = None,
24211
24938
  label: typing.Optional[builtins.str] = None,
24212
24939
  period: typing.Optional[_Duration_4839e8c3] = None,
24213
24940
  region: typing.Optional[builtins.str] = None,
@@ -24215,6 +24942,7 @@ class RestApiBase(
24215
24942
  stack_region: typing.Optional[builtins.str] = None,
24216
24943
  statistic: typing.Optional[builtins.str] = None,
24217
24944
  unit: typing.Optional[_Unit_61bc6f70] = None,
24945
+ visible: typing.Optional[builtins.bool] = None,
24218
24946
  ) -> _Metric_e396a4dc:
24219
24947
  '''Metric for the time between when API Gateway relays a request to the backend and when it receives a response from the backend.
24220
24948
 
@@ -24223,6 +24951,7 @@ class RestApiBase(
24223
24951
  :param account: Account which this metric comes from. Default: - Deployment account.
24224
24952
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
24225
24953
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
24954
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
24226
24955
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
24227
24956
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
24228
24957
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -24230,11 +24959,13 @@ class RestApiBase(
24230
24959
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
24231
24960
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
24232
24961
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
24962
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
24233
24963
  '''
24234
24964
  props = _MetricOptions_1788b62f(
24235
24965
  account=account,
24236
24966
  color=color,
24237
24967
  dimensions_map=dimensions_map,
24968
+ id=id,
24238
24969
  label=label,
24239
24970
  period=period,
24240
24971
  region=region,
@@ -24242,6 +24973,7 @@ class RestApiBase(
24242
24973
  stack_region=stack_region,
24243
24974
  statistic=statistic,
24244
24975
  unit=unit,
24976
+ visible=visible,
24245
24977
  )
24246
24978
 
24247
24979
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricIntegrationLatency", [props]))
@@ -24253,6 +24985,7 @@ class RestApiBase(
24253
24985
  account: typing.Optional[builtins.str] = None,
24254
24986
  color: typing.Optional[builtins.str] = None,
24255
24987
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
24988
+ id: typing.Optional[builtins.str] = None,
24256
24989
  label: typing.Optional[builtins.str] = None,
24257
24990
  period: typing.Optional[_Duration_4839e8c3] = None,
24258
24991
  region: typing.Optional[builtins.str] = None,
@@ -24260,6 +24993,7 @@ class RestApiBase(
24260
24993
  stack_region: typing.Optional[builtins.str] = None,
24261
24994
  statistic: typing.Optional[builtins.str] = None,
24262
24995
  unit: typing.Optional[_Unit_61bc6f70] = None,
24996
+ visible: typing.Optional[builtins.bool] = None,
24263
24997
  ) -> _Metric_e396a4dc:
24264
24998
  '''The time between when API Gateway receives a request from a client and when it returns a response to the client.
24265
24999
 
@@ -24270,6 +25004,7 @@ class RestApiBase(
24270
25004
  :param account: Account which this metric comes from. Default: - Deployment account.
24271
25005
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
24272
25006
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
25007
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
24273
25008
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
24274
25009
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
24275
25010
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -24277,11 +25012,13 @@ class RestApiBase(
24277
25012
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
24278
25013
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
24279
25014
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
25015
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
24280
25016
  '''
24281
25017
  props = _MetricOptions_1788b62f(
24282
25018
  account=account,
24283
25019
  color=color,
24284
25020
  dimensions_map=dimensions_map,
25021
+ id=id,
24285
25022
  label=label,
24286
25023
  period=period,
24287
25024
  region=region,
@@ -24289,6 +25026,7 @@ class RestApiBase(
24289
25026
  stack_region=stack_region,
24290
25027
  statistic=statistic,
24291
25028
  unit=unit,
25029
+ visible=visible,
24292
25030
  )
24293
25031
 
24294
25032
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricLatency", [props]))
@@ -24300,6 +25038,7 @@ class RestApiBase(
24300
25038
  account: typing.Optional[builtins.str] = None,
24301
25039
  color: typing.Optional[builtins.str] = None,
24302
25040
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
25041
+ id: typing.Optional[builtins.str] = None,
24303
25042
  label: typing.Optional[builtins.str] = None,
24304
25043
  period: typing.Optional[_Duration_4839e8c3] = None,
24305
25044
  region: typing.Optional[builtins.str] = None,
@@ -24307,6 +25046,7 @@ class RestApiBase(
24307
25046
  stack_region: typing.Optional[builtins.str] = None,
24308
25047
  statistic: typing.Optional[builtins.str] = None,
24309
25048
  unit: typing.Optional[_Unit_61bc6f70] = None,
25049
+ visible: typing.Optional[builtins.bool] = None,
24310
25050
  ) -> _Metric_e396a4dc:
24311
25051
  '''Metric for the number of server-side errors captured in a given period.
24312
25052
 
@@ -24315,6 +25055,7 @@ class RestApiBase(
24315
25055
  :param account: Account which this metric comes from. Default: - Deployment account.
24316
25056
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
24317
25057
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
25058
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
24318
25059
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
24319
25060
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
24320
25061
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -24322,11 +25063,13 @@ class RestApiBase(
24322
25063
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
24323
25064
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
24324
25065
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
25066
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
24325
25067
  '''
24326
25068
  props = _MetricOptions_1788b62f(
24327
25069
  account=account,
24328
25070
  color=color,
24329
25071
  dimensions_map=dimensions_map,
25072
+ id=id,
24330
25073
  label=label,
24331
25074
  period=period,
24332
25075
  region=region,
@@ -24334,6 +25077,7 @@ class RestApiBase(
24334
25077
  stack_region=stack_region,
24335
25078
  statistic=statistic,
24336
25079
  unit=unit,
25080
+ visible=visible,
24337
25081
  )
24338
25082
 
24339
25083
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricServerError", [props]))
@@ -24369,6 +25113,12 @@ class RestApiBase(
24369
25113
  '''
24370
25114
  return typing.cast(builtins.str, jsii.get(self, "restApiName"))
24371
25115
 
25116
+ @builtins.property
25117
+ @jsii.member(jsii_name="restApiRef")
25118
+ def rest_api_ref(self) -> _RestApiReference_0863f937:
25119
+ '''A reference to a RestApi resource.'''
25120
+ return typing.cast(_RestApiReference_0863f937, jsii.get(self, "restApiRef"))
25121
+
24372
25122
  @builtins.property
24373
25123
  @jsii.member(jsii_name="restApiRootResourceId")
24374
25124
  @abc.abstractmethod
@@ -25382,16 +26132,16 @@ class S3ApiDefinition(
25382
26132
  # The code below shows an example of how to instantiate this type.
25383
26133
  # The values are placeholders you should change.
25384
26134
  from aws_cdk import aws_apigateway as apigateway
25385
- from aws_cdk import aws_s3 as s3
26135
+ from aws_cdk.interfaces import aws_s3 as interfaces_aws_s3
25386
26136
 
25387
- # bucket: s3.Bucket
26137
+ # bucket_ref: interfaces_aws_s3.IBucketRef
25388
26138
 
25389
- s3_api_definition = apigateway.S3ApiDefinition(bucket, "key", "objectVersion")
26139
+ s3_api_definition = apigateway.S3ApiDefinition(bucket_ref, "key", "objectVersion")
25390
26140
  '''
25391
26141
 
25392
26142
  def __init__(
25393
26143
  self,
25394
- bucket: _IBucket_42e086fd,
26144
+ bucket: _IBucketRef_3debe44e,
25395
26145
  key: builtins.str,
25396
26146
  object_version: typing.Optional[builtins.str] = None,
25397
26147
  ) -> None:
@@ -25770,6 +26520,7 @@ class SpecRestApi(
25770
26520
  id: builtins.str,
25771
26521
  *,
25772
26522
  api_definition: ApiDefinition,
26523
+ binary_media_types: typing.Optional[typing.Sequence[builtins.str]] = None,
25773
26524
  min_compression_size: typing.Optional[_Size_7b441c34] = None,
25774
26525
  mode: typing.Optional[RestApiMode] = None,
25775
26526
  cloud_watch_role: typing.Optional[builtins.bool] = None,
@@ -25792,6 +26543,7 @@ class SpecRestApi(
25792
26543
  :param scope: -
25793
26544
  :param id: -
25794
26545
  :param api_definition: An OpenAPI definition compatible with API Gateway.
26546
+ :param binary_media_types: The list of binary media mime-types that are supported by the SpecRestApi resource, such as "image/png" or "application/octet-stream". Default: - SpecRestApi supports only UTF-8-encoded text payloads.
25795
26547
  :param min_compression_size: A Size(in bytes, kibibytes, mebibytes etc) that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (when undefined) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. Default: - Compression is disabled.
25796
26548
  :param mode: The Mode that determines how API Gateway handles resource updates. Valid values are ``overwrite`` or ``merge``. For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. For ``merge``, the new API definition is merged with the existing API. If you don't specify this property, a default value is chosen: - For REST APIs created before March 29, 2021, the default is ``overwrite`` - For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. Use the default mode to define top-level RestApi properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. Default: - ``merge`` for REST APIs created after March 29, 2021, otherwise ``overwrite``
25797
26549
  :param cloud_watch_role: Automatically configure an AWS CloudWatch role for API Gateway. Default: - false if ``@aws-cdk/aws-apigateway:disableCloudWatchRole`` is enabled, true otherwise
@@ -25816,6 +26568,7 @@ class SpecRestApi(
25816
26568
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
25817
26569
  props = SpecRestApiProps(
25818
26570
  api_definition=api_definition,
26571
+ binary_media_types=binary_media_types,
25819
26572
  min_compression_size=min_compression_size,
25820
26573
  mode=mode,
25821
26574
  cloud_watch_role=cloud_watch_role,
@@ -25855,6 +26608,12 @@ class SpecRestApi(
25855
26608
  check_type(argname="argument statement", value=statement, expected_type=type_hints["statement"])
25856
26609
  return typing.cast(_AddToResourcePolicyResult_1d0a53ad, jsii.invoke(self, "addToResourcePolicy", [statement]))
25857
26610
 
26611
+ @jsii.python.classproperty
26612
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
26613
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
26614
+ '''Uniquely identifies this class.'''
26615
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
26616
+
25858
26617
  @builtins.property
25859
26618
  @jsii.member(jsii_name="restApiId")
25860
26619
  def rest_api_id(self) -> builtins.str:
@@ -25900,6 +26659,7 @@ class SpecRestApi(
25900
26659
  "rest_api_name": "restApiName",
25901
26660
  "retain_deployments": "retainDeployments",
25902
26661
  "api_definition": "apiDefinition",
26662
+ "binary_media_types": "binaryMediaTypes",
25903
26663
  "min_compression_size": "minCompressionSize",
25904
26664
  "mode": "mode",
25905
26665
  },
@@ -25924,6 +26684,7 @@ class SpecRestApiProps(RestApiBaseProps):
25924
26684
  rest_api_name: typing.Optional[builtins.str] = None,
25925
26685
  retain_deployments: typing.Optional[builtins.bool] = None,
25926
26686
  api_definition: ApiDefinition,
26687
+ binary_media_types: typing.Optional[typing.Sequence[builtins.str]] = None,
25927
26688
  min_compression_size: typing.Optional[_Size_7b441c34] = None,
25928
26689
  mode: typing.Optional[RestApiMode] = None,
25929
26690
  ) -> None:
@@ -25945,6 +26706,7 @@ class SpecRestApiProps(RestApiBaseProps):
25945
26706
  :param rest_api_name: A name for the API Gateway RestApi resource. Default: - ID of the RestApi construct.
25946
26707
  :param retain_deployments: Retains old deployment resources when the API changes. This allows manually reverting stages to point to old deployments via the AWS Console. Default: false
25947
26708
  :param api_definition: An OpenAPI definition compatible with API Gateway.
26709
+ :param binary_media_types: The list of binary media mime-types that are supported by the SpecRestApi resource, such as "image/png" or "application/octet-stream". Default: - SpecRestApi supports only UTF-8-encoded text payloads.
25948
26710
  :param min_compression_size: A Size(in bytes, kibibytes, mebibytes etc) that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (when undefined) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. Default: - Compression is disabled.
25949
26711
  :param mode: The Mode that determines how API Gateway handles resource updates. Valid values are ``overwrite`` or ``merge``. For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. For ``merge``, the new API definition is merged with the existing API. If you don't specify this property, a default value is chosen: - For REST APIs created before March 29, 2021, the default is ``overwrite`` - For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. Use the default mode to define top-level RestApi properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. Default: - ``merge`` for REST APIs created after March 29, 2021, otherwise ``overwrite``
25950
26712
 
@@ -25981,6 +26743,7 @@ class SpecRestApiProps(RestApiBaseProps):
25981
26743
  check_type(argname="argument rest_api_name", value=rest_api_name, expected_type=type_hints["rest_api_name"])
25982
26744
  check_type(argname="argument retain_deployments", value=retain_deployments, expected_type=type_hints["retain_deployments"])
25983
26745
  check_type(argname="argument api_definition", value=api_definition, expected_type=type_hints["api_definition"])
26746
+ check_type(argname="argument binary_media_types", value=binary_media_types, expected_type=type_hints["binary_media_types"])
25984
26747
  check_type(argname="argument min_compression_size", value=min_compression_size, expected_type=type_hints["min_compression_size"])
25985
26748
  check_type(argname="argument mode", value=mode, expected_type=type_hints["mode"])
25986
26749
  self._values: typing.Dict[builtins.str, typing.Any] = {
@@ -26016,6 +26779,8 @@ class SpecRestApiProps(RestApiBaseProps):
26016
26779
  self._values["rest_api_name"] = rest_api_name
26017
26780
  if retain_deployments is not None:
26018
26781
  self._values["retain_deployments"] = retain_deployments
26782
+ if binary_media_types is not None:
26783
+ self._values["binary_media_types"] = binary_media_types
26019
26784
  if min_compression_size is not None:
26020
26785
  self._values["min_compression_size"] = min_compression_size
26021
26786
  if mode is not None:
@@ -26204,6 +26969,15 @@ class SpecRestApiProps(RestApiBaseProps):
26204
26969
  assert result is not None, "Required property 'api_definition' is missing"
26205
26970
  return typing.cast(ApiDefinition, result)
26206
26971
 
26972
+ @builtins.property
26973
+ def binary_media_types(self) -> typing.Optional[typing.List[builtins.str]]:
26974
+ '''The list of binary media mime-types that are supported by the SpecRestApi resource, such as "image/png" or "application/octet-stream".
26975
+
26976
+ :default: - SpecRestApi supports only UTF-8-encoded text payloads.
26977
+ '''
26978
+ result = self._values.get("binary_media_types")
26979
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
26980
+
26207
26981
  @builtins.property
26208
26982
  def min_compression_size(self) -> typing.Optional[_Size_7b441c34]:
26209
26983
  '''A Size(in bytes, kibibytes, mebibytes etc) that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (when undefined) on an API.
@@ -26397,6 +27171,7 @@ class StageBase(
26397
27171
  account: typing.Optional[builtins.str] = None,
26398
27172
  color: typing.Optional[builtins.str] = None,
26399
27173
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
27174
+ id: typing.Optional[builtins.str] = None,
26400
27175
  label: typing.Optional[builtins.str] = None,
26401
27176
  period: typing.Optional[_Duration_4839e8c3] = None,
26402
27177
  region: typing.Optional[builtins.str] = None,
@@ -26404,6 +27179,7 @@ class StageBase(
26404
27179
  stack_region: typing.Optional[builtins.str] = None,
26405
27180
  statistic: typing.Optional[builtins.str] = None,
26406
27181
  unit: typing.Optional[_Unit_61bc6f70] = None,
27182
+ visible: typing.Optional[builtins.bool] = None,
26407
27183
  ) -> _Metric_e396a4dc:
26408
27184
  '''Returns the given named metric for this stage.
26409
27185
 
@@ -26411,6 +27187,7 @@ class StageBase(
26411
27187
  :param account: Account which this metric comes from. Default: - Deployment account.
26412
27188
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
26413
27189
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
27190
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
26414
27191
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
26415
27192
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
26416
27193
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -26418,6 +27195,7 @@ class StageBase(
26418
27195
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
26419
27196
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
26420
27197
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
27198
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
26421
27199
  '''
26422
27200
  if __debug__:
26423
27201
  type_hints = typing.get_type_hints(_typecheckingstub__e7aa140ce28102f6291e54fab42702aec75e06eb4ff034ae6897a3606e9c1ac3)
@@ -26426,6 +27204,7 @@ class StageBase(
26426
27204
  account=account,
26427
27205
  color=color,
26428
27206
  dimensions_map=dimensions_map,
27207
+ id=id,
26429
27208
  label=label,
26430
27209
  period=period,
26431
27210
  region=region,
@@ -26433,6 +27212,7 @@ class StageBase(
26433
27212
  stack_region=stack_region,
26434
27213
  statistic=statistic,
26435
27214
  unit=unit,
27215
+ visible=visible,
26436
27216
  )
26437
27217
 
26438
27218
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metric", [metric_name, props]))
@@ -26444,6 +27224,7 @@ class StageBase(
26444
27224
  account: typing.Optional[builtins.str] = None,
26445
27225
  color: typing.Optional[builtins.str] = None,
26446
27226
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
27227
+ id: typing.Optional[builtins.str] = None,
26447
27228
  label: typing.Optional[builtins.str] = None,
26448
27229
  period: typing.Optional[_Duration_4839e8c3] = None,
26449
27230
  region: typing.Optional[builtins.str] = None,
@@ -26451,12 +27232,14 @@ class StageBase(
26451
27232
  stack_region: typing.Optional[builtins.str] = None,
26452
27233
  statistic: typing.Optional[builtins.str] = None,
26453
27234
  unit: typing.Optional[_Unit_61bc6f70] = None,
27235
+ visible: typing.Optional[builtins.bool] = None,
26454
27236
  ) -> _Metric_e396a4dc:
26455
27237
  '''Metric for the number of requests served from the API cache in a given period.
26456
27238
 
26457
27239
  :param account: Account which this metric comes from. Default: - Deployment account.
26458
27240
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
26459
27241
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
27242
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
26460
27243
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
26461
27244
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
26462
27245
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -26464,6 +27247,7 @@ class StageBase(
26464
27247
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
26465
27248
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
26466
27249
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
27250
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
26467
27251
 
26468
27252
  :default: - sum over 5 minutes
26469
27253
  '''
@@ -26471,6 +27255,7 @@ class StageBase(
26471
27255
  account=account,
26472
27256
  color=color,
26473
27257
  dimensions_map=dimensions_map,
27258
+ id=id,
26474
27259
  label=label,
26475
27260
  period=period,
26476
27261
  region=region,
@@ -26478,6 +27263,7 @@ class StageBase(
26478
27263
  stack_region=stack_region,
26479
27264
  statistic=statistic,
26480
27265
  unit=unit,
27266
+ visible=visible,
26481
27267
  )
26482
27268
 
26483
27269
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricCacheHitCount", [props]))
@@ -26489,6 +27275,7 @@ class StageBase(
26489
27275
  account: typing.Optional[builtins.str] = None,
26490
27276
  color: typing.Optional[builtins.str] = None,
26491
27277
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
27278
+ id: typing.Optional[builtins.str] = None,
26492
27279
  label: typing.Optional[builtins.str] = None,
26493
27280
  period: typing.Optional[_Duration_4839e8c3] = None,
26494
27281
  region: typing.Optional[builtins.str] = None,
@@ -26496,12 +27283,14 @@ class StageBase(
26496
27283
  stack_region: typing.Optional[builtins.str] = None,
26497
27284
  statistic: typing.Optional[builtins.str] = None,
26498
27285
  unit: typing.Optional[_Unit_61bc6f70] = None,
27286
+ visible: typing.Optional[builtins.bool] = None,
26499
27287
  ) -> _Metric_e396a4dc:
26500
27288
  '''Metric for the number of requests served from the backend in a given period, when API caching is enabled.
26501
27289
 
26502
27290
  :param account: Account which this metric comes from. Default: - Deployment account.
26503
27291
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
26504
27292
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
27293
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
26505
27294
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
26506
27295
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
26507
27296
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -26509,6 +27298,7 @@ class StageBase(
26509
27298
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
26510
27299
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
26511
27300
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
27301
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
26512
27302
 
26513
27303
  :default: - sum over 5 minutes
26514
27304
  '''
@@ -26516,6 +27306,7 @@ class StageBase(
26516
27306
  account=account,
26517
27307
  color=color,
26518
27308
  dimensions_map=dimensions_map,
27309
+ id=id,
26519
27310
  label=label,
26520
27311
  period=period,
26521
27312
  region=region,
@@ -26523,6 +27314,7 @@ class StageBase(
26523
27314
  stack_region=stack_region,
26524
27315
  statistic=statistic,
26525
27316
  unit=unit,
27317
+ visible=visible,
26526
27318
  )
26527
27319
 
26528
27320
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricCacheMissCount", [props]))
@@ -26534,6 +27326,7 @@ class StageBase(
26534
27326
  account: typing.Optional[builtins.str] = None,
26535
27327
  color: typing.Optional[builtins.str] = None,
26536
27328
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
27329
+ id: typing.Optional[builtins.str] = None,
26537
27330
  label: typing.Optional[builtins.str] = None,
26538
27331
  period: typing.Optional[_Duration_4839e8c3] = None,
26539
27332
  region: typing.Optional[builtins.str] = None,
@@ -26541,12 +27334,14 @@ class StageBase(
26541
27334
  stack_region: typing.Optional[builtins.str] = None,
26542
27335
  statistic: typing.Optional[builtins.str] = None,
26543
27336
  unit: typing.Optional[_Unit_61bc6f70] = None,
27337
+ visible: typing.Optional[builtins.bool] = None,
26544
27338
  ) -> _Metric_e396a4dc:
26545
27339
  '''Metric for the number of client-side errors captured in a given period.
26546
27340
 
26547
27341
  :param account: Account which this metric comes from. Default: - Deployment account.
26548
27342
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
26549
27343
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
27344
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
26550
27345
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
26551
27346
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
26552
27347
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -26554,6 +27349,7 @@ class StageBase(
26554
27349
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
26555
27350
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
26556
27351
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
27352
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
26557
27353
 
26558
27354
  :default: - sum over 5 minutes
26559
27355
  '''
@@ -26561,6 +27357,7 @@ class StageBase(
26561
27357
  account=account,
26562
27358
  color=color,
26563
27359
  dimensions_map=dimensions_map,
27360
+ id=id,
26564
27361
  label=label,
26565
27362
  period=period,
26566
27363
  region=region,
@@ -26568,6 +27365,7 @@ class StageBase(
26568
27365
  stack_region=stack_region,
26569
27366
  statistic=statistic,
26570
27367
  unit=unit,
27368
+ visible=visible,
26571
27369
  )
26572
27370
 
26573
27371
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricClientError", [props]))
@@ -26579,6 +27377,7 @@ class StageBase(
26579
27377
  account: typing.Optional[builtins.str] = None,
26580
27378
  color: typing.Optional[builtins.str] = None,
26581
27379
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
27380
+ id: typing.Optional[builtins.str] = None,
26582
27381
  label: typing.Optional[builtins.str] = None,
26583
27382
  period: typing.Optional[_Duration_4839e8c3] = None,
26584
27383
  region: typing.Optional[builtins.str] = None,
@@ -26586,12 +27385,14 @@ class StageBase(
26586
27385
  stack_region: typing.Optional[builtins.str] = None,
26587
27386
  statistic: typing.Optional[builtins.str] = None,
26588
27387
  unit: typing.Optional[_Unit_61bc6f70] = None,
27388
+ visible: typing.Optional[builtins.bool] = None,
26589
27389
  ) -> _Metric_e396a4dc:
26590
27390
  '''Metric for the total number API requests in a given period.
26591
27391
 
26592
27392
  :param account: Account which this metric comes from. Default: - Deployment account.
26593
27393
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
26594
27394
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
27395
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
26595
27396
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
26596
27397
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
26597
27398
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -26599,6 +27400,7 @@ class StageBase(
26599
27400
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
26600
27401
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
26601
27402
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
27403
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
26602
27404
 
26603
27405
  :default: - sample count over 5 minutes
26604
27406
  '''
@@ -26606,6 +27408,7 @@ class StageBase(
26606
27408
  account=account,
26607
27409
  color=color,
26608
27410
  dimensions_map=dimensions_map,
27411
+ id=id,
26609
27412
  label=label,
26610
27413
  period=period,
26611
27414
  region=region,
@@ -26613,6 +27416,7 @@ class StageBase(
26613
27416
  stack_region=stack_region,
26614
27417
  statistic=statistic,
26615
27418
  unit=unit,
27419
+ visible=visible,
26616
27420
  )
26617
27421
 
26618
27422
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricCount", [props]))
@@ -26624,6 +27428,7 @@ class StageBase(
26624
27428
  account: typing.Optional[builtins.str] = None,
26625
27429
  color: typing.Optional[builtins.str] = None,
26626
27430
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
27431
+ id: typing.Optional[builtins.str] = None,
26627
27432
  label: typing.Optional[builtins.str] = None,
26628
27433
  period: typing.Optional[_Duration_4839e8c3] = None,
26629
27434
  region: typing.Optional[builtins.str] = None,
@@ -26631,12 +27436,14 @@ class StageBase(
26631
27436
  stack_region: typing.Optional[builtins.str] = None,
26632
27437
  statistic: typing.Optional[builtins.str] = None,
26633
27438
  unit: typing.Optional[_Unit_61bc6f70] = None,
27439
+ visible: typing.Optional[builtins.bool] = None,
26634
27440
  ) -> _Metric_e396a4dc:
26635
27441
  '''Metric for the time between when API Gateway relays a request to the backend and when it receives a response from the backend.
26636
27442
 
26637
27443
  :param account: Account which this metric comes from. Default: - Deployment account.
26638
27444
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
26639
27445
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
27446
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
26640
27447
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
26641
27448
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
26642
27449
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -26644,6 +27451,7 @@ class StageBase(
26644
27451
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
26645
27452
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
26646
27453
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
27454
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
26647
27455
 
26648
27456
  :default: - average over 5 minutes.
26649
27457
  '''
@@ -26651,6 +27459,7 @@ class StageBase(
26651
27459
  account=account,
26652
27460
  color=color,
26653
27461
  dimensions_map=dimensions_map,
27462
+ id=id,
26654
27463
  label=label,
26655
27464
  period=period,
26656
27465
  region=region,
@@ -26658,6 +27467,7 @@ class StageBase(
26658
27467
  stack_region=stack_region,
26659
27468
  statistic=statistic,
26660
27469
  unit=unit,
27470
+ visible=visible,
26661
27471
  )
26662
27472
 
26663
27473
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricIntegrationLatency", [props]))
@@ -26669,6 +27479,7 @@ class StageBase(
26669
27479
  account: typing.Optional[builtins.str] = None,
26670
27480
  color: typing.Optional[builtins.str] = None,
26671
27481
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
27482
+ id: typing.Optional[builtins.str] = None,
26672
27483
  label: typing.Optional[builtins.str] = None,
26673
27484
  period: typing.Optional[_Duration_4839e8c3] = None,
26674
27485
  region: typing.Optional[builtins.str] = None,
@@ -26676,6 +27487,7 @@ class StageBase(
26676
27487
  stack_region: typing.Optional[builtins.str] = None,
26677
27488
  statistic: typing.Optional[builtins.str] = None,
26678
27489
  unit: typing.Optional[_Unit_61bc6f70] = None,
27490
+ visible: typing.Optional[builtins.bool] = None,
26679
27491
  ) -> _Metric_e396a4dc:
26680
27492
  '''The time between when API Gateway receives a request from a client and when it returns a response to the client.
26681
27493
 
@@ -26684,6 +27496,7 @@ class StageBase(
26684
27496
  :param account: Account which this metric comes from. Default: - Deployment account.
26685
27497
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
26686
27498
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
27499
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
26687
27500
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
26688
27501
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
26689
27502
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -26691,6 +27504,7 @@ class StageBase(
26691
27504
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
26692
27505
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
26693
27506
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
27507
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
26694
27508
 
26695
27509
  :default: - average over 5 minutes.
26696
27510
  '''
@@ -26698,6 +27512,7 @@ class StageBase(
26698
27512
  account=account,
26699
27513
  color=color,
26700
27514
  dimensions_map=dimensions_map,
27515
+ id=id,
26701
27516
  label=label,
26702
27517
  period=period,
26703
27518
  region=region,
@@ -26705,6 +27520,7 @@ class StageBase(
26705
27520
  stack_region=stack_region,
26706
27521
  statistic=statistic,
26707
27522
  unit=unit,
27523
+ visible=visible,
26708
27524
  )
26709
27525
 
26710
27526
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricLatency", [props]))
@@ -26716,6 +27532,7 @@ class StageBase(
26716
27532
  account: typing.Optional[builtins.str] = None,
26717
27533
  color: typing.Optional[builtins.str] = None,
26718
27534
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
27535
+ id: typing.Optional[builtins.str] = None,
26719
27536
  label: typing.Optional[builtins.str] = None,
26720
27537
  period: typing.Optional[_Duration_4839e8c3] = None,
26721
27538
  region: typing.Optional[builtins.str] = None,
@@ -26723,12 +27540,14 @@ class StageBase(
26723
27540
  stack_region: typing.Optional[builtins.str] = None,
26724
27541
  statistic: typing.Optional[builtins.str] = None,
26725
27542
  unit: typing.Optional[_Unit_61bc6f70] = None,
27543
+ visible: typing.Optional[builtins.bool] = None,
26726
27544
  ) -> _Metric_e396a4dc:
26727
27545
  '''Metric for the number of server-side errors captured in a given period.
26728
27546
 
26729
27547
  :param account: Account which this metric comes from. Default: - Deployment account.
26730
27548
  :param color: The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The ``Color`` class has a set of standard colors that can be used here. Default: - Automatic color
26731
27549
  :param dimensions_map: Dimensions of the metric. Default: - No dimensions.
27550
+ :param id: Unique identifier for this metric when used in dashboard widgets. The id can be used as a variable to represent this metric in math expressions. Valid characters are letters, numbers, and underscore. The first character must be a lowercase letter. Default: - No ID
26732
27551
  :param label: Label for this metric when added to a Graph in a Dashboard. You can use `dynamic labels <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph-dynamic-labels.html>`_ to show summary information about the entire displayed time series in the legend. For example, if you use:: [max: ${MAX}] MyMetric As the metric label, the maximum value in the visible range will be shown next to the time series name in the graph's legend. Default: - No label
26733
27552
  :param period: The period over which the specified statistic is applied. Default: Duration.minutes(5)
26734
27553
  :param region: Region which this metric comes from. Default: - Deployment region.
@@ -26736,6 +27555,7 @@ class StageBase(
26736
27555
  :param stack_region: Region of the stack this metric is attached to. Default: - Deployment region.
26737
27556
  :param statistic: What function to use for aggregating. Use the ``aws_cloudwatch.Stats`` helper class to construct valid input strings. Can be one of the following: - "Minimum" | "min" - "Maximum" | "max" - "Average" | "avg" - "Sum" | "sum" - "SampleCount | "n" - "pNN.NN" - "tmNN.NN" | "tm(NN.NN%:NN.NN%)" - "iqm" - "wmNN.NN" | "wm(NN.NN%:NN.NN%)" - "tcNN.NN" | "tc(NN.NN%:NN.NN%)" - "tsNN.NN" | "ts(NN.NN%:NN.NN%)" Default: Average
26738
27557
  :param unit: Unit used to filter the metric stream. Only refer to datums emitted to the metric stream with the given unit and ignore all others. Only useful when datums are being emitted to the same metric stream under different units. The default is to use all matric datums in the stream, regardless of unit, which is recommended in nearly all cases. CloudWatch does not honor this property for graphs. Default: - All metric datums in the given metric stream
27558
+ :param visible: Whether this metric should be visible in dashboard graphs. Setting this to false is useful when you want to hide raw metrics that are used in math expressions, and show only the expression results. Default: true
26739
27559
 
26740
27560
  :default: - sum over 5 minutes
26741
27561
  '''
@@ -26743,6 +27563,7 @@ class StageBase(
26743
27563
  account=account,
26744
27564
  color=color,
26745
27565
  dimensions_map=dimensions_map,
27566
+ id=id,
26746
27567
  label=label,
26747
27568
  period=period,
26748
27569
  region=region,
@@ -26750,6 +27571,7 @@ class StageBase(
26750
27571
  stack_region=stack_region,
26751
27572
  statistic=statistic,
26752
27573
  unit=unit,
27574
+ visible=visible,
26753
27575
  )
26754
27576
 
26755
27577
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricServerError", [props]))
@@ -26793,6 +27615,12 @@ class StageBase(
26793
27615
  '''Name of this stage.'''
26794
27616
  ...
26795
27617
 
27618
+ @builtins.property
27619
+ @jsii.member(jsii_name="stageRef")
27620
+ def stage_ref(self) -> _StageReference_3eb94694:
27621
+ '''A reference to a Stage resource.'''
27622
+ return typing.cast(_StageReference_3eb94694, jsii.get(self, "stageRef"))
27623
+
26796
27624
 
26797
27625
  class _StageBaseProxy(
26798
27626
  StageBase,
@@ -29159,7 +29987,7 @@ class UsagePlan(
29159
29987
  @jsii.member(jsii_name="addApiKey")
29160
29988
  def add_api_key(
29161
29989
  self,
29162
- api_key: IApiKey,
29990
+ api_key: _IApiKeyRef_6e16b46a,
29163
29991
  *,
29164
29992
  override_logical_id: typing.Optional[builtins.str] = None,
29165
29993
  ) -> None:
@@ -29193,6 +30021,12 @@ class UsagePlan(
29193
30021
 
29194
30022
  return typing.cast(None, jsii.invoke(self, "addApiStage", [api_stage]))
29195
30023
 
30024
+ @jsii.python.classproperty
30025
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
30026
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
30027
+ '''Uniquely identifies this class.'''
30028
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
30029
+
29196
30030
  @builtins.property
29197
30031
  @jsii.member(jsii_name="usagePlanId")
29198
30032
  def usage_plan_id(self) -> builtins.str:
@@ -29202,6 +30036,12 @@ class UsagePlan(
29202
30036
  '''
29203
30037
  return typing.cast(builtins.str, jsii.get(self, "usagePlanId"))
29204
30038
 
30039
+ @builtins.property
30040
+ @jsii.member(jsii_name="usagePlanRef")
30041
+ def usage_plan_ref(self) -> _UsagePlanReference_3d3ec4d2:
30042
+ '''A reference to a UsagePlan resource.'''
30043
+ return typing.cast(_UsagePlanReference_3d3ec4d2, jsii.get(self, "usagePlanRef"))
30044
+
29205
30045
 
29206
30046
  @jsii.data_type(
29207
30047
  jsii_type="aws-cdk-lib.aws_apigateway.UsagePlanPerApiStage",
@@ -29515,6 +30355,12 @@ class VpcLink(
29515
30355
  check_type(argname="argument targets", value=targets, expected_type=typing.Tuple[type_hints["targets"], ...]) # pyright: ignore [reportGeneralTypeIssues]
29516
30356
  return typing.cast(None, jsii.invoke(self, "addTargets", [*targets]))
29517
30357
 
30358
+ @jsii.python.classproperty
30359
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
30360
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
30361
+ '''Uniquely identifies this class.'''
30362
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
30363
+
29518
30364
  @builtins.property
29519
30365
  @jsii.member(jsii_name="vpcLinkId")
29520
30366
  def vpc_link_id(self) -> builtins.str:
@@ -29524,6 +30370,12 @@ class VpcLink(
29524
30370
  '''
29525
30371
  return typing.cast(builtins.str, jsii.get(self, "vpcLinkId"))
29526
30372
 
30373
+ @builtins.property
30374
+ @jsii.member(jsii_name="vpcLinkRef")
30375
+ def vpc_link_ref(self) -> _VpcLinkReference_cccde188:
30376
+ '''A reference to a VpcLink resource.'''
30377
+ return typing.cast(_VpcLinkReference_cccde188, jsii.get(self, "vpcLinkRef"))
30378
+
29527
30379
 
29528
30380
  @jsii.data_type(
29529
30381
  jsii_type="aws-cdk-lib.aws_apigateway.VpcLinkProps",
@@ -29637,11 +30489,14 @@ class ApiKey(
29637
30489
  An ApiKey can be distributed to API clients that are executing requests
29638
30490
  for Method resources that require an Api Key.
29639
30491
 
29640
- :exampleMetadata: infused
30492
+ :exampleMetadata: fixture=README-blueprints infused
29641
30493
 
29642
30494
  Example::
29643
30495
 
29644
- imported_key = apigateway.ApiKey.from_api_key_id(self, "imported-key", "<api-key-id>")
30496
+ stack = Stack(app, "my-stack")
30497
+ api.ApiKey(stack, "my-api-key",
30498
+ enabled=False
30499
+ )
29645
30500
  '''
29646
30501
 
29647
30502
  def __init__(
@@ -29750,6 +30605,18 @@ class ApiKey(
29750
30605
  check_type(argname="argument grantee", value=grantee, expected_type=type_hints["grantee"])
29751
30606
  return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grantWrite", [grantee]))
29752
30607
 
30608
+ @jsii.python.classproperty
30609
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
30610
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
30611
+ '''Uniquely identifies this class.'''
30612
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
30613
+
30614
+ @builtins.property
30615
+ @jsii.member(jsii_name="apiKeyRef")
30616
+ def api_key_ref(self) -> _ApiKeyReference_6382fd3a:
30617
+ '''A reference to a ApiKey resource.'''
30618
+ return typing.cast(_ApiKeyReference_6382fd3a, jsii.get(self, "apiKeyRef"))
30619
+
29753
30620
  @builtins.property
29754
30621
  @jsii.member(jsii_name="keyArn")
29755
30622
  def key_arn(self) -> builtins.str:
@@ -29957,75 +30824,14 @@ class ApiKeyProps(ApiKeyOptions):
29957
30824
  :param resources: (deprecated) A list of resources this api key is associated with. Default: none
29958
30825
  :param stages: A list of Stages this api key is associated with. Default: - the api key is not associated with any stages
29959
30826
 
29960
- :exampleMetadata: fixture=_generated
30827
+ :exampleMetadata: fixture=README-blueprints infused
29961
30828
 
29962
30829
  Example::
29963
30830
 
29964
- # The code below shows an example of how to instantiate this type.
29965
- # The values are placeholders you should change.
29966
- import aws_cdk as cdk
29967
- from aws_cdk import aws_apigateway as apigateway
29968
-
29969
- # authorizer: apigateway.Authorizer
29970
- # integration: apigateway.Integration
29971
- # model: apigateway.Model
29972
- # request_validator: apigateway.RequestValidator
29973
- # rest_api: apigateway.RestApi
29974
- # stage: apigateway.Stage
29975
-
29976
- api_key_props = apigateway.ApiKeyProps(
29977
- api_key_name="apiKeyName",
29978
- customer_id="customerId",
29979
- default_cors_preflight_options=apigateway.CorsOptions(
29980
- allow_origins=["allowOrigins"],
29981
-
29982
- # the properties below are optional
29983
- allow_credentials=False,
29984
- allow_headers=["allowHeaders"],
29985
- allow_methods=["allowMethods"],
29986
- disable_cache=False,
29987
- expose_headers=["exposeHeaders"],
29988
- max_age=cdk.Duration.minutes(30),
29989
- status_code=123
29990
- ),
29991
- default_integration=integration,
29992
- default_method_options=apigateway.MethodOptions(
29993
- api_key_required=False,
29994
- authorization_scopes=["authorizationScopes"],
29995
- authorization_type=apigateway.AuthorizationType.NONE,
29996
- authorizer=authorizer,
29997
- method_responses=[apigateway.MethodResponse(
29998
- status_code="statusCode",
29999
-
30000
- # the properties below are optional
30001
- response_models={
30002
- "response_models_key": model
30003
- },
30004
- response_parameters={
30005
- "response_parameters_key": False
30006
- }
30007
- )],
30008
- operation_name="operationName",
30009
- request_models={
30010
- "request_models_key": model
30011
- },
30012
- request_parameters={
30013
- "request_parameters_key": False
30014
- },
30015
- request_validator=request_validator,
30016
- request_validator_options=apigateway.RequestValidatorOptions(
30017
- request_validator_name="requestValidatorName",
30018
- validate_request_body=False,
30019
- validate_request_parameters=False
30020
- )
30021
- ),
30022
- description="description",
30023
- enabled=False,
30024
- generate_distinct_id=False,
30025
- resources=[rest_api],
30026
- stages=[stage],
30027
- value="value"
30831
+ stack = Stack(app, "my-stack",
30832
+ property_injectors=[ApiKeyPropsInjector()]
30028
30833
  )
30834
+ api.ApiKey(stack, "my-api-key")
30029
30835
  '''
30030
30836
  if isinstance(default_cors_preflight_options, dict):
30031
30837
  default_cors_preflight_options = CorsOptions(**default_cors_preflight_options)
@@ -30409,6 +31215,12 @@ class CognitoUserPoolsAuthorizer(
30409
31215
 
30410
31216
  jsii.create(self.__class__, self, [scope, id, props])
30411
31217
 
31218
+ @jsii.python.classproperty
31219
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
31220
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
31221
+ '''Uniquely identifies this class.'''
31222
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
31223
+
30412
31224
  @builtins.property
30413
31225
  @jsii.member(jsii_name="authorizerArn")
30414
31226
  def authorizer_arn(self) -> builtins.str:
@@ -30534,7 +31346,7 @@ class DomainName(
30534
31346
  @jsii.member(jsii_name="addApiMapping")
30535
31347
  def add_api_mapping(
30536
31348
  self,
30537
- target_stage: IStage,
31349
+ target_stage: _IStageRef_b829c330,
30538
31350
  *,
30539
31351
  base_path: typing.Optional[builtins.str] = None,
30540
31352
  ) -> None:
@@ -30559,7 +31371,7 @@ class DomainName(
30559
31371
  @jsii.member(jsii_name="addBasePathMapping")
30560
31372
  def add_base_path_mapping(
30561
31373
  self,
30562
- target_api: IRestApi,
31374
+ target_api: _IRestApiRef_72dcbda0,
30563
31375
  *,
30564
31376
  attach_to_stage: typing.Optional[builtins.bool] = None,
30565
31377
  base_path: typing.Optional[builtins.str] = None,
@@ -30585,6 +31397,12 @@ class DomainName(
30585
31397
 
30586
31398
  return typing.cast(BasePathMapping, jsii.invoke(self, "addBasePathMapping", [target_api, options]))
30587
31399
 
31400
+ @jsii.python.classproperty
31401
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
31402
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
31403
+ '''Uniquely identifies this class.'''
31404
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
31405
+
30588
31406
  @builtins.property
30589
31407
  @jsii.member(jsii_name="domainName")
30590
31408
  def domain_name(self) -> builtins.str:
@@ -30603,6 +31421,12 @@ class DomainName(
30603
31421
  '''The Route53 hosted zone ID to use in order to connect a record set to this domain through an alias.'''
30604
31422
  return typing.cast(builtins.str, jsii.get(self, "domainNameAliasHostedZoneId"))
30605
31423
 
31424
+ @builtins.property
31425
+ @jsii.member(jsii_name="domainNameRef")
31426
+ def domain_name_ref(self) -> _DomainNameReference_f4138423:
31427
+ '''A reference to a DomainName resource.'''
31428
+ return typing.cast(_DomainNameReference_f4138423, jsii.get(self, "domainNameRef"))
31429
+
30606
31430
 
30607
31431
  @jsii.implements(IAccessLogDestination)
30608
31432
  class FirehoseLogDestination(
@@ -30646,7 +31470,7 @@ class FirehoseLogDestination(
30646
31470
  jsii.create(self.__class__, self, [stream])
30647
31471
 
30648
31472
  @jsii.member(jsii_name="bind")
30649
- def bind(self, stage: IStage) -> AccessLogDestinationConfig:
31473
+ def bind(self, stage: _IStageRef_b829c330) -> AccessLogDestinationConfig:
30650
31474
  '''Binds this destination to the Firehose delivery stream.
30651
31475
 
30652
31476
  :param stage: -
@@ -30726,6 +31550,39 @@ class GatewayResponse(
30726
31550
 
30727
31551
  jsii.create(self.__class__, self, [scope, id, props])
30728
31552
 
31553
+ @jsii.member(jsii_name="fromGatewayResponseId")
31554
+ @builtins.classmethod
31555
+ def from_gateway_response_id(
31556
+ cls,
31557
+ scope: _constructs_77d1e7e8.Construct,
31558
+ id: builtins.str,
31559
+ gateway_response_id: builtins.str,
31560
+ ) -> IGatewayResponse:
31561
+ '''Reference an existing GatewayResponse given a gateway response ID.
31562
+
31563
+ :param scope: -
31564
+ :param id: -
31565
+ :param gateway_response_id: -
31566
+ '''
31567
+ if __debug__:
31568
+ type_hints = typing.get_type_hints(_typecheckingstub__7867165fe1cd2b6780c9e541f8f709a08a02872d9895272cbd253b87e77c8da8)
31569
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
31570
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
31571
+ check_type(argname="argument gateway_response_id", value=gateway_response_id, expected_type=type_hints["gateway_response_id"])
31572
+ return typing.cast(IGatewayResponse, jsii.sinvoke(cls, "fromGatewayResponseId", [scope, id, gateway_response_id]))
31573
+
31574
+ @jsii.python.classproperty
31575
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
31576
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
31577
+ '''Uniquely identifies this class.'''
31578
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
31579
+
31580
+ @builtins.property
31581
+ @jsii.member(jsii_name="gatewayResponseRef")
31582
+ def gateway_response_ref(self) -> _GatewayResponseReference_0f1f239c:
31583
+ '''A reference to a GatewayResponse resource.'''
31584
+ return typing.cast(_GatewayResponseReference_0f1f239c, jsii.get(self, "gatewayResponseRef"))
31585
+
30729
31586
 
30730
31587
  class HttpIntegration(
30731
31588
  Integration,
@@ -30806,6 +31663,7 @@ class LambdaIntegration(
30806
31663
  *,
30807
31664
  allow_test_invoke: typing.Optional[builtins.bool] = None,
30808
31665
  proxy: typing.Optional[builtins.bool] = None,
31666
+ scope_permission_to_method: typing.Optional[builtins.bool] = None,
30809
31667
  cache_key_parameters: typing.Optional[typing.Sequence[builtins.str]] = None,
30810
31668
  cache_namespace: typing.Optional[builtins.str] = None,
30811
31669
  connection_type: typing.Optional[ConnectionType] = None,
@@ -30821,8 +31679,9 @@ class LambdaIntegration(
30821
31679
  ) -> None:
30822
31680
  '''
30823
31681
  :param handler: -
30824
- :param allow_test_invoke: Allow invoking method from AWS Console UI (for testing purposes). This will add another permission to the AWS Lambda resource policy which will allow the ``test-invoke-stage`` stage to invoke this handler. If this is set to ``false``, the function will only be usable from the deployment endpoint. Default: true
31682
+ :param allow_test_invoke: Allow invoking method from AWS Console UI (for testing purposes). This will add another permission to the AWS Lambda resource policy which will allow the ``test-invoke-stage`` stage to invoke this handler. If this is set to ``false``, the function will only be usable from the deployment endpoint. Note that this property is ignored when ``scopePermissionToMethod`` is ``false``. Default: true
30825
31683
  :param proxy: Use proxy integration or normal (request/response mapping) integration. Default: true
31684
+ :param scope_permission_to_method: Scope the permission for invoking the AWS Lambda down to the specific method associated with this integration. If this is set to ``false``, the permission will allow invoking the AWS Lambda from any method. This is useful for reducing the AWS Lambda policy size for cases where the same AWS Lambda function is reused for many integrations. Note that this will always allow test invocations. Default: true
30826
31685
  :param cache_key_parameters: A list of request parameters whose values are to be cached. It determines request parameters that will make it into the cache key.
30827
31686
  :param cache_namespace: An API-specific tag group of related cached parameters.
30828
31687
  :param connection_type: The type of network connection to the integration endpoint. Default: - ConnectionType.VPC_LINK if ``vpcLink`` property is configured; ConnectionType.Internet otherwise.
@@ -30842,6 +31701,7 @@ class LambdaIntegration(
30842
31701
  options = LambdaIntegrationOptions(
30843
31702
  allow_test_invoke=allow_test_invoke,
30844
31703
  proxy=proxy,
31704
+ scope_permission_to_method=scope_permission_to_method,
30845
31705
  cache_key_parameters=cache_key_parameters,
30846
31706
  cache_namespace=cache_namespace,
30847
31707
  connection_type=connection_type,
@@ -32039,6 +32899,12 @@ class RequestAuthorizer(
32039
32899
  '''Sets up the permissions necessary for the API Gateway service to invoke the Lambda function.'''
32040
32900
  return typing.cast(None, jsii.invoke(self, "setupPermissions", []))
32041
32901
 
32902
+ @jsii.python.classproperty
32903
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
32904
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
32905
+ '''Uniquely identifies this class.'''
32906
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
32907
+
32042
32908
  @builtins.property
32043
32909
  @jsii.member(jsii_name="authorizerArn")
32044
32910
  def authorizer_arn(self) -> builtins.str:
@@ -32168,6 +33034,12 @@ class Resource(
32168
33034
 
32169
33035
  return typing.cast(IResource, jsii.sinvoke(cls, "fromResourceAttributes", [scope, id, attrs]))
32170
33036
 
33037
+ @jsii.python.classproperty
33038
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
33039
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
33040
+ '''Uniquely identifies this class.'''
33041
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
33042
+
32171
33043
  @builtins.property
32172
33044
  @jsii.member(jsii_name="api")
32173
33045
  def api(self) -> IRestApi:
@@ -32471,6 +33343,12 @@ class RestApi(
32471
33343
  check_type(argname="argument statement", value=statement, expected_type=type_hints["statement"])
32472
33344
  return typing.cast(_AddToResourcePolicyResult_1d0a53ad, jsii.invoke(self, "addToResourcePolicy", [statement]))
32473
33345
 
33346
+ @jsii.python.classproperty
33347
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
33348
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
33349
+ '''Uniquely identifies this class.'''
33350
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
33351
+
32474
33352
  @builtins.property
32475
33353
  @jsii.member(jsii_name="methods")
32476
33354
  def methods(self) -> typing.List[Method]:
@@ -32721,6 +33599,12 @@ class Stage(
32721
33599
 
32722
33600
  return typing.cast(IStage, jsii.sinvoke(cls, "fromStageAttributes", [scope, id, attrs]))
32723
33601
 
33602
+ @jsii.python.classproperty
33603
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
33604
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
33605
+ '''Uniquely identifies this class.'''
33606
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
33607
+
32724
33608
  @builtins.property
32725
33609
  @jsii.member(jsii_name="restApi")
32726
33610
  def rest_api(self) -> IRestApi:
@@ -32866,6 +33750,12 @@ class StepFunctionsRestApi(
32866
33750
 
32867
33751
  jsii.create(self.__class__, self, [scope, id, props])
32868
33752
 
33753
+ @jsii.python.classproperty
33754
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
33755
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
33756
+ '''Uniquely identifies this class.'''
33757
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
33758
+
32869
33759
 
32870
33760
  @jsii.implements(IAuthorizer)
32871
33761
  class TokenAuthorizer(
@@ -32945,6 +33835,12 @@ class TokenAuthorizer(
32945
33835
  '''Sets up the permissions necessary for the API Gateway service to invoke the Lambda function.'''
32946
33836
  return typing.cast(None, jsii.invoke(self, "setupPermissions", []))
32947
33837
 
33838
+ @jsii.python.classproperty
33839
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
33840
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
33841
+ '''Uniquely identifies this class.'''
33842
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
33843
+
32948
33844
  @builtins.property
32949
33845
  @jsii.member(jsii_name="authorizerArn")
32950
33846
  def authorizer_arn(self) -> builtins.str:
@@ -33117,6 +34013,12 @@ class LambdaRestApi(
33117
34013
 
33118
34014
  jsii.create(self.__class__, self, [scope, id, props])
33119
34015
 
34016
+ @jsii.python.classproperty
34017
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
34018
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
34019
+ '''Uniquely identifies this class.'''
34020
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
34021
+
33120
34022
 
33121
34023
  class ProxyResource(
33122
34024
  Resource,
@@ -33226,6 +34128,12 @@ class ProxyResource(
33226
34128
 
33227
34129
  return typing.cast(Method, jsii.invoke(self, "addMethod", [http_method, integration, options]))
33228
34130
 
34131
+ @jsii.python.classproperty
34132
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
34133
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
34134
+ '''Uniquely identifies this class.'''
34135
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
34136
+
33229
34137
  @builtins.property
33230
34138
  @jsii.member(jsii_name="anyMethod")
33231
34139
  def any_method(self) -> typing.Optional[Method]:
@@ -33457,6 +34365,12 @@ def _typecheckingstub__d532554505e61f81e1b9ec850cbf52d3ee1550f112073eae6daecd883
33457
34365
  """Type checking stubs"""
33458
34366
  pass
33459
34367
 
34368
+ def _typecheckingstub__0bc4acaae324fa465c0ae63ddfa13df8085530150092a3990e1815dea9b745ec(
34369
+ format: builtins.str,
34370
+ ) -> None:
34371
+ """Type checking stubs"""
34372
+ pass
34373
+
33460
34374
  def _typecheckingstub__4692c15f70ce18849ab172ed2332cc4added75850adcf2e0ed8a0ebce52c27db(
33461
34375
  format: builtins.str,
33462
34376
  ) -> None:
@@ -33476,7 +34390,7 @@ def _typecheckingstub__931fac6af706dd0dae384cc682b2ecb066666ff6165060417e461a392
33476
34390
  deploy_time: typing.Optional[builtins.bool] = None,
33477
34391
  display_name: typing.Optional[builtins.str] = None,
33478
34392
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
33479
- source_kms_key: typing.Optional[_IKey_5f11635f] = None,
34393
+ source_kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
33480
34394
  asset_hash: typing.Optional[builtins.str] = None,
33481
34395
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
33482
34396
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -33503,7 +34417,7 @@ def _typecheckingstub__3fdc39319ab31dc01370dce3eebe8d625768dc937b6e3ca507db636cd
33503
34417
 
33504
34418
  def _typecheckingstub__3ee382fc2c94d4bece70868d74861f5ede3af81a49e0b03d1b1d7f7808f09fd4(
33505
34419
  _scope: _constructs_77d1e7e8.Construct,
33506
- _rest_api: IRestApi,
34420
+ _rest_api: _IRestApiRef_72dcbda0,
33507
34421
  ) -> None:
33508
34422
  """Type checking stubs"""
33509
34423
  pass
@@ -33544,7 +34458,7 @@ def _typecheckingstub__8d060d6bc8fc5b369cfe71dc05efc964aa6b083b674baa7dc17f1762a
33544
34458
  deploy_time: typing.Optional[builtins.bool] = None,
33545
34459
  display_name: typing.Optional[builtins.str] = None,
33546
34460
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
33547
- source_kms_key: typing.Optional[_IKey_5f11635f] = None,
34461
+ source_kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
33548
34462
  asset_hash: typing.Optional[builtins.str] = None,
33549
34463
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
33550
34464
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -33563,7 +34477,7 @@ def _typecheckingstub__e81dd80c8a5aadd62f5dcc884b89ddc1076b787b54c75f996c03c1f18
33563
34477
 
33564
34478
  def _typecheckingstub__b1885a209c59071b4bad06f2e2988a4c685fbb214e4cfd8ee60a749d822b13fc(
33565
34479
  scope: _constructs_77d1e7e8.Construct,
33566
- rest_api: IRestApi,
34480
+ rest_api: _IRestApiRef_72dcbda0,
33567
34481
  ) -> None:
33568
34482
  """Type checking stubs"""
33569
34483
  pass
@@ -33587,8 +34501,8 @@ def _typecheckingstub__ef549043f328dc8eafa81dc926877350a07f0bbf5f070dbbc6d4486d7
33587
34501
  scope: _constructs_77d1e7e8.Construct,
33588
34502
  id: builtins.str,
33589
34503
  *,
33590
- domain_name: IDomainName,
33591
- rest_api: IRestApi,
34504
+ domain_name: _IDomainNameRef_8b0ccf94,
34505
+ rest_api: _IRestApiRef_72dcbda0,
33592
34506
  attach_to_stage: typing.Optional[builtins.bool] = None,
33593
34507
  base_path: typing.Optional[builtins.str] = None,
33594
34508
  stage: typing.Optional[Stage] = None,
@@ -33610,8 +34524,8 @@ def _typecheckingstub__9e348cc160af15e382c6a3c6d66cd04543644f3672b2679f19c801ae8
33610
34524
  attach_to_stage: typing.Optional[builtins.bool] = None,
33611
34525
  base_path: typing.Optional[builtins.str] = None,
33612
34526
  stage: typing.Optional[Stage] = None,
33613
- domain_name: IDomainName,
33614
- rest_api: IRestApi,
34527
+ domain_name: _IDomainNameRef_8b0ccf94,
34528
+ rest_api: _IRestApiRef_72dcbda0,
33615
34529
  ) -> None:
33616
34530
  """Type checking stubs"""
33617
34531
  pass
@@ -33666,6 +34580,14 @@ def _typecheckingstub__7b22ef3a96b2535227fcee63bac2bd1636a3ecaf8ae447d48e70ec926
33666
34580
  """Type checking stubs"""
33667
34581
  pass
33668
34582
 
34583
+ def _typecheckingstub__d28618723a7da86eac262dd6fcbd57647bc2aa89de83959534c6b5288f040fef(
34584
+ scope: _constructs_77d1e7e8.Construct,
34585
+ id: builtins.str,
34586
+ api_key_id: builtins.str,
34587
+ ) -> None:
34588
+ """Type checking stubs"""
34589
+ pass
34590
+
33669
34591
  def _typecheckingstub__3d6e2d573fd59cd7bda27f8af3a06d556bf1f848f8a8571e3bb89f6ae03687b8(
33670
34592
  inspector: _TreeInspector_488e0dd5,
33671
34593
  ) -> None:
@@ -33988,6 +34910,14 @@ def _typecheckingstub__b04e1c6e6561781583a05d34684fa7f16c7a0f9593b5bdadf17a39aa7
33988
34910
  """Type checking stubs"""
33989
34911
  pass
33990
34912
 
34913
+ def _typecheckingstub__0a5e31aa2352a567ea0a97f6b3c305db593bab1d23ed323eab3a574cdbc20b53(
34914
+ scope: _constructs_77d1e7e8.Construct,
34915
+ id: builtins.str,
34916
+ client_certificate_id: builtins.str,
34917
+ ) -> None:
34918
+ """Type checking stubs"""
34919
+ pass
34920
+
33991
34921
  def _typecheckingstub__c56b005c9ce07b196b1f4cb1c80e16999eacd5dbdfac93d2f4f64138b0808a7e(
33992
34922
  inspector: _TreeInspector_488e0dd5,
33993
34923
  ) -> None:
@@ -34274,12 +35204,29 @@ def _typecheckingstub__133ab79e698bd61c150ef7c699a84e864403caafbb03bd0bc5874cee6
34274
35204
  mutual_tls_authentication: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDomainName.MutualTlsAuthenticationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
34275
35205
  ownership_verification_certificate_arn: typing.Optional[builtins.str] = None,
34276
35206
  regional_certificate_arn: typing.Optional[builtins.str] = None,
35207
+ routing_mode: typing.Optional[builtins.str] = None,
34277
35208
  security_policy: typing.Optional[builtins.str] = None,
34278
35209
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
34279
35210
  ) -> None:
34280
35211
  """Type checking stubs"""
34281
35212
  pass
34282
35213
 
35214
+ def _typecheckingstub__7573cabb5591aeca76fca113dbdb083344840ea756b892b5b440934d48a9afb3(
35215
+ scope: _constructs_77d1e7e8.Construct,
35216
+ id: builtins.str,
35217
+ domain_name: builtins.str,
35218
+ ) -> None:
35219
+ """Type checking stubs"""
35220
+ pass
35221
+
35222
+ def _typecheckingstub__7594371e62564d813ae77a2f2b52731cbf46dfc26d0b9ee7957708a268f7536f(
35223
+ scope: _constructs_77d1e7e8.Construct,
35224
+ id: builtins.str,
35225
+ arn: builtins.str,
35226
+ ) -> None:
35227
+ """Type checking stubs"""
35228
+ pass
35229
+
34283
35230
  def _typecheckingstub__37a1235a5256f1b7d85e64cb2b5f3e81e3b6388eed32f66d2b4549fc757b871a(
34284
35231
  inspector: _TreeInspector_488e0dd5,
34285
35232
  ) -> None:
@@ -34328,6 +35275,12 @@ def _typecheckingstub__2fa342814b3288d616098cb51248e53b5ed60cc5a1e78e11251fc88cd
34328
35275
  """Type checking stubs"""
34329
35276
  pass
34330
35277
 
35278
+ def _typecheckingstub__dd7aa5f6176c73c0592dc8b18cb02baf6d8eb11e8fb20244d07a64f574cf3e93(
35279
+ value: typing.Optional[builtins.str],
35280
+ ) -> None:
35281
+ """Type checking stubs"""
35282
+ pass
35283
+
34331
35284
  def _typecheckingstub__8f65e2b19ddf5075e1df27ef655917695bca8ced9d2b2266dbdadebde2c104bf(
34332
35285
  value: typing.Optional[builtins.str],
34333
35286
  ) -> None:
@@ -34422,6 +35375,7 @@ def _typecheckingstub__703d29eb1e26e9742eff449d68ee5c6089daeb58e8544900d248c3a37
34422
35375
  mutual_tls_authentication: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDomainName.MutualTlsAuthenticationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
34423
35376
  ownership_verification_certificate_arn: typing.Optional[builtins.str] = None,
34424
35377
  regional_certificate_arn: typing.Optional[builtins.str] = None,
35378
+ routing_mode: typing.Optional[builtins.str] = None,
34425
35379
  security_policy: typing.Optional[builtins.str] = None,
34426
35380
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
34427
35381
  ) -> None:
@@ -34436,6 +35390,7 @@ def _typecheckingstub__a4f501d10d57d39a48913872efdcb7d389a076fed9b5aabb21034b8e6
34436
35390
  domain_name: typing.Optional[builtins.str] = None,
34437
35391
  endpoint_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDomainNameV2.EndpointConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
34438
35392
  policy: typing.Any = None,
35393
+ routing_mode: typing.Optional[builtins.str] = None,
34439
35394
  security_policy: typing.Optional[builtins.str] = None,
34440
35395
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
34441
35396
  ) -> None:
@@ -34478,6 +35433,12 @@ def _typecheckingstub__a0c6989179a94e32b700994895064456ee57af9eb39330638ade9b780
34478
35433
  """Type checking stubs"""
34479
35434
  pass
34480
35435
 
35436
+ def _typecheckingstub__3941c41ed4b2ba9b551f85789cc8fe17846ac57ce1372a7894034cd0c04cc4a9(
35437
+ value: typing.Optional[builtins.str],
35438
+ ) -> None:
35439
+ """Type checking stubs"""
35440
+ pass
35441
+
34481
35442
  def _typecheckingstub__a85cede5bfb66595d91f3753ac1832695db8f9eb734e73ecbc1600f19d466199(
34482
35443
  value: typing.Optional[builtins.str],
34483
35444
  ) -> None:
@@ -34504,6 +35465,7 @@ def _typecheckingstub__dfb97b3f8aa373f21ebe15318ceaaf08a4d4b4b31e9ba1ed8fb04ef59
34504
35465
  domain_name: typing.Optional[builtins.str] = None,
34505
35466
  endpoint_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDomainNameV2.EndpointConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
34506
35467
  policy: typing.Any = None,
35468
+ routing_mode: typing.Optional[builtins.str] = None,
34507
35469
  security_policy: typing.Optional[builtins.str] = None,
34508
35470
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
34509
35471
  ) -> None:
@@ -34701,6 +35663,7 @@ def _typecheckingstub__7fc2a1b31e9e3f92210ced50c17b0bf1cfcdb472f8b61fcc31a3c633b
34701
35663
  passthrough_behavior: typing.Optional[builtins.str] = None,
34702
35664
  request_parameters: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
34703
35665
  request_templates: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
35666
+ response_transfer_mode: typing.Optional[builtins.str] = None,
34704
35667
  timeout_in_millis: typing.Optional[jsii.Number] = None,
34705
35668
  uri: typing.Optional[builtins.str] = None,
34706
35669
  ) -> None:
@@ -34938,11 +35901,20 @@ def _typecheckingstub__781aae0a2f2512495cbd89d2be23edec0478e71fd6a59c0527cabb245
34938
35901
  name: typing.Optional[builtins.str] = None,
34939
35902
  parameters: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
34940
35903
  policy: typing.Any = None,
35904
+ security_policy: typing.Optional[builtins.str] = None,
34941
35905
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
34942
35906
  ) -> None:
34943
35907
  """Type checking stubs"""
34944
35908
  pass
34945
35909
 
35910
+ def _typecheckingstub__f098f990bc47fb67b4869dd0692c7805f635c5b6966164b81e7977eedb0e23a7(
35911
+ scope: _constructs_77d1e7e8.Construct,
35912
+ id: builtins.str,
35913
+ rest_api_id: builtins.str,
35914
+ ) -> None:
35915
+ """Type checking stubs"""
35916
+ pass
35917
+
34946
35918
  def _typecheckingstub__0d311995dffe9db41f0b189d5aaebea2138fbb7863d3fb06df01c202917e8b13(
34947
35919
  inspector: _TreeInspector_488e0dd5,
34948
35920
  ) -> None:
@@ -35039,6 +36011,12 @@ def _typecheckingstub__b7c411e289712e4a9bfc8e944902e0103f628540a4cf7e48a8c916788
35039
36011
  """Type checking stubs"""
35040
36012
  pass
35041
36013
 
36014
+ def _typecheckingstub__b5cbad8ea7b13cc4138aea2c1f4832de11327b51e38539bb2f152732a2d44409(
36015
+ value: typing.Optional[builtins.str],
36016
+ ) -> None:
36017
+ """Type checking stubs"""
36018
+ pass
36019
+
35042
36020
  def _typecheckingstub__9ae71bb5beb4f360ca0016003cbb508243a9ad4b5e494d1a4655780f8350d620(
35043
36021
  value: typing.Optional[typing.List[_CfnTag_f6864754]],
35044
36022
  ) -> None:
@@ -35080,6 +36058,7 @@ def _typecheckingstub__5e6d4ed4722f0c07021ff207940f8656b0bbeb24224daef1a2a167c70
35080
36058
  name: typing.Optional[builtins.str] = None,
35081
36059
  parameters: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
35082
36060
  policy: typing.Any = None,
36061
+ security_policy: typing.Optional[builtins.str] = None,
35083
36062
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
35084
36063
  ) -> None:
35085
36064
  """Type checking stubs"""
@@ -35271,6 +36250,14 @@ def _typecheckingstub__8a8c11347e47e0f4cc9518ba40e4026dd908f54137f8dd41f789c4c65
35271
36250
  """Type checking stubs"""
35272
36251
  pass
35273
36252
 
36253
+ def _typecheckingstub__44855889c228ef5d7500d8d4056967324b295b7a5290ae6aa891ab901acb2c2e(
36254
+ scope: _constructs_77d1e7e8.Construct,
36255
+ id: builtins.str,
36256
+ usage_plan_id: builtins.str,
36257
+ ) -> None:
36258
+ """Type checking stubs"""
36259
+ pass
36260
+
35274
36261
  def _typecheckingstub__305ebc0d1bd2c496b732d04490b6e35befd6f95c0273c4a987a6d5335feaa2f4(
35275
36262
  inspector: _TreeInspector_488e0dd5,
35276
36263
  ) -> None:
@@ -35419,6 +36406,14 @@ def _typecheckingstub__4a1f69db69c9ab3edee19de9b16585e4355791d79ee3b330d18242cc4
35419
36406
  """Type checking stubs"""
35420
36407
  pass
35421
36408
 
36409
+ def _typecheckingstub__c1a057c69ce236d79b8b6fb912b05b1084e8253b79689c49d313f733ba403dfd(
36410
+ scope: _constructs_77d1e7e8.Construct,
36411
+ id: builtins.str,
36412
+ vpc_link_id: builtins.str,
36413
+ ) -> None:
36414
+ """Type checking stubs"""
36415
+ pass
36416
+
35422
36417
  def _typecheckingstub__ab88de0a7914cd8aabbb92e0ebc49325c3e07a7d032f4f5d29eb7cba850c71b6(
35423
36418
  inspector: _TreeInspector_488e0dd5,
35424
36419
  ) -> None:
@@ -35591,7 +36586,7 @@ def _typecheckingstub__e3a97849ce8a01a0a99c02ae97daf2651b1124b4c2bac9a50b3dbb318
35591
36586
  pass
35592
36587
 
35593
36588
  def _typecheckingstub__5584cb6e6dfde7a0ce69d852df52ee6697c36df3a33e7d95f1f8945c57eb76d0(
35594
- stage: IStage,
36589
+ stage: _IStageRef_b829c330,
35595
36590
  ) -> None:
35596
36591
  """Type checking stubs"""
35597
36592
  pass
@@ -35664,7 +36659,7 @@ def _typecheckingstub__0db60e65de0b59c265539f0763570e52f29515365793132c5be8ef41b
35664
36659
  pass
35665
36660
 
35666
36661
  def _typecheckingstub__0581a1cd8ecb86e004a1d843a397a02b17cb9a9aeacc0117b49cae486cf553be(
35667
- api_key: IApiKey,
36662
+ api_key: _IApiKeyRef_6e16b46a,
35668
36663
  *,
35669
36664
  override_logical_id: typing.Optional[builtins.str] = None,
35670
36665
  ) -> None:
@@ -35765,7 +36760,7 @@ def _typecheckingstub__f6cb930af96a75dfa56cd51da050efc5f3c79f1759af7579e8e639450
35765
36760
 
35766
36761
  def _typecheckingstub__689c3507e908daefb625f42f5bfc2c215e135591704691d515c49669d5c3dbc3(
35767
36762
  *,
35768
- additional_items: typing.Optional[typing.Sequence[typing.Union[JsonSchema, typing.Dict[builtins.str, typing.Any]]]] = None,
36763
+ additional_items: typing.Optional[typing.Union[builtins.bool, typing.Union[JsonSchema, typing.Dict[builtins.str, typing.Any]]]] = None,
35769
36764
  additional_properties: typing.Optional[typing.Union[builtins.bool, typing.Union[JsonSchema, typing.Dict[builtins.str, typing.Any]]]] = None,
35770
36765
  all_of: typing.Optional[typing.Sequence[typing.Union[JsonSchema, typing.Dict[builtins.str, typing.Any]]]] = None,
35771
36766
  any_of: typing.Optional[typing.Sequence[typing.Union[JsonSchema, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -35846,6 +36841,7 @@ def _typecheckingstub__ce30eee1096e0566120e3d64f9e65409fa005cc047656a224902fd86c
35846
36841
  vpc_link: typing.Optional[IVpcLink] = None,
35847
36842
  allow_test_invoke: typing.Optional[builtins.bool] = None,
35848
36843
  proxy: typing.Optional[builtins.bool] = None,
36844
+ scope_permission_to_method: typing.Optional[builtins.bool] = None,
35849
36845
  ) -> None:
35850
36846
  """Type checking stubs"""
35851
36847
  pass
@@ -35857,7 +36853,7 @@ def _typecheckingstub__a84eaa748025edeb06434794d8ce0f9b8ad3d9438d71bcf66f8fe753a
35857
36853
  pass
35858
36854
 
35859
36855
  def _typecheckingstub__4a19c59b494e920f4294a640b251c2f8c481a6f520483bb6a66bf0f645b448fc(
35860
- _stage: IStage,
36856
+ _stage: _IStageRef_b829c330,
35861
36857
  ) -> None:
35862
36858
  """Type checking stubs"""
35863
36859
  pass
@@ -35891,11 +36887,12 @@ def _typecheckingstub__2b4cbdc48aca0832309ead12cf98a5327de5337263bcb7451db5561ae
35891
36887
 
35892
36888
  def _typecheckingstub__5673792ec70e78f31bd42c8b5fa76d95f3d27fb475ced2b715241422b9a73c79(
35893
36889
  metric_name: builtins.str,
35894
- stage: IStage,
36890
+ stage: _IStageRef_b829c330,
35895
36891
  *,
35896
36892
  account: typing.Optional[builtins.str] = None,
35897
36893
  color: typing.Optional[builtins.str] = None,
35898
36894
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
36895
+ id: typing.Optional[builtins.str] = None,
35899
36896
  label: typing.Optional[builtins.str] = None,
35900
36897
  period: typing.Optional[_Duration_4839e8c3] = None,
35901
36898
  region: typing.Optional[builtins.str] = None,
@@ -35903,16 +36900,18 @@ def _typecheckingstub__5673792ec70e78f31bd42c8b5fa76d95f3d27fb475ced2b715241422b
35903
36900
  stack_region: typing.Optional[builtins.str] = None,
35904
36901
  statistic: typing.Optional[builtins.str] = None,
35905
36902
  unit: typing.Optional[_Unit_61bc6f70] = None,
36903
+ visible: typing.Optional[builtins.bool] = None,
35906
36904
  ) -> None:
35907
36905
  """Type checking stubs"""
35908
36906
  pass
35909
36907
 
35910
36908
  def _typecheckingstub__64ac2608c9f1609b3b980aa9e9605f3bd74f2569716d2fa90b1409dd75b1f362(
35911
- stage: IStage,
36909
+ stage: _IStageRef_b829c330,
35912
36910
  *,
35913
36911
  account: typing.Optional[builtins.str] = None,
35914
36912
  color: typing.Optional[builtins.str] = None,
35915
36913
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
36914
+ id: typing.Optional[builtins.str] = None,
35916
36915
  label: typing.Optional[builtins.str] = None,
35917
36916
  period: typing.Optional[_Duration_4839e8c3] = None,
35918
36917
  region: typing.Optional[builtins.str] = None,
@@ -35920,16 +36919,18 @@ def _typecheckingstub__64ac2608c9f1609b3b980aa9e9605f3bd74f2569716d2fa90b1409dd7
35920
36919
  stack_region: typing.Optional[builtins.str] = None,
35921
36920
  statistic: typing.Optional[builtins.str] = None,
35922
36921
  unit: typing.Optional[_Unit_61bc6f70] = None,
36922
+ visible: typing.Optional[builtins.bool] = None,
35923
36923
  ) -> None:
35924
36924
  """Type checking stubs"""
35925
36925
  pass
35926
36926
 
35927
36927
  def _typecheckingstub__2cf284ffe8f66028e735d60b6ecd9664dc929e5cd71b9b7ce14143816a0fbb89(
35928
- stage: IStage,
36928
+ stage: _IStageRef_b829c330,
35929
36929
  *,
35930
36930
  account: typing.Optional[builtins.str] = None,
35931
36931
  color: typing.Optional[builtins.str] = None,
35932
36932
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
36933
+ id: typing.Optional[builtins.str] = None,
35933
36934
  label: typing.Optional[builtins.str] = None,
35934
36935
  period: typing.Optional[_Duration_4839e8c3] = None,
35935
36936
  region: typing.Optional[builtins.str] = None,
@@ -35937,16 +36938,18 @@ def _typecheckingstub__2cf284ffe8f66028e735d60b6ecd9664dc929e5cd71b9b7ce14143816
35937
36938
  stack_region: typing.Optional[builtins.str] = None,
35938
36939
  statistic: typing.Optional[builtins.str] = None,
35939
36940
  unit: typing.Optional[_Unit_61bc6f70] = None,
36941
+ visible: typing.Optional[builtins.bool] = None,
35940
36942
  ) -> None:
35941
36943
  """Type checking stubs"""
35942
36944
  pass
35943
36945
 
35944
36946
  def _typecheckingstub__0493ec2c246530b5b05f1be196bdc153e1978bea6c8f269860b366eda94549a2(
35945
- stage: IStage,
36947
+ stage: _IStageRef_b829c330,
35946
36948
  *,
35947
36949
  account: typing.Optional[builtins.str] = None,
35948
36950
  color: typing.Optional[builtins.str] = None,
35949
36951
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
36952
+ id: typing.Optional[builtins.str] = None,
35950
36953
  label: typing.Optional[builtins.str] = None,
35951
36954
  period: typing.Optional[_Duration_4839e8c3] = None,
35952
36955
  region: typing.Optional[builtins.str] = None,
@@ -35954,16 +36957,18 @@ def _typecheckingstub__0493ec2c246530b5b05f1be196bdc153e1978bea6c8f269860b366eda
35954
36957
  stack_region: typing.Optional[builtins.str] = None,
35955
36958
  statistic: typing.Optional[builtins.str] = None,
35956
36959
  unit: typing.Optional[_Unit_61bc6f70] = None,
36960
+ visible: typing.Optional[builtins.bool] = None,
35957
36961
  ) -> None:
35958
36962
  """Type checking stubs"""
35959
36963
  pass
35960
36964
 
35961
36965
  def _typecheckingstub__001b2bf8bfa27908da0580fb4246b555f3e30524cd2601928dd174bcc243cba8(
35962
- stage: IStage,
36966
+ stage: _IStageRef_b829c330,
35963
36967
  *,
35964
36968
  account: typing.Optional[builtins.str] = None,
35965
36969
  color: typing.Optional[builtins.str] = None,
35966
36970
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
36971
+ id: typing.Optional[builtins.str] = None,
35967
36972
  label: typing.Optional[builtins.str] = None,
35968
36973
  period: typing.Optional[_Duration_4839e8c3] = None,
35969
36974
  region: typing.Optional[builtins.str] = None,
@@ -35971,16 +36976,18 @@ def _typecheckingstub__001b2bf8bfa27908da0580fb4246b555f3e30524cd2601928dd174bcc
35971
36976
  stack_region: typing.Optional[builtins.str] = None,
35972
36977
  statistic: typing.Optional[builtins.str] = None,
35973
36978
  unit: typing.Optional[_Unit_61bc6f70] = None,
36979
+ visible: typing.Optional[builtins.bool] = None,
35974
36980
  ) -> None:
35975
36981
  """Type checking stubs"""
35976
36982
  pass
35977
36983
 
35978
36984
  def _typecheckingstub__bade8cd8b8758f071556fa580f6b28b70f2f6440e36b36dc871b3306d5141d63(
35979
- stage: IStage,
36985
+ stage: _IStageRef_b829c330,
35980
36986
  *,
35981
36987
  account: typing.Optional[builtins.str] = None,
35982
36988
  color: typing.Optional[builtins.str] = None,
35983
36989
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
36990
+ id: typing.Optional[builtins.str] = None,
35984
36991
  label: typing.Optional[builtins.str] = None,
35985
36992
  period: typing.Optional[_Duration_4839e8c3] = None,
35986
36993
  region: typing.Optional[builtins.str] = None,
@@ -35988,16 +36995,18 @@ def _typecheckingstub__bade8cd8b8758f071556fa580f6b28b70f2f6440e36b36dc871b3306d
35988
36995
  stack_region: typing.Optional[builtins.str] = None,
35989
36996
  statistic: typing.Optional[builtins.str] = None,
35990
36997
  unit: typing.Optional[_Unit_61bc6f70] = None,
36998
+ visible: typing.Optional[builtins.bool] = None,
35991
36999
  ) -> None:
35992
37000
  """Type checking stubs"""
35993
37001
  pass
35994
37002
 
35995
37003
  def _typecheckingstub__967d05990ceae877a7b59ca744da0bf2c478639cc36a703b76a49213cf45800f(
35996
- stage: IStage,
37004
+ stage: _IStageRef_b829c330,
35997
37005
  *,
35998
37006
  account: typing.Optional[builtins.str] = None,
35999
37007
  color: typing.Optional[builtins.str] = None,
36000
37008
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
37009
+ id: typing.Optional[builtins.str] = None,
36001
37010
  label: typing.Optional[builtins.str] = None,
36002
37011
  period: typing.Optional[_Duration_4839e8c3] = None,
36003
37012
  region: typing.Optional[builtins.str] = None,
@@ -36005,16 +37014,18 @@ def _typecheckingstub__967d05990ceae877a7b59ca744da0bf2c478639cc36a703b76a49213c
36005
37014
  stack_region: typing.Optional[builtins.str] = None,
36006
37015
  statistic: typing.Optional[builtins.str] = None,
36007
37016
  unit: typing.Optional[_Unit_61bc6f70] = None,
37017
+ visible: typing.Optional[builtins.bool] = None,
36008
37018
  ) -> None:
36009
37019
  """Type checking stubs"""
36010
37020
  pass
36011
37021
 
36012
37022
  def _typecheckingstub__d41d28c85cd25934abfd3bd4223f1dfd9b5d6c8dbd0ceb1869a97c090d98e8bc(
36013
- stage: IStage,
37023
+ stage: _IStageRef_b829c330,
36014
37024
  *,
36015
37025
  account: typing.Optional[builtins.str] = None,
36016
37026
  color: typing.Optional[builtins.str] = None,
36017
37027
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
37028
+ id: typing.Optional[builtins.str] = None,
36018
37029
  label: typing.Optional[builtins.str] = None,
36019
37030
  period: typing.Optional[_Duration_4839e8c3] = None,
36020
37031
  region: typing.Optional[builtins.str] = None,
@@ -36022,6 +37033,7 @@ def _typecheckingstub__d41d28c85cd25934abfd3bd4223f1dfd9b5d6c8dbd0ceb1869a97c090
36022
37033
  stack_region: typing.Optional[builtins.str] = None,
36023
37034
  statistic: typing.Optional[builtins.str] = None,
36024
37035
  unit: typing.Optional[_Unit_61bc6f70] = None,
37036
+ visible: typing.Optional[builtins.bool] = None,
36025
37037
  ) -> None:
36026
37038
  """Type checking stubs"""
36027
37039
  pass
@@ -36423,6 +37435,7 @@ def _typecheckingstub__83e0007c5bc1aeac14243c8f05dab576ffb55853642cfe1f4a1352b59
36423
37435
  account: typing.Optional[builtins.str] = None,
36424
37436
  color: typing.Optional[builtins.str] = None,
36425
37437
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
37438
+ id: typing.Optional[builtins.str] = None,
36426
37439
  label: typing.Optional[builtins.str] = None,
36427
37440
  period: typing.Optional[_Duration_4839e8c3] = None,
36428
37441
  region: typing.Optional[builtins.str] = None,
@@ -36430,6 +37443,7 @@ def _typecheckingstub__83e0007c5bc1aeac14243c8f05dab576ffb55853642cfe1f4a1352b59
36430
37443
  stack_region: typing.Optional[builtins.str] = None,
36431
37444
  statistic: typing.Optional[builtins.str] = None,
36432
37445
  unit: typing.Optional[_Unit_61bc6f70] = None,
37446
+ visible: typing.Optional[builtins.bool] = None,
36433
37447
  ) -> None:
36434
37448
  """Type checking stubs"""
36435
37449
  pass
@@ -36515,7 +37529,7 @@ def _typecheckingstub__edb4c50a5394bb1e1b27cdf2e1b593a161a3d26d31adcd03f57d290d6
36515
37529
  pass
36516
37530
 
36517
37531
  def _typecheckingstub__17529ae5d8eea5254fdacb085378cd0c45db1755d86da79bc4f191ca2d7d11cf(
36518
- bucket: _IBucket_42e086fd,
37532
+ bucket: _IBucketRef_3debe44e,
36519
37533
  key: builtins.str,
36520
37534
  object_version: typing.Optional[builtins.str] = None,
36521
37535
  ) -> None:
@@ -36551,6 +37565,7 @@ def _typecheckingstub__4722b635be09e87466169ef31b6610061f0fa16d1cff99382f0584fde
36551
37565
  id: builtins.str,
36552
37566
  *,
36553
37567
  api_definition: ApiDefinition,
37568
+ binary_media_types: typing.Optional[typing.Sequence[builtins.str]] = None,
36554
37569
  min_compression_size: typing.Optional[_Size_7b441c34] = None,
36555
37570
  mode: typing.Optional[RestApiMode] = None,
36556
37571
  cloud_watch_role: typing.Optional[builtins.bool] = None,
@@ -36596,6 +37611,7 @@ def _typecheckingstub__4506705cb637aa3098ad358d76fa29dd7a218f7542020d2e9dbfe8182
36596
37611
  rest_api_name: typing.Optional[builtins.str] = None,
36597
37612
  retain_deployments: typing.Optional[builtins.bool] = None,
36598
37613
  api_definition: ApiDefinition,
37614
+ binary_media_types: typing.Optional[typing.Sequence[builtins.str]] = None,
36599
37615
  min_compression_size: typing.Optional[_Size_7b441c34] = None,
36600
37616
  mode: typing.Optional[RestApiMode] = None,
36601
37617
  ) -> None:
@@ -36641,6 +37657,7 @@ def _typecheckingstub__e7aa140ce28102f6291e54fab42702aec75e06eb4ff034ae6897a3606
36641
37657
  account: typing.Optional[builtins.str] = None,
36642
37658
  color: typing.Optional[builtins.str] = None,
36643
37659
  dimensions_map: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
37660
+ id: typing.Optional[builtins.str] = None,
36644
37661
  label: typing.Optional[builtins.str] = None,
36645
37662
  period: typing.Optional[_Duration_4839e8c3] = None,
36646
37663
  region: typing.Optional[builtins.str] = None,
@@ -36648,6 +37665,7 @@ def _typecheckingstub__e7aa140ce28102f6291e54fab42702aec75e06eb4ff034ae6897a3606
36648
37665
  stack_region: typing.Optional[builtins.str] = None,
36649
37666
  statistic: typing.Optional[builtins.str] = None,
36650
37667
  unit: typing.Optional[_Unit_61bc6f70] = None,
37668
+ visible: typing.Optional[builtins.bool] = None,
36651
37669
  ) -> None:
36652
37670
  """Type checking stubs"""
36653
37671
  pass
@@ -36845,7 +37863,7 @@ def _typecheckingstub__ab0eb11ee5a0c0bec0a62982098a57f7f8b2e2fbc41c99cc845ad7a13
36845
37863
  pass
36846
37864
 
36847
37865
  def _typecheckingstub__285a70fe54073228fa866e73042608af7f28bc4c6294e9973b244c1721d9e216(
36848
- api_key: IApiKey,
37866
+ api_key: _IApiKeyRef_6e16b46a,
36849
37867
  *,
36850
37868
  override_logical_id: typing.Optional[builtins.str] = None,
36851
37869
  ) -> None:
@@ -37043,7 +38061,7 @@ def _typecheckingstub__cad31f1fc315ece50ad1a940ee742a009c2f4345a907cdf5e18ebc6a8
37043
38061
  pass
37044
38062
 
37045
38063
  def _typecheckingstub__821fdc8b9fd1b8f6ead947633bcbfaee025d8a1adbd4241c3f0854b9a0db8097(
37046
- target_stage: IStage,
38064
+ target_stage: _IStageRef_b829c330,
37047
38065
  *,
37048
38066
  base_path: typing.Optional[builtins.str] = None,
37049
38067
  ) -> None:
@@ -37051,7 +38069,7 @@ def _typecheckingstub__821fdc8b9fd1b8f6ead947633bcbfaee025d8a1adbd4241c3f0854b9a
37051
38069
  pass
37052
38070
 
37053
38071
  def _typecheckingstub__d4b721986ff6c3d5c8679f934d8e6e82c46e724bc891e375b56c03d819d3a567(
37054
- target_api: IRestApi,
38072
+ target_api: _IRestApiRef_72dcbda0,
37055
38073
  *,
37056
38074
  attach_to_stage: typing.Optional[builtins.bool] = None,
37057
38075
  base_path: typing.Optional[builtins.str] = None,
@@ -37067,7 +38085,7 @@ def _typecheckingstub__9d15f4386812b1b679d1ebcdd2e9d668cdbc03344408b9122024c31fe
37067
38085
  pass
37068
38086
 
37069
38087
  def _typecheckingstub__179d80b091f382f3efa388133eb4dc48f8c0278a36829a78d55f8c9c52eccd07(
37070
- stage: IStage,
38088
+ stage: _IStageRef_b829c330,
37071
38089
  ) -> None:
37072
38090
  """Type checking stubs"""
37073
38091
  pass
@@ -37085,6 +38103,14 @@ def _typecheckingstub__ab65ab77c1458b70c613940a2005350c46a9b8cb897c082088a4ea041
37085
38103
  """Type checking stubs"""
37086
38104
  pass
37087
38105
 
38106
+ def _typecheckingstub__7867165fe1cd2b6780c9e541f8f709a08a02872d9895272cbd253b87e77c8da8(
38107
+ scope: _constructs_77d1e7e8.Construct,
38108
+ id: builtins.str,
38109
+ gateway_response_id: builtins.str,
38110
+ ) -> None:
38111
+ """Type checking stubs"""
38112
+ pass
38113
+
37088
38114
  def _typecheckingstub__d3ff98fce51dfc1d2d8d0db44fd7207e20f84a1f392be482d886f122a6dcdeec(
37089
38115
  url: builtins.str,
37090
38116
  *,
@@ -37100,6 +38126,7 @@ def _typecheckingstub__5e5180800d8c68a79e025f16a87f0381973d727e2296f047786dc6bbc
37100
38126
  *,
37101
38127
  allow_test_invoke: typing.Optional[builtins.bool] = None,
37102
38128
  proxy: typing.Optional[builtins.bool] = None,
38129
+ scope_permission_to_method: typing.Optional[builtins.bool] = None,
37103
38130
  cache_key_parameters: typing.Optional[typing.Sequence[builtins.str]] = None,
37104
38131
  cache_namespace: typing.Optional[builtins.str] = None,
37105
38132
  connection_type: typing.Optional[ConnectionType] = None,
@@ -37507,3 +38534,6 @@ def _typecheckingstub__e4e0dd5a5563a97619c37342a77235f5f54af4a7b6324b1a4257fe268
37507
38534
  ) -> None:
37508
38535
  """Type checking stubs"""
37509
38536
  pass
38537
+
38538
+ for cls in [IAccessLogDestination, IApiKey, IAuthorizer, IDomainName, IGatewayResponse, IModel, IRequestValidator, IResource, IRestApi, IStage, IUsagePlan, IVpcLink]:
38539
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])