@aws-sdk/client-apigatewayv2 3.379.1 → 3.382.0

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.
@@ -6,26 +6,32 @@ import { ApiGatewayV2ServiceException as __BaseException } from "./ApiGatewayV2S
6
6
  */
7
7
  export interface Cors {
8
8
  /**
9
+ * @public
9
10
  * <p>Specifies whether credentials are included in the CORS request. Supported only for HTTP APIs.</p>
10
11
  */
11
12
  AllowCredentials?: boolean;
12
13
  /**
14
+ * @public
13
15
  * <p>Represents a collection of allowed headers. Supported only for HTTP APIs.</p>
14
16
  */
15
17
  AllowHeaders?: string[];
16
18
  /**
19
+ * @public
17
20
  * <p>Represents a collection of allowed HTTP methods. Supported only for HTTP APIs.</p>
18
21
  */
19
22
  AllowMethods?: string[];
20
23
  /**
24
+ * @public
21
25
  * <p>Represents a collection of allowed origins. Supported only for HTTP APIs.</p>
22
26
  */
23
27
  AllowOrigins?: string[];
24
28
  /**
29
+ * @public
25
30
  * <p>Represents a collection of exposed headers. Supported only for HTTP APIs.</p>
26
31
  */
27
32
  ExposeHeaders?: string[];
28
33
  /**
34
+ * @public
29
35
  * <p>The number of seconds that the browser should cache preflight request results. Supported only for HTTP APIs.</p>
30
36
  */
31
37
  MaxAge?: number;
@@ -48,66 +54,82 @@ export type ProtocolType = (typeof ProtocolType)[keyof typeof ProtocolType];
48
54
  */
49
55
  export interface Api {
50
56
  /**
57
+ * @public
51
58
  * <p>The URI of the API, of the form \{api-id\}.execute-api.\{region\}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.</p>
52
59
  */
53
60
  ApiEndpoint?: string;
54
61
  /**
62
+ * @public
55
63
  * <p>Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.</p>
56
64
  */
57
65
  ApiGatewayManaged?: boolean;
58
66
  /**
67
+ * @public
59
68
  * <p>The API ID.</p>
60
69
  */
61
70
  ApiId?: string;
62
71
  /**
72
+ * @public
63
73
  * <p>An API key selection expression. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions">API Key Selection Expressions</a>.</p>
64
74
  */
65
75
  ApiKeySelectionExpression?: string;
66
76
  /**
77
+ * @public
67
78
  * <p>A CORS configuration. Supported only for HTTP APIs.</p>
68
79
  */
69
80
  CorsConfiguration?: Cors;
70
81
  /**
82
+ * @public
71
83
  * <p>The timestamp when the API was created.</p>
72
84
  */
73
85
  CreatedDate?: Date;
74
86
  /**
87
+ * @public
75
88
  * <p>The description of the API.</p>
76
89
  */
77
90
  Description?: string;
78
91
  /**
92
+ * @public
79
93
  * <p>Avoid validating models when creating a deployment. Supported only for WebSocket APIs.</p>
80
94
  */
81
95
  DisableSchemaValidation?: boolean;
82
96
  /**
97
+ * @public
83
98
  * <p>Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://\{api_id\}.execute-api.\{region\}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.</p>
84
99
  */
85
100
  DisableExecuteApiEndpoint?: boolean;
86
101
  /**
102
+ * @public
87
103
  * <p>The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.</p>
88
104
  */
89
105
  ImportInfo?: string[];
90
106
  /**
107
+ * @public
91
108
  * <p>The name of the API.</p>
92
109
  */
93
110
  Name: string | undefined;
94
111
  /**
112
+ * @public
95
113
  * <p>The API protocol.</p>
96
114
  */
97
115
  ProtocolType: ProtocolType | string | undefined;
98
116
  /**
117
+ * @public
99
118
  * <p>The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be $\{request.method\} $\{request.path\}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.</p>
100
119
  */
101
120
  RouteSelectionExpression: string | undefined;
102
121
  /**
122
+ * @public
103
123
  * <p>A collection of tags associated with the API.</p>
104
124
  */
105
125
  Tags?: Record<string, string>;
106
126
  /**
127
+ * @public
107
128
  * <p>A version identifier for the API.</p>
108
129
  */
109
130
  Version?: string;
110
131
  /**
132
+ * @public
111
133
  * <p>The warning messages reported when failonwarnings is turned on during API import.</p>
112
134
  */
113
135
  Warnings?: string[];
@@ -118,18 +140,22 @@ export interface Api {
118
140
  */
119
141
  export interface ApiMapping {
120
142
  /**
143
+ * @public
121
144
  * <p>The API identifier.</p>
122
145
  */
123
146
  ApiId: string | undefined;
124
147
  /**
148
+ * @public
125
149
  * <p>The API mapping identifier.</p>
126
150
  */
127
151
  ApiMappingId?: string;
128
152
  /**
153
+ * @public
129
154
  * <p>The API mapping key.</p>
130
155
  */
131
156
  ApiMappingKey?: string;
132
157
  /**
158
+ * @public
133
159
  * <p>The API stage.</p>
134
160
  */
135
161
  Stage: string | undefined;
@@ -152,10 +178,12 @@ export type AuthorizerType = (typeof AuthorizerType)[keyof typeof AuthorizerType
152
178
  */
153
179
  export interface JWTConfiguration {
154
180
  /**
181
+ * @public
155
182
  * <p>A list of the intended recipients of the JWT. A valid JWT must provide an aud that matches at least one entry in this list. See <a href="https://tools.ietf.org/html/rfc7519#section-4.1.3">RFC 7519</a>. Supported only for HTTP APIs.</p>
156
183
  */
157
184
  Audience?: string[];
158
185
  /**
186
+ * @public
159
187
  * <p>The base domain of the identity provider that issues JSON Web Tokens. For example, an Amazon Cognito user pool has the following format: https://cognito-idp.<replaceable>\{region\}</replaceable>.amazonaws.com/<replaceable>\{userPoolId\}</replaceable>
160
188
  * . Required for the JWT authorizer type. Supported only for HTTP APIs.</p>
161
189
  */
@@ -167,47 +195,58 @@ export interface JWTConfiguration {
167
195
  */
168
196
  export interface Authorizer {
169
197
  /**
198
+ * @public
170
199
  * <p>Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, don't specify this parameter. Supported only for REQUEST authorizers.</p>
171
200
  */
172
201
  AuthorizerCredentialsArn?: string;
173
202
  /**
203
+ * @public
174
204
  * <p>The authorizer identifier.</p>
175
205
  */
176
206
  AuthorizerId?: string;
177
207
  /**
208
+ * @public
178
209
  * <p>Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda authorizers. Supported values are 1.0 and 2.0. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p>
179
210
  */
180
211
  AuthorizerPayloadFormatVersion?: string;
181
212
  /**
213
+ * @public
182
214
  * <p>The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour. Supported only for HTTP API Lambda authorizers.</p>
183
215
  */
184
216
  AuthorizerResultTtlInSeconds?: number;
185
217
  /**
218
+ * @public
186
219
  * <p>The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use JSON Web Tokens (supported only for HTTP APIs).</p>
187
220
  */
188
221
  AuthorizerType?: AuthorizerType | string;
189
222
  /**
223
+ * @public
190
224
  * <p>The authorizer's Uniform Resource Identifier (URI). For REQUEST authorizers, this must be a well-formed Lambda function URI, for example, arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:<replaceable>\{account_id\}</replaceable>:function:<replaceable>\{lambda_function_name\}</replaceable>/invocations. In general, the URI has this form: arn:aws:apigateway:<replaceable>\{region\}</replaceable>:lambda:path/<replaceable>\{service_api\}</replaceable>
191
225
  * , where <replaceable></replaceable>\{region\} is the same as the region hosting the Lambda function, path indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations. Supported only for REQUEST authorizers.</p>
192
226
  */
193
227
  AuthorizerUri?: string;
194
228
  /**
229
+ * @public
195
230
  * <p>Specifies whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a></p>
196
231
  */
197
232
  EnableSimpleResponses?: boolean;
198
233
  /**
234
+ * @public
199
235
  * <p>The identity source for which authorization is requested.</p> <p>For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the specified request parameters. The identity source can be headers, query string parameters, stage variables, and context parameters. For example, if an Auth header and a Name query string parameter are defined as identity sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name. These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the identity-related request parameters are present in the request, not null, and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching is enabled. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p> <p>For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently only header-based and query parameter-based selections are supported, for example $request.header.Authorization.</p>
200
236
  */
201
237
  IdentitySource?: string[];
202
238
  /**
239
+ * @public
203
240
  * <p>The validation expression does not apply to the REQUEST authorizer.</p>
204
241
  */
205
242
  IdentityValidationExpression?: string;
206
243
  /**
244
+ * @public
207
245
  * <p>Represents the configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP APIs.</p>
208
246
  */
209
247
  JwtConfiguration?: JWTConfiguration;
210
248
  /**
249
+ * @public
211
250
  * <p>The name of the authorizer.</p>
212
251
  */
213
252
  Name: string | undefined;
@@ -231,26 +270,32 @@ export type DeploymentStatus = (typeof DeploymentStatus)[keyof typeof Deployment
231
270
  */
232
271
  export interface Deployment {
233
272
  /**
273
+ * @public
234
274
  * <p>Specifies whether a deployment was automatically released.</p>
235
275
  */
236
276
  AutoDeployed?: boolean;
237
277
  /**
278
+ * @public
238
279
  * <p>The date and time when the Deployment resource was created.</p>
239
280
  */
240
281
  CreatedDate?: Date;
241
282
  /**
283
+ * @public
242
284
  * <p>The identifier for the deployment.</p>
243
285
  */
244
286
  DeploymentId?: string;
245
287
  /**
288
+ * @public
246
289
  * <p>The status of the deployment: PENDING, FAILED, or SUCCEEDED.</p>
247
290
  */
248
291
  DeploymentStatus?: DeploymentStatus | string;
249
292
  /**
293
+ * @public
250
294
  * <p>May contain additional feedback on the status of an API deployment.</p>
251
295
  */
252
296
  DeploymentStatusMessage?: string;
253
297
  /**
298
+ * @public
254
299
  * <p>The description for the deployment.</p>
255
300
  */
256
301
  Description?: string;
@@ -299,42 +344,52 @@ export type SecurityPolicy = (typeof SecurityPolicy)[keyof typeof SecurityPolicy
299
344
  */
300
345
  export interface DomainNameConfiguration {
301
346
  /**
347
+ * @public
302
348
  * <p>A domain name for the API.</p>
303
349
  */
304
350
  ApiGatewayDomainName?: string;
305
351
  /**
352
+ * @public
306
353
  * <p>An AWS-managed certificate that will be used by the edge-optimized endpoint for this domain name. AWS Certificate Manager is the only supported source.</p>
307
354
  */
308
355
  CertificateArn?: string;
309
356
  /**
357
+ * @public
310
358
  * <p>The user-friendly name of the certificate that will be used by the edge-optimized endpoint for this domain name.</p>
311
359
  */
312
360
  CertificateName?: string;
313
361
  /**
362
+ * @public
314
363
  * <p>The timestamp when the certificate that was used by edge-optimized endpoint for this domain name was uploaded.</p>
315
364
  */
316
365
  CertificateUploadDate?: Date;
317
366
  /**
367
+ * @public
318
368
  * <p>The status of the domain name migration. The valid values are AVAILABLE, UPDATING, PENDING_CERTIFICATE_REIMPORT, and PENDING_OWNERSHIP_VERIFICATION. If the status is UPDATING, the domain cannot be modified further until the existing operation is complete. If it is AVAILABLE, the domain can be updated.</p>
319
369
  */
320
370
  DomainNameStatus?: DomainNameStatus | string;
321
371
  /**
372
+ * @public
322
373
  * <p>An optional text message containing detailed information about status of the domain name migration.</p>
323
374
  */
324
375
  DomainNameStatusMessage?: string;
325
376
  /**
377
+ * @public
326
378
  * <p>The endpoint type.</p>
327
379
  */
328
380
  EndpointType?: EndpointType | string;
329
381
  /**
382
+ * @public
330
383
  * <p>The Amazon Route 53 Hosted Zone ID of the endpoint.</p>
331
384
  */
332
385
  HostedZoneId?: string;
333
386
  /**
387
+ * @public
334
388
  * <p>The Transport Layer Security (TLS) version of the security policy for this domain name. The valid values are TLS_1_0 and TLS_1_2.</p>
335
389
  */
336
390
  SecurityPolicy?: SecurityPolicy | string;
337
391
  /**
392
+ * @public
338
393
  * <p>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</p>
339
394
  */
340
395
  OwnershipVerificationCertificateArn?: string;
@@ -344,14 +399,17 @@ export interface DomainNameConfiguration {
344
399
  */
345
400
  export interface MutualTlsAuthentication {
346
401
  /**
402
+ * @public
347
403
  * <p>An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, s3://<replaceable>bucket-name</replaceable>/<replaceable>key-name</replaceable>. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version. To update the truststore, you must have permissions to access the S3 object.</p>
348
404
  */
349
405
  TruststoreUri?: string;
350
406
  /**
407
+ * @public
351
408
  * <p>The version of the S3 object that contains your truststore. To specify a version, you must have versioning enabled for the S3 bucket.</p>
352
409
  */
353
410
  TruststoreVersion?: string;
354
411
  /**
412
+ * @public
355
413
  * <p>A list of warnings that API Gateway returns while processing your truststore. Invalid certificates produce warnings. Mutual TLS is still enabled, but some clients might not be able to access your API. To resolve warnings, upload a new truststore to S3, and then update you domain name to use the new version.</p>
356
414
  */
357
415
  TruststoreWarnings?: string[];
@@ -362,22 +420,27 @@ export interface MutualTlsAuthentication {
362
420
  */
363
421
  export interface DomainName {
364
422
  /**
423
+ * @public
365
424
  * <p>The API mapping selection expression.</p>
366
425
  */
367
426
  ApiMappingSelectionExpression?: string;
368
427
  /**
428
+ * @public
369
429
  * <p>The name of the DomainName resource.</p>
370
430
  */
371
431
  DomainName: string | undefined;
372
432
  /**
433
+ * @public
373
434
  * <p>The domain name configurations.</p>
374
435
  */
375
436
  DomainNameConfigurations?: DomainNameConfiguration[];
376
437
  /**
438
+ * @public
377
439
  * <p>The mutual TLS authentication configuration for a custom domain name.</p>
378
440
  */
379
441
  MutualTlsAuthentication?: MutualTlsAuthentication;
380
442
  /**
443
+ * @public
381
444
  * <p>The collection of tags associated with a domain name.</p>
382
445
  */
383
446
  Tags?: Record<string, string>;
@@ -440,6 +503,7 @@ export type PassthroughBehavior = (typeof PassthroughBehavior)[keyof typeof Pass
440
503
  */
441
504
  export interface TlsConfig {
442
505
  /**
506
+ * @public
443
507
  * <p>If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.</p>
444
508
  */
445
509
  ServerNameToVerify?: string;
@@ -450,62 +514,77 @@ export interface TlsConfig {
450
514
  */
451
515
  export interface Integration {
452
516
  /**
517
+ * @public
453
518
  * <p>Specifies whether an integration is managed by API Gateway. If you created an API using using quick create, the resulting integration is managed by API Gateway. You can update a managed integration, but you can't delete it.</p>
454
519
  */
455
520
  ApiGatewayManaged?: boolean;
456
521
  /**
522
+ * @public
457
523
  * <p>The ID of the VPC link for a private integration. Supported only for HTTP APIs.</p>
458
524
  */
459
525
  ConnectionId?: string;
460
526
  /**
527
+ * @public
461
528
  * <p>The type of the network connection to the integration endpoint. Specify INTERNET for connections through the public routable internet or VPC_LINK for private connections between API Gateway and resources in a VPC. The default value is INTERNET.</p>
462
529
  */
463
530
  ConnectionType?: ConnectionType | string;
464
531
  /**
532
+ * @public
465
533
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
466
534
  */
467
535
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
468
536
  /**
537
+ * @public
469
538
  * <p>Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, specify null.</p>
470
539
  */
471
540
  CredentialsArn?: string;
472
541
  /**
542
+ * @public
473
543
  * <p>Represents the description of an integration.</p>
474
544
  */
475
545
  Description?: string;
476
546
  /**
547
+ * @public
477
548
  * <p>Represents the identifier of an integration.</p>
478
549
  */
479
550
  IntegrationId?: string;
480
551
  /**
552
+ * @public
481
553
  * <p>Specifies the integration's HTTP method type.</p>
482
554
  */
483
555
  IntegrationMethod?: string;
484
556
  /**
557
+ * @public
485
558
  * <p>The integration response selection expression for the integration. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-integration-response-selection-expressions">Integration Response Selection Expressions</a>.</p>
486
559
  */
487
560
  IntegrationResponseSelectionExpression?: string;
488
561
  /**
562
+ * @public
489
563
  * <p>Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service action to invoke. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html">Integration subtype reference</a>.</p>
490
564
  */
491
565
  IntegrationSubtype?: string;
492
566
  /**
567
+ * @public
493
568
  * <p>The integration type of an integration. One of the following:</p> <p>AWS: for integrating the route or method request with an AWS service action, including the Lambda function-invoking action. With the Lambda function-invoking action, this is referred to as the Lambda custom integration. With any other AWS service action, this is known as AWS integration. Supported only for WebSocket APIs.</p> <p>AWS_PROXY: for integrating the route or method request with a Lambda function or other AWS service action. This integration is also referred to as a Lambda proxy integration.</p> <p>HTTP: for integrating the route or method request with an HTTP endpoint. This integration is also referred to as the HTTP custom integration. Supported only for WebSocket APIs.</p> <p>HTTP_PROXY: for integrating the route or method request with an HTTP endpoint, with the client request passed through as-is. This is also referred to as HTTP proxy integration.</p> <p>MOCK: for integrating the route or method request with API Gateway as a "loopback" endpoint without invoking any backend. Supported only for WebSocket APIs.</p>
494
569
  */
495
570
  IntegrationType?: IntegrationType | string;
496
571
  /**
572
+ * @public
497
573
  * <p>For a Lambda integration, specify the URI of a Lambda function.</p> <p>For an HTTP integration, specify a fully-qualified URL.</p> <p>For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. You can use query parameters to target specific resources. To learn more, see <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_DiscoverInstances.html">DiscoverInstances</a>. For private integrations, all resources must be owned by the same AWS account.</p>
498
574
  */
499
575
  IntegrationUri?: string;
500
576
  /**
577
+ * @public
501
578
  * <p>Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER. Supported only for WebSocket APIs.</p> <p>WHEN_NO_MATCH passes the request body for unmapped content types through to the integration backend without transformation.</p> <p>NEVER rejects unmapped content types with an HTTP 415 Unsupported Media Type response.</p> <p>WHEN_NO_TEMPLATES allows pass-through when the integration has no content types mapped to templates. However, if there is at least one content type defined, unmapped content types will be rejected with the same HTTP 415 Unsupported Media Type response.</p>
502
579
  */
503
580
  PassthroughBehavior?: PassthroughBehavior | string;
504
581
  /**
582
+ * @public
505
583
  * <p>Specifies the format of the payload sent to an integration. Required for HTTP APIs.</p>
506
584
  */
507
585
  PayloadFormatVersion?: string;
508
586
  /**
587
+ * @public
509
588
  * <p>For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. 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 backend. The method request parameter value must match the pattern of method.request.<replaceable>\{location\}</replaceable>.<replaceable>\{name\}</replaceable>
510
589
  * , where
511
590
  * <replaceable>\{location\}</replaceable>
@@ -515,22 +594,27 @@ export interface Integration {
515
594
  */
516
595
  RequestParameters?: Record<string, string>;
517
596
  /**
597
+ * @public
518
598
  * <p>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. Supported only for WebSocket APIs.</p>
519
599
  */
520
600
  RequestTemplates?: Record<string, string>;
521
601
  /**
602
+ * @public
522
603
  * <p>Supported only for HTTP APIs. You use response parameters to transform the HTTP response from a backend integration before returning the response to clients. Specify a key-value map from a selection key to response parameters. The selection key must be a valid HTTP status code within the range of 200-599. Response parameters are a key-value map. The key must match pattern &lt;action&gt;:&lt;header&gt;.&lt;location&gt; or overwrite.statuscode. The action can be append, overwrite or remove. The value can be a static value, or map to response data, stage variables, or context variables that are evaluated at runtime. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html">Transforming API requests and responses</a>.</p>
523
604
  */
524
605
  ResponseParameters?: Record<string, Record<string, string>>;
525
606
  /**
607
+ * @public
526
608
  * <p>The template selection expression for the integration. Supported only for WebSocket APIs.</p>
527
609
  */
528
610
  TemplateSelectionExpression?: string;
529
611
  /**
612
+ * @public
530
613
  * <p>Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.</p>
531
614
  */
532
615
  TimeoutInMillis?: number;
533
616
  /**
617
+ * @public
534
618
  * <p>The TLS configuration for a private integration. If you specify a TLS configuration, private integration traffic uses the HTTPS protocol. Supported only for HTTP APIs.</p>
535
619
  */
536
620
  TlsConfig?: TlsConfig;
@@ -541,26 +625,32 @@ export interface Integration {
541
625
  */
542
626
  export interface IntegrationResponse {
543
627
  /**
628
+ * @public
544
629
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
545
630
  */
546
631
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
547
632
  /**
633
+ * @public
548
634
  * <p>The integration response ID.</p>
549
635
  */
550
636
  IntegrationResponseId?: string;
551
637
  /**
638
+ * @public
552
639
  * <p>The integration response key.</p>
553
640
  */
554
641
  IntegrationResponseKey: string | undefined;
555
642
  /**
643
+ * @public
556
644
  * <p>A key-value map specifying response parameters that are passed to the method response from the backend. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of method.response.header.\{name\}, where name is a valid and unique header name. The mapped non-static value must match the pattern of integration.response.header.\{name\} or integration.response.body.\{JSON-expression\}, where name is a valid and unique response header name and JSON-expression is a valid JSON expression without the $ prefix.</p>
557
645
  */
558
646
  ResponseParameters?: Record<string, string>;
559
647
  /**
648
+ * @public
560
649
  * <p>The collection of response templates for the integration response as a string-to-string map of key-value pairs. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.</p>
561
650
  */
562
651
  ResponseTemplates?: Record<string, string>;
563
652
  /**
653
+ * @public
564
654
  * <p>The template selection expressions for the integration response.</p>
565
655
  */
566
656
  TemplateSelectionExpression?: string;
@@ -571,22 +661,27 @@ export interface IntegrationResponse {
571
661
  */
572
662
  export interface Model {
573
663
  /**
664
+ * @public
574
665
  * <p>The content-type for the model, for example, "application/json".</p>
575
666
  */
576
667
  ContentType?: string;
577
668
  /**
669
+ * @public
578
670
  * <p>The description of the model.</p>
579
671
  */
580
672
  Description?: string;
581
673
  /**
674
+ * @public
582
675
  * <p>The model identifier.</p>
583
676
  */
584
677
  ModelId?: string;
585
678
  /**
679
+ * @public
586
680
  * <p>The name of the model. Must be alphanumeric.</p>
587
681
  */
588
682
  Name: string | undefined;
589
683
  /**
684
+ * @public
590
685
  * <p>The schema for the model. For application/json models, this should be JSON schema draft 4 model.</p>
591
686
  */
592
687
  Schema?: string;
@@ -611,6 +706,7 @@ export type AuthorizationType = (typeof AuthorizationType)[keyof typeof Authoriz
611
706
  */
612
707
  export interface ParameterConstraints {
613
708
  /**
709
+ * @public
614
710
  * <p>Whether or not the parameter is required.</p>
615
711
  */
616
712
  Required?: boolean;
@@ -621,54 +717,67 @@ export interface ParameterConstraints {
621
717
  */
622
718
  export interface Route {
623
719
  /**
720
+ * @public
624
721
  * <p>Specifies whether a route is managed by API Gateway. If you created an API using quick create, the $default route is managed by API Gateway. You can't modify the $default route key.</p>
625
722
  */
626
723
  ApiGatewayManaged?: boolean;
627
724
  /**
725
+ * @public
628
726
  * <p>Specifies whether an API key is required for this route. Supported only for WebSocket APIs.</p>
629
727
  */
630
728
  ApiKeyRequired?: boolean;
631
729
  /**
730
+ * @public
632
731
  * <p>A list of authorization scopes configured on a route. The scopes are used with a JWT authorizer to authorize the method invocation. The authorization works by matching the route scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any route scope matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the route scope is configured, the client must provide an access token instead of an identity token for authorization purposes.</p>
633
732
  */
634
733
  AuthorizationScopes?: string[];
635
734
  /**
735
+ * @public
636
736
  * <p>The authorization type for the route. For WebSocket APIs, valid values are NONE for open access, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer For HTTP APIs, valid values are NONE for open access, JWT for using JSON Web Tokens, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer.</p>
637
737
  */
638
738
  AuthorizationType?: AuthorizationType | string;
639
739
  /**
740
+ * @public
640
741
  * <p>The identifier of the Authorizer resource to be associated with this route. The authorizer identifier is generated by API Gateway when you created the authorizer.</p>
641
742
  */
642
743
  AuthorizerId?: string;
643
744
  /**
745
+ * @public
644
746
  * <p>The model selection expression for the route. Supported only for WebSocket APIs.</p>
645
747
  */
646
748
  ModelSelectionExpression?: string;
647
749
  /**
750
+ * @public
648
751
  * <p>The operation name for the route.</p>
649
752
  */
650
753
  OperationName?: string;
651
754
  /**
755
+ * @public
652
756
  * <p>The request models for the route. Supported only for WebSocket APIs.</p>
653
757
  */
654
758
  RequestModels?: Record<string, string>;
655
759
  /**
760
+ * @public
656
761
  * <p>The request parameters for the route. Supported only for WebSocket APIs.</p>
657
762
  */
658
763
  RequestParameters?: Record<string, ParameterConstraints>;
659
764
  /**
765
+ * @public
660
766
  * <p>The route ID.</p>
661
767
  */
662
768
  RouteId?: string;
663
769
  /**
770
+ * @public
664
771
  * <p>The route key for the route.</p>
665
772
  */
666
773
  RouteKey: string | undefined;
667
774
  /**
775
+ * @public
668
776
  * <p>The route response selection expression for the route. Supported only for WebSocket APIs.</p>
669
777
  */
670
778
  RouteResponseSelectionExpression?: string;
671
779
  /**
780
+ * @public
672
781
  * <p>The target for the route.</p>
673
782
  */
674
783
  Target?: string;
@@ -679,22 +788,27 @@ export interface Route {
679
788
  */
680
789
  export interface RouteResponse {
681
790
  /**
791
+ * @public
682
792
  * <p>Represents the model selection expression of a route response. Supported only for WebSocket APIs.</p>
683
793
  */
684
794
  ModelSelectionExpression?: string;
685
795
  /**
796
+ * @public
686
797
  * <p>Represents the response models of a route response.</p>
687
798
  */
688
799
  ResponseModels?: Record<string, string>;
689
800
  /**
801
+ * @public
690
802
  * <p>Represents the response parameters of a route response.</p>
691
803
  */
692
804
  ResponseParameters?: Record<string, ParameterConstraints>;
693
805
  /**
806
+ * @public
694
807
  * <p>Represents the identifier of a route response.</p>
695
808
  */
696
809
  RouteResponseId?: string;
697
810
  /**
811
+ * @public
698
812
  * <p>Represents the route response key of a route response.</p>
699
813
  */
700
814
  RouteResponseKey: string | undefined;
@@ -705,10 +819,12 @@ export interface RouteResponse {
705
819
  */
706
820
  export interface AccessLogSettings {
707
821
  /**
822
+ * @public
708
823
  * <p>The ARN of the CloudWatch Logs log group to receive access logs.</p>
709
824
  */
710
825
  DestinationArn?: string;
711
826
  /**
827
+ * @public
712
828
  * <p>A single line format of the access logs of data, as specified by selected $context variables. The format must include at least $context.requestId.</p>
713
829
  */
714
830
  Format?: string;
@@ -732,22 +848,27 @@ export type LoggingLevel = (typeof LoggingLevel)[keyof typeof LoggingLevel];
732
848
  */
733
849
  export interface RouteSettings {
734
850
  /**
851
+ * @public
735
852
  * <p>Specifies whether (true) or not (false) data trace logging is enabled for this route. This property affects the log entries pushed to Amazon CloudWatch Logs. Supported only for WebSocket APIs.</p>
736
853
  */
737
854
  DataTraceEnabled?: boolean;
738
855
  /**
856
+ * @public
739
857
  * <p>Specifies whether detailed metrics are enabled.</p>
740
858
  */
741
859
  DetailedMetricsEnabled?: boolean;
742
860
  /**
861
+ * @public
743
862
  * <p>Specifies the logging level for this route: INFO, ERROR, or OFF. This property affects the log entries pushed to Amazon CloudWatch Logs. Supported only for WebSocket APIs.</p>
744
863
  */
745
864
  LoggingLevel?: LoggingLevel | string;
746
865
  /**
866
+ * @public
747
867
  * <p>Specifies the throttling burst limit.</p>
748
868
  */
749
869
  ThrottlingBurstLimit?: number;
750
870
  /**
871
+ * @public
751
872
  * <p>Specifies the throttling rate limit.</p>
752
873
  */
753
874
  ThrottlingRateLimit?: number;
@@ -758,58 +879,72 @@ export interface RouteSettings {
758
879
  */
759
880
  export interface Stage {
760
881
  /**
882
+ * @public
761
883
  * <p>Settings for logging access in this stage.</p>
762
884
  */
763
885
  AccessLogSettings?: AccessLogSettings;
764
886
  /**
887
+ * @public
765
888
  * <p>Specifies whether a stage is managed by API Gateway. If you created an API using quick create, the $default stage is managed by API Gateway. You can't modify the $default stage.</p>
766
889
  */
767
890
  ApiGatewayManaged?: boolean;
768
891
  /**
892
+ * @public
769
893
  * <p>Specifies whether updates to an API automatically trigger a new deployment. The default value is false.</p>
770
894
  */
771
895
  AutoDeploy?: boolean;
772
896
  /**
897
+ * @public
773
898
  * <p>The identifier of a client certificate for a Stage. Supported only for WebSocket APIs.</p>
774
899
  */
775
900
  ClientCertificateId?: string;
776
901
  /**
902
+ * @public
777
903
  * <p>The timestamp when the stage was created.</p>
778
904
  */
779
905
  CreatedDate?: Date;
780
906
  /**
907
+ * @public
781
908
  * <p>Default route settings for the stage.</p>
782
909
  */
783
910
  DefaultRouteSettings?: RouteSettings;
784
911
  /**
912
+ * @public
785
913
  * <p>The identifier of the Deployment that the Stage is associated with. Can't be updated if autoDeploy is enabled.</p>
786
914
  */
787
915
  DeploymentId?: string;
788
916
  /**
917
+ * @public
789
918
  * <p>The description of the stage.</p>
790
919
  */
791
920
  Description?: string;
792
921
  /**
922
+ * @public
793
923
  * <p>Describes the status of the last deployment of a stage. Supported only for stages with autoDeploy enabled.</p>
794
924
  */
795
925
  LastDeploymentStatusMessage?: string;
796
926
  /**
927
+ * @public
797
928
  * <p>The timestamp when the stage was last updated.</p>
798
929
  */
799
930
  LastUpdatedDate?: Date;
800
931
  /**
932
+ * @public
801
933
  * <p>Route settings for the stage, by routeKey.</p>
802
934
  */
803
935
  RouteSettings?: Record<string, RouteSettings>;
804
936
  /**
937
+ * @public
805
938
  * <p>The name of the stage.</p>
806
939
  */
807
940
  StageName: string | undefined;
808
941
  /**
942
+ * @public
809
943
  * <p>A map that defines the stage variables for a stage resource. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&amp;=,]+.</p>
810
944
  */
811
945
  StageVariables?: Record<string, string>;
812
946
  /**
947
+ * @public
813
948
  * <p>The collection of tags. Each tag element is associated with a given resource.</p>
814
949
  */
815
950
  Tags?: Record<string, string>;
@@ -846,38 +981,47 @@ export type VpcLinkVersion = (typeof VpcLinkVersion)[keyof typeof VpcLinkVersion
846
981
  */
847
982
  export interface VpcLink {
848
983
  /**
984
+ * @public
849
985
  * <p>The timestamp when the VPC link was created.</p>
850
986
  */
851
987
  CreatedDate?: Date;
852
988
  /**
989
+ * @public
853
990
  * <p>The name of the VPC link.</p>
854
991
  */
855
992
  Name: string | undefined;
856
993
  /**
994
+ * @public
857
995
  * <p>A list of security group IDs for the VPC link.</p>
858
996
  */
859
997
  SecurityGroupIds: string[] | undefined;
860
998
  /**
999
+ * @public
861
1000
  * <p>A list of subnet IDs to include in the VPC link.</p>
862
1001
  */
863
1002
  SubnetIds: string[] | undefined;
864
1003
  /**
1004
+ * @public
865
1005
  * <p>Tags for the VPC link.</p>
866
1006
  */
867
1007
  Tags?: Record<string, string>;
868
1008
  /**
1009
+ * @public
869
1010
  * <p>The ID of the VPC link.</p>
870
1011
  */
871
1012
  VpcLinkId: string | undefined;
872
1013
  /**
1014
+ * @public
873
1015
  * <p>The status of the VPC link.</p>
874
1016
  */
875
1017
  VpcLinkStatus?: VpcLinkStatus | string;
876
1018
  /**
1019
+ * @public
877
1020
  * <p>A message summarizing the cause of the status of the VPC link.</p>
878
1021
  */
879
1022
  VpcLinkStatusMessage?: string;
880
1023
  /**
1024
+ * @public
881
1025
  * <p>The version of the VPC link.</p>
882
1026
  */
883
1027
  VpcLinkVersion?: VpcLinkVersion | string;
@@ -902,6 +1046,7 @@ export declare class BadRequestException extends __BaseException {
902
1046
  readonly name: "BadRequestException";
903
1047
  readonly $fault: "client";
904
1048
  /**
1049
+ * @public
905
1050
  * <p>Describes the error encountered.</p>
906
1051
  */
907
1052
  Message?: string;
@@ -918,6 +1063,7 @@ export declare class ConflictException extends __BaseException {
918
1063
  readonly name: "ConflictException";
919
1064
  readonly $fault: "client";
920
1065
  /**
1066
+ * @public
921
1067
  * <p>Describes the error encountered.</p>
922
1068
  */
923
1069
  Message?: string;
@@ -932,54 +1078,67 @@ export declare class ConflictException extends __BaseException {
932
1078
  */
933
1079
  export interface CreateApiRequest {
934
1080
  /**
1081
+ * @public
935
1082
  * <p>An API key selection expression. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions">API Key Selection Expressions</a>.</p>
936
1083
  */
937
1084
  ApiKeySelectionExpression?: string;
938
1085
  /**
1086
+ * @public
939
1087
  * <p>A CORS configuration. Supported only for HTTP APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-cors.html">Configuring CORS</a> for more information.</p>
940
1088
  */
941
1089
  CorsConfiguration?: Cors;
942
1090
  /**
1091
+ * @public
943
1092
  * <p>This property is part of quick create. It specifies the credentials required for the integration, if any. For a Lambda integration, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, specify null. Currently, this property is not used for HTTP integrations. Supported only for HTTP APIs.</p>
944
1093
  */
945
1094
  CredentialsArn?: string;
946
1095
  /**
1096
+ * @public
947
1097
  * <p>The description of the API.</p>
948
1098
  */
949
1099
  Description?: string;
950
1100
  /**
1101
+ * @public
951
1102
  * <p>Avoid validating models when creating a deployment. Supported only for WebSocket APIs.</p>
952
1103
  */
953
1104
  DisableSchemaValidation?: boolean;
954
1105
  /**
1106
+ * @public
955
1107
  * <p>Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://\{api_id\}.execute-api.\{region\}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.</p>
956
1108
  */
957
1109
  DisableExecuteApiEndpoint?: boolean;
958
1110
  /**
1111
+ * @public
959
1112
  * <p>The name of the API.</p>
960
1113
  */
961
1114
  Name: string | undefined;
962
1115
  /**
1116
+ * @public
963
1117
  * <p>The API protocol.</p>
964
1118
  */
965
1119
  ProtocolType: ProtocolType | string | undefined;
966
1120
  /**
1121
+ * @public
967
1122
  * <p>This property is part of quick create. If you don't specify a routeKey, a default route of $default is created. The $default route acts as a catch-all for any request made to your API, for a particular stage. The $default route key can't be modified. You can add routes after creating the API, and you can update the route keys of additional routes. Supported only for HTTP APIs.</p>
968
1123
  */
969
1124
  RouteKey?: string;
970
1125
  /**
1126
+ * @public
971
1127
  * <p>The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be $\{request.method\} $\{request.path\}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.</p>
972
1128
  */
973
1129
  RouteSelectionExpression?: string;
974
1130
  /**
1131
+ * @public
975
1132
  * <p>The collection of tags. Each tag element is associated with a given resource.</p>
976
1133
  */
977
1134
  Tags?: Record<string, string>;
978
1135
  /**
1136
+ * @public
979
1137
  * <p>This property is part of quick create. Quick create produces an API with an integration, a default catch-all route, and a default stage which is configured to automatically deploy changes. For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN. The type of the integration will be HTTP_PROXY or AWS_PROXY, respectively. Supported only for HTTP APIs.</p>
980
1138
  */
981
1139
  Target?: string;
982
1140
  /**
1141
+ * @public
983
1142
  * <p>A version identifier for the API.</p>
984
1143
  */
985
1144
  Version?: string;
@@ -989,66 +1148,82 @@ export interface CreateApiRequest {
989
1148
  */
990
1149
  export interface CreateApiResponse {
991
1150
  /**
1151
+ * @public
992
1152
  * <p>The URI of the API, of the form \{api-id\}.execute-api.\{region\}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.</p>
993
1153
  */
994
1154
  ApiEndpoint?: string;
995
1155
  /**
1156
+ * @public
996
1157
  * <p>Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.</p>
997
1158
  */
998
1159
  ApiGatewayManaged?: boolean;
999
1160
  /**
1161
+ * @public
1000
1162
  * <p>The API ID.</p>
1001
1163
  */
1002
1164
  ApiId?: string;
1003
1165
  /**
1166
+ * @public
1004
1167
  * <p>An API key selection expression. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions">API Key Selection Expressions</a>.</p>
1005
1168
  */
1006
1169
  ApiKeySelectionExpression?: string;
1007
1170
  /**
1171
+ * @public
1008
1172
  * <p>A CORS configuration. Supported only for HTTP APIs.</p>
1009
1173
  */
1010
1174
  CorsConfiguration?: Cors;
1011
1175
  /**
1176
+ * @public
1012
1177
  * <p>The timestamp when the API was created.</p>
1013
1178
  */
1014
1179
  CreatedDate?: Date;
1015
1180
  /**
1181
+ * @public
1016
1182
  * <p>The description of the API.</p>
1017
1183
  */
1018
1184
  Description?: string;
1019
1185
  /**
1186
+ * @public
1020
1187
  * <p>Avoid validating models when creating a deployment. Supported only for WebSocket APIs.</p>
1021
1188
  */
1022
1189
  DisableSchemaValidation?: boolean;
1023
1190
  /**
1191
+ * @public
1024
1192
  * <p>Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://\{api_id\}.execute-api.\{region\}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.</p>
1025
1193
  */
1026
1194
  DisableExecuteApiEndpoint?: boolean;
1027
1195
  /**
1196
+ * @public
1028
1197
  * <p>The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.</p>
1029
1198
  */
1030
1199
  ImportInfo?: string[];
1031
1200
  /**
1201
+ * @public
1032
1202
  * <p>The name of the API.</p>
1033
1203
  */
1034
1204
  Name?: string;
1035
1205
  /**
1206
+ * @public
1036
1207
  * <p>The API protocol.</p>
1037
1208
  */
1038
1209
  ProtocolType?: ProtocolType | string;
1039
1210
  /**
1211
+ * @public
1040
1212
  * <p>The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be $\{request.method\} $\{request.path\}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.</p>
1041
1213
  */
1042
1214
  RouteSelectionExpression?: string;
1043
1215
  /**
1216
+ * @public
1044
1217
  * <p>A collection of tags associated with the API.</p>
1045
1218
  */
1046
1219
  Tags?: Record<string, string>;
1047
1220
  /**
1221
+ * @public
1048
1222
  * <p>A version identifier for the API.</p>
1049
1223
  */
1050
1224
  Version?: string;
1051
1225
  /**
1226
+ * @public
1052
1227
  * <p>The warning messages reported when failonwarnings is turned on during API import.</p>
1053
1228
  */
1054
1229
  Warnings?: string[];
@@ -1061,10 +1236,12 @@ export declare class NotFoundException extends __BaseException {
1061
1236
  readonly name: "NotFoundException";
1062
1237
  readonly $fault: "client";
1063
1238
  /**
1239
+ * @public
1064
1240
  * <p>Describes the error encountered.</p>
1065
1241
  */
1066
1242
  Message?: string;
1067
1243
  /**
1244
+ * @public
1068
1245
  * <p>The resource type.</p>
1069
1246
  */
1070
1247
  ResourceType?: string;
@@ -1081,10 +1258,12 @@ export declare class TooManyRequestsException extends __BaseException {
1081
1258
  readonly name: "TooManyRequestsException";
1082
1259
  readonly $fault: "client";
1083
1260
  /**
1261
+ * @public
1084
1262
  * <p>The limit type.</p>
1085
1263
  */
1086
1264
  LimitType?: string;
1087
1265
  /**
1266
+ * @public
1088
1267
  * <p>Describes the error encountered.</p>
1089
1268
  */
1090
1269
  Message?: string;
@@ -1099,18 +1278,22 @@ export declare class TooManyRequestsException extends __BaseException {
1099
1278
  */
1100
1279
  export interface CreateApiMappingRequest {
1101
1280
  /**
1281
+ * @public
1102
1282
  * <p>The API identifier.</p>
1103
1283
  */
1104
1284
  ApiId: string | undefined;
1105
1285
  /**
1286
+ * @public
1106
1287
  * The API mapping key.
1107
1288
  */
1108
1289
  ApiMappingKey?: string;
1109
1290
  /**
1291
+ * @public
1110
1292
  * <p>The domain name.</p>
1111
1293
  */
1112
1294
  DomainName: string | undefined;
1113
1295
  /**
1296
+ * @public
1114
1297
  * <p>The API stage.</p>
1115
1298
  */
1116
1299
  Stage: string | undefined;
@@ -1120,18 +1303,22 @@ export interface CreateApiMappingRequest {
1120
1303
  */
1121
1304
  export interface CreateApiMappingResponse {
1122
1305
  /**
1306
+ * @public
1123
1307
  * <p>The API identifier.</p>
1124
1308
  */
1125
1309
  ApiId?: string;
1126
1310
  /**
1311
+ * @public
1127
1312
  * <p>The API mapping identifier.</p>
1128
1313
  */
1129
1314
  ApiMappingId?: string;
1130
1315
  /**
1316
+ * @public
1131
1317
  * <p>The API mapping key.</p>
1132
1318
  */
1133
1319
  ApiMappingKey?: string;
1134
1320
  /**
1321
+ * @public
1135
1322
  * <p>The API stage.</p>
1136
1323
  */
1137
1324
  Stage?: string;
@@ -1142,47 +1329,58 @@ export interface CreateApiMappingResponse {
1142
1329
  */
1143
1330
  export interface CreateAuthorizerRequest {
1144
1331
  /**
1332
+ * @public
1145
1333
  * <p>The API identifier.</p>
1146
1334
  */
1147
1335
  ApiId: string | undefined;
1148
1336
  /**
1337
+ * @public
1149
1338
  * <p>Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, don't specify this parameter. Supported only for REQUEST authorizers.</p>
1150
1339
  */
1151
1340
  AuthorizerCredentialsArn?: string;
1152
1341
  /**
1342
+ * @public
1153
1343
  * <p>Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda authorizers. Supported values are 1.0 and 2.0. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p>
1154
1344
  */
1155
1345
  AuthorizerPayloadFormatVersion?: string;
1156
1346
  /**
1347
+ * @public
1157
1348
  * <p>The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour. Supported only for HTTP API Lambda authorizers.</p>
1158
1349
  */
1159
1350
  AuthorizerResultTtlInSeconds?: number;
1160
1351
  /**
1352
+ * @public
1161
1353
  * <p>The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use JSON Web Tokens (supported only for HTTP APIs).</p>
1162
1354
  */
1163
1355
  AuthorizerType: AuthorizerType | string | undefined;
1164
1356
  /**
1357
+ * @public
1165
1358
  * <p>The authorizer's Uniform Resource Identifier (URI). For REQUEST authorizers, this must be a well-formed Lambda function URI, for example, arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:<replaceable>\{account_id\}</replaceable>:function:<replaceable>\{lambda_function_name\}</replaceable>/invocations. In general, the URI has this form: arn:aws:apigateway:<replaceable>\{region\}</replaceable>:lambda:path/<replaceable>\{service_api\}</replaceable>
1166
1359
  * , where <replaceable></replaceable>\{region\} is the same as the region hosting the Lambda function, path indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations. Supported only for REQUEST authorizers.</p>
1167
1360
  */
1168
1361
  AuthorizerUri?: string;
1169
1362
  /**
1363
+ * @public
1170
1364
  * <p>Specifies whether a Lambda authorizer returns a response in a simple format. By default, a Lambda authorizer must return an IAM policy. If enabled, the Lambda authorizer can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a></p>
1171
1365
  */
1172
1366
  EnableSimpleResponses?: boolean;
1173
1367
  /**
1368
+ * @public
1174
1369
  * <p>The identity source for which authorization is requested.</p> <p>For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the specified request parameters. The identity source can be headers, query string parameters, stage variables, and context parameters. For example, if an Auth header and a Name query string parameter are defined as identity sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name. These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the identity-related request parameters are present in the request, not null, and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching is enabled. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p> <p>For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently only header-based and query parameter-based selections are supported, for example $request.header.Authorization.</p>
1175
1370
  */
1176
1371
  IdentitySource: string[] | undefined;
1177
1372
  /**
1373
+ * @public
1178
1374
  * <p>This parameter is not used.</p>
1179
1375
  */
1180
1376
  IdentityValidationExpression?: string;
1181
1377
  /**
1378
+ * @public
1182
1379
  * <p>Represents the configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP APIs.</p>
1183
1380
  */
1184
1381
  JwtConfiguration?: JWTConfiguration;
1185
1382
  /**
1383
+ * @public
1186
1384
  * <p>The name of the authorizer.</p>
1187
1385
  */
1188
1386
  Name: string | undefined;
@@ -1192,47 +1390,58 @@ export interface CreateAuthorizerRequest {
1192
1390
  */
1193
1391
  export interface CreateAuthorizerResponse {
1194
1392
  /**
1393
+ * @public
1195
1394
  * <p>Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, don't specify this parameter. Supported only for REQUEST authorizers.</p>
1196
1395
  */
1197
1396
  AuthorizerCredentialsArn?: string;
1198
1397
  /**
1398
+ * @public
1199
1399
  * <p>The authorizer identifier.</p>
1200
1400
  */
1201
1401
  AuthorizerId?: string;
1202
1402
  /**
1403
+ * @public
1203
1404
  * <p>Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda authorizers. Supported values are 1.0 and 2.0. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p>
1204
1405
  */
1205
1406
  AuthorizerPayloadFormatVersion?: string;
1206
1407
  /**
1408
+ * @public
1207
1409
  * <p>The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour. Supported only for HTTP API Lambda authorizers.</p>
1208
1410
  */
1209
1411
  AuthorizerResultTtlInSeconds?: number;
1210
1412
  /**
1413
+ * @public
1211
1414
  * <p>The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use JSON Web Tokens (supported only for HTTP APIs).</p>
1212
1415
  */
1213
1416
  AuthorizerType?: AuthorizerType | string;
1214
1417
  /**
1418
+ * @public
1215
1419
  * <p>The authorizer's Uniform Resource Identifier (URI). For REQUEST authorizers, this must be a well-formed Lambda function URI, for example, arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:<replaceable>\{account_id\}</replaceable>:function:<replaceable>\{lambda_function_name\}</replaceable>/invocations. In general, the URI has this form: arn:aws:apigateway:<replaceable>\{region\}</replaceable>:lambda:path/<replaceable>\{service_api\}</replaceable>
1216
1420
  * , where <replaceable></replaceable>\{region\} is the same as the region hosting the Lambda function, path indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations. Supported only for REQUEST authorizers.</p>
1217
1421
  */
1218
1422
  AuthorizerUri?: string;
1219
1423
  /**
1424
+ * @public
1220
1425
  * <p>Specifies whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a></p>
1221
1426
  */
1222
1427
  EnableSimpleResponses?: boolean;
1223
1428
  /**
1429
+ * @public
1224
1430
  * <p>The identity source for which authorization is requested.</p> <p>For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the specified request parameters. The identity source can be headers, query string parameters, stage variables, and context parameters. For example, if an Auth header and a Name query string parameter are defined as identity sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name. These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the identity-related request parameters are present in the request, not null, and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching is enabled. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p> <p>For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently only header-based and query parameter-based selections are supported, for example $request.header.Authorization.</p>
1225
1431
  */
1226
1432
  IdentitySource?: string[];
1227
1433
  /**
1434
+ * @public
1228
1435
  * <p>The validation expression does not apply to the REQUEST authorizer.</p>
1229
1436
  */
1230
1437
  IdentityValidationExpression?: string;
1231
1438
  /**
1439
+ * @public
1232
1440
  * <p>Represents the configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP APIs.</p>
1233
1441
  */
1234
1442
  JwtConfiguration?: JWTConfiguration;
1235
1443
  /**
1444
+ * @public
1236
1445
  * <p>The name of the authorizer.</p>
1237
1446
  */
1238
1447
  Name?: string;
@@ -1243,14 +1452,17 @@ export interface CreateAuthorizerResponse {
1243
1452
  */
1244
1453
  export interface CreateDeploymentRequest {
1245
1454
  /**
1455
+ * @public
1246
1456
  * <p>The API identifier.</p>
1247
1457
  */
1248
1458
  ApiId: string | undefined;
1249
1459
  /**
1460
+ * @public
1250
1461
  * <p>The description for the deployment resource.</p>
1251
1462
  */
1252
1463
  Description?: string;
1253
1464
  /**
1465
+ * @public
1254
1466
  * <p>The name of the Stage resource for the Deployment resource to create.</p>
1255
1467
  */
1256
1468
  StageName?: string;
@@ -1260,26 +1472,32 @@ export interface CreateDeploymentRequest {
1260
1472
  */
1261
1473
  export interface CreateDeploymentResponse {
1262
1474
  /**
1475
+ * @public
1263
1476
  * <p>Specifies whether a deployment was automatically released.</p>
1264
1477
  */
1265
1478
  AutoDeployed?: boolean;
1266
1479
  /**
1480
+ * @public
1267
1481
  * <p>The date and time when the Deployment resource was created.</p>
1268
1482
  */
1269
1483
  CreatedDate?: Date;
1270
1484
  /**
1485
+ * @public
1271
1486
  * <p>The identifier for the deployment.</p>
1272
1487
  */
1273
1488
  DeploymentId?: string;
1274
1489
  /**
1490
+ * @public
1275
1491
  * <p>The status of the deployment: PENDING, FAILED, or SUCCEEDED.</p>
1276
1492
  */
1277
1493
  DeploymentStatus?: DeploymentStatus | string;
1278
1494
  /**
1495
+ * @public
1279
1496
  * <p>May contain additional feedback on the status of an API deployment.</p>
1280
1497
  */
1281
1498
  DeploymentStatusMessage?: string;
1282
1499
  /**
1500
+ * @public
1283
1501
  * <p>The description for the deployment.</p>
1284
1502
  */
1285
1503
  Description?: string;
@@ -1289,10 +1507,12 @@ export interface CreateDeploymentResponse {
1289
1507
  */
1290
1508
  export interface MutualTlsAuthenticationInput {
1291
1509
  /**
1510
+ * @public
1292
1511
  * <p>An Amazon S3 URL that specifies the truststore for mutual TLS authentication, for example, s3://<replaceable>bucket-name</replaceable>/<replaceable>key-name</replaceable>. The truststore can contain certificates from public or private certificate authorities. To update the truststore, upload a new version to S3, and then update your custom domain name to use the new version. To update the truststore, you must have permissions to access the S3 object.</p>
1293
1512
  */
1294
1513
  TruststoreUri?: string;
1295
1514
  /**
1515
+ * @public
1296
1516
  * <p>The version of the S3 object that contains your truststore. To specify a version, you must have versioning enabled for the S3 bucket.</p>
1297
1517
  */
1298
1518
  TruststoreVersion?: string;
@@ -1303,18 +1523,22 @@ export interface MutualTlsAuthenticationInput {
1303
1523
  */
1304
1524
  export interface CreateDomainNameRequest {
1305
1525
  /**
1526
+ * @public
1306
1527
  * <p>The domain name.</p>
1307
1528
  */
1308
1529
  DomainName: string | undefined;
1309
1530
  /**
1531
+ * @public
1310
1532
  * <p>The domain name configurations.</p>
1311
1533
  */
1312
1534
  DomainNameConfigurations?: DomainNameConfiguration[];
1313
1535
  /**
1536
+ * @public
1314
1537
  * <p>The mutual TLS authentication configuration for a custom domain name.</p>
1315
1538
  */
1316
1539
  MutualTlsAuthentication?: MutualTlsAuthenticationInput;
1317
1540
  /**
1541
+ * @public
1318
1542
  * <p>The collection of tags associated with a domain name.</p>
1319
1543
  */
1320
1544
  Tags?: Record<string, string>;
@@ -1324,22 +1548,27 @@ export interface CreateDomainNameRequest {
1324
1548
  */
1325
1549
  export interface CreateDomainNameResponse {
1326
1550
  /**
1551
+ * @public
1327
1552
  * <p>The API mapping selection expression.</p>
1328
1553
  */
1329
1554
  ApiMappingSelectionExpression?: string;
1330
1555
  /**
1556
+ * @public
1331
1557
  * <p>The name of the DomainName resource.</p>
1332
1558
  */
1333
1559
  DomainName?: string;
1334
1560
  /**
1561
+ * @public
1335
1562
  * <p>The domain name configurations.</p>
1336
1563
  */
1337
1564
  DomainNameConfigurations?: DomainNameConfiguration[];
1338
1565
  /**
1566
+ * @public
1339
1567
  * <p>The mutual TLS authentication configuration for a custom domain name.</p>
1340
1568
  */
1341
1569
  MutualTlsAuthentication?: MutualTlsAuthentication;
1342
1570
  /**
1571
+ * @public
1343
1572
  * <p>The collection of tags associated with a domain name.</p>
1344
1573
  */
1345
1574
  Tags?: Record<string, string>;
@@ -1350,6 +1579,7 @@ export interface CreateDomainNameResponse {
1350
1579
  */
1351
1580
  export interface TlsConfigInput {
1352
1581
  /**
1582
+ * @public
1353
1583
  * <p>If you specify a server name, API Gateway uses it to verify the hostname on the integration's certificate. The server name is also included in the TLS handshake to support Server Name Indication (SNI) or virtual hosting.</p>
1354
1584
  */
1355
1585
  ServerNameToVerify?: string;
@@ -1360,54 +1590,67 @@ export interface TlsConfigInput {
1360
1590
  */
1361
1591
  export interface CreateIntegrationRequest {
1362
1592
  /**
1593
+ * @public
1363
1594
  * <p>The API identifier.</p>
1364
1595
  */
1365
1596
  ApiId: string | undefined;
1366
1597
  /**
1598
+ * @public
1367
1599
  * <p>The ID of the VPC link for a private integration. Supported only for HTTP APIs.</p>
1368
1600
  */
1369
1601
  ConnectionId?: string;
1370
1602
  /**
1603
+ * @public
1371
1604
  * <p>The type of the network connection to the integration endpoint. Specify INTERNET for connections through the public routable internet or VPC_LINK for private connections between API Gateway and resources in a VPC. The default value is INTERNET.</p>
1372
1605
  */
1373
1606
  ConnectionType?: ConnectionType | string;
1374
1607
  /**
1608
+ * @public
1375
1609
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
1376
1610
  */
1377
1611
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
1378
1612
  /**
1613
+ * @public
1379
1614
  * <p>Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, specify null.</p>
1380
1615
  */
1381
1616
  CredentialsArn?: string;
1382
1617
  /**
1618
+ * @public
1383
1619
  * <p>The description of the integration.</p>
1384
1620
  */
1385
1621
  Description?: string;
1386
1622
  /**
1623
+ * @public
1387
1624
  * <p>Specifies the integration's HTTP method type.</p>
1388
1625
  */
1389
1626
  IntegrationMethod?: string;
1390
1627
  /**
1628
+ * @public
1391
1629
  * <p>Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service action to invoke. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html">Integration subtype reference</a>.</p>
1392
1630
  */
1393
1631
  IntegrationSubtype?: string;
1394
1632
  /**
1633
+ * @public
1395
1634
  * <p>The integration type of an integration. One of the following:</p> <p>AWS: for integrating the route or method request with an AWS service action, including the Lambda function-invoking action. With the Lambda function-invoking action, this is referred to as the Lambda custom integration. With any other AWS service action, this is known as AWS integration. Supported only for WebSocket APIs.</p> <p>AWS_PROXY: for integrating the route or method request with a Lambda function or other AWS service action. This integration is also referred to as a Lambda proxy integration.</p> <p>HTTP: for integrating the route or method request with an HTTP endpoint. This integration is also referred to as the HTTP custom integration. Supported only for WebSocket APIs.</p> <p>HTTP_PROXY: for integrating the route or method request with an HTTP endpoint, with the client request passed through as-is. This is also referred to as HTTP proxy integration. For HTTP API private integrations, use an HTTP_PROXY integration.</p> <p>MOCK: for integrating the route or method request with API Gateway as a "loopback" endpoint without invoking any backend. Supported only for WebSocket APIs.</p>
1396
1635
  */
1397
1636
  IntegrationType: IntegrationType | string | undefined;
1398
1637
  /**
1638
+ * @public
1399
1639
  * <p>For a Lambda integration, specify the URI of a Lambda function.</p> <p>For an HTTP integration, specify a fully-qualified URL.</p> <p>For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. You can use query parameters to target specific resources. To learn more, see <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_DiscoverInstances.html">DiscoverInstances</a>. For private integrations, all resources must be owned by the same AWS account.</p>
1400
1640
  */
1401
1641
  IntegrationUri?: string;
1402
1642
  /**
1643
+ * @public
1403
1644
  * <p>Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER. Supported only for WebSocket APIs.</p> <p>WHEN_NO_MATCH passes the request body for unmapped content types through to the integration backend without transformation.</p> <p>NEVER rejects unmapped content types with an HTTP 415 Unsupported Media Type response.</p> <p>WHEN_NO_TEMPLATES allows pass-through when the integration has no content types mapped to templates. However, if there is at least one content type defined, unmapped content types will be rejected with the same HTTP 415 Unsupported Media Type response.</p>
1404
1645
  */
1405
1646
  PassthroughBehavior?: PassthroughBehavior | string;
1406
1647
  /**
1648
+ * @public
1407
1649
  * <p>Specifies the format of the payload sent to an integration. Required for HTTP APIs.</p>
1408
1650
  */
1409
1651
  PayloadFormatVersion?: string;
1410
1652
  /**
1653
+ * @public
1411
1654
  * <p>For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. 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 backend. The method request parameter value must match the pattern of method.request.<replaceable>\{location\}</replaceable>.<replaceable>\{name\}</replaceable>
1412
1655
  * , where
1413
1656
  * <replaceable>\{location\}</replaceable>
@@ -1417,22 +1660,27 @@ export interface CreateIntegrationRequest {
1417
1660
  */
1418
1661
  RequestParameters?: Record<string, string>;
1419
1662
  /**
1663
+ * @public
1420
1664
  * <p>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. Supported only for WebSocket APIs.</p>
1421
1665
  */
1422
1666
  RequestTemplates?: Record<string, string>;
1423
1667
  /**
1668
+ * @public
1424
1669
  * <p>Supported only for HTTP APIs. You use response parameters to transform the HTTP response from a backend integration before returning the response to clients. Specify a key-value map from a selection key to response parameters. The selection key must be a valid HTTP status code within the range of 200-599. Response parameters are a key-value map. The key must match pattern &lt;action&gt;:&lt;header&gt;.&lt;location&gt; or overwrite.statuscode. The action can be append, overwrite or remove. The value can be a static value, or map to response data, stage variables, or context variables that are evaluated at runtime. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html">Transforming API requests and responses</a>.</p>
1425
1670
  */
1426
1671
  ResponseParameters?: Record<string, Record<string, string>>;
1427
1672
  /**
1673
+ * @public
1428
1674
  * <p>The template selection expression for the integration.</p>
1429
1675
  */
1430
1676
  TemplateSelectionExpression?: string;
1431
1677
  /**
1678
+ * @public
1432
1679
  * <p>Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.</p>
1433
1680
  */
1434
1681
  TimeoutInMillis?: number;
1435
1682
  /**
1683
+ * @public
1436
1684
  * <p>The TLS configuration for a private integration. If you specify a TLS configuration, private integration traffic uses the HTTPS protocol. Supported only for HTTP APIs.</p>
1437
1685
  */
1438
1686
  TlsConfig?: TlsConfigInput;
@@ -1442,62 +1690,77 @@ export interface CreateIntegrationRequest {
1442
1690
  */
1443
1691
  export interface CreateIntegrationResult {
1444
1692
  /**
1693
+ * @public
1445
1694
  * <p>Specifies whether an integration is managed by API Gateway. If you created an API using using quick create, the resulting integration is managed by API Gateway. You can update a managed integration, but you can't delete it.</p>
1446
1695
  */
1447
1696
  ApiGatewayManaged?: boolean;
1448
1697
  /**
1698
+ * @public
1449
1699
  * <p>The ID of the VPC link for a private integration. Supported only for HTTP APIs.</p>
1450
1700
  */
1451
1701
  ConnectionId?: string;
1452
1702
  /**
1703
+ * @public
1453
1704
  * <p>The type of the network connection to the integration endpoint. Specify INTERNET for connections through the public routable internet or VPC_LINK for private connections between API Gateway and resources in a VPC. The default value is INTERNET.</p>
1454
1705
  */
1455
1706
  ConnectionType?: ConnectionType | string;
1456
1707
  /**
1708
+ * @public
1457
1709
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
1458
1710
  */
1459
1711
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
1460
1712
  /**
1713
+ * @public
1461
1714
  * <p>Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, specify null.</p>
1462
1715
  */
1463
1716
  CredentialsArn?: string;
1464
1717
  /**
1718
+ * @public
1465
1719
  * <p>Represents the description of an integration.</p>
1466
1720
  */
1467
1721
  Description?: string;
1468
1722
  /**
1723
+ * @public
1469
1724
  * <p>Represents the identifier of an integration.</p>
1470
1725
  */
1471
1726
  IntegrationId?: string;
1472
1727
  /**
1728
+ * @public
1473
1729
  * <p>Specifies the integration's HTTP method type.</p>
1474
1730
  */
1475
1731
  IntegrationMethod?: string;
1476
1732
  /**
1733
+ * @public
1477
1734
  * <p>The integration response selection expression for the integration. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-integration-response-selection-expressions">Integration Response Selection Expressions</a>.</p>
1478
1735
  */
1479
1736
  IntegrationResponseSelectionExpression?: string;
1480
1737
  /**
1738
+ * @public
1481
1739
  * <p>Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service action to invoke. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html">Integration subtype reference</a>.</p>
1482
1740
  */
1483
1741
  IntegrationSubtype?: string;
1484
1742
  /**
1743
+ * @public
1485
1744
  * <p>The integration type of an integration. One of the following:</p> <p>AWS: for integrating the route or method request with an AWS service action, including the Lambda function-invoking action. With the Lambda function-invoking action, this is referred to as the Lambda custom integration. With any other AWS service action, this is known as AWS integration. Supported only for WebSocket APIs.</p> <p>AWS_PROXY: for integrating the route or method request with a Lambda function or other AWS service action. This integration is also referred to as a Lambda proxy integration.</p> <p>HTTP: for integrating the route or method request with an HTTP endpoint. This integration is also referred to as the HTTP custom integration. Supported only for WebSocket APIs.</p> <p>HTTP_PROXY: for integrating the route or method request with an HTTP endpoint, with the client request passed through as-is. This is also referred to as HTTP proxy integration.</p> <p>MOCK: for integrating the route or method request with API Gateway as a "loopback" endpoint without invoking any backend. Supported only for WebSocket APIs.</p>
1486
1745
  */
1487
1746
  IntegrationType?: IntegrationType | string;
1488
1747
  /**
1748
+ * @public
1489
1749
  * <p>For a Lambda integration, specify the URI of a Lambda function.</p> <p>For an HTTP integration, specify a fully-qualified URL.</p> <p>For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. You can use query parameters to target specific resources. To learn more, see <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_DiscoverInstances.html">DiscoverInstances</a>. For private integrations, all resources must be owned by the same AWS account.</p>
1490
1750
  */
1491
1751
  IntegrationUri?: string;
1492
1752
  /**
1753
+ * @public
1493
1754
  * <p>Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER. Supported only for WebSocket APIs.</p> <p>WHEN_NO_MATCH passes the request body for unmapped content types through to the integration backend without transformation.</p> <p>NEVER rejects unmapped content types with an HTTP 415 Unsupported Media Type response.</p> <p>WHEN_NO_TEMPLATES allows pass-through when the integration has no content types mapped to templates. However, if there is at least one content type defined, unmapped content types will be rejected with the same HTTP 415 Unsupported Media Type response.</p>
1494
1755
  */
1495
1756
  PassthroughBehavior?: PassthroughBehavior | string;
1496
1757
  /**
1758
+ * @public
1497
1759
  * <p>Specifies the format of the payload sent to an integration. Required for HTTP APIs.</p>
1498
1760
  */
1499
1761
  PayloadFormatVersion?: string;
1500
1762
  /**
1763
+ * @public
1501
1764
  * <p>For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. 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 backend. The method request parameter value must match the pattern of method.request.<replaceable>\{location\}</replaceable>.<replaceable>\{name\}</replaceable>
1502
1765
  * , where
1503
1766
  * <replaceable>\{location\}</replaceable>
@@ -1507,22 +1770,27 @@ export interface CreateIntegrationResult {
1507
1770
  */
1508
1771
  RequestParameters?: Record<string, string>;
1509
1772
  /**
1773
+ * @public
1510
1774
  * <p>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. Supported only for WebSocket APIs.</p>
1511
1775
  */
1512
1776
  RequestTemplates?: Record<string, string>;
1513
1777
  /**
1778
+ * @public
1514
1779
  * <p>Supported only for HTTP APIs. You use response parameters to transform the HTTP response from a backend integration before returning the response to clients. Specify a key-value map from a selection key to response parameters. The selection key must be a valid HTTP status code within the range of 200-599. Response parameters are a key-value map. The key must match pattern &lt;action&gt;:&lt;header&gt;.&lt;location&gt; or overwrite.statuscode. The action can be append, overwrite or remove. The value can be a static value, or map to response data, stage variables, or context variables that are evaluated at runtime. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html">Transforming API requests and responses</a>.</p>
1515
1780
  */
1516
1781
  ResponseParameters?: Record<string, Record<string, string>>;
1517
1782
  /**
1783
+ * @public
1518
1784
  * <p>The template selection expression for the integration. Supported only for WebSocket APIs.</p>
1519
1785
  */
1520
1786
  TemplateSelectionExpression?: string;
1521
1787
  /**
1788
+ * @public
1522
1789
  * <p>Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.</p>
1523
1790
  */
1524
1791
  TimeoutInMillis?: number;
1525
1792
  /**
1793
+ * @public
1526
1794
  * <p>The TLS configuration for a private integration. If you specify a TLS configuration, private integration traffic uses the HTTPS protocol. Supported only for HTTP APIs.</p>
1527
1795
  */
1528
1796
  TlsConfig?: TlsConfig;
@@ -1533,30 +1801,37 @@ export interface CreateIntegrationResult {
1533
1801
  */
1534
1802
  export interface CreateIntegrationResponseRequest {
1535
1803
  /**
1804
+ * @public
1536
1805
  * <p>The API identifier.</p>
1537
1806
  */
1538
1807
  ApiId: string | undefined;
1539
1808
  /**
1809
+ * @public
1540
1810
  * <p>Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
1541
1811
  */
1542
1812
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
1543
1813
  /**
1814
+ * @public
1544
1815
  * <p>The integration ID.</p>
1545
1816
  */
1546
1817
  IntegrationId: string | undefined;
1547
1818
  /**
1819
+ * @public
1548
1820
  * <p>The integration response key.</p>
1549
1821
  */
1550
1822
  IntegrationResponseKey: string | undefined;
1551
1823
  /**
1824
+ * @public
1552
1825
  * <p>A key-value map specifying response parameters that are passed to the method response from the backend. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of method.response.header.\{name\}, where \{name\} is a valid and unique header name. The mapped non-static value must match the pattern of integration.response.header.\{name\} or integration.response.body.\{JSON-expression\}, where \{name\} is a valid and unique response header name and \{JSON-expression\} is a valid JSON expression without the $ prefix.</p>
1553
1826
  */
1554
1827
  ResponseParameters?: Record<string, string>;
1555
1828
  /**
1829
+ * @public
1556
1830
  * <p>The collection of response templates for the integration response as a string-to-string map of key-value pairs. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.</p>
1557
1831
  */
1558
1832
  ResponseTemplates?: Record<string, string>;
1559
1833
  /**
1834
+ * @public
1560
1835
  * <p>The template selection expression for the integration response. Supported only for WebSocket APIs.</p>
1561
1836
  */
1562
1837
  TemplateSelectionExpression?: string;
@@ -1566,26 +1841,32 @@ export interface CreateIntegrationResponseRequest {
1566
1841
  */
1567
1842
  export interface CreateIntegrationResponseResponse {
1568
1843
  /**
1844
+ * @public
1569
1845
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
1570
1846
  */
1571
1847
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
1572
1848
  /**
1849
+ * @public
1573
1850
  * <p>The integration response ID.</p>
1574
1851
  */
1575
1852
  IntegrationResponseId?: string;
1576
1853
  /**
1854
+ * @public
1577
1855
  * <p>The integration response key.</p>
1578
1856
  */
1579
1857
  IntegrationResponseKey?: string;
1580
1858
  /**
1859
+ * @public
1581
1860
  * <p>A key-value map specifying response parameters that are passed to the method response from the backend. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of method.response.header.\{name\}, where name is a valid and unique header name. The mapped non-static value must match the pattern of integration.response.header.\{name\} or integration.response.body.\{JSON-expression\}, where name is a valid and unique response header name and JSON-expression is a valid JSON expression without the $ prefix.</p>
1582
1861
  */
1583
1862
  ResponseParameters?: Record<string, string>;
1584
1863
  /**
1864
+ * @public
1585
1865
  * <p>The collection of response templates for the integration response as a string-to-string map of key-value pairs. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.</p>
1586
1866
  */
1587
1867
  ResponseTemplates?: Record<string, string>;
1588
1868
  /**
1869
+ * @public
1589
1870
  * <p>The template selection expressions for the integration response.</p>
1590
1871
  */
1591
1872
  TemplateSelectionExpression?: string;
@@ -1596,22 +1877,27 @@ export interface CreateIntegrationResponseResponse {
1596
1877
  */
1597
1878
  export interface CreateModelRequest {
1598
1879
  /**
1880
+ * @public
1599
1881
  * <p>The API identifier.</p>
1600
1882
  */
1601
1883
  ApiId: string | undefined;
1602
1884
  /**
1885
+ * @public
1603
1886
  * <p>The content-type for the model, for example, "application/json".</p>
1604
1887
  */
1605
1888
  ContentType?: string;
1606
1889
  /**
1890
+ * @public
1607
1891
  * <p>The description of the model.</p>
1608
1892
  */
1609
1893
  Description?: string;
1610
1894
  /**
1895
+ * @public
1611
1896
  * <p>The name of the model. Must be alphanumeric.</p>
1612
1897
  */
1613
1898
  Name: string | undefined;
1614
1899
  /**
1900
+ * @public
1615
1901
  * <p>The schema for the model. For application/json models, this should be JSON schema draft 4 model.</p>
1616
1902
  */
1617
1903
  Schema: string | undefined;
@@ -1621,22 +1907,27 @@ export interface CreateModelRequest {
1621
1907
  */
1622
1908
  export interface CreateModelResponse {
1623
1909
  /**
1910
+ * @public
1624
1911
  * <p>The content-type for the model, for example, "application/json".</p>
1625
1912
  */
1626
1913
  ContentType?: string;
1627
1914
  /**
1915
+ * @public
1628
1916
  * <p>The description of the model.</p>
1629
1917
  */
1630
1918
  Description?: string;
1631
1919
  /**
1920
+ * @public
1632
1921
  * <p>The model identifier.</p>
1633
1922
  */
1634
1923
  ModelId?: string;
1635
1924
  /**
1925
+ * @public
1636
1926
  * <p>The name of the model. Must be alphanumeric.</p>
1637
1927
  */
1638
1928
  Name?: string;
1639
1929
  /**
1930
+ * @public
1640
1931
  * <p>The schema for the model. For application/json models, this should be JSON schema draft 4 model.</p>
1641
1932
  */
1642
1933
  Schema?: string;
@@ -1647,50 +1938,62 @@ export interface CreateModelResponse {
1647
1938
  */
1648
1939
  export interface CreateRouteRequest {
1649
1940
  /**
1941
+ * @public
1650
1942
  * <p>The API identifier.</p>
1651
1943
  */
1652
1944
  ApiId: string | undefined;
1653
1945
  /**
1946
+ * @public
1654
1947
  * <p>Specifies whether an API key is required for the route. Supported only for WebSocket APIs.</p>
1655
1948
  */
1656
1949
  ApiKeyRequired?: boolean;
1657
1950
  /**
1951
+ * @public
1658
1952
  * <p>The authorization scopes supported by this route.</p>
1659
1953
  */
1660
1954
  AuthorizationScopes?: string[];
1661
1955
  /**
1956
+ * @public
1662
1957
  * <p>The authorization type for the route. For WebSocket APIs, valid values are NONE for open access, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer For HTTP APIs, valid values are NONE for open access, JWT for using JSON Web Tokens, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer.</p>
1663
1958
  */
1664
1959
  AuthorizationType?: AuthorizationType | string;
1665
1960
  /**
1961
+ * @public
1666
1962
  * <p>The identifier of the Authorizer resource to be associated with this route. The authorizer identifier is generated by API Gateway when you created the authorizer.</p>
1667
1963
  */
1668
1964
  AuthorizerId?: string;
1669
1965
  /**
1966
+ * @public
1670
1967
  * <p>The model selection expression for the route. Supported only for WebSocket APIs.</p>
1671
1968
  */
1672
1969
  ModelSelectionExpression?: string;
1673
1970
  /**
1971
+ * @public
1674
1972
  * <p>The operation name for the route.</p>
1675
1973
  */
1676
1974
  OperationName?: string;
1677
1975
  /**
1976
+ * @public
1678
1977
  * <p>The request models for the route. Supported only for WebSocket APIs.</p>
1679
1978
  */
1680
1979
  RequestModels?: Record<string, string>;
1681
1980
  /**
1981
+ * @public
1682
1982
  * <p>The request parameters for the route. Supported only for WebSocket APIs.</p>
1683
1983
  */
1684
1984
  RequestParameters?: Record<string, ParameterConstraints>;
1685
1985
  /**
1986
+ * @public
1686
1987
  * <p>The route key for the route.</p>
1687
1988
  */
1688
1989
  RouteKey: string | undefined;
1689
1990
  /**
1991
+ * @public
1690
1992
  * <p>The route response selection expression for the route. Supported only for WebSocket APIs.</p>
1691
1993
  */
1692
1994
  RouteResponseSelectionExpression?: string;
1693
1995
  /**
1996
+ * @public
1694
1997
  * <p>The target for the route.</p>
1695
1998
  */
1696
1999
  Target?: string;
@@ -1700,54 +2003,67 @@ export interface CreateRouteRequest {
1700
2003
  */
1701
2004
  export interface CreateRouteResult {
1702
2005
  /**
2006
+ * @public
1703
2007
  * <p>Specifies whether a route is managed by API Gateway. If you created an API using quick create, the $default route is managed by API Gateway. You can't modify the $default route key.</p>
1704
2008
  */
1705
2009
  ApiGatewayManaged?: boolean;
1706
2010
  /**
2011
+ * @public
1707
2012
  * <p>Specifies whether an API key is required for this route. Supported only for WebSocket APIs.</p>
1708
2013
  */
1709
2014
  ApiKeyRequired?: boolean;
1710
2015
  /**
2016
+ * @public
1711
2017
  * <p>A list of authorization scopes configured on a route. The scopes are used with a JWT authorizer to authorize the method invocation. The authorization works by matching the route scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any route scope matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the route scope is configured, the client must provide an access token instead of an identity token for authorization purposes.</p>
1712
2018
  */
1713
2019
  AuthorizationScopes?: string[];
1714
2020
  /**
2021
+ * @public
1715
2022
  * <p>The authorization type for the route. For WebSocket APIs, valid values are NONE for open access, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer For HTTP APIs, valid values are NONE for open access, JWT for using JSON Web Tokens, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer.</p>
1716
2023
  */
1717
2024
  AuthorizationType?: AuthorizationType | string;
1718
2025
  /**
2026
+ * @public
1719
2027
  * <p>The identifier of the Authorizer resource to be associated with this route. The authorizer identifier is generated by API Gateway when you created the authorizer.</p>
1720
2028
  */
1721
2029
  AuthorizerId?: string;
1722
2030
  /**
2031
+ * @public
1723
2032
  * <p>The model selection expression for the route. Supported only for WebSocket APIs.</p>
1724
2033
  */
1725
2034
  ModelSelectionExpression?: string;
1726
2035
  /**
2036
+ * @public
1727
2037
  * <p>The operation name for the route.</p>
1728
2038
  */
1729
2039
  OperationName?: string;
1730
2040
  /**
2041
+ * @public
1731
2042
  * <p>The request models for the route. Supported only for WebSocket APIs.</p>
1732
2043
  */
1733
2044
  RequestModels?: Record<string, string>;
1734
2045
  /**
2046
+ * @public
1735
2047
  * <p>The request parameters for the route. Supported only for WebSocket APIs.</p>
1736
2048
  */
1737
2049
  RequestParameters?: Record<string, ParameterConstraints>;
1738
2050
  /**
2051
+ * @public
1739
2052
  * <p>The route ID.</p>
1740
2053
  */
1741
2054
  RouteId?: string;
1742
2055
  /**
2056
+ * @public
1743
2057
  * <p>The route key for the route.</p>
1744
2058
  */
1745
2059
  RouteKey?: string;
1746
2060
  /**
2061
+ * @public
1747
2062
  * <p>The route response selection expression for the route. Supported only for WebSocket APIs.</p>
1748
2063
  */
1749
2064
  RouteResponseSelectionExpression?: string;
1750
2065
  /**
2066
+ * @public
1751
2067
  * <p>The target for the route.</p>
1752
2068
  */
1753
2069
  Target?: string;
@@ -1758,26 +2074,32 @@ export interface CreateRouteResult {
1758
2074
  */
1759
2075
  export interface CreateRouteResponseRequest {
1760
2076
  /**
2077
+ * @public
1761
2078
  * <p>The API identifier.</p>
1762
2079
  */
1763
2080
  ApiId: string | undefined;
1764
2081
  /**
2082
+ * @public
1765
2083
  * <p>The model selection expression for the route response. Supported only for WebSocket APIs.</p>
1766
2084
  */
1767
2085
  ModelSelectionExpression?: string;
1768
2086
  /**
2087
+ * @public
1769
2088
  * <p>The response models for the route response.</p>
1770
2089
  */
1771
2090
  ResponseModels?: Record<string, string>;
1772
2091
  /**
2092
+ * @public
1773
2093
  * <p>The route response parameters.</p>
1774
2094
  */
1775
2095
  ResponseParameters?: Record<string, ParameterConstraints>;
1776
2096
  /**
2097
+ * @public
1777
2098
  * <p>The route ID.</p>
1778
2099
  */
1779
2100
  RouteId: string | undefined;
1780
2101
  /**
2102
+ * @public
1781
2103
  * <p>The route response key.</p>
1782
2104
  */
1783
2105
  RouteResponseKey: string | undefined;
@@ -1787,22 +2109,27 @@ export interface CreateRouteResponseRequest {
1787
2109
  */
1788
2110
  export interface CreateRouteResponseResponse {
1789
2111
  /**
2112
+ * @public
1790
2113
  * <p>Represents the model selection expression of a route response. Supported only for WebSocket APIs.</p>
1791
2114
  */
1792
2115
  ModelSelectionExpression?: string;
1793
2116
  /**
2117
+ * @public
1794
2118
  * <p>Represents the response models of a route response.</p>
1795
2119
  */
1796
2120
  ResponseModels?: Record<string, string>;
1797
2121
  /**
2122
+ * @public
1798
2123
  * <p>Represents the response parameters of a route response.</p>
1799
2124
  */
1800
2125
  ResponseParameters?: Record<string, ParameterConstraints>;
1801
2126
  /**
2127
+ * @public
1802
2128
  * <p>Represents the identifier of a route response.</p>
1803
2129
  */
1804
2130
  RouteResponseId?: string;
1805
2131
  /**
2132
+ * @public
1806
2133
  * <p>Represents the route response key of a route response.</p>
1807
2134
  */
1808
2135
  RouteResponseKey?: string;
@@ -1813,46 +2140,57 @@ export interface CreateRouteResponseResponse {
1813
2140
  */
1814
2141
  export interface CreateStageRequest {
1815
2142
  /**
2143
+ * @public
1816
2144
  * <p>Settings for logging access in this stage.</p>
1817
2145
  */
1818
2146
  AccessLogSettings?: AccessLogSettings;
1819
2147
  /**
2148
+ * @public
1820
2149
  * <p>The API identifier.</p>
1821
2150
  */
1822
2151
  ApiId: string | undefined;
1823
2152
  /**
2153
+ * @public
1824
2154
  * <p>Specifies whether updates to an API automatically trigger a new deployment. The default value is false.</p>
1825
2155
  */
1826
2156
  AutoDeploy?: boolean;
1827
2157
  /**
2158
+ * @public
1828
2159
  * <p>The identifier of a client certificate for a Stage. Supported only for WebSocket APIs.</p>
1829
2160
  */
1830
2161
  ClientCertificateId?: string;
1831
2162
  /**
2163
+ * @public
1832
2164
  * <p>The default route settings for the stage.</p>
1833
2165
  */
1834
2166
  DefaultRouteSettings?: RouteSettings;
1835
2167
  /**
2168
+ * @public
1836
2169
  * <p>The deployment identifier of the API stage.</p>
1837
2170
  */
1838
2171
  DeploymentId?: string;
1839
2172
  /**
2173
+ * @public
1840
2174
  * <p>The description for the API stage.</p>
1841
2175
  */
1842
2176
  Description?: string;
1843
2177
  /**
2178
+ * @public
1844
2179
  * <p>Route settings for the stage, by routeKey.</p>
1845
2180
  */
1846
2181
  RouteSettings?: Record<string, RouteSettings>;
1847
2182
  /**
2183
+ * @public
1848
2184
  * <p>The name of the stage.</p>
1849
2185
  */
1850
2186
  StageName: string | undefined;
1851
2187
  /**
2188
+ * @public
1852
2189
  * <p>A map that defines the stage variables for a Stage. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&amp;=,]+.</p>
1853
2190
  */
1854
2191
  StageVariables?: Record<string, string>;
1855
2192
  /**
2193
+ * @public
1856
2194
  * <p>The collection of tags. Each tag element is associated with a given resource.</p>
1857
2195
  */
1858
2196
  Tags?: Record<string, string>;
@@ -1862,58 +2200,72 @@ export interface CreateStageRequest {
1862
2200
  */
1863
2201
  export interface CreateStageResponse {
1864
2202
  /**
2203
+ * @public
1865
2204
  * <p>Settings for logging access in this stage.</p>
1866
2205
  */
1867
2206
  AccessLogSettings?: AccessLogSettings;
1868
2207
  /**
2208
+ * @public
1869
2209
  * <p>Specifies whether a stage is managed by API Gateway. If you created an API using quick create, the $default stage is managed by API Gateway. You can't modify the $default stage.</p>
1870
2210
  */
1871
2211
  ApiGatewayManaged?: boolean;
1872
2212
  /**
2213
+ * @public
1873
2214
  * <p>Specifies whether updates to an API automatically trigger a new deployment. The default value is false.</p>
1874
2215
  */
1875
2216
  AutoDeploy?: boolean;
1876
2217
  /**
2218
+ * @public
1877
2219
  * <p>The identifier of a client certificate for a Stage. Supported only for WebSocket APIs.</p>
1878
2220
  */
1879
2221
  ClientCertificateId?: string;
1880
2222
  /**
2223
+ * @public
1881
2224
  * <p>The timestamp when the stage was created.</p>
1882
2225
  */
1883
2226
  CreatedDate?: Date;
1884
2227
  /**
2228
+ * @public
1885
2229
  * <p>Default route settings for the stage.</p>
1886
2230
  */
1887
2231
  DefaultRouteSettings?: RouteSettings;
1888
2232
  /**
2233
+ * @public
1889
2234
  * <p>The identifier of the Deployment that the Stage is associated with. Can't be updated if autoDeploy is enabled.</p>
1890
2235
  */
1891
2236
  DeploymentId?: string;
1892
2237
  /**
2238
+ * @public
1893
2239
  * <p>The description of the stage.</p>
1894
2240
  */
1895
2241
  Description?: string;
1896
2242
  /**
2243
+ * @public
1897
2244
  * <p>Describes the status of the last deployment of a stage. Supported only for stages with autoDeploy enabled.</p>
1898
2245
  */
1899
2246
  LastDeploymentStatusMessage?: string;
1900
2247
  /**
2248
+ * @public
1901
2249
  * <p>The timestamp when the stage was last updated.</p>
1902
2250
  */
1903
2251
  LastUpdatedDate?: Date;
1904
2252
  /**
2253
+ * @public
1905
2254
  * <p>Route settings for the stage, by routeKey.</p>
1906
2255
  */
1907
2256
  RouteSettings?: Record<string, RouteSettings>;
1908
2257
  /**
2258
+ * @public
1909
2259
  * <p>The name of the stage.</p>
1910
2260
  */
1911
2261
  StageName?: string;
1912
2262
  /**
2263
+ * @public
1913
2264
  * <p>A map that defines the stage variables for a stage resource. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&amp;=,]+.</p>
1914
2265
  */
1915
2266
  StageVariables?: Record<string, string>;
1916
2267
  /**
2268
+ * @public
1917
2269
  * <p>The collection of tags. Each tag element is associated with a given resource.</p>
1918
2270
  */
1919
2271
  Tags?: Record<string, string>;
@@ -1924,18 +2276,22 @@ export interface CreateStageResponse {
1924
2276
  */
1925
2277
  export interface CreateVpcLinkRequest {
1926
2278
  /**
2279
+ * @public
1927
2280
  * <p>The name of the VPC link.</p>
1928
2281
  */
1929
2282
  Name: string | undefined;
1930
2283
  /**
2284
+ * @public
1931
2285
  * <p>A list of security group IDs for the VPC link.</p>
1932
2286
  */
1933
2287
  SecurityGroupIds?: string[];
1934
2288
  /**
2289
+ * @public
1935
2290
  * <p>A list of subnet IDs to include in the VPC link.</p>
1936
2291
  */
1937
2292
  SubnetIds: string[] | undefined;
1938
2293
  /**
2294
+ * @public
1939
2295
  * <p>A list of tags.</p>
1940
2296
  */
1941
2297
  Tags?: Record<string, string>;
@@ -1945,38 +2301,47 @@ export interface CreateVpcLinkRequest {
1945
2301
  */
1946
2302
  export interface CreateVpcLinkResponse {
1947
2303
  /**
2304
+ * @public
1948
2305
  * <p>The timestamp when the VPC link was created.</p>
1949
2306
  */
1950
2307
  CreatedDate?: Date;
1951
2308
  /**
2309
+ * @public
1952
2310
  * <p>The name of the VPC link.</p>
1953
2311
  */
1954
2312
  Name?: string;
1955
2313
  /**
2314
+ * @public
1956
2315
  * <p>A list of security group IDs for the VPC link.</p>
1957
2316
  */
1958
2317
  SecurityGroupIds?: string[];
1959
2318
  /**
2319
+ * @public
1960
2320
  * <p>A list of subnet IDs to include in the VPC link.</p>
1961
2321
  */
1962
2322
  SubnetIds?: string[];
1963
2323
  /**
2324
+ * @public
1964
2325
  * <p>Tags for the VPC link.</p>
1965
2326
  */
1966
2327
  Tags?: Record<string, string>;
1967
2328
  /**
2329
+ * @public
1968
2330
  * <p>The ID of the VPC link.</p>
1969
2331
  */
1970
2332
  VpcLinkId?: string;
1971
2333
  /**
2334
+ * @public
1972
2335
  * <p>The status of the VPC link.</p>
1973
2336
  */
1974
2337
  VpcLinkStatus?: VpcLinkStatus | string;
1975
2338
  /**
2339
+ * @public
1976
2340
  * <p>A message summarizing the cause of the status of the VPC link.</p>
1977
2341
  */
1978
2342
  VpcLinkStatusMessage?: string;
1979
2343
  /**
2344
+ * @public
1980
2345
  * <p>The version of the VPC link.</p>
1981
2346
  */
1982
2347
  VpcLinkVersion?: VpcLinkVersion | string;
@@ -1986,10 +2351,12 @@ export interface CreateVpcLinkResponse {
1986
2351
  */
1987
2352
  export interface DeleteAccessLogSettingsRequest {
1988
2353
  /**
2354
+ * @public
1989
2355
  * <p>The API identifier.</p>
1990
2356
  */
1991
2357
  ApiId: string | undefined;
1992
2358
  /**
2359
+ * @public
1993
2360
  * <p>The stage name. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.</p>
1994
2361
  */
1995
2362
  StageName: string | undefined;
@@ -1999,6 +2366,7 @@ export interface DeleteAccessLogSettingsRequest {
1999
2366
  */
2000
2367
  export interface DeleteApiRequest {
2001
2368
  /**
2369
+ * @public
2002
2370
  * <p>The API identifier.</p>
2003
2371
  */
2004
2372
  ApiId: string | undefined;
@@ -2008,10 +2376,12 @@ export interface DeleteApiRequest {
2008
2376
  */
2009
2377
  export interface DeleteApiMappingRequest {
2010
2378
  /**
2379
+ * @public
2011
2380
  * <p>The API mapping identifier.</p>
2012
2381
  */
2013
2382
  ApiMappingId: string | undefined;
2014
2383
  /**
2384
+ * @public
2015
2385
  * <p>The domain name.</p>
2016
2386
  */
2017
2387
  DomainName: string | undefined;
@@ -2021,10 +2391,12 @@ export interface DeleteApiMappingRequest {
2021
2391
  */
2022
2392
  export interface DeleteAuthorizerRequest {
2023
2393
  /**
2394
+ * @public
2024
2395
  * <p>The API identifier.</p>
2025
2396
  */
2026
2397
  ApiId: string | undefined;
2027
2398
  /**
2399
+ * @public
2028
2400
  * <p>The authorizer identifier.</p>
2029
2401
  */
2030
2402
  AuthorizerId: string | undefined;
@@ -2034,6 +2406,7 @@ export interface DeleteAuthorizerRequest {
2034
2406
  */
2035
2407
  export interface DeleteCorsConfigurationRequest {
2036
2408
  /**
2409
+ * @public
2037
2410
  * <p>The API identifier.</p>
2038
2411
  */
2039
2412
  ApiId: string | undefined;
@@ -2043,10 +2416,12 @@ export interface DeleteCorsConfigurationRequest {
2043
2416
  */
2044
2417
  export interface DeleteDeploymentRequest {
2045
2418
  /**
2419
+ * @public
2046
2420
  * <p>The API identifier.</p>
2047
2421
  */
2048
2422
  ApiId: string | undefined;
2049
2423
  /**
2424
+ * @public
2050
2425
  * <p>The deployment ID.</p>
2051
2426
  */
2052
2427
  DeploymentId: string | undefined;
@@ -2056,6 +2431,7 @@ export interface DeleteDeploymentRequest {
2056
2431
  */
2057
2432
  export interface DeleteDomainNameRequest {
2058
2433
  /**
2434
+ * @public
2059
2435
  * <p>The domain name.</p>
2060
2436
  */
2061
2437
  DomainName: string | undefined;
@@ -2065,10 +2441,12 @@ export interface DeleteDomainNameRequest {
2065
2441
  */
2066
2442
  export interface DeleteIntegrationRequest {
2067
2443
  /**
2444
+ * @public
2068
2445
  * <p>The API identifier.</p>
2069
2446
  */
2070
2447
  ApiId: string | undefined;
2071
2448
  /**
2449
+ * @public
2072
2450
  * <p>The integration ID.</p>
2073
2451
  */
2074
2452
  IntegrationId: string | undefined;
@@ -2078,14 +2456,17 @@ export interface DeleteIntegrationRequest {
2078
2456
  */
2079
2457
  export interface DeleteIntegrationResponseRequest {
2080
2458
  /**
2459
+ * @public
2081
2460
  * <p>The API identifier.</p>
2082
2461
  */
2083
2462
  ApiId: string | undefined;
2084
2463
  /**
2464
+ * @public
2085
2465
  * <p>The integration ID.</p>
2086
2466
  */
2087
2467
  IntegrationId: string | undefined;
2088
2468
  /**
2469
+ * @public
2089
2470
  * <p>The integration response ID.</p>
2090
2471
  */
2091
2472
  IntegrationResponseId: string | undefined;
@@ -2095,10 +2476,12 @@ export interface DeleteIntegrationResponseRequest {
2095
2476
  */
2096
2477
  export interface DeleteModelRequest {
2097
2478
  /**
2479
+ * @public
2098
2480
  * <p>The API identifier.</p>
2099
2481
  */
2100
2482
  ApiId: string | undefined;
2101
2483
  /**
2484
+ * @public
2102
2485
  * <p>The model ID.</p>
2103
2486
  */
2104
2487
  ModelId: string | undefined;
@@ -2108,10 +2491,12 @@ export interface DeleteModelRequest {
2108
2491
  */
2109
2492
  export interface DeleteRouteRequest {
2110
2493
  /**
2494
+ * @public
2111
2495
  * <p>The API identifier.</p>
2112
2496
  */
2113
2497
  ApiId: string | undefined;
2114
2498
  /**
2499
+ * @public
2115
2500
  * <p>The route ID.</p>
2116
2501
  */
2117
2502
  RouteId: string | undefined;
@@ -2121,14 +2506,17 @@ export interface DeleteRouteRequest {
2121
2506
  */
2122
2507
  export interface DeleteRouteRequestParameterRequest {
2123
2508
  /**
2509
+ * @public
2124
2510
  * <p>The API identifier.</p>
2125
2511
  */
2126
2512
  ApiId: string | undefined;
2127
2513
  /**
2514
+ * @public
2128
2515
  * <p>The route request parameter key.</p>
2129
2516
  */
2130
2517
  RequestParameterKey: string | undefined;
2131
2518
  /**
2519
+ * @public
2132
2520
  * <p>The route ID.</p>
2133
2521
  */
2134
2522
  RouteId: string | undefined;
@@ -2138,14 +2526,17 @@ export interface DeleteRouteRequestParameterRequest {
2138
2526
  */
2139
2527
  export interface DeleteRouteResponseRequest {
2140
2528
  /**
2529
+ * @public
2141
2530
  * <p>The API identifier.</p>
2142
2531
  */
2143
2532
  ApiId: string | undefined;
2144
2533
  /**
2534
+ * @public
2145
2535
  * <p>The route ID.</p>
2146
2536
  */
2147
2537
  RouteId: string | undefined;
2148
2538
  /**
2539
+ * @public
2149
2540
  * <p>The route response ID.</p>
2150
2541
  */
2151
2542
  RouteResponseId: string | undefined;
@@ -2155,14 +2546,17 @@ export interface DeleteRouteResponseRequest {
2155
2546
  */
2156
2547
  export interface DeleteRouteSettingsRequest {
2157
2548
  /**
2549
+ * @public
2158
2550
  * <p>The API identifier.</p>
2159
2551
  */
2160
2552
  ApiId: string | undefined;
2161
2553
  /**
2554
+ * @public
2162
2555
  * <p>The route key.</p>
2163
2556
  */
2164
2557
  RouteKey: string | undefined;
2165
2558
  /**
2559
+ * @public
2166
2560
  * <p>The stage name. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.</p>
2167
2561
  */
2168
2562
  StageName: string | undefined;
@@ -2172,10 +2566,12 @@ export interface DeleteRouteSettingsRequest {
2172
2566
  */
2173
2567
  export interface DeleteStageRequest {
2174
2568
  /**
2569
+ * @public
2175
2570
  * <p>The API identifier.</p>
2176
2571
  */
2177
2572
  ApiId: string | undefined;
2178
2573
  /**
2574
+ * @public
2179
2575
  * <p>The stage name. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.</p>
2180
2576
  */
2181
2577
  StageName: string | undefined;
@@ -2185,6 +2581,7 @@ export interface DeleteStageRequest {
2185
2581
  */
2186
2582
  export interface DeleteVpcLinkRequest {
2187
2583
  /**
2584
+ * @public
2188
2585
  * <p>The ID of the VPC link.</p>
2189
2586
  */
2190
2587
  VpcLinkId: string | undefined;
@@ -2199,26 +2596,32 @@ export interface DeleteVpcLinkResponse {
2199
2596
  */
2200
2597
  export interface ExportApiRequest {
2201
2598
  /**
2599
+ * @public
2202
2600
  * <p>The API identifier.</p>
2203
2601
  */
2204
2602
  ApiId: string | undefined;
2205
2603
  /**
2604
+ * @public
2206
2605
  * <p>The version of the API Gateway export algorithm. API Gateway uses the latest version by default. Currently, the only supported version is 1.0.</p>
2207
2606
  */
2208
2607
  ExportVersion?: string;
2209
2608
  /**
2609
+ * @public
2210
2610
  * <p>Specifies whether to include <a href="https://docs.aws.amazon.com//apigateway/latest/developerguide/api-gateway-swagger-extensions.html">API Gateway extensions</a> in the exported API definition. API Gateway extensions are included by default.</p>
2211
2611
  */
2212
2612
  IncludeExtensions?: boolean;
2213
2613
  /**
2614
+ * @public
2214
2615
  * <p>The output type of the exported definition file. Valid values are JSON and YAML.</p>
2215
2616
  */
2216
2617
  OutputType: string | undefined;
2217
2618
  /**
2619
+ * @public
2218
2620
  * <p>The version of the API specification to use. OAS30, for OpenAPI 3.0, is the only supported value.</p>
2219
2621
  */
2220
2622
  Specification: string | undefined;
2221
2623
  /**
2624
+ * @public
2222
2625
  * <p>The name of the API stage to export. If you don't specify this property, a representation of the latest API configuration is exported.</p>
2223
2626
  */
2224
2627
  StageName?: string;
@@ -2228,6 +2631,7 @@ export interface ExportApiRequest {
2228
2631
  */
2229
2632
  export interface ExportApiResponse {
2230
2633
  /**
2634
+ * @public
2231
2635
  * <p>Represents an exported definition of an API in a particular output format, for example, YAML. The API is serialized to the requested specification, for example, OpenAPI 3.0.</p>
2232
2636
  */
2233
2637
  body?: Uint8Array;
@@ -2237,6 +2641,7 @@ export interface ExportApiResponse {
2237
2641
  */
2238
2642
  export interface GetApiRequest {
2239
2643
  /**
2644
+ * @public
2240
2645
  * <p>The API identifier.</p>
2241
2646
  */
2242
2647
  ApiId: string | undefined;
@@ -2246,66 +2651,82 @@ export interface GetApiRequest {
2246
2651
  */
2247
2652
  export interface GetApiResponse {
2248
2653
  /**
2654
+ * @public
2249
2655
  * <p>The URI of the API, of the form \{api-id\}.execute-api.\{region\}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.</p>
2250
2656
  */
2251
2657
  ApiEndpoint?: string;
2252
2658
  /**
2659
+ * @public
2253
2660
  * <p>Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.</p>
2254
2661
  */
2255
2662
  ApiGatewayManaged?: boolean;
2256
2663
  /**
2664
+ * @public
2257
2665
  * <p>The API ID.</p>
2258
2666
  */
2259
2667
  ApiId?: string;
2260
2668
  /**
2669
+ * @public
2261
2670
  * <p>An API key selection expression. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions">API Key Selection Expressions</a>.</p>
2262
2671
  */
2263
2672
  ApiKeySelectionExpression?: string;
2264
2673
  /**
2674
+ * @public
2265
2675
  * <p>A CORS configuration. Supported only for HTTP APIs.</p>
2266
2676
  */
2267
2677
  CorsConfiguration?: Cors;
2268
2678
  /**
2679
+ * @public
2269
2680
  * <p>The timestamp when the API was created.</p>
2270
2681
  */
2271
2682
  CreatedDate?: Date;
2272
2683
  /**
2684
+ * @public
2273
2685
  * <p>The description of the API.</p>
2274
2686
  */
2275
2687
  Description?: string;
2276
2688
  /**
2689
+ * @public
2277
2690
  * <p>Avoid validating models when creating a deployment. Supported only for WebSocket APIs.</p>
2278
2691
  */
2279
2692
  DisableSchemaValidation?: boolean;
2280
2693
  /**
2694
+ * @public
2281
2695
  * <p>Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://\{api_id\}.execute-api.\{region\}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.</p>
2282
2696
  */
2283
2697
  DisableExecuteApiEndpoint?: boolean;
2284
2698
  /**
2699
+ * @public
2285
2700
  * <p>The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.</p>
2286
2701
  */
2287
2702
  ImportInfo?: string[];
2288
2703
  /**
2704
+ * @public
2289
2705
  * <p>The name of the API.</p>
2290
2706
  */
2291
2707
  Name?: string;
2292
2708
  /**
2709
+ * @public
2293
2710
  * <p>The API protocol.</p>
2294
2711
  */
2295
2712
  ProtocolType?: ProtocolType | string;
2296
2713
  /**
2714
+ * @public
2297
2715
  * <p>The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be $\{request.method\} $\{request.path\}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.</p>
2298
2716
  */
2299
2717
  RouteSelectionExpression?: string;
2300
2718
  /**
2719
+ * @public
2301
2720
  * <p>A collection of tags associated with the API.</p>
2302
2721
  */
2303
2722
  Tags?: Record<string, string>;
2304
2723
  /**
2724
+ * @public
2305
2725
  * <p>A version identifier for the API.</p>
2306
2726
  */
2307
2727
  Version?: string;
2308
2728
  /**
2729
+ * @public
2309
2730
  * <p>The warning messages reported when failonwarnings is turned on during API import.</p>
2310
2731
  */
2311
2732
  Warnings?: string[];
@@ -2315,10 +2736,12 @@ export interface GetApiResponse {
2315
2736
  */
2316
2737
  export interface GetApiMappingRequest {
2317
2738
  /**
2739
+ * @public
2318
2740
  * <p>The API mapping identifier.</p>
2319
2741
  */
2320
2742
  ApiMappingId: string | undefined;
2321
2743
  /**
2744
+ * @public
2322
2745
  * <p>The domain name.</p>
2323
2746
  */
2324
2747
  DomainName: string | undefined;
@@ -2328,18 +2751,22 @@ export interface GetApiMappingRequest {
2328
2751
  */
2329
2752
  export interface GetApiMappingResponse {
2330
2753
  /**
2754
+ * @public
2331
2755
  * <p>The API identifier.</p>
2332
2756
  */
2333
2757
  ApiId?: string;
2334
2758
  /**
2759
+ * @public
2335
2760
  * <p>The API mapping identifier.</p>
2336
2761
  */
2337
2762
  ApiMappingId?: string;
2338
2763
  /**
2764
+ * @public
2339
2765
  * <p>The API mapping key.</p>
2340
2766
  */
2341
2767
  ApiMappingKey?: string;
2342
2768
  /**
2769
+ * @public
2343
2770
  * <p>The API stage.</p>
2344
2771
  */
2345
2772
  Stage?: string;
@@ -2349,14 +2776,17 @@ export interface GetApiMappingResponse {
2349
2776
  */
2350
2777
  export interface GetApiMappingsRequest {
2351
2778
  /**
2779
+ * @public
2352
2780
  * <p>The domain name.</p>
2353
2781
  */
2354
2782
  DomainName: string | undefined;
2355
2783
  /**
2784
+ * @public
2356
2785
  * <p>The maximum number of elements to be returned for this resource.</p>
2357
2786
  */
2358
2787
  MaxResults?: string;
2359
2788
  /**
2789
+ * @public
2360
2790
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2361
2791
  */
2362
2792
  NextToken?: string;
@@ -2366,10 +2796,12 @@ export interface GetApiMappingsRequest {
2366
2796
  */
2367
2797
  export interface GetApiMappingsResponse {
2368
2798
  /**
2799
+ * @public
2369
2800
  * <p>The elements from this collection.</p>
2370
2801
  */
2371
2802
  Items?: ApiMapping[];
2372
2803
  /**
2804
+ * @public
2373
2805
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2374
2806
  */
2375
2807
  NextToken?: string;
@@ -2379,10 +2811,12 @@ export interface GetApiMappingsResponse {
2379
2811
  */
2380
2812
  export interface GetApisRequest {
2381
2813
  /**
2814
+ * @public
2382
2815
  * <p>The maximum number of elements to be returned for this resource.</p>
2383
2816
  */
2384
2817
  MaxResults?: string;
2385
2818
  /**
2819
+ * @public
2386
2820
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2387
2821
  */
2388
2822
  NextToken?: string;
@@ -2392,10 +2826,12 @@ export interface GetApisRequest {
2392
2826
  */
2393
2827
  export interface GetApisResponse {
2394
2828
  /**
2829
+ * @public
2395
2830
  * <p>The elements from this collection.</p>
2396
2831
  */
2397
2832
  Items?: Api[];
2398
2833
  /**
2834
+ * @public
2399
2835
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2400
2836
  */
2401
2837
  NextToken?: string;
@@ -2405,10 +2841,12 @@ export interface GetApisResponse {
2405
2841
  */
2406
2842
  export interface GetAuthorizerRequest {
2407
2843
  /**
2844
+ * @public
2408
2845
  * <p>The API identifier.</p>
2409
2846
  */
2410
2847
  ApiId: string | undefined;
2411
2848
  /**
2849
+ * @public
2412
2850
  * <p>The authorizer identifier.</p>
2413
2851
  */
2414
2852
  AuthorizerId: string | undefined;
@@ -2418,47 +2856,58 @@ export interface GetAuthorizerRequest {
2418
2856
  */
2419
2857
  export interface GetAuthorizerResponse {
2420
2858
  /**
2859
+ * @public
2421
2860
  * <p>Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, don't specify this parameter. Supported only for REQUEST authorizers.</p>
2422
2861
  */
2423
2862
  AuthorizerCredentialsArn?: string;
2424
2863
  /**
2864
+ * @public
2425
2865
  * <p>The authorizer identifier.</p>
2426
2866
  */
2427
2867
  AuthorizerId?: string;
2428
2868
  /**
2869
+ * @public
2429
2870
  * <p>Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda authorizers. Supported values are 1.0 and 2.0. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p>
2430
2871
  */
2431
2872
  AuthorizerPayloadFormatVersion?: string;
2432
2873
  /**
2874
+ * @public
2433
2875
  * <p>The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour. Supported only for HTTP API Lambda authorizers.</p>
2434
2876
  */
2435
2877
  AuthorizerResultTtlInSeconds?: number;
2436
2878
  /**
2879
+ * @public
2437
2880
  * <p>The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use JSON Web Tokens (supported only for HTTP APIs).</p>
2438
2881
  */
2439
2882
  AuthorizerType?: AuthorizerType | string;
2440
2883
  /**
2884
+ * @public
2441
2885
  * <p>The authorizer's Uniform Resource Identifier (URI). For REQUEST authorizers, this must be a well-formed Lambda function URI, for example, arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:<replaceable>\{account_id\}</replaceable>:function:<replaceable>\{lambda_function_name\}</replaceable>/invocations. In general, the URI has this form: arn:aws:apigateway:<replaceable>\{region\}</replaceable>:lambda:path/<replaceable>\{service_api\}</replaceable>
2442
2886
  * , where <replaceable></replaceable>\{region\} is the same as the region hosting the Lambda function, path indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations. Supported only for REQUEST authorizers.</p>
2443
2887
  */
2444
2888
  AuthorizerUri?: string;
2445
2889
  /**
2890
+ * @public
2446
2891
  * <p>Specifies whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a></p>
2447
2892
  */
2448
2893
  EnableSimpleResponses?: boolean;
2449
2894
  /**
2895
+ * @public
2450
2896
  * <p>The identity source for which authorization is requested.</p> <p>For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the specified request parameters. The identity source can be headers, query string parameters, stage variables, and context parameters. For example, if an Auth header and a Name query string parameter are defined as identity sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name. These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the identity-related request parameters are present in the request, not null, and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching is enabled. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p> <p>For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently only header-based and query parameter-based selections are supported, for example $request.header.Authorization.</p>
2451
2897
  */
2452
2898
  IdentitySource?: string[];
2453
2899
  /**
2900
+ * @public
2454
2901
  * <p>The validation expression does not apply to the REQUEST authorizer.</p>
2455
2902
  */
2456
2903
  IdentityValidationExpression?: string;
2457
2904
  /**
2905
+ * @public
2458
2906
  * <p>Represents the configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP APIs.</p>
2459
2907
  */
2460
2908
  JwtConfiguration?: JWTConfiguration;
2461
2909
  /**
2910
+ * @public
2462
2911
  * <p>The name of the authorizer.</p>
2463
2912
  */
2464
2913
  Name?: string;
@@ -2468,14 +2917,17 @@ export interface GetAuthorizerResponse {
2468
2917
  */
2469
2918
  export interface GetAuthorizersRequest {
2470
2919
  /**
2920
+ * @public
2471
2921
  * <p>The API identifier.</p>
2472
2922
  */
2473
2923
  ApiId: string | undefined;
2474
2924
  /**
2925
+ * @public
2475
2926
  * <p>The maximum number of elements to be returned for this resource.</p>
2476
2927
  */
2477
2928
  MaxResults?: string;
2478
2929
  /**
2930
+ * @public
2479
2931
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2480
2932
  */
2481
2933
  NextToken?: string;
@@ -2485,10 +2937,12 @@ export interface GetAuthorizersRequest {
2485
2937
  */
2486
2938
  export interface GetAuthorizersResponse {
2487
2939
  /**
2940
+ * @public
2488
2941
  * <p>The elements from this collection.</p>
2489
2942
  */
2490
2943
  Items?: Authorizer[];
2491
2944
  /**
2945
+ * @public
2492
2946
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2493
2947
  */
2494
2948
  NextToken?: string;
@@ -2498,10 +2952,12 @@ export interface GetAuthorizersResponse {
2498
2952
  */
2499
2953
  export interface GetDeploymentRequest {
2500
2954
  /**
2955
+ * @public
2501
2956
  * <p>The API identifier.</p>
2502
2957
  */
2503
2958
  ApiId: string | undefined;
2504
2959
  /**
2960
+ * @public
2505
2961
  * <p>The deployment ID.</p>
2506
2962
  */
2507
2963
  DeploymentId: string | undefined;
@@ -2511,26 +2967,32 @@ export interface GetDeploymentRequest {
2511
2967
  */
2512
2968
  export interface GetDeploymentResponse {
2513
2969
  /**
2970
+ * @public
2514
2971
  * <p>Specifies whether a deployment was automatically released.</p>
2515
2972
  */
2516
2973
  AutoDeployed?: boolean;
2517
2974
  /**
2975
+ * @public
2518
2976
  * <p>The date and time when the Deployment resource was created.</p>
2519
2977
  */
2520
2978
  CreatedDate?: Date;
2521
2979
  /**
2980
+ * @public
2522
2981
  * <p>The identifier for the deployment.</p>
2523
2982
  */
2524
2983
  DeploymentId?: string;
2525
2984
  /**
2985
+ * @public
2526
2986
  * <p>The status of the deployment: PENDING, FAILED, or SUCCEEDED.</p>
2527
2987
  */
2528
2988
  DeploymentStatus?: DeploymentStatus | string;
2529
2989
  /**
2990
+ * @public
2530
2991
  * <p>May contain additional feedback on the status of an API deployment.</p>
2531
2992
  */
2532
2993
  DeploymentStatusMessage?: string;
2533
2994
  /**
2995
+ * @public
2534
2996
  * <p>The description for the deployment.</p>
2535
2997
  */
2536
2998
  Description?: string;
@@ -2540,14 +3002,17 @@ export interface GetDeploymentResponse {
2540
3002
  */
2541
3003
  export interface GetDeploymentsRequest {
2542
3004
  /**
3005
+ * @public
2543
3006
  * <p>The API identifier.</p>
2544
3007
  */
2545
3008
  ApiId: string | undefined;
2546
3009
  /**
3010
+ * @public
2547
3011
  * <p>The maximum number of elements to be returned for this resource.</p>
2548
3012
  */
2549
3013
  MaxResults?: string;
2550
3014
  /**
3015
+ * @public
2551
3016
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2552
3017
  */
2553
3018
  NextToken?: string;
@@ -2557,10 +3022,12 @@ export interface GetDeploymentsRequest {
2557
3022
  */
2558
3023
  export interface GetDeploymentsResponse {
2559
3024
  /**
3025
+ * @public
2560
3026
  * <p>The elements from this collection.</p>
2561
3027
  */
2562
3028
  Items?: Deployment[];
2563
3029
  /**
3030
+ * @public
2564
3031
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2565
3032
  */
2566
3033
  NextToken?: string;
@@ -2570,6 +3037,7 @@ export interface GetDeploymentsResponse {
2570
3037
  */
2571
3038
  export interface GetDomainNameRequest {
2572
3039
  /**
3040
+ * @public
2573
3041
  * <p>The domain name.</p>
2574
3042
  */
2575
3043
  DomainName: string | undefined;
@@ -2579,22 +3047,27 @@ export interface GetDomainNameRequest {
2579
3047
  */
2580
3048
  export interface GetDomainNameResponse {
2581
3049
  /**
3050
+ * @public
2582
3051
  * <p>The API mapping selection expression.</p>
2583
3052
  */
2584
3053
  ApiMappingSelectionExpression?: string;
2585
3054
  /**
3055
+ * @public
2586
3056
  * <p>The name of the DomainName resource.</p>
2587
3057
  */
2588
3058
  DomainName?: string;
2589
3059
  /**
3060
+ * @public
2590
3061
  * <p>The domain name configurations.</p>
2591
3062
  */
2592
3063
  DomainNameConfigurations?: DomainNameConfiguration[];
2593
3064
  /**
3065
+ * @public
2594
3066
  * <p>The mutual TLS authentication configuration for a custom domain name.</p>
2595
3067
  */
2596
3068
  MutualTlsAuthentication?: MutualTlsAuthentication;
2597
3069
  /**
3070
+ * @public
2598
3071
  * <p>The collection of tags associated with a domain name.</p>
2599
3072
  */
2600
3073
  Tags?: Record<string, string>;
@@ -2604,10 +3077,12 @@ export interface GetDomainNameResponse {
2604
3077
  */
2605
3078
  export interface GetDomainNamesRequest {
2606
3079
  /**
3080
+ * @public
2607
3081
  * <p>The maximum number of elements to be returned for this resource.</p>
2608
3082
  */
2609
3083
  MaxResults?: string;
2610
3084
  /**
3085
+ * @public
2611
3086
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2612
3087
  */
2613
3088
  NextToken?: string;
@@ -2617,10 +3092,12 @@ export interface GetDomainNamesRequest {
2617
3092
  */
2618
3093
  export interface GetDomainNamesResponse {
2619
3094
  /**
3095
+ * @public
2620
3096
  * <p>The elements from this collection.</p>
2621
3097
  */
2622
3098
  Items?: DomainName[];
2623
3099
  /**
3100
+ * @public
2624
3101
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2625
3102
  */
2626
3103
  NextToken?: string;
@@ -2630,10 +3107,12 @@ export interface GetDomainNamesResponse {
2630
3107
  */
2631
3108
  export interface GetIntegrationRequest {
2632
3109
  /**
3110
+ * @public
2633
3111
  * <p>The API identifier.</p>
2634
3112
  */
2635
3113
  ApiId: string | undefined;
2636
3114
  /**
3115
+ * @public
2637
3116
  * <p>The integration ID.</p>
2638
3117
  */
2639
3118
  IntegrationId: string | undefined;
@@ -2643,62 +3122,77 @@ export interface GetIntegrationRequest {
2643
3122
  */
2644
3123
  export interface GetIntegrationResult {
2645
3124
  /**
3125
+ * @public
2646
3126
  * <p>Specifies whether an integration is managed by API Gateway. If you created an API using using quick create, the resulting integration is managed by API Gateway. You can update a managed integration, but you can't delete it.</p>
2647
3127
  */
2648
3128
  ApiGatewayManaged?: boolean;
2649
3129
  /**
3130
+ * @public
2650
3131
  * <p>The ID of the VPC link for a private integration. Supported only for HTTP APIs.</p>
2651
3132
  */
2652
3133
  ConnectionId?: string;
2653
3134
  /**
3135
+ * @public
2654
3136
  * <p>The type of the network connection to the integration endpoint. Specify INTERNET for connections through the public routable internet or VPC_LINK for private connections between API Gateway and resources in a VPC. The default value is INTERNET.</p>
2655
3137
  */
2656
3138
  ConnectionType?: ConnectionType | string;
2657
3139
  /**
3140
+ * @public
2658
3141
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
2659
3142
  */
2660
3143
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
2661
3144
  /**
3145
+ * @public
2662
3146
  * <p>Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, specify null.</p>
2663
3147
  */
2664
3148
  CredentialsArn?: string;
2665
3149
  /**
3150
+ * @public
2666
3151
  * <p>Represents the description of an integration.</p>
2667
3152
  */
2668
3153
  Description?: string;
2669
3154
  /**
3155
+ * @public
2670
3156
  * <p>Represents the identifier of an integration.</p>
2671
3157
  */
2672
3158
  IntegrationId?: string;
2673
3159
  /**
3160
+ * @public
2674
3161
  * <p>Specifies the integration's HTTP method type.</p>
2675
3162
  */
2676
3163
  IntegrationMethod?: string;
2677
3164
  /**
3165
+ * @public
2678
3166
  * <p>The integration response selection expression for the integration. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-integration-response-selection-expressions">Integration Response Selection Expressions</a>.</p>
2679
3167
  */
2680
3168
  IntegrationResponseSelectionExpression?: string;
2681
3169
  /**
3170
+ * @public
2682
3171
  * <p>Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service action to invoke. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html">Integration subtype reference</a>.</p>
2683
3172
  */
2684
3173
  IntegrationSubtype?: string;
2685
3174
  /**
3175
+ * @public
2686
3176
  * <p>The integration type of an integration. One of the following:</p> <p>AWS: for integrating the route or method request with an AWS service action, including the Lambda function-invoking action. With the Lambda function-invoking action, this is referred to as the Lambda custom integration. With any other AWS service action, this is known as AWS integration. Supported only for WebSocket APIs.</p> <p>AWS_PROXY: for integrating the route or method request with a Lambda function or other AWS service action. This integration is also referred to as a Lambda proxy integration.</p> <p>HTTP: for integrating the route or method request with an HTTP endpoint. This integration is also referred to as the HTTP custom integration. Supported only for WebSocket APIs.</p> <p>HTTP_PROXY: for integrating the route or method request with an HTTP endpoint, with the client request passed through as-is. This is also referred to as HTTP proxy integration.</p> <p>MOCK: for integrating the route or method request with API Gateway as a "loopback" endpoint without invoking any backend. Supported only for WebSocket APIs.</p>
2687
3177
  */
2688
3178
  IntegrationType?: IntegrationType | string;
2689
3179
  /**
3180
+ * @public
2690
3181
  * <p>For a Lambda integration, specify the URI of a Lambda function.</p> <p>For an HTTP integration, specify a fully-qualified URL.</p> <p>For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. You can use query parameters to target specific resources. To learn more, see <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_DiscoverInstances.html">DiscoverInstances</a>. For private integrations, all resources must be owned by the same AWS account.</p>
2691
3182
  */
2692
3183
  IntegrationUri?: string;
2693
3184
  /**
3185
+ * @public
2694
3186
  * <p>Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER. Supported only for WebSocket APIs.</p> <p>WHEN_NO_MATCH passes the request body for unmapped content types through to the integration backend without transformation.</p> <p>NEVER rejects unmapped content types with an HTTP 415 Unsupported Media Type response.</p> <p>WHEN_NO_TEMPLATES allows pass-through when the integration has no content types mapped to templates. However, if there is at least one content type defined, unmapped content types will be rejected with the same HTTP 415 Unsupported Media Type response.</p>
2695
3187
  */
2696
3188
  PassthroughBehavior?: PassthroughBehavior | string;
2697
3189
  /**
3190
+ * @public
2698
3191
  * <p>Specifies the format of the payload sent to an integration. Required for HTTP APIs.</p>
2699
3192
  */
2700
3193
  PayloadFormatVersion?: string;
2701
3194
  /**
3195
+ * @public
2702
3196
  * <p>For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. 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 backend. The method request parameter value must match the pattern of method.request.<replaceable>\{location\}</replaceable>.<replaceable>\{name\}</replaceable>
2703
3197
  * , where
2704
3198
  * <replaceable>\{location\}</replaceable>
@@ -2708,22 +3202,27 @@ export interface GetIntegrationResult {
2708
3202
  */
2709
3203
  RequestParameters?: Record<string, string>;
2710
3204
  /**
3205
+ * @public
2711
3206
  * <p>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. Supported only for WebSocket APIs.</p>
2712
3207
  */
2713
3208
  RequestTemplates?: Record<string, string>;
2714
3209
  /**
3210
+ * @public
2715
3211
  * <p>Supported only for HTTP APIs. You use response parameters to transform the HTTP response from a backend integration before returning the response to clients. Specify a key-value map from a selection key to response parameters. The selection key must be a valid HTTP status code within the range of 200-599. Response parameters are a key-value map. The key must match pattern &lt;action&gt;:&lt;header&gt;.&lt;location&gt; or overwrite.statuscode. The action can be append, overwrite or remove. The value can be a static value, or map to response data, stage variables, or context variables that are evaluated at runtime. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html">Transforming API requests and responses</a>.</p>
2716
3212
  */
2717
3213
  ResponseParameters?: Record<string, Record<string, string>>;
2718
3214
  /**
3215
+ * @public
2719
3216
  * <p>The template selection expression for the integration. Supported only for WebSocket APIs.</p>
2720
3217
  */
2721
3218
  TemplateSelectionExpression?: string;
2722
3219
  /**
3220
+ * @public
2723
3221
  * <p>Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.</p>
2724
3222
  */
2725
3223
  TimeoutInMillis?: number;
2726
3224
  /**
3225
+ * @public
2727
3226
  * <p>The TLS configuration for a private integration. If you specify a TLS configuration, private integration traffic uses the HTTPS protocol. Supported only for HTTP APIs.</p>
2728
3227
  */
2729
3228
  TlsConfig?: TlsConfig;
@@ -2733,14 +3232,17 @@ export interface GetIntegrationResult {
2733
3232
  */
2734
3233
  export interface GetIntegrationResponseRequest {
2735
3234
  /**
3235
+ * @public
2736
3236
  * <p>The API identifier.</p>
2737
3237
  */
2738
3238
  ApiId: string | undefined;
2739
3239
  /**
3240
+ * @public
2740
3241
  * <p>The integration ID.</p>
2741
3242
  */
2742
3243
  IntegrationId: string | undefined;
2743
3244
  /**
3245
+ * @public
2744
3246
  * <p>The integration response ID.</p>
2745
3247
  */
2746
3248
  IntegrationResponseId: string | undefined;
@@ -2750,26 +3252,32 @@ export interface GetIntegrationResponseRequest {
2750
3252
  */
2751
3253
  export interface GetIntegrationResponseResponse {
2752
3254
  /**
3255
+ * @public
2753
3256
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
2754
3257
  */
2755
3258
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
2756
3259
  /**
3260
+ * @public
2757
3261
  * <p>The integration response ID.</p>
2758
3262
  */
2759
3263
  IntegrationResponseId?: string;
2760
3264
  /**
3265
+ * @public
2761
3266
  * <p>The integration response key.</p>
2762
3267
  */
2763
3268
  IntegrationResponseKey?: string;
2764
3269
  /**
3270
+ * @public
2765
3271
  * <p>A key-value map specifying response parameters that are passed to the method response from the backend. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of method.response.header.\{name\}, where name is a valid and unique header name. The mapped non-static value must match the pattern of integration.response.header.\{name\} or integration.response.body.\{JSON-expression\}, where name is a valid and unique response header name and JSON-expression is a valid JSON expression without the $ prefix.</p>
2766
3272
  */
2767
3273
  ResponseParameters?: Record<string, string>;
2768
3274
  /**
3275
+ * @public
2769
3276
  * <p>The collection of response templates for the integration response as a string-to-string map of key-value pairs. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.</p>
2770
3277
  */
2771
3278
  ResponseTemplates?: Record<string, string>;
2772
3279
  /**
3280
+ * @public
2773
3281
  * <p>The template selection expressions for the integration response.</p>
2774
3282
  */
2775
3283
  TemplateSelectionExpression?: string;
@@ -2779,18 +3287,22 @@ export interface GetIntegrationResponseResponse {
2779
3287
  */
2780
3288
  export interface GetIntegrationResponsesRequest {
2781
3289
  /**
3290
+ * @public
2782
3291
  * <p>The API identifier.</p>
2783
3292
  */
2784
3293
  ApiId: string | undefined;
2785
3294
  /**
3295
+ * @public
2786
3296
  * <p>The integration ID.</p>
2787
3297
  */
2788
3298
  IntegrationId: string | undefined;
2789
3299
  /**
3300
+ * @public
2790
3301
  * <p>The maximum number of elements to be returned for this resource.</p>
2791
3302
  */
2792
3303
  MaxResults?: string;
2793
3304
  /**
3305
+ * @public
2794
3306
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2795
3307
  */
2796
3308
  NextToken?: string;
@@ -2800,10 +3312,12 @@ export interface GetIntegrationResponsesRequest {
2800
3312
  */
2801
3313
  export interface GetIntegrationResponsesResponse {
2802
3314
  /**
3315
+ * @public
2803
3316
  * <p>The elements from this collection.</p>
2804
3317
  */
2805
3318
  Items?: IntegrationResponse[];
2806
3319
  /**
3320
+ * @public
2807
3321
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2808
3322
  */
2809
3323
  NextToken?: string;
@@ -2813,14 +3327,17 @@ export interface GetIntegrationResponsesResponse {
2813
3327
  */
2814
3328
  export interface GetIntegrationsRequest {
2815
3329
  /**
3330
+ * @public
2816
3331
  * <p>The API identifier.</p>
2817
3332
  */
2818
3333
  ApiId: string | undefined;
2819
3334
  /**
3335
+ * @public
2820
3336
  * <p>The maximum number of elements to be returned for this resource.</p>
2821
3337
  */
2822
3338
  MaxResults?: string;
2823
3339
  /**
3340
+ * @public
2824
3341
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2825
3342
  */
2826
3343
  NextToken?: string;
@@ -2830,10 +3347,12 @@ export interface GetIntegrationsRequest {
2830
3347
  */
2831
3348
  export interface GetIntegrationsResponse {
2832
3349
  /**
3350
+ * @public
2833
3351
  * <p>The elements from this collection.</p>
2834
3352
  */
2835
3353
  Items?: Integration[];
2836
3354
  /**
3355
+ * @public
2837
3356
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2838
3357
  */
2839
3358
  NextToken?: string;
@@ -2843,10 +3362,12 @@ export interface GetIntegrationsResponse {
2843
3362
  */
2844
3363
  export interface GetModelRequest {
2845
3364
  /**
3365
+ * @public
2846
3366
  * <p>The API identifier.</p>
2847
3367
  */
2848
3368
  ApiId: string | undefined;
2849
3369
  /**
3370
+ * @public
2850
3371
  * <p>The model ID.</p>
2851
3372
  */
2852
3373
  ModelId: string | undefined;
@@ -2856,22 +3377,27 @@ export interface GetModelRequest {
2856
3377
  */
2857
3378
  export interface GetModelResponse {
2858
3379
  /**
3380
+ * @public
2859
3381
  * <p>The content-type for the model, for example, "application/json".</p>
2860
3382
  */
2861
3383
  ContentType?: string;
2862
3384
  /**
3385
+ * @public
2863
3386
  * <p>The description of the model.</p>
2864
3387
  */
2865
3388
  Description?: string;
2866
3389
  /**
3390
+ * @public
2867
3391
  * <p>The model identifier.</p>
2868
3392
  */
2869
3393
  ModelId?: string;
2870
3394
  /**
3395
+ * @public
2871
3396
  * <p>The name of the model. Must be alphanumeric.</p>
2872
3397
  */
2873
3398
  Name?: string;
2874
3399
  /**
3400
+ * @public
2875
3401
  * <p>The schema for the model. For application/json models, this should be JSON schema draft 4 model.</p>
2876
3402
  */
2877
3403
  Schema?: string;
@@ -2881,14 +3407,17 @@ export interface GetModelResponse {
2881
3407
  */
2882
3408
  export interface GetModelsRequest {
2883
3409
  /**
3410
+ * @public
2884
3411
  * <p>The API identifier.</p>
2885
3412
  */
2886
3413
  ApiId: string | undefined;
2887
3414
  /**
3415
+ * @public
2888
3416
  * <p>The maximum number of elements to be returned for this resource.</p>
2889
3417
  */
2890
3418
  MaxResults?: string;
2891
3419
  /**
3420
+ * @public
2892
3421
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2893
3422
  */
2894
3423
  NextToken?: string;
@@ -2898,10 +3427,12 @@ export interface GetModelsRequest {
2898
3427
  */
2899
3428
  export interface GetModelsResponse {
2900
3429
  /**
3430
+ * @public
2901
3431
  * <p>The elements from this collection.</p>
2902
3432
  */
2903
3433
  Items?: Model[];
2904
3434
  /**
3435
+ * @public
2905
3436
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
2906
3437
  */
2907
3438
  NextToken?: string;
@@ -2911,10 +3442,12 @@ export interface GetModelsResponse {
2911
3442
  */
2912
3443
  export interface GetModelTemplateRequest {
2913
3444
  /**
3445
+ * @public
2914
3446
  * <p>The API identifier.</p>
2915
3447
  */
2916
3448
  ApiId: string | undefined;
2917
3449
  /**
3450
+ * @public
2918
3451
  * <p>The model ID.</p>
2919
3452
  */
2920
3453
  ModelId: string | undefined;
@@ -2924,6 +3457,7 @@ export interface GetModelTemplateRequest {
2924
3457
  */
2925
3458
  export interface GetModelTemplateResponse {
2926
3459
  /**
3460
+ * @public
2927
3461
  * <p>The template value.</p>
2928
3462
  */
2929
3463
  Value?: string;
@@ -2933,10 +3467,12 @@ export interface GetModelTemplateResponse {
2933
3467
  */
2934
3468
  export interface GetRouteRequest {
2935
3469
  /**
3470
+ * @public
2936
3471
  * <p>The API identifier.</p>
2937
3472
  */
2938
3473
  ApiId: string | undefined;
2939
3474
  /**
3475
+ * @public
2940
3476
  * <p>The route ID.</p>
2941
3477
  */
2942
3478
  RouteId: string | undefined;
@@ -2946,54 +3482,67 @@ export interface GetRouteRequest {
2946
3482
  */
2947
3483
  export interface GetRouteResult {
2948
3484
  /**
3485
+ * @public
2949
3486
  * <p>Specifies whether a route is managed by API Gateway. If you created an API using quick create, the $default route is managed by API Gateway. You can't modify the $default route key.</p>
2950
3487
  */
2951
3488
  ApiGatewayManaged?: boolean;
2952
3489
  /**
3490
+ * @public
2953
3491
  * <p>Specifies whether an API key is required for this route. Supported only for WebSocket APIs.</p>
2954
3492
  */
2955
3493
  ApiKeyRequired?: boolean;
2956
3494
  /**
3495
+ * @public
2957
3496
  * <p>A list of authorization scopes configured on a route. The scopes are used with a JWT authorizer to authorize the method invocation. The authorization works by matching the route scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any route scope matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the route scope is configured, the client must provide an access token instead of an identity token for authorization purposes.</p>
2958
3497
  */
2959
3498
  AuthorizationScopes?: string[];
2960
3499
  /**
3500
+ * @public
2961
3501
  * <p>The authorization type for the route. For WebSocket APIs, valid values are NONE for open access, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer For HTTP APIs, valid values are NONE for open access, JWT for using JSON Web Tokens, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer.</p>
2962
3502
  */
2963
3503
  AuthorizationType?: AuthorizationType | string;
2964
3504
  /**
3505
+ * @public
2965
3506
  * <p>The identifier of the Authorizer resource to be associated with this route. The authorizer identifier is generated by API Gateway when you created the authorizer.</p>
2966
3507
  */
2967
3508
  AuthorizerId?: string;
2968
3509
  /**
3510
+ * @public
2969
3511
  * <p>The model selection expression for the route. Supported only for WebSocket APIs.</p>
2970
3512
  */
2971
3513
  ModelSelectionExpression?: string;
2972
3514
  /**
3515
+ * @public
2973
3516
  * <p>The operation name for the route.</p>
2974
3517
  */
2975
3518
  OperationName?: string;
2976
3519
  /**
3520
+ * @public
2977
3521
  * <p>The request models for the route. Supported only for WebSocket APIs.</p>
2978
3522
  */
2979
3523
  RequestModels?: Record<string, string>;
2980
3524
  /**
3525
+ * @public
2981
3526
  * <p>The request parameters for the route. Supported only for WebSocket APIs.</p>
2982
3527
  */
2983
3528
  RequestParameters?: Record<string, ParameterConstraints>;
2984
3529
  /**
3530
+ * @public
2985
3531
  * <p>The route ID.</p>
2986
3532
  */
2987
3533
  RouteId?: string;
2988
3534
  /**
3535
+ * @public
2989
3536
  * <p>The route key for the route.</p>
2990
3537
  */
2991
3538
  RouteKey?: string;
2992
3539
  /**
3540
+ * @public
2993
3541
  * <p>The route response selection expression for the route. Supported only for WebSocket APIs.</p>
2994
3542
  */
2995
3543
  RouteResponseSelectionExpression?: string;
2996
3544
  /**
3545
+ * @public
2997
3546
  * <p>The target for the route.</p>
2998
3547
  */
2999
3548
  Target?: string;
@@ -3003,14 +3552,17 @@ export interface GetRouteResult {
3003
3552
  */
3004
3553
  export interface GetRouteResponseRequest {
3005
3554
  /**
3555
+ * @public
3006
3556
  * <p>The API identifier.</p>
3007
3557
  */
3008
3558
  ApiId: string | undefined;
3009
3559
  /**
3560
+ * @public
3010
3561
  * <p>The route ID.</p>
3011
3562
  */
3012
3563
  RouteId: string | undefined;
3013
3564
  /**
3565
+ * @public
3014
3566
  * <p>The route response ID.</p>
3015
3567
  */
3016
3568
  RouteResponseId: string | undefined;
@@ -3020,22 +3572,27 @@ export interface GetRouteResponseRequest {
3020
3572
  */
3021
3573
  export interface GetRouteResponseResponse {
3022
3574
  /**
3575
+ * @public
3023
3576
  * <p>Represents the model selection expression of a route response. Supported only for WebSocket APIs.</p>
3024
3577
  */
3025
3578
  ModelSelectionExpression?: string;
3026
3579
  /**
3580
+ * @public
3027
3581
  * <p>Represents the response models of a route response.</p>
3028
3582
  */
3029
3583
  ResponseModels?: Record<string, string>;
3030
3584
  /**
3585
+ * @public
3031
3586
  * <p>Represents the response parameters of a route response.</p>
3032
3587
  */
3033
3588
  ResponseParameters?: Record<string, ParameterConstraints>;
3034
3589
  /**
3590
+ * @public
3035
3591
  * <p>Represents the identifier of a route response.</p>
3036
3592
  */
3037
3593
  RouteResponseId?: string;
3038
3594
  /**
3595
+ * @public
3039
3596
  * <p>Represents the route response key of a route response.</p>
3040
3597
  */
3041
3598
  RouteResponseKey?: string;
@@ -3045,18 +3602,22 @@ export interface GetRouteResponseResponse {
3045
3602
  */
3046
3603
  export interface GetRouteResponsesRequest {
3047
3604
  /**
3605
+ * @public
3048
3606
  * <p>The API identifier.</p>
3049
3607
  */
3050
3608
  ApiId: string | undefined;
3051
3609
  /**
3610
+ * @public
3052
3611
  * <p>The maximum number of elements to be returned for this resource.</p>
3053
3612
  */
3054
3613
  MaxResults?: string;
3055
3614
  /**
3615
+ * @public
3056
3616
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
3057
3617
  */
3058
3618
  NextToken?: string;
3059
3619
  /**
3620
+ * @public
3060
3621
  * <p>The route ID.</p>
3061
3622
  */
3062
3623
  RouteId: string | undefined;
@@ -3066,10 +3627,12 @@ export interface GetRouteResponsesRequest {
3066
3627
  */
3067
3628
  export interface GetRouteResponsesResponse {
3068
3629
  /**
3630
+ * @public
3069
3631
  * <p>The elements from this collection.</p>
3070
3632
  */
3071
3633
  Items?: RouteResponse[];
3072
3634
  /**
3635
+ * @public
3073
3636
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
3074
3637
  */
3075
3638
  NextToken?: string;
@@ -3079,14 +3642,17 @@ export interface GetRouteResponsesResponse {
3079
3642
  */
3080
3643
  export interface GetRoutesRequest {
3081
3644
  /**
3645
+ * @public
3082
3646
  * <p>The API identifier.</p>
3083
3647
  */
3084
3648
  ApiId: string | undefined;
3085
3649
  /**
3650
+ * @public
3086
3651
  * <p>The maximum number of elements to be returned for this resource.</p>
3087
3652
  */
3088
3653
  MaxResults?: string;
3089
3654
  /**
3655
+ * @public
3090
3656
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
3091
3657
  */
3092
3658
  NextToken?: string;
@@ -3096,10 +3662,12 @@ export interface GetRoutesRequest {
3096
3662
  */
3097
3663
  export interface GetRoutesResponse {
3098
3664
  /**
3665
+ * @public
3099
3666
  * <p>The elements from this collection.</p>
3100
3667
  */
3101
3668
  Items?: Route[];
3102
3669
  /**
3670
+ * @public
3103
3671
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
3104
3672
  */
3105
3673
  NextToken?: string;
@@ -3109,10 +3677,12 @@ export interface GetRoutesResponse {
3109
3677
  */
3110
3678
  export interface GetStageRequest {
3111
3679
  /**
3680
+ * @public
3112
3681
  * <p>The API identifier.</p>
3113
3682
  */
3114
3683
  ApiId: string | undefined;
3115
3684
  /**
3685
+ * @public
3116
3686
  * <p>The stage name. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters.</p>
3117
3687
  */
3118
3688
  StageName: string | undefined;
@@ -3122,58 +3692,72 @@ export interface GetStageRequest {
3122
3692
  */
3123
3693
  export interface GetStageResponse {
3124
3694
  /**
3695
+ * @public
3125
3696
  * <p>Settings for logging access in this stage.</p>
3126
3697
  */
3127
3698
  AccessLogSettings?: AccessLogSettings;
3128
3699
  /**
3700
+ * @public
3129
3701
  * <p>Specifies whether a stage is managed by API Gateway. If you created an API using quick create, the $default stage is managed by API Gateway. You can't modify the $default stage.</p>
3130
3702
  */
3131
3703
  ApiGatewayManaged?: boolean;
3132
3704
  /**
3705
+ * @public
3133
3706
  * <p>Specifies whether updates to an API automatically trigger a new deployment. The default value is false.</p>
3134
3707
  */
3135
3708
  AutoDeploy?: boolean;
3136
3709
  /**
3710
+ * @public
3137
3711
  * <p>The identifier of a client certificate for a Stage. Supported only for WebSocket APIs.</p>
3138
3712
  */
3139
3713
  ClientCertificateId?: string;
3140
3714
  /**
3715
+ * @public
3141
3716
  * <p>The timestamp when the stage was created.</p>
3142
3717
  */
3143
3718
  CreatedDate?: Date;
3144
3719
  /**
3720
+ * @public
3145
3721
  * <p>Default route settings for the stage.</p>
3146
3722
  */
3147
3723
  DefaultRouteSettings?: RouteSettings;
3148
3724
  /**
3725
+ * @public
3149
3726
  * <p>The identifier of the Deployment that the Stage is associated with. Can't be updated if autoDeploy is enabled.</p>
3150
3727
  */
3151
3728
  DeploymentId?: string;
3152
3729
  /**
3730
+ * @public
3153
3731
  * <p>The description of the stage.</p>
3154
3732
  */
3155
3733
  Description?: string;
3156
3734
  /**
3735
+ * @public
3157
3736
  * <p>Describes the status of the last deployment of a stage. Supported only for stages with autoDeploy enabled.</p>
3158
3737
  */
3159
3738
  LastDeploymentStatusMessage?: string;
3160
3739
  /**
3740
+ * @public
3161
3741
  * <p>The timestamp when the stage was last updated.</p>
3162
3742
  */
3163
3743
  LastUpdatedDate?: Date;
3164
3744
  /**
3745
+ * @public
3165
3746
  * <p>Route settings for the stage, by routeKey.</p>
3166
3747
  */
3167
3748
  RouteSettings?: Record<string, RouteSettings>;
3168
3749
  /**
3750
+ * @public
3169
3751
  * <p>The name of the stage.</p>
3170
3752
  */
3171
3753
  StageName?: string;
3172
3754
  /**
3755
+ * @public
3173
3756
  * <p>A map that defines the stage variables for a stage resource. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&amp;=,]+.</p>
3174
3757
  */
3175
3758
  StageVariables?: Record<string, string>;
3176
3759
  /**
3760
+ * @public
3177
3761
  * <p>The collection of tags. Each tag element is associated with a given resource.</p>
3178
3762
  */
3179
3763
  Tags?: Record<string, string>;
@@ -3183,14 +3767,17 @@ export interface GetStageResponse {
3183
3767
  */
3184
3768
  export interface GetStagesRequest {
3185
3769
  /**
3770
+ * @public
3186
3771
  * <p>The API identifier.</p>
3187
3772
  */
3188
3773
  ApiId: string | undefined;
3189
3774
  /**
3775
+ * @public
3190
3776
  * <p>The maximum number of elements to be returned for this resource.</p>
3191
3777
  */
3192
3778
  MaxResults?: string;
3193
3779
  /**
3780
+ * @public
3194
3781
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
3195
3782
  */
3196
3783
  NextToken?: string;
@@ -3200,10 +3787,12 @@ export interface GetStagesRequest {
3200
3787
  */
3201
3788
  export interface GetStagesResponse {
3202
3789
  /**
3790
+ * @public
3203
3791
  * <p>The elements from this collection.</p>
3204
3792
  */
3205
3793
  Items?: Stage[];
3206
3794
  /**
3795
+ * @public
3207
3796
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
3208
3797
  */
3209
3798
  NextToken?: string;
@@ -3213,6 +3802,7 @@ export interface GetStagesResponse {
3213
3802
  */
3214
3803
  export interface GetTagsRequest {
3215
3804
  /**
3805
+ * @public
3216
3806
  * <p>The resource ARN for the tag.</p>
3217
3807
  */
3218
3808
  ResourceArn: string | undefined;
@@ -3222,6 +3812,7 @@ export interface GetTagsRequest {
3222
3812
  */
3223
3813
  export interface GetTagsResponse {
3224
3814
  /**
3815
+ * @public
3225
3816
  * <p>Represents a collection of tags associated with the resource.</p>
3226
3817
  */
3227
3818
  Tags?: Record<string, string>;
@@ -3231,6 +3822,7 @@ export interface GetTagsResponse {
3231
3822
  */
3232
3823
  export interface GetVpcLinkRequest {
3233
3824
  /**
3825
+ * @public
3234
3826
  * <p>The ID of the VPC link.</p>
3235
3827
  */
3236
3828
  VpcLinkId: string | undefined;
@@ -3240,38 +3832,47 @@ export interface GetVpcLinkRequest {
3240
3832
  */
3241
3833
  export interface GetVpcLinkResponse {
3242
3834
  /**
3835
+ * @public
3243
3836
  * <p>The timestamp when the VPC link was created.</p>
3244
3837
  */
3245
3838
  CreatedDate?: Date;
3246
3839
  /**
3840
+ * @public
3247
3841
  * <p>The name of the VPC link.</p>
3248
3842
  */
3249
3843
  Name?: string;
3250
3844
  /**
3845
+ * @public
3251
3846
  * <p>A list of security group IDs for the VPC link.</p>
3252
3847
  */
3253
3848
  SecurityGroupIds?: string[];
3254
3849
  /**
3850
+ * @public
3255
3851
  * <p>A list of subnet IDs to include in the VPC link.</p>
3256
3852
  */
3257
3853
  SubnetIds?: string[];
3258
3854
  /**
3855
+ * @public
3259
3856
  * <p>Tags for the VPC link.</p>
3260
3857
  */
3261
3858
  Tags?: Record<string, string>;
3262
3859
  /**
3860
+ * @public
3263
3861
  * <p>The ID of the VPC link.</p>
3264
3862
  */
3265
3863
  VpcLinkId?: string;
3266
3864
  /**
3865
+ * @public
3267
3866
  * <p>The status of the VPC link.</p>
3268
3867
  */
3269
3868
  VpcLinkStatus?: VpcLinkStatus | string;
3270
3869
  /**
3870
+ * @public
3271
3871
  * <p>A message summarizing the cause of the status of the VPC link.</p>
3272
3872
  */
3273
3873
  VpcLinkStatusMessage?: string;
3274
3874
  /**
3875
+ * @public
3275
3876
  * <p>The version of the VPC link.</p>
3276
3877
  */
3277
3878
  VpcLinkVersion?: VpcLinkVersion | string;
@@ -3281,10 +3882,12 @@ export interface GetVpcLinkResponse {
3281
3882
  */
3282
3883
  export interface GetVpcLinksRequest {
3283
3884
  /**
3885
+ * @public
3284
3886
  * <p>The maximum number of elements to be returned for this resource.</p>
3285
3887
  */
3286
3888
  MaxResults?: string;
3287
3889
  /**
3890
+ * @public
3288
3891
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
3289
3892
  */
3290
3893
  NextToken?: string;
@@ -3294,10 +3897,12 @@ export interface GetVpcLinksRequest {
3294
3897
  */
3295
3898
  export interface GetVpcLinksResponse {
3296
3899
  /**
3900
+ * @public
3297
3901
  * <p>A collection of VPC links.</p>
3298
3902
  */
3299
3903
  Items?: VpcLink[];
3300
3904
  /**
3905
+ * @public
3301
3906
  * <p>The next page of elements from this collection. Not valid for the last element of the collection.</p>
3302
3907
  */
3303
3908
  NextToken?: string;
@@ -3308,14 +3913,17 @@ export interface GetVpcLinksResponse {
3308
3913
  */
3309
3914
  export interface ImportApiRequest {
3310
3915
  /**
3916
+ * @public
3311
3917
  * <p>Specifies how to interpret the base path of the API during import. Valid values are ignore, prepend, and split. The default value is ignore. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-import-api-basePath.html">Set the OpenAPI basePath Property</a>. Supported only for HTTP APIs.</p>
3312
3918
  */
3313
3919
  Basepath?: string;
3314
3920
  /**
3921
+ * @public
3315
3922
  * <p>The OpenAPI definition. Supported only for HTTP APIs.</p>
3316
3923
  */
3317
3924
  Body: string | undefined;
3318
3925
  /**
3926
+ * @public
3319
3927
  * <p>Specifies whether to rollback the API creation when a warning is encountered. By default, API creation continues if a warning is encountered.</p>
3320
3928
  */
3321
3929
  FailOnWarnings?: boolean;
@@ -3325,66 +3933,82 @@ export interface ImportApiRequest {
3325
3933
  */
3326
3934
  export interface ImportApiResponse {
3327
3935
  /**
3936
+ * @public
3328
3937
  * <p>The URI of the API, of the form \{api-id\}.execute-api.\{region\}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.</p>
3329
3938
  */
3330
3939
  ApiEndpoint?: string;
3331
3940
  /**
3941
+ * @public
3332
3942
  * <p>Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.</p>
3333
3943
  */
3334
3944
  ApiGatewayManaged?: boolean;
3335
3945
  /**
3946
+ * @public
3336
3947
  * <p>The API ID.</p>
3337
3948
  */
3338
3949
  ApiId?: string;
3339
3950
  /**
3951
+ * @public
3340
3952
  * <p>An API key selection expression. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions">API Key Selection Expressions</a>.</p>
3341
3953
  */
3342
3954
  ApiKeySelectionExpression?: string;
3343
3955
  /**
3956
+ * @public
3344
3957
  * <p>A CORS configuration. Supported only for HTTP APIs.</p>
3345
3958
  */
3346
3959
  CorsConfiguration?: Cors;
3347
3960
  /**
3961
+ * @public
3348
3962
  * <p>The timestamp when the API was created.</p>
3349
3963
  */
3350
3964
  CreatedDate?: Date;
3351
3965
  /**
3966
+ * @public
3352
3967
  * <p>The description of the API.</p>
3353
3968
  */
3354
3969
  Description?: string;
3355
3970
  /**
3971
+ * @public
3356
3972
  * <p>Avoid validating models when creating a deployment. Supported only for WebSocket APIs.</p>
3357
3973
  */
3358
3974
  DisableSchemaValidation?: boolean;
3359
3975
  /**
3976
+ * @public
3360
3977
  * <p>Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://\{api_id\}.execute-api.\{region\}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.</p>
3361
3978
  */
3362
3979
  DisableExecuteApiEndpoint?: boolean;
3363
3980
  /**
3981
+ * @public
3364
3982
  * <p>The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.</p>
3365
3983
  */
3366
3984
  ImportInfo?: string[];
3367
3985
  /**
3986
+ * @public
3368
3987
  * <p>The name of the API.</p>
3369
3988
  */
3370
3989
  Name?: string;
3371
3990
  /**
3991
+ * @public
3372
3992
  * <p>The API protocol.</p>
3373
3993
  */
3374
3994
  ProtocolType?: ProtocolType | string;
3375
3995
  /**
3996
+ * @public
3376
3997
  * <p>The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be $\{request.method\} $\{request.path\}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.</p>
3377
3998
  */
3378
3999
  RouteSelectionExpression?: string;
3379
4000
  /**
4001
+ * @public
3380
4002
  * <p>A collection of tags associated with the API.</p>
3381
4003
  */
3382
4004
  Tags?: Record<string, string>;
3383
4005
  /**
4006
+ * @public
3384
4007
  * <p>A version identifier for the API.</p>
3385
4008
  */
3386
4009
  Version?: string;
3387
4010
  /**
4011
+ * @public
3388
4012
  * <p>The warning messages reported when failonwarnings is turned on during API import.</p>
3389
4013
  */
3390
4014
  Warnings?: string[];
@@ -3395,18 +4019,22 @@ export interface ImportApiResponse {
3395
4019
  */
3396
4020
  export interface ReimportApiRequest {
3397
4021
  /**
4022
+ * @public
3398
4023
  * <p>The API identifier.</p>
3399
4024
  */
3400
4025
  ApiId: string | undefined;
3401
4026
  /**
4027
+ * @public
3402
4028
  * <p>Specifies how to interpret the base path of the API during import. Valid values are ignore, prepend, and split. The default value is ignore. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-import-api-basePath.html">Set the OpenAPI basePath Property</a>. Supported only for HTTP APIs.</p>
3403
4029
  */
3404
4030
  Basepath?: string;
3405
4031
  /**
4032
+ * @public
3406
4033
  * <p>The OpenAPI definition. Supported only for HTTP APIs.</p>
3407
4034
  */
3408
4035
  Body: string | undefined;
3409
4036
  /**
4037
+ * @public
3410
4038
  * <p>Specifies whether to rollback the API creation when a warning is encountered. By default, API creation continues if a warning is encountered.</p>
3411
4039
  */
3412
4040
  FailOnWarnings?: boolean;
@@ -3416,66 +4044,82 @@ export interface ReimportApiRequest {
3416
4044
  */
3417
4045
  export interface ReimportApiResponse {
3418
4046
  /**
4047
+ * @public
3419
4048
  * <p>The URI of the API, of the form \{api-id\}.execute-api.\{region\}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.</p>
3420
4049
  */
3421
4050
  ApiEndpoint?: string;
3422
4051
  /**
4052
+ * @public
3423
4053
  * <p>Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.</p>
3424
4054
  */
3425
4055
  ApiGatewayManaged?: boolean;
3426
4056
  /**
4057
+ * @public
3427
4058
  * <p>The API ID.</p>
3428
4059
  */
3429
4060
  ApiId?: string;
3430
4061
  /**
4062
+ * @public
3431
4063
  * <p>An API key selection expression. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions">API Key Selection Expressions</a>.</p>
3432
4064
  */
3433
4065
  ApiKeySelectionExpression?: string;
3434
4066
  /**
4067
+ * @public
3435
4068
  * <p>A CORS configuration. Supported only for HTTP APIs.</p>
3436
4069
  */
3437
4070
  CorsConfiguration?: Cors;
3438
4071
  /**
4072
+ * @public
3439
4073
  * <p>The timestamp when the API was created.</p>
3440
4074
  */
3441
4075
  CreatedDate?: Date;
3442
4076
  /**
4077
+ * @public
3443
4078
  * <p>The description of the API.</p>
3444
4079
  */
3445
4080
  Description?: string;
3446
4081
  /**
4082
+ * @public
3447
4083
  * <p>Avoid validating models when creating a deployment. Supported only for WebSocket APIs.</p>
3448
4084
  */
3449
4085
  DisableSchemaValidation?: boolean;
3450
4086
  /**
4087
+ * @public
3451
4088
  * <p>Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://\{api_id\}.execute-api.\{region\}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.</p>
3452
4089
  */
3453
4090
  DisableExecuteApiEndpoint?: boolean;
3454
4091
  /**
4092
+ * @public
3455
4093
  * <p>The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.</p>
3456
4094
  */
3457
4095
  ImportInfo?: string[];
3458
4096
  /**
4097
+ * @public
3459
4098
  * <p>The name of the API.</p>
3460
4099
  */
3461
4100
  Name?: string;
3462
4101
  /**
4102
+ * @public
3463
4103
  * <p>The API protocol.</p>
3464
4104
  */
3465
4105
  ProtocolType?: ProtocolType | string;
3466
4106
  /**
4107
+ * @public
3467
4108
  * <p>The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be $\{request.method\} $\{request.path\}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.</p>
3468
4109
  */
3469
4110
  RouteSelectionExpression?: string;
3470
4111
  /**
4112
+ * @public
3471
4113
  * <p>A collection of tags associated with the API.</p>
3472
4114
  */
3473
4115
  Tags?: Record<string, string>;
3474
4116
  /**
4117
+ * @public
3475
4118
  * <p>A version identifier for the API.</p>
3476
4119
  */
3477
4120
  Version?: string;
3478
4121
  /**
4122
+ * @public
3479
4123
  * <p>The warning messages reported when failonwarnings is turned on during API import.</p>
3480
4124
  */
3481
4125
  Warnings?: string[];
@@ -3485,10 +4129,12 @@ export interface ReimportApiResponse {
3485
4129
  */
3486
4130
  export interface ResetAuthorizersCacheRequest {
3487
4131
  /**
4132
+ * @public
3488
4133
  * <p>The API identifier.</p>
3489
4134
  */
3490
4135
  ApiId: string | undefined;
3491
4136
  /**
4137
+ * @public
3492
4138
  * <p>The stage name. Stage names can contain only alphanumeric characters, hyphens, and underscores, or be $default. Maximum length is 128 characters.</p>
3493
4139
  */
3494
4140
  StageName: string | undefined;
@@ -3499,10 +4145,12 @@ export interface ResetAuthorizersCacheRequest {
3499
4145
  */
3500
4146
  export interface TagResourceRequest {
3501
4147
  /**
4148
+ * @public
3502
4149
  * <p>The resource ARN for the tag.</p>
3503
4150
  */
3504
4151
  ResourceArn: string | undefined;
3505
4152
  /**
4153
+ * @public
3506
4154
  * <p>The collection of tags. Each tag element is associated with a given resource.</p>
3507
4155
  */
3508
4156
  Tags?: Record<string, string>;
@@ -3517,10 +4165,12 @@ export interface TagResourceResponse {
3517
4165
  */
3518
4166
  export interface UntagResourceRequest {
3519
4167
  /**
4168
+ * @public
3520
4169
  * <p>The resource ARN for the tag.</p>
3521
4170
  */
3522
4171
  ResourceArn: string | undefined;
3523
4172
  /**
4173
+ * @public
3524
4174
  * <p>The Tag keys to delete</p>
3525
4175
  */
3526
4176
  TagKeys: string[] | undefined;
@@ -3531,50 +4181,62 @@ export interface UntagResourceRequest {
3531
4181
  */
3532
4182
  export interface UpdateApiRequest {
3533
4183
  /**
4184
+ * @public
3534
4185
  * <p>The API identifier.</p>
3535
4186
  */
3536
4187
  ApiId: string | undefined;
3537
4188
  /**
4189
+ * @public
3538
4190
  * <p>An API key selection expression. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions">API Key Selection Expressions</a>.</p>
3539
4191
  */
3540
4192
  ApiKeySelectionExpression?: string;
3541
4193
  /**
4194
+ * @public
3542
4195
  * <p>A CORS configuration. Supported only for HTTP APIs.</p>
3543
4196
  */
3544
4197
  CorsConfiguration?: Cors;
3545
4198
  /**
4199
+ * @public
3546
4200
  * <p>This property is part of quick create. It specifies the credentials required for the integration, if any. For a Lambda integration, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, don't specify this parameter. Currently, this property is not used for HTTP integrations. If provided, this value replaces the credentials associated with the quick create integration. Supported only for HTTP APIs.</p>
3547
4201
  */
3548
4202
  CredentialsArn?: string;
3549
4203
  /**
4204
+ * @public
3550
4205
  * <p>The description of the API.</p>
3551
4206
  */
3552
4207
  Description?: string;
3553
4208
  /**
4209
+ * @public
3554
4210
  * <p>Avoid validating models when creating a deployment. Supported only for WebSocket APIs.</p>
3555
4211
  */
3556
4212
  DisableSchemaValidation?: boolean;
3557
4213
  /**
4214
+ * @public
3558
4215
  * <p>Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://\{api_id\}.execute-api.\{region\}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.</p>
3559
4216
  */
3560
4217
  DisableExecuteApiEndpoint?: boolean;
3561
4218
  /**
4219
+ * @public
3562
4220
  * <p>The name of the API.</p>
3563
4221
  */
3564
4222
  Name?: string;
3565
4223
  /**
4224
+ * @public
3566
4225
  * <p>This property is part of quick create. If not specified, the route created using quick create is kept. Otherwise, this value replaces the route key of the quick create route. Additional routes may still be added after the API is updated. Supported only for HTTP APIs.</p>
3567
4226
  */
3568
4227
  RouteKey?: string;
3569
4228
  /**
4229
+ * @public
3570
4230
  * <p>The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be $\{request.method\} $\{request.path\}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.</p>
3571
4231
  */
3572
4232
  RouteSelectionExpression?: string;
3573
4233
  /**
4234
+ * @public
3574
4235
  * <p>This property is part of quick create. For HTTP integrations, specify a fully qualified URL. For Lambda integrations, specify a function ARN. The type of the integration will be HTTP_PROXY or AWS_PROXY, respectively. The value provided updates the integration URI and integration type. You can update a quick-created target, but you can't remove it from an API. Supported only for HTTP APIs.</p>
3575
4236
  */
3576
4237
  Target?: string;
3577
4238
  /**
4239
+ * @public
3578
4240
  * <p>A version identifier for the API.</p>
3579
4241
  */
3580
4242
  Version?: string;
@@ -3584,66 +4246,82 @@ export interface UpdateApiRequest {
3584
4246
  */
3585
4247
  export interface UpdateApiResponse {
3586
4248
  /**
4249
+ * @public
3587
4250
  * <p>The URI of the API, of the form \{api-id\}.execute-api.\{region\}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.</p>
3588
4251
  */
3589
4252
  ApiEndpoint?: string;
3590
4253
  /**
4254
+ * @public
3591
4255
  * <p>Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.</p>
3592
4256
  */
3593
4257
  ApiGatewayManaged?: boolean;
3594
4258
  /**
4259
+ * @public
3595
4260
  * <p>The API ID.</p>
3596
4261
  */
3597
4262
  ApiId?: string;
3598
4263
  /**
4264
+ * @public
3599
4265
  * <p>An API key selection expression. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions">API Key Selection Expressions</a>.</p>
3600
4266
  */
3601
4267
  ApiKeySelectionExpression?: string;
3602
4268
  /**
4269
+ * @public
3603
4270
  * <p>A CORS configuration. Supported only for HTTP APIs.</p>
3604
4271
  */
3605
4272
  CorsConfiguration?: Cors;
3606
4273
  /**
4274
+ * @public
3607
4275
  * <p>The timestamp when the API was created.</p>
3608
4276
  */
3609
4277
  CreatedDate?: Date;
3610
4278
  /**
4279
+ * @public
3611
4280
  * <p>The description of the API.</p>
3612
4281
  */
3613
4282
  Description?: string;
3614
4283
  /**
4284
+ * @public
3615
4285
  * <p>Avoid validating models when creating a deployment. Supported only for WebSocket APIs.</p>
3616
4286
  */
3617
4287
  DisableSchemaValidation?: boolean;
3618
4288
  /**
4289
+ * @public
3619
4290
  * <p>Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://\{api_id\}.execute-api.\{region\}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.</p>
3620
4291
  */
3621
4292
  DisableExecuteApiEndpoint?: boolean;
3622
4293
  /**
4294
+ * @public
3623
4295
  * <p>The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.</p>
3624
4296
  */
3625
4297
  ImportInfo?: string[];
3626
4298
  /**
4299
+ * @public
3627
4300
  * <p>The name of the API.</p>
3628
4301
  */
3629
4302
  Name?: string;
3630
4303
  /**
4304
+ * @public
3631
4305
  * <p>The API protocol.</p>
3632
4306
  */
3633
4307
  ProtocolType?: ProtocolType | string;
3634
4308
  /**
4309
+ * @public
3635
4310
  * <p>The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be $\{request.method\} $\{request.path\}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.</p>
3636
4311
  */
3637
4312
  RouteSelectionExpression?: string;
3638
4313
  /**
4314
+ * @public
3639
4315
  * <p>A collection of tags associated with the API.</p>
3640
4316
  */
3641
4317
  Tags?: Record<string, string>;
3642
4318
  /**
4319
+ * @public
3643
4320
  * <p>A version identifier for the API.</p>
3644
4321
  */
3645
4322
  Version?: string;
3646
4323
  /**
4324
+ * @public
3647
4325
  * <p>The warning messages reported when failonwarnings is turned on during API import.</p>
3648
4326
  */
3649
4327
  Warnings?: string[];
@@ -3654,22 +4332,27 @@ export interface UpdateApiResponse {
3654
4332
  */
3655
4333
  export interface UpdateApiMappingRequest {
3656
4334
  /**
4335
+ * @public
3657
4336
  * <p>The API identifier.</p>
3658
4337
  */
3659
4338
  ApiId: string | undefined;
3660
4339
  /**
4340
+ * @public
3661
4341
  * <p>The API mapping identifier.</p>
3662
4342
  */
3663
4343
  ApiMappingId: string | undefined;
3664
4344
  /**
4345
+ * @public
3665
4346
  * <p>The API mapping key.</p>
3666
4347
  */
3667
4348
  ApiMappingKey?: string;
3668
4349
  /**
4350
+ * @public
3669
4351
  * <p>The domain name.</p>
3670
4352
  */
3671
4353
  DomainName: string | undefined;
3672
4354
  /**
4355
+ * @public
3673
4356
  * <p>The API stage.</p>
3674
4357
  */
3675
4358
  Stage?: string;
@@ -3679,18 +4362,22 @@ export interface UpdateApiMappingRequest {
3679
4362
  */
3680
4363
  export interface UpdateApiMappingResponse {
3681
4364
  /**
4365
+ * @public
3682
4366
  * <p>The API identifier.</p>
3683
4367
  */
3684
4368
  ApiId?: string;
3685
4369
  /**
4370
+ * @public
3686
4371
  * <p>The API mapping identifier.</p>
3687
4372
  */
3688
4373
  ApiMappingId?: string;
3689
4374
  /**
4375
+ * @public
3690
4376
  * <p>The API mapping key.</p>
3691
4377
  */
3692
4378
  ApiMappingKey?: string;
3693
4379
  /**
4380
+ * @public
3694
4381
  * <p>The API stage.</p>
3695
4382
  */
3696
4383
  Stage?: string;
@@ -3701,51 +4388,63 @@ export interface UpdateApiMappingResponse {
3701
4388
  */
3702
4389
  export interface UpdateAuthorizerRequest {
3703
4390
  /**
4391
+ * @public
3704
4392
  * <p>The API identifier.</p>
3705
4393
  */
3706
4394
  ApiId: string | undefined;
3707
4395
  /**
4396
+ * @public
3708
4397
  * <p>Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, don't specify this parameter.</p>
3709
4398
  */
3710
4399
  AuthorizerCredentialsArn?: string;
3711
4400
  /**
4401
+ * @public
3712
4402
  * <p>The authorizer identifier.</p>
3713
4403
  */
3714
4404
  AuthorizerId: string | undefined;
3715
4405
  /**
4406
+ * @public
3716
4407
  * <p>Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda authorizers. Supported values are 1.0 and 2.0. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p>
3717
4408
  */
3718
4409
  AuthorizerPayloadFormatVersion?: string;
3719
4410
  /**
4411
+ * @public
3720
4412
  * <p>The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour. Supported only for HTTP API Lambda authorizers.</p>
3721
4413
  */
3722
4414
  AuthorizerResultTtlInSeconds?: number;
3723
4415
  /**
4416
+ * @public
3724
4417
  * <p>The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use JSON Web Tokens (supported only for HTTP APIs).</p>
3725
4418
  */
3726
4419
  AuthorizerType?: AuthorizerType | string;
3727
4420
  /**
4421
+ * @public
3728
4422
  * <p>The authorizer's Uniform Resource Identifier (URI). For REQUEST authorizers, this must be a well-formed Lambda function URI, for example, arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:<replaceable>\{account_id\}</replaceable>:function:<replaceable>\{lambda_function_name\}</replaceable>/invocations. In general, the URI has this form: arn:aws:apigateway:<replaceable>\{region\}</replaceable>:lambda:path/<replaceable>\{service_api\}</replaceable>
3729
4423
  * , where <replaceable></replaceable>\{region\} is the same as the region hosting the Lambda function, path indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations. Supported only for REQUEST authorizers.</p>
3730
4424
  */
3731
4425
  AuthorizerUri?: string;
3732
4426
  /**
4427
+ * @public
3733
4428
  * <p>Specifies whether a Lambda authorizer returns a response in a simple format. By default, a Lambda authorizer must return an IAM policy. If enabled, the Lambda authorizer can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a></p>
3734
4429
  */
3735
4430
  EnableSimpleResponses?: boolean;
3736
4431
  /**
4432
+ * @public
3737
4433
  * <p>The identity source for which authorization is requested.</p> <p>For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the specified request parameters. The identity source can be headers, query string parameters, stage variables, and context parameters. For example, if an Auth header and a Name query string parameter are defined as identity sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name. These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the identity-related request parameters are present in the request, not null, and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching is enabled. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p> <p>For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently only header-based and query parameter-based selections are supported, for example $request.header.Authorization.</p>
3738
4434
  */
3739
4435
  IdentitySource?: string[];
3740
4436
  /**
4437
+ * @public
3741
4438
  * <p>This parameter is not used.</p>
3742
4439
  */
3743
4440
  IdentityValidationExpression?: string;
3744
4441
  /**
4442
+ * @public
3745
4443
  * <p>Represents the configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP APIs.</p>
3746
4444
  */
3747
4445
  JwtConfiguration?: JWTConfiguration;
3748
4446
  /**
4447
+ * @public
3749
4448
  * <p>The name of the authorizer.</p>
3750
4449
  */
3751
4450
  Name?: string;
@@ -3755,47 +4454,58 @@ export interface UpdateAuthorizerRequest {
3755
4454
  */
3756
4455
  export interface UpdateAuthorizerResponse {
3757
4456
  /**
4457
+ * @public
3758
4458
  * <p>Specifies the required credentials as an IAM role for API Gateway to invoke the authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To use resource-based permissions on the Lambda function, don't specify this parameter. Supported only for REQUEST authorizers.</p>
3759
4459
  */
3760
4460
  AuthorizerCredentialsArn?: string;
3761
4461
  /**
4462
+ * @public
3762
4463
  * <p>The authorizer identifier.</p>
3763
4464
  */
3764
4465
  AuthorizerId?: string;
3765
4466
  /**
4467
+ * @public
3766
4468
  * <p>Specifies the format of the payload sent to an HTTP API Lambda authorizer. Required for HTTP API Lambda authorizers. Supported values are 1.0 and 2.0. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p>
3767
4469
  */
3768
4470
  AuthorizerPayloadFormatVersion?: string;
3769
4471
  /**
4472
+ * @public
3770
4473
  * <p>The time to live (TTL) for cached authorizer results, in seconds. If it equals 0, authorization caching is disabled. If it is greater than 0, API Gateway caches authorizer responses. The maximum value is 3600, or 1 hour. Supported only for HTTP API Lambda authorizers.</p>
3771
4474
  */
3772
4475
  AuthorizerResultTtlInSeconds?: number;
3773
4476
  /**
4477
+ * @public
3774
4478
  * <p>The authorizer type. Specify REQUEST for a Lambda function using incoming request parameters. Specify JWT to use JSON Web Tokens (supported only for HTTP APIs).</p>
3775
4479
  */
3776
4480
  AuthorizerType?: AuthorizerType | string;
3777
4481
  /**
4482
+ * @public
3778
4483
  * <p>The authorizer's Uniform Resource Identifier (URI). For REQUEST authorizers, this must be a well-formed Lambda function URI, for example, arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:<replaceable>\{account_id\}</replaceable>:function:<replaceable>\{lambda_function_name\}</replaceable>/invocations. In general, the URI has this form: arn:aws:apigateway:<replaceable>\{region\}</replaceable>:lambda:path/<replaceable>\{service_api\}</replaceable>
3779
4484
  * , where <replaceable></replaceable>\{region\} is the same as the region hosting the Lambda function, path indicates that the remaining substring in the URI should be treated as the path to the resource, including the initial /. For Lambda functions, this is usually of the form /2015-03-31/functions/[FunctionARN]/invocations. Supported only for REQUEST authorizers.</p>
3780
4485
  */
3781
4486
  AuthorizerUri?: string;
3782
4487
  /**
4488
+ * @public
3783
4489
  * <p>Specifies whether a Lambda authorizer returns a response in a simple format. If enabled, the Lambda authorizer can return a boolean value instead of an IAM policy. Supported only for HTTP APIs. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a></p>
3784
4490
  */
3785
4491
  EnableSimpleResponses?: boolean;
3786
4492
  /**
4493
+ * @public
3787
4494
  * <p>The identity source for which authorization is requested.</p> <p>For a REQUEST authorizer, this is optional. The value is a set of one or more mapping expressions of the specified request parameters. The identity source can be headers, query string parameters, stage variables, and context parameters. For example, if an Auth header and a Name query string parameter are defined as identity sources, this value is route.request.header.Auth, route.request.querystring.Name for WebSocket APIs. For HTTP APIs, use selection expressions prefixed with $, for example, $request.header.Auth, $request.querystring.Name. These parameters are used to perform runtime validation for Lambda-based authorizers by verifying all of the identity-related request parameters are present in the request, not null, and non-empty. Only when this is true does the authorizer invoke the authorizer Lambda function. Otherwise, it returns a 401 Unauthorized response without calling the Lambda function. For HTTP APIs, identity sources are also used as the cache key when caching is enabled. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-lambda-authorizer.html">Working with AWS Lambda authorizers for HTTP APIs</a>.</p> <p>For JWT, a single entry that specifies where to extract the JSON Web Token (JWT) from inbound requests. Currently only header-based and query parameter-based selections are supported, for example $request.header.Authorization.</p>
3788
4495
  */
3789
4496
  IdentitySource?: string[];
3790
4497
  /**
4498
+ * @public
3791
4499
  * <p>The validation expression does not apply to the REQUEST authorizer.</p>
3792
4500
  */
3793
4501
  IdentityValidationExpression?: string;
3794
4502
  /**
4503
+ * @public
3795
4504
  * <p>Represents the configuration of a JWT authorizer. Required for the JWT authorizer type. Supported only for HTTP APIs.</p>
3796
4505
  */
3797
4506
  JwtConfiguration?: JWTConfiguration;
3798
4507
  /**
4508
+ * @public
3799
4509
  * <p>The name of the authorizer.</p>
3800
4510
  */
3801
4511
  Name?: string;
@@ -3806,14 +4516,17 @@ export interface UpdateAuthorizerResponse {
3806
4516
  */
3807
4517
  export interface UpdateDeploymentRequest {
3808
4518
  /**
4519
+ * @public
3809
4520
  * <p>The API identifier.</p>
3810
4521
  */
3811
4522
  ApiId: string | undefined;
3812
4523
  /**
4524
+ * @public
3813
4525
  * <p>The deployment ID.</p>
3814
4526
  */
3815
4527
  DeploymentId: string | undefined;
3816
4528
  /**
4529
+ * @public
3817
4530
  * <p>The description for the deployment resource.</p>
3818
4531
  */
3819
4532
  Description?: string;
@@ -3823,26 +4536,32 @@ export interface UpdateDeploymentRequest {
3823
4536
  */
3824
4537
  export interface UpdateDeploymentResponse {
3825
4538
  /**
4539
+ * @public
3826
4540
  * <p>Specifies whether a deployment was automatically released.</p>
3827
4541
  */
3828
4542
  AutoDeployed?: boolean;
3829
4543
  /**
4544
+ * @public
3830
4545
  * <p>The date and time when the Deployment resource was created.</p>
3831
4546
  */
3832
4547
  CreatedDate?: Date;
3833
4548
  /**
4549
+ * @public
3834
4550
  * <p>The identifier for the deployment.</p>
3835
4551
  */
3836
4552
  DeploymentId?: string;
3837
4553
  /**
4554
+ * @public
3838
4555
  * <p>The status of the deployment: PENDING, FAILED, or SUCCEEDED.</p>
3839
4556
  */
3840
4557
  DeploymentStatus?: DeploymentStatus | string;
3841
4558
  /**
4559
+ * @public
3842
4560
  * <p>May contain additional feedback on the status of an API deployment.</p>
3843
4561
  */
3844
4562
  DeploymentStatusMessage?: string;
3845
4563
  /**
4564
+ * @public
3846
4565
  * <p>The description for the deployment.</p>
3847
4566
  */
3848
4567
  Description?: string;
@@ -3853,14 +4572,17 @@ export interface UpdateDeploymentResponse {
3853
4572
  */
3854
4573
  export interface UpdateDomainNameRequest {
3855
4574
  /**
4575
+ * @public
3856
4576
  * <p>The domain name.</p>
3857
4577
  */
3858
4578
  DomainName: string | undefined;
3859
4579
  /**
4580
+ * @public
3860
4581
  * <p>The domain name configurations.</p>
3861
4582
  */
3862
4583
  DomainNameConfigurations?: DomainNameConfiguration[];
3863
4584
  /**
4585
+ * @public
3864
4586
  * <p>The mutual TLS authentication configuration for a custom domain name.</p>
3865
4587
  */
3866
4588
  MutualTlsAuthentication?: MutualTlsAuthenticationInput;
@@ -3870,22 +4592,27 @@ export interface UpdateDomainNameRequest {
3870
4592
  */
3871
4593
  export interface UpdateDomainNameResponse {
3872
4594
  /**
4595
+ * @public
3873
4596
  * <p>The API mapping selection expression.</p>
3874
4597
  */
3875
4598
  ApiMappingSelectionExpression?: string;
3876
4599
  /**
4600
+ * @public
3877
4601
  * <p>The name of the DomainName resource.</p>
3878
4602
  */
3879
4603
  DomainName?: string;
3880
4604
  /**
4605
+ * @public
3881
4606
  * <p>The domain name configurations.</p>
3882
4607
  */
3883
4608
  DomainNameConfigurations?: DomainNameConfiguration[];
3884
4609
  /**
4610
+ * @public
3885
4611
  * <p>The mutual TLS authentication configuration for a custom domain name.</p>
3886
4612
  */
3887
4613
  MutualTlsAuthentication?: MutualTlsAuthentication;
3888
4614
  /**
4615
+ * @public
3889
4616
  * <p>The collection of tags associated with a domain name.</p>
3890
4617
  */
3891
4618
  Tags?: Record<string, string>;
@@ -3896,58 +4623,72 @@ export interface UpdateDomainNameResponse {
3896
4623
  */
3897
4624
  export interface UpdateIntegrationRequest {
3898
4625
  /**
4626
+ * @public
3899
4627
  * <p>The API identifier.</p>
3900
4628
  */
3901
4629
  ApiId: string | undefined;
3902
4630
  /**
4631
+ * @public
3903
4632
  * <p>The ID of the VPC link for a private integration. Supported only for HTTP APIs.</p>
3904
4633
  */
3905
4634
  ConnectionId?: string;
3906
4635
  /**
4636
+ * @public
3907
4637
  * <p>The type of the network connection to the integration endpoint. Specify INTERNET for connections through the public routable internet or VPC_LINK for private connections between API Gateway and resources in a VPC. The default value is INTERNET.</p>
3908
4638
  */
3909
4639
  ConnectionType?: ConnectionType | string;
3910
4640
  /**
4641
+ * @public
3911
4642
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
3912
4643
  */
3913
4644
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
3914
4645
  /**
4646
+ * @public
3915
4647
  * <p>Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, specify null.</p>
3916
4648
  */
3917
4649
  CredentialsArn?: string;
3918
4650
  /**
4651
+ * @public
3919
4652
  * <p>The description of the integration</p>
3920
4653
  */
3921
4654
  Description?: string;
3922
4655
  /**
4656
+ * @public
3923
4657
  * <p>The integration ID.</p>
3924
4658
  */
3925
4659
  IntegrationId: string | undefined;
3926
4660
  /**
4661
+ * @public
3927
4662
  * <p>Specifies the integration's HTTP method type.</p>
3928
4663
  */
3929
4664
  IntegrationMethod?: string;
3930
4665
  /**
4666
+ * @public
3931
4667
  * <p>Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service action to invoke. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html">Integration subtype reference</a>.</p>
3932
4668
  */
3933
4669
  IntegrationSubtype?: string;
3934
4670
  /**
4671
+ * @public
3935
4672
  * <p>The integration type of an integration. One of the following:</p> <p>AWS: for integrating the route or method request with an AWS service action, including the Lambda function-invoking action. With the Lambda function-invoking action, this is referred to as the Lambda custom integration. With any other AWS service action, this is known as AWS integration. Supported only for WebSocket APIs.</p> <p>AWS_PROXY: for integrating the route or method request with a Lambda function or other AWS service action. This integration is also referred to as a Lambda proxy integration.</p> <p>HTTP: for integrating the route or method request with an HTTP endpoint. This integration is also referred to as the HTTP custom integration. Supported only for WebSocket APIs.</p> <p>HTTP_PROXY: for integrating the route or method request with an HTTP endpoint, with the client request passed through as-is. This is also referred to as HTTP proxy integration. For HTTP API private integrations, use an HTTP_PROXY integration.</p> <p>MOCK: for integrating the route or method request with API Gateway as a "loopback" endpoint without invoking any backend. Supported only for WebSocket APIs.</p>
3936
4673
  */
3937
4674
  IntegrationType?: IntegrationType | string;
3938
4675
  /**
4676
+ * @public
3939
4677
  * <p>For a Lambda integration, specify the URI of a Lambda function.</p> <p>For an HTTP integration, specify a fully-qualified URL.</p> <p>For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. You can use query parameters to target specific resources. To learn more, see <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_DiscoverInstances.html">DiscoverInstances</a>. For private integrations, all resources must be owned by the same AWS account.</p>
3940
4678
  */
3941
4679
  IntegrationUri?: string;
3942
4680
  /**
4681
+ * @public
3943
4682
  * <p>Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER. Supported only for WebSocket APIs.</p> <p>WHEN_NO_MATCH passes the request body for unmapped content types through to the integration backend without transformation.</p> <p>NEVER rejects unmapped content types with an HTTP 415 Unsupported Media Type response.</p> <p>WHEN_NO_TEMPLATES allows pass-through when the integration has no content types mapped to templates. However, if there is at least one content type defined, unmapped content types will be rejected with the same HTTP 415 Unsupported Media Type response.</p>
3944
4683
  */
3945
4684
  PassthroughBehavior?: PassthroughBehavior | string;
3946
4685
  /**
4686
+ * @public
3947
4687
  * <p>Specifies the format of the payload sent to an integration. Required for HTTP APIs.</p>
3948
4688
  */
3949
4689
  PayloadFormatVersion?: string;
3950
4690
  /**
4691
+ * @public
3951
4692
  * <p>For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. 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 backend. The method request parameter value must match the pattern of method.request.<replaceable>\{location\}</replaceable>.<replaceable>\{name\}</replaceable>
3952
4693
  * , where
3953
4694
  * <replaceable>\{location\}</replaceable>
@@ -3957,22 +4698,27 @@ export interface UpdateIntegrationRequest {
3957
4698
  */
3958
4699
  RequestParameters?: Record<string, string>;
3959
4700
  /**
4701
+ * @public
3960
4702
  * <p>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. Supported only for WebSocket APIs.</p>
3961
4703
  */
3962
4704
  RequestTemplates?: Record<string, string>;
3963
4705
  /**
4706
+ * @public
3964
4707
  * <p>Supported only for HTTP APIs. You use response parameters to transform the HTTP response from a backend integration before returning the response to clients. Specify a key-value map from a selection key to response parameters. The selection key must be a valid HTTP status code within the range of 200-599. Response parameters are a key-value map. The key must match pattern &lt;action&gt;:&lt;header&gt;.&lt;location&gt; or overwrite.statuscode. The action can be append, overwrite or remove. The value can be a static value, or map to response data, stage variables, or context variables that are evaluated at runtime. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html">Transforming API requests and responses</a>.</p>
3965
4708
  */
3966
4709
  ResponseParameters?: Record<string, Record<string, string>>;
3967
4710
  /**
4711
+ * @public
3968
4712
  * <p>The template selection expression for the integration.</p>
3969
4713
  */
3970
4714
  TemplateSelectionExpression?: string;
3971
4715
  /**
4716
+ * @public
3972
4717
  * <p>Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.</p>
3973
4718
  */
3974
4719
  TimeoutInMillis?: number;
3975
4720
  /**
4721
+ * @public
3976
4722
  * <p>The TLS configuration for a private integration. If you specify a TLS configuration, private integration traffic uses the HTTPS protocol. Supported only for HTTP APIs.</p>
3977
4723
  */
3978
4724
  TlsConfig?: TlsConfigInput;
@@ -3982,62 +4728,77 @@ export interface UpdateIntegrationRequest {
3982
4728
  */
3983
4729
  export interface UpdateIntegrationResult {
3984
4730
  /**
4731
+ * @public
3985
4732
  * <p>Specifies whether an integration is managed by API Gateway. If you created an API using using quick create, the resulting integration is managed by API Gateway. You can update a managed integration, but you can't delete it.</p>
3986
4733
  */
3987
4734
  ApiGatewayManaged?: boolean;
3988
4735
  /**
4736
+ * @public
3989
4737
  * <p>The ID of the VPC link for a private integration. Supported only for HTTP APIs.</p>
3990
4738
  */
3991
4739
  ConnectionId?: string;
3992
4740
  /**
4741
+ * @public
3993
4742
  * <p>The type of the network connection to the integration endpoint. Specify INTERNET for connections through the public routable internet or VPC_LINK for private connections between API Gateway and resources in a VPC. The default value is INTERNET.</p>
3994
4743
  */
3995
4744
  ConnectionType?: ConnectionType | string;
3996
4745
  /**
4746
+ * @public
3997
4747
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
3998
4748
  */
3999
4749
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
4000
4750
  /**
4751
+ * @public
4001
4752
  * <p>Specifies the credentials required for the integration, if any. For AWS integrations, three options are available. To specify an IAM Role for API Gateway to assume, use the role's Amazon Resource Name (ARN). To require that the caller's identity be passed through from the request, specify the string arn:aws:iam::*:user/*. To use resource-based permissions on supported AWS services, specify null.</p>
4002
4753
  */
4003
4754
  CredentialsArn?: string;
4004
4755
  /**
4756
+ * @public
4005
4757
  * <p>Represents the description of an integration.</p>
4006
4758
  */
4007
4759
  Description?: string;
4008
4760
  /**
4761
+ * @public
4009
4762
  * <p>Represents the identifier of an integration.</p>
4010
4763
  */
4011
4764
  IntegrationId?: string;
4012
4765
  /**
4766
+ * @public
4013
4767
  * <p>Specifies the integration's HTTP method type.</p>
4014
4768
  */
4015
4769
  IntegrationMethod?: string;
4016
4770
  /**
4771
+ * @public
4017
4772
  * <p>The integration response selection expression for the integration. Supported only for WebSocket APIs. See <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-integration-response-selection-expressions">Integration Response Selection Expressions</a>.</p>
4018
4773
  */
4019
4774
  IntegrationResponseSelectionExpression?: string;
4020
4775
  /**
4776
+ * @public
4021
4777
  * <p>Supported only for HTTP API AWS_PROXY integrations. Specifies the AWS service action to invoke. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-develop-integrations-aws-services-reference.html">Integration subtype reference</a>.</p>
4022
4778
  */
4023
4779
  IntegrationSubtype?: string;
4024
4780
  /**
4781
+ * @public
4025
4782
  * <p>The integration type of an integration. One of the following:</p> <p>AWS: for integrating the route or method request with an AWS service action, including the Lambda function-invoking action. With the Lambda function-invoking action, this is referred to as the Lambda custom integration. With any other AWS service action, this is known as AWS integration. Supported only for WebSocket APIs.</p> <p>AWS_PROXY: for integrating the route or method request with a Lambda function or other AWS service action. This integration is also referred to as a Lambda proxy integration.</p> <p>HTTP: for integrating the route or method request with an HTTP endpoint. This integration is also referred to as the HTTP custom integration. Supported only for WebSocket APIs.</p> <p>HTTP_PROXY: for integrating the route or method request with an HTTP endpoint, with the client request passed through as-is. This is also referred to as HTTP proxy integration.</p> <p>MOCK: for integrating the route or method request with API Gateway as a "loopback" endpoint without invoking any backend. Supported only for WebSocket APIs.</p>
4026
4783
  */
4027
4784
  IntegrationType?: IntegrationType | string;
4028
4785
  /**
4786
+ * @public
4029
4787
  * <p>For a Lambda integration, specify the URI of a Lambda function.</p> <p>For an HTTP integration, specify a fully-qualified URL.</p> <p>For an HTTP API private integration, specify the ARN of an Application Load Balancer listener, Network Load Balancer listener, or AWS Cloud Map service. If you specify the ARN of an AWS Cloud Map service, API Gateway uses DiscoverInstances to identify resources. You can use query parameters to target specific resources. To learn more, see <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_DiscoverInstances.html">DiscoverInstances</a>. For private integrations, all resources must be owned by the same AWS account.</p>
4030
4788
  */
4031
4789
  IntegrationUri?: string;
4032
4790
  /**
4791
+ * @public
4033
4792
  * <p>Specifies the pass-through behavior for incoming requests based on the Content-Type header in the request, and the available mapping templates specified as the requestTemplates property on the Integration resource. There are three valid values: WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and NEVER. Supported only for WebSocket APIs.</p> <p>WHEN_NO_MATCH passes the request body for unmapped content types through to the integration backend without transformation.</p> <p>NEVER rejects unmapped content types with an HTTP 415 Unsupported Media Type response.</p> <p>WHEN_NO_TEMPLATES allows pass-through when the integration has no content types mapped to templates. However, if there is at least one content type defined, unmapped content types will be rejected with the same HTTP 415 Unsupported Media Type response.</p>
4034
4793
  */
4035
4794
  PassthroughBehavior?: PassthroughBehavior | string;
4036
4795
  /**
4796
+ * @public
4037
4797
  * <p>Specifies the format of the payload sent to an integration. Required for HTTP APIs.</p>
4038
4798
  */
4039
4799
  PayloadFormatVersion?: string;
4040
4800
  /**
4801
+ * @public
4041
4802
  * <p>For WebSocket APIs, a key-value map specifying request parameters that are passed from the method request to the backend. 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 backend. The method request parameter value must match the pattern of method.request.<replaceable>\{location\}</replaceable>.<replaceable>\{name\}</replaceable>
4042
4803
  * , where
4043
4804
  * <replaceable>\{location\}</replaceable>
@@ -4047,22 +4808,27 @@ export interface UpdateIntegrationResult {
4047
4808
  */
4048
4809
  RequestParameters?: Record<string, string>;
4049
4810
  /**
4811
+ * @public
4050
4812
  * <p>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. Supported only for WebSocket APIs.</p>
4051
4813
  */
4052
4814
  RequestTemplates?: Record<string, string>;
4053
4815
  /**
4816
+ * @public
4054
4817
  * <p>Supported only for HTTP APIs. You use response parameters to transform the HTTP response from a backend integration before returning the response to clients. Specify a key-value map from a selection key to response parameters. The selection key must be a valid HTTP status code within the range of 200-599. Response parameters are a key-value map. The key must match pattern &lt;action&gt;:&lt;header&gt;.&lt;location&gt; or overwrite.statuscode. The action can be append, overwrite or remove. The value can be a static value, or map to response data, stage variables, or context variables that are evaluated at runtime. To learn more, see <a href="https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-parameter-mapping.html">Transforming API requests and responses</a>.</p>
4055
4818
  */
4056
4819
  ResponseParameters?: Record<string, Record<string, string>>;
4057
4820
  /**
4821
+ * @public
4058
4822
  * <p>The template selection expression for the integration. Supported only for WebSocket APIs.</p>
4059
4823
  */
4060
4824
  TemplateSelectionExpression?: string;
4061
4825
  /**
4826
+ * @public
4062
4827
  * <p>Custom timeout between 50 and 29,000 milliseconds for WebSocket APIs and between 50 and 30,000 milliseconds for HTTP APIs. The default timeout is 29 seconds for WebSocket APIs and 30 seconds for HTTP APIs.</p>
4063
4828
  */
4064
4829
  TimeoutInMillis?: number;
4065
4830
  /**
4831
+ * @public
4066
4832
  * <p>The TLS configuration for a private integration. If you specify a TLS configuration, private integration traffic uses the HTTPS protocol. Supported only for HTTP APIs.</p>
4067
4833
  */
4068
4834
  TlsConfig?: TlsConfig;
@@ -4073,26 +4839,32 @@ export interface UpdateIntegrationResult {
4073
4839
  */
4074
4840
  export interface UpdateIntegrationResponseRequest {
4075
4841
  /**
4842
+ * @public
4076
4843
  * <p>The API identifier.</p>
4077
4844
  */
4078
4845
  ApiId: string | undefined;
4079
4846
  /**
4847
+ * @public
4080
4848
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
4081
4849
  */
4082
4850
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
4083
4851
  /**
4852
+ * @public
4084
4853
  * <p>The integration ID.</p>
4085
4854
  */
4086
4855
  IntegrationId: string | undefined;
4087
4856
  /**
4857
+ * @public
4088
4858
  * <p>The integration response ID.</p>
4089
4859
  */
4090
4860
  IntegrationResponseId: string | undefined;
4091
4861
  /**
4862
+ * @public
4092
4863
  * <p>The integration response key.</p>
4093
4864
  */
4094
4865
  IntegrationResponseKey?: string;
4095
4866
  /**
4867
+ * @public
4096
4868
  * <p>A key-value map specifying response parameters that are passed to the method response from the backend. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of method.response.header.<replaceable>\{name\}</replaceable>
4097
4869
  * , where name is a valid and unique header name. The mapped non-static value must match the pattern of integration.response.header.<replaceable>\{name\}</replaceable>
4098
4870
  * or integration.response.body.<replaceable>\{JSON-expression\}</replaceable>
@@ -4104,10 +4876,12 @@ export interface UpdateIntegrationResponseRequest {
4104
4876
  */
4105
4877
  ResponseParameters?: Record<string, string>;
4106
4878
  /**
4879
+ * @public
4107
4880
  * <p>The collection of response templates for the integration response as a string-to-string map of key-value pairs. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.</p>
4108
4881
  */
4109
4882
  ResponseTemplates?: Record<string, string>;
4110
4883
  /**
4884
+ * @public
4111
4885
  * <p>The template selection expression for the integration response. Supported only for WebSocket APIs.</p>
4112
4886
  */
4113
4887
  TemplateSelectionExpression?: string;
@@ -4117,26 +4891,32 @@ export interface UpdateIntegrationResponseRequest {
4117
4891
  */
4118
4892
  export interface UpdateIntegrationResponseResponse {
4119
4893
  /**
4894
+ * @public
4120
4895
  * <p>Supported only for WebSocket APIs. Specifies how to handle response payload content type conversions. Supported values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the following behaviors:</p> <p>CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded string to the corresponding binary blob.</p> <p>CONVERT_TO_TEXT: Converts a response payload from a binary blob to a Base64-encoded string.</p> <p>If this property is not defined, the response payload will be passed through from the integration response to the route response or method response without modification.</p>
4121
4896
  */
4122
4897
  ContentHandlingStrategy?: ContentHandlingStrategy | string;
4123
4898
  /**
4899
+ * @public
4124
4900
  * <p>The integration response ID.</p>
4125
4901
  */
4126
4902
  IntegrationResponseId?: string;
4127
4903
  /**
4904
+ * @public
4128
4905
  * <p>The integration response key.</p>
4129
4906
  */
4130
4907
  IntegrationResponseKey?: string;
4131
4908
  /**
4909
+ * @public
4132
4910
  * <p>A key-value map specifying response parameters that are passed to the method response from the backend. The key is a method response header parameter name and the mapped value is an integration response header value, a static value enclosed within a pair of single quotes, or a JSON expression from the integration response body. The mapping key must match the pattern of method.response.header.\{name\}, where name is a valid and unique header name. The mapped non-static value must match the pattern of integration.response.header.\{name\} or integration.response.body.\{JSON-expression\}, where name is a valid and unique response header name and JSON-expression is a valid JSON expression without the $ prefix.</p>
4133
4911
  */
4134
4912
  ResponseParameters?: Record<string, string>;
4135
4913
  /**
4914
+ * @public
4136
4915
  * <p>The collection of response templates for the integration response as a string-to-string map of key-value pairs. Response templates are represented as a key/value map, with a content-type as the key and a template as the value.</p>
4137
4916
  */
4138
4917
  ResponseTemplates?: Record<string, string>;
4139
4918
  /**
4919
+ * @public
4140
4920
  * <p>The template selection expressions for the integration response.</p>
4141
4921
  */
4142
4922
  TemplateSelectionExpression?: string;
@@ -4147,26 +4927,32 @@ export interface UpdateIntegrationResponseResponse {
4147
4927
  */
4148
4928
  export interface UpdateModelRequest {
4149
4929
  /**
4930
+ * @public
4150
4931
  * <p>The API identifier.</p>
4151
4932
  */
4152
4933
  ApiId: string | undefined;
4153
4934
  /**
4935
+ * @public
4154
4936
  * <p>The content-type for the model, for example, "application/json".</p>
4155
4937
  */
4156
4938
  ContentType?: string;
4157
4939
  /**
4940
+ * @public
4158
4941
  * <p>The description of the model.</p>
4159
4942
  */
4160
4943
  Description?: string;
4161
4944
  /**
4945
+ * @public
4162
4946
  * <p>The model ID.</p>
4163
4947
  */
4164
4948
  ModelId: string | undefined;
4165
4949
  /**
4950
+ * @public
4166
4951
  * <p>The name of the model.</p>
4167
4952
  */
4168
4953
  Name?: string;
4169
4954
  /**
4955
+ * @public
4170
4956
  * <p>The schema for the model. For application/json models, this should be JSON schema draft 4 model.</p>
4171
4957
  */
4172
4958
  Schema?: string;
@@ -4176,22 +4962,27 @@ export interface UpdateModelRequest {
4176
4962
  */
4177
4963
  export interface UpdateModelResponse {
4178
4964
  /**
4965
+ * @public
4179
4966
  * <p>The content-type for the model, for example, "application/json".</p>
4180
4967
  */
4181
4968
  ContentType?: string;
4182
4969
  /**
4970
+ * @public
4183
4971
  * <p>The description of the model.</p>
4184
4972
  */
4185
4973
  Description?: string;
4186
4974
  /**
4975
+ * @public
4187
4976
  * <p>The model identifier.</p>
4188
4977
  */
4189
4978
  ModelId?: string;
4190
4979
  /**
4980
+ * @public
4191
4981
  * <p>The name of the model. Must be alphanumeric.</p>
4192
4982
  */
4193
4983
  Name?: string;
4194
4984
  /**
4985
+ * @public
4195
4986
  * <p>The schema for the model. For application/json models, this should be JSON schema draft 4 model.</p>
4196
4987
  */
4197
4988
  Schema?: string;
@@ -4202,54 +4993,67 @@ export interface UpdateModelResponse {
4202
4993
  */
4203
4994
  export interface UpdateRouteRequest {
4204
4995
  /**
4996
+ * @public
4205
4997
  * <p>The API identifier.</p>
4206
4998
  */
4207
4999
  ApiId: string | undefined;
4208
5000
  /**
5001
+ * @public
4209
5002
  * <p>Specifies whether an API key is required for the route. Supported only for WebSocket APIs.</p>
4210
5003
  */
4211
5004
  ApiKeyRequired?: boolean;
4212
5005
  /**
5006
+ * @public
4213
5007
  * <p>The authorization scopes supported by this route.</p>
4214
5008
  */
4215
5009
  AuthorizationScopes?: string[];
4216
5010
  /**
5011
+ * @public
4217
5012
  * <p>The authorization type for the route. For WebSocket APIs, valid values are NONE for open access, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer For HTTP APIs, valid values are NONE for open access, JWT for using JSON Web Tokens, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer.</p>
4218
5013
  */
4219
5014
  AuthorizationType?: AuthorizationType | string;
4220
5015
  /**
5016
+ * @public
4221
5017
  * <p>The identifier of the Authorizer resource to be associated with this route. The authorizer identifier is generated by API Gateway when you created the authorizer.</p>
4222
5018
  */
4223
5019
  AuthorizerId?: string;
4224
5020
  /**
5021
+ * @public
4225
5022
  * <p>The model selection expression for the route. Supported only for WebSocket APIs.</p>
4226
5023
  */
4227
5024
  ModelSelectionExpression?: string;
4228
5025
  /**
5026
+ * @public
4229
5027
  * <p>The operation name for the route.</p>
4230
5028
  */
4231
5029
  OperationName?: string;
4232
5030
  /**
5031
+ * @public
4233
5032
  * <p>The request models for the route. Supported only for WebSocket APIs.</p>
4234
5033
  */
4235
5034
  RequestModels?: Record<string, string>;
4236
5035
  /**
5036
+ * @public
4237
5037
  * <p>The request parameters for the route. Supported only for WebSocket APIs.</p>
4238
5038
  */
4239
5039
  RequestParameters?: Record<string, ParameterConstraints>;
4240
5040
  /**
5041
+ * @public
4241
5042
  * <p>The route ID.</p>
4242
5043
  */
4243
5044
  RouteId: string | undefined;
4244
5045
  /**
5046
+ * @public
4245
5047
  * <p>The route key for the route.</p>
4246
5048
  */
4247
5049
  RouteKey?: string;
4248
5050
  /**
5051
+ * @public
4249
5052
  * <p>The route response selection expression for the route. Supported only for WebSocket APIs.</p>
4250
5053
  */
4251
5054
  RouteResponseSelectionExpression?: string;
4252
5055
  /**
5056
+ * @public
4253
5057
  * <p>The target for the route.</p>
4254
5058
  */
4255
5059
  Target?: string;
@@ -4259,54 +5063,67 @@ export interface UpdateRouteRequest {
4259
5063
  */
4260
5064
  export interface UpdateRouteResult {
4261
5065
  /**
5066
+ * @public
4262
5067
  * <p>Specifies whether a route is managed by API Gateway. If you created an API using quick create, the $default route is managed by API Gateway. You can't modify the $default route key.</p>
4263
5068
  */
4264
5069
  ApiGatewayManaged?: boolean;
4265
5070
  /**
5071
+ * @public
4266
5072
  * <p>Specifies whether an API key is required for this route. Supported only for WebSocket APIs.</p>
4267
5073
  */
4268
5074
  ApiKeyRequired?: boolean;
4269
5075
  /**
5076
+ * @public
4270
5077
  * <p>A list of authorization scopes configured on a route. The scopes are used with a JWT authorizer to authorize the method invocation. The authorization works by matching the route scopes against the scopes parsed from the access token in the incoming request. The method invocation is authorized if any route scope matches a claimed scope in the access token. Otherwise, the invocation is not authorized. When the route scope is configured, the client must provide an access token instead of an identity token for authorization purposes.</p>
4271
5078
  */
4272
5079
  AuthorizationScopes?: string[];
4273
5080
  /**
5081
+ * @public
4274
5082
  * <p>The authorization type for the route. For WebSocket APIs, valid values are NONE for open access, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer For HTTP APIs, valid values are NONE for open access, JWT for using JSON Web Tokens, AWS_IAM for using AWS IAM permissions, and CUSTOM for using a Lambda authorizer.</p>
4275
5083
  */
4276
5084
  AuthorizationType?: AuthorizationType | string;
4277
5085
  /**
5086
+ * @public
4278
5087
  * <p>The identifier of the Authorizer resource to be associated with this route. The authorizer identifier is generated by API Gateway when you created the authorizer.</p>
4279
5088
  */
4280
5089
  AuthorizerId?: string;
4281
5090
  /**
5091
+ * @public
4282
5092
  * <p>The model selection expression for the route. Supported only for WebSocket APIs.</p>
4283
5093
  */
4284
5094
  ModelSelectionExpression?: string;
4285
5095
  /**
5096
+ * @public
4286
5097
  * <p>The operation name for the route.</p>
4287
5098
  */
4288
5099
  OperationName?: string;
4289
5100
  /**
5101
+ * @public
4290
5102
  * <p>The request models for the route. Supported only for WebSocket APIs.</p>
4291
5103
  */
4292
5104
  RequestModels?: Record<string, string>;
4293
5105
  /**
5106
+ * @public
4294
5107
  * <p>The request parameters for the route. Supported only for WebSocket APIs.</p>
4295
5108
  */
4296
5109
  RequestParameters?: Record<string, ParameterConstraints>;
4297
5110
  /**
5111
+ * @public
4298
5112
  * <p>The route ID.</p>
4299
5113
  */
4300
5114
  RouteId?: string;
4301
5115
  /**
5116
+ * @public
4302
5117
  * <p>The route key for the route.</p>
4303
5118
  */
4304
5119
  RouteKey?: string;
4305
5120
  /**
5121
+ * @public
4306
5122
  * <p>The route response selection expression for the route. Supported only for WebSocket APIs.</p>
4307
5123
  */
4308
5124
  RouteResponseSelectionExpression?: string;
4309
5125
  /**
5126
+ * @public
4310
5127
  * <p>The target for the route.</p>
4311
5128
  */
4312
5129
  Target?: string;
@@ -4317,30 +5134,37 @@ export interface UpdateRouteResult {
4317
5134
  */
4318
5135
  export interface UpdateRouteResponseRequest {
4319
5136
  /**
5137
+ * @public
4320
5138
  * <p>The API identifier.</p>
4321
5139
  */
4322
5140
  ApiId: string | undefined;
4323
5141
  /**
5142
+ * @public
4324
5143
  * <p>The model selection expression for the route response. Supported only for WebSocket APIs.</p>
4325
5144
  */
4326
5145
  ModelSelectionExpression?: string;
4327
5146
  /**
5147
+ * @public
4328
5148
  * <p>The response models for the route response.</p>
4329
5149
  */
4330
5150
  ResponseModels?: Record<string, string>;
4331
5151
  /**
5152
+ * @public
4332
5153
  * <p>The route response parameters.</p>
4333
5154
  */
4334
5155
  ResponseParameters?: Record<string, ParameterConstraints>;
4335
5156
  /**
5157
+ * @public
4336
5158
  * <p>The route ID.</p>
4337
5159
  */
4338
5160
  RouteId: string | undefined;
4339
5161
  /**
5162
+ * @public
4340
5163
  * <p>The route response ID.</p>
4341
5164
  */
4342
5165
  RouteResponseId: string | undefined;
4343
5166
  /**
5167
+ * @public
4344
5168
  * <p>The route response key.</p>
4345
5169
  */
4346
5170
  RouteResponseKey?: string;
@@ -4350,22 +5174,27 @@ export interface UpdateRouteResponseRequest {
4350
5174
  */
4351
5175
  export interface UpdateRouteResponseResponse {
4352
5176
  /**
5177
+ * @public
4353
5178
  * <p>Represents the model selection expression of a route response. Supported only for WebSocket APIs.</p>
4354
5179
  */
4355
5180
  ModelSelectionExpression?: string;
4356
5181
  /**
5182
+ * @public
4357
5183
  * <p>Represents the response models of a route response.</p>
4358
5184
  */
4359
5185
  ResponseModels?: Record<string, string>;
4360
5186
  /**
5187
+ * @public
4361
5188
  * <p>Represents the response parameters of a route response.</p>
4362
5189
  */
4363
5190
  ResponseParameters?: Record<string, ParameterConstraints>;
4364
5191
  /**
5192
+ * @public
4365
5193
  * <p>Represents the identifier of a route response.</p>
4366
5194
  */
4367
5195
  RouteResponseId?: string;
4368
5196
  /**
5197
+ * @public
4369
5198
  * <p>Represents the route response key of a route response.</p>
4370
5199
  */
4371
5200
  RouteResponseKey?: string;
@@ -4376,42 +5205,52 @@ export interface UpdateRouteResponseResponse {
4376
5205
  */
4377
5206
  export interface UpdateStageRequest {
4378
5207
  /**
5208
+ * @public
4379
5209
  * <p>Settings for logging access in this stage.</p>
4380
5210
  */
4381
5211
  AccessLogSettings?: AccessLogSettings;
4382
5212
  /**
5213
+ * @public
4383
5214
  * <p>The API identifier.</p>
4384
5215
  */
4385
5216
  ApiId: string | undefined;
4386
5217
  /**
5218
+ * @public
4387
5219
  * <p>Specifies whether updates to an API automatically trigger a new deployment. The default value is false.</p>
4388
5220
  */
4389
5221
  AutoDeploy?: boolean;
4390
5222
  /**
5223
+ * @public
4391
5224
  * <p>The identifier of a client certificate for a Stage.</p>
4392
5225
  */
4393
5226
  ClientCertificateId?: string;
4394
5227
  /**
5228
+ * @public
4395
5229
  * <p>The default route settings for the stage.</p>
4396
5230
  */
4397
5231
  DefaultRouteSettings?: RouteSettings;
4398
5232
  /**
5233
+ * @public
4399
5234
  * <p>The deployment identifier for the API stage. Can't be updated if autoDeploy is enabled.</p>
4400
5235
  */
4401
5236
  DeploymentId?: string;
4402
5237
  /**
5238
+ * @public
4403
5239
  * <p>The description for the API stage.</p>
4404
5240
  */
4405
5241
  Description?: string;
4406
5242
  /**
5243
+ * @public
4407
5244
  * <p>Route settings for the stage.</p>
4408
5245
  */
4409
5246
  RouteSettings?: Record<string, RouteSettings>;
4410
5247
  /**
5248
+ * @public
4411
5249
  * <p>The stage name. Stage names can contain only alphanumeric characters, hyphens, and underscores, or be $default. Maximum length is 128 characters.</p>
4412
5250
  */
4413
5251
  StageName: string | undefined;
4414
5252
  /**
5253
+ * @public
4415
5254
  * <p>A map that defines the stage variables for a Stage. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&amp;=,]+.</p>
4416
5255
  */
4417
5256
  StageVariables?: Record<string, string>;
@@ -4421,58 +5260,72 @@ export interface UpdateStageRequest {
4421
5260
  */
4422
5261
  export interface UpdateStageResponse {
4423
5262
  /**
5263
+ * @public
4424
5264
  * <p>Settings for logging access in this stage.</p>
4425
5265
  */
4426
5266
  AccessLogSettings?: AccessLogSettings;
4427
5267
  /**
5268
+ * @public
4428
5269
  * <p>Specifies whether a stage is managed by API Gateway. If you created an API using quick create, the $default stage is managed by API Gateway. You can't modify the $default stage.</p>
4429
5270
  */
4430
5271
  ApiGatewayManaged?: boolean;
4431
5272
  /**
5273
+ * @public
4432
5274
  * <p>Specifies whether updates to an API automatically trigger a new deployment. The default value is false.</p>
4433
5275
  */
4434
5276
  AutoDeploy?: boolean;
4435
5277
  /**
5278
+ * @public
4436
5279
  * <p>The identifier of a client certificate for a Stage. Supported only for WebSocket APIs.</p>
4437
5280
  */
4438
5281
  ClientCertificateId?: string;
4439
5282
  /**
5283
+ * @public
4440
5284
  * <p>The timestamp when the stage was created.</p>
4441
5285
  */
4442
5286
  CreatedDate?: Date;
4443
5287
  /**
5288
+ * @public
4444
5289
  * <p>Default route settings for the stage.</p>
4445
5290
  */
4446
5291
  DefaultRouteSettings?: RouteSettings;
4447
5292
  /**
5293
+ * @public
4448
5294
  * <p>The identifier of the Deployment that the Stage is associated with. Can't be updated if autoDeploy is enabled.</p>
4449
5295
  */
4450
5296
  DeploymentId?: string;
4451
5297
  /**
5298
+ * @public
4452
5299
  * <p>The description of the stage.</p>
4453
5300
  */
4454
5301
  Description?: string;
4455
5302
  /**
5303
+ * @public
4456
5304
  * <p>Describes the status of the last deployment of a stage. Supported only for stages with autoDeploy enabled.</p>
4457
5305
  */
4458
5306
  LastDeploymentStatusMessage?: string;
4459
5307
  /**
5308
+ * @public
4460
5309
  * <p>The timestamp when the stage was last updated.</p>
4461
5310
  */
4462
5311
  LastUpdatedDate?: Date;
4463
5312
  /**
5313
+ * @public
4464
5314
  * <p>Route settings for the stage, by routeKey.</p>
4465
5315
  */
4466
5316
  RouteSettings?: Record<string, RouteSettings>;
4467
5317
  /**
5318
+ * @public
4468
5319
  * <p>The name of the stage.</p>
4469
5320
  */
4470
5321
  StageName?: string;
4471
5322
  /**
5323
+ * @public
4472
5324
  * <p>A map that defines the stage variables for a stage resource. Variable names can have alphanumeric and underscore characters, and the values must match [A-Za-z0-9-._~:/?#&amp;=,]+.</p>
4473
5325
  */
4474
5326
  StageVariables?: Record<string, string>;
4475
5327
  /**
5328
+ * @public
4476
5329
  * <p>The collection of tags. Each tag element is associated with a given resource.</p>
4477
5330
  */
4478
5331
  Tags?: Record<string, string>;
@@ -4483,10 +5336,12 @@ export interface UpdateStageResponse {
4483
5336
  */
4484
5337
  export interface UpdateVpcLinkRequest {
4485
5338
  /**
5339
+ * @public
4486
5340
  * <p>The name of the VPC link.</p>
4487
5341
  */
4488
5342
  Name?: string;
4489
5343
  /**
5344
+ * @public
4490
5345
  * <p>The ID of the VPC link.</p>
4491
5346
  */
4492
5347
  VpcLinkId: string | undefined;
@@ -4496,38 +5351,47 @@ export interface UpdateVpcLinkRequest {
4496
5351
  */
4497
5352
  export interface UpdateVpcLinkResponse {
4498
5353
  /**
5354
+ * @public
4499
5355
  * <p>The timestamp when the VPC link was created.</p>
4500
5356
  */
4501
5357
  CreatedDate?: Date;
4502
5358
  /**
5359
+ * @public
4503
5360
  * <p>The name of the VPC link.</p>
4504
5361
  */
4505
5362
  Name?: string;
4506
5363
  /**
5364
+ * @public
4507
5365
  * <p>A list of security group IDs for the VPC link.</p>
4508
5366
  */
4509
5367
  SecurityGroupIds?: string[];
4510
5368
  /**
5369
+ * @public
4511
5370
  * <p>A list of subnet IDs to include in the VPC link.</p>
4512
5371
  */
4513
5372
  SubnetIds?: string[];
4514
5373
  /**
5374
+ * @public
4515
5375
  * <p>Tags for the VPC link.</p>
4516
5376
  */
4517
5377
  Tags?: Record<string, string>;
4518
5378
  /**
5379
+ * @public
4519
5380
  * <p>The ID of the VPC link.</p>
4520
5381
  */
4521
5382
  VpcLinkId?: string;
4522
5383
  /**
5384
+ * @public
4523
5385
  * <p>The status of the VPC link.</p>
4524
5386
  */
4525
5387
  VpcLinkStatus?: VpcLinkStatus | string;
4526
5388
  /**
5389
+ * @public
4527
5390
  * <p>A message summarizing the cause of the status of the VPC link.</p>
4528
5391
  */
4529
5392
  VpcLinkStatusMessage?: string;
4530
5393
  /**
5394
+ * @public
4531
5395
  * <p>The version of the VPC link.</p>
4532
5396
  */
4533
5397
  VpcLinkVersion?: VpcLinkVersion | string;