UNPKG

151 kBTypeScriptView Raw
1import {Request} from '../lib/request';
2import {Response} from '../lib/response';
3import {AWSError} from '../lib/error';
4import {Service} from '../lib/service';
5import {ServiceConfigurationOptions} from '../lib/service';
6import {ConfigBase as Config} from '../lib/config';
7interface Blob {}
8declare class ApiGatewayV2 extends Service {
9 /**
10 * Constructs a service object. This object has one method for each API operation.
11 */
12 constructor(options?: ApiGatewayV2.Types.ClientConfiguration)
13 config: Config & ApiGatewayV2.Types.ClientConfiguration;
14 /**
15 * Creates an Api resource.
16 */
17 createApi(params: ApiGatewayV2.Types.CreateApiRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateApiResponse) => void): Request<ApiGatewayV2.Types.CreateApiResponse, AWSError>;
18 /**
19 * Creates an Api resource.
20 */
21 createApi(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateApiResponse) => void): Request<ApiGatewayV2.Types.CreateApiResponse, AWSError>;
22 /**
23 * Creates an API mapping.
24 */
25 createApiMapping(params: ApiGatewayV2.Types.CreateApiMappingRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateApiMappingResponse) => void): Request<ApiGatewayV2.Types.CreateApiMappingResponse, AWSError>;
26 /**
27 * Creates an API mapping.
28 */
29 createApiMapping(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateApiMappingResponse) => void): Request<ApiGatewayV2.Types.CreateApiMappingResponse, AWSError>;
30 /**
31 * Creates an Authorizer for an API.
32 */
33 createAuthorizer(params: ApiGatewayV2.Types.CreateAuthorizerRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateAuthorizerResponse) => void): Request<ApiGatewayV2.Types.CreateAuthorizerResponse, AWSError>;
34 /**
35 * Creates an Authorizer for an API.
36 */
37 createAuthorizer(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateAuthorizerResponse) => void): Request<ApiGatewayV2.Types.CreateAuthorizerResponse, AWSError>;
38 /**
39 * Creates a Deployment for an API.
40 */
41 createDeployment(params: ApiGatewayV2.Types.CreateDeploymentRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateDeploymentResponse) => void): Request<ApiGatewayV2.Types.CreateDeploymentResponse, AWSError>;
42 /**
43 * Creates a Deployment for an API.
44 */
45 createDeployment(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateDeploymentResponse) => void): Request<ApiGatewayV2.Types.CreateDeploymentResponse, AWSError>;
46 /**
47 * Creates a domain name.
48 */
49 createDomainName(params: ApiGatewayV2.Types.CreateDomainNameRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateDomainNameResponse) => void): Request<ApiGatewayV2.Types.CreateDomainNameResponse, AWSError>;
50 /**
51 * Creates a domain name.
52 */
53 createDomainName(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateDomainNameResponse) => void): Request<ApiGatewayV2.Types.CreateDomainNameResponse, AWSError>;
54 /**
55 * Creates an Integration.
56 */
57 createIntegration(params: ApiGatewayV2.Types.CreateIntegrationRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateIntegrationResponse) => void): Request<ApiGatewayV2.Types.CreateIntegrationResponse, AWSError>;
58 /**
59 * Creates an Integration.
60 */
61 createIntegration(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateIntegrationResponse) => void): Request<ApiGatewayV2.Types.CreateIntegrationResponse, AWSError>;
62 /**
63 * Creates an IntegrationResponses.
64 */
65 createIntegrationResponse(params: ApiGatewayV2.Types.CreateIntegrationResponseRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateIntegrationResponseResponse) => void): Request<ApiGatewayV2.Types.CreateIntegrationResponseResponse, AWSError>;
66 /**
67 * Creates an IntegrationResponses.
68 */
69 createIntegrationResponse(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateIntegrationResponseResponse) => void): Request<ApiGatewayV2.Types.CreateIntegrationResponseResponse, AWSError>;
70 /**
71 * Creates a Model for an API.
72 */
73 createModel(params: ApiGatewayV2.Types.CreateModelRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateModelResponse) => void): Request<ApiGatewayV2.Types.CreateModelResponse, AWSError>;
74 /**
75 * Creates a Model for an API.
76 */
77 createModel(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateModelResponse) => void): Request<ApiGatewayV2.Types.CreateModelResponse, AWSError>;
78 /**
79 * Creates a Route for an API.
80 */
81 createRoute(params: ApiGatewayV2.Types.CreateRouteRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateRouteResponse) => void): Request<ApiGatewayV2.Types.CreateRouteResponse, AWSError>;
82 /**
83 * Creates a Route for an API.
84 */
85 createRoute(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateRouteResponse) => void): Request<ApiGatewayV2.Types.CreateRouteResponse, AWSError>;
86 /**
87 * Creates a RouteResponse for a Route.
88 */
89 createRouteResponse(params: ApiGatewayV2.Types.CreateRouteResponseRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateRouteResponseResponse) => void): Request<ApiGatewayV2.Types.CreateRouteResponseResponse, AWSError>;
90 /**
91 * Creates a RouteResponse for a Route.
92 */
93 createRouteResponse(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateRouteResponseResponse) => void): Request<ApiGatewayV2.Types.CreateRouteResponseResponse, AWSError>;
94 /**
95 * Creates a Stage for an API.
96 */
97 createStage(params: ApiGatewayV2.Types.CreateStageRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateStageResponse) => void): Request<ApiGatewayV2.Types.CreateStageResponse, AWSError>;
98 /**
99 * Creates a Stage for an API.
100 */
101 createStage(callback?: (err: AWSError, data: ApiGatewayV2.Types.CreateStageResponse) => void): Request<ApiGatewayV2.Types.CreateStageResponse, AWSError>;
102 /**
103 * Deletes an Api resource.
104 */
105 deleteApi(params: ApiGatewayV2.Types.DeleteApiRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
106 /**
107 * Deletes an Api resource.
108 */
109 deleteApi(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
110 /**
111 * Deletes an API mapping.
112 */
113 deleteApiMapping(params: ApiGatewayV2.Types.DeleteApiMappingRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
114 /**
115 * Deletes an API mapping.
116 */
117 deleteApiMapping(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
118 /**
119 * Deletes an Authorizer.
120 */
121 deleteAuthorizer(params: ApiGatewayV2.Types.DeleteAuthorizerRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
122 /**
123 * Deletes an Authorizer.
124 */
125 deleteAuthorizer(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
126 /**
127 * Deletes a Deployment.
128 */
129 deleteDeployment(params: ApiGatewayV2.Types.DeleteDeploymentRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
130 /**
131 * Deletes a Deployment.
132 */
133 deleteDeployment(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
134 /**
135 * Deletes a domain name.
136 */
137 deleteDomainName(params: ApiGatewayV2.Types.DeleteDomainNameRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
138 /**
139 * Deletes a domain name.
140 */
141 deleteDomainName(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
142 /**
143 * Deletes an Integration.
144 */
145 deleteIntegration(params: ApiGatewayV2.Types.DeleteIntegrationRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
146 /**
147 * Deletes an Integration.
148 */
149 deleteIntegration(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
150 /**
151 * Deletes an IntegrationResponses.
152 */
153 deleteIntegrationResponse(params: ApiGatewayV2.Types.DeleteIntegrationResponseRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
154 /**
155 * Deletes an IntegrationResponses.
156 */
157 deleteIntegrationResponse(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
158 /**
159 * Deletes a Model.
160 */
161 deleteModel(params: ApiGatewayV2.Types.DeleteModelRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
162 /**
163 * Deletes a Model.
164 */
165 deleteModel(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
166 /**
167 * Deletes a Route.
168 */
169 deleteRoute(params: ApiGatewayV2.Types.DeleteRouteRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
170 /**
171 * Deletes a Route.
172 */
173 deleteRoute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
174 /**
175 * Deletes a RouteResponse.
176 */
177 deleteRouteResponse(params: ApiGatewayV2.Types.DeleteRouteResponseRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
178 /**
179 * Deletes a RouteResponse.
180 */
181 deleteRouteResponse(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
182 /**
183 * Deletes a Stage.
184 */
185 deleteStage(params: ApiGatewayV2.Types.DeleteStageRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
186 /**
187 * Deletes a Stage.
188 */
189 deleteStage(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
190 /**
191 * Gets an Api resource.
192 */
193 getApi(params: ApiGatewayV2.Types.GetApiRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetApiResponse) => void): Request<ApiGatewayV2.Types.GetApiResponse, AWSError>;
194 /**
195 * Gets an Api resource.
196 */
197 getApi(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetApiResponse) => void): Request<ApiGatewayV2.Types.GetApiResponse, AWSError>;
198 /**
199 * The API mapping.
200 */
201 getApiMapping(params: ApiGatewayV2.Types.GetApiMappingRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetApiMappingResponse) => void): Request<ApiGatewayV2.Types.GetApiMappingResponse, AWSError>;
202 /**
203 * The API mapping.
204 */
205 getApiMapping(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetApiMappingResponse) => void): Request<ApiGatewayV2.Types.GetApiMappingResponse, AWSError>;
206 /**
207 * The API mappings.
208 */
209 getApiMappings(params: ApiGatewayV2.Types.GetApiMappingsRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetApiMappingsResponse) => void): Request<ApiGatewayV2.Types.GetApiMappingsResponse, AWSError>;
210 /**
211 * The API mappings.
212 */
213 getApiMappings(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetApiMappingsResponse) => void): Request<ApiGatewayV2.Types.GetApiMappingsResponse, AWSError>;
214 /**
215 * Gets a collection of Api resources.
216 */
217 getApis(params: ApiGatewayV2.Types.GetApisRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetApisResponse) => void): Request<ApiGatewayV2.Types.GetApisResponse, AWSError>;
218 /**
219 * Gets a collection of Api resources.
220 */
221 getApis(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetApisResponse) => void): Request<ApiGatewayV2.Types.GetApisResponse, AWSError>;
222 /**
223 * Gets an Authorizer.
224 */
225 getAuthorizer(params: ApiGatewayV2.Types.GetAuthorizerRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetAuthorizerResponse) => void): Request<ApiGatewayV2.Types.GetAuthorizerResponse, AWSError>;
226 /**
227 * Gets an Authorizer.
228 */
229 getAuthorizer(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetAuthorizerResponse) => void): Request<ApiGatewayV2.Types.GetAuthorizerResponse, AWSError>;
230 /**
231 * Gets the Authorizers for an API.
232 */
233 getAuthorizers(params: ApiGatewayV2.Types.GetAuthorizersRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetAuthorizersResponse) => void): Request<ApiGatewayV2.Types.GetAuthorizersResponse, AWSError>;
234 /**
235 * Gets the Authorizers for an API.
236 */
237 getAuthorizers(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetAuthorizersResponse) => void): Request<ApiGatewayV2.Types.GetAuthorizersResponse, AWSError>;
238 /**
239 * Gets a Deployment.
240 */
241 getDeployment(params: ApiGatewayV2.Types.GetDeploymentRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetDeploymentResponse) => void): Request<ApiGatewayV2.Types.GetDeploymentResponse, AWSError>;
242 /**
243 * Gets a Deployment.
244 */
245 getDeployment(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetDeploymentResponse) => void): Request<ApiGatewayV2.Types.GetDeploymentResponse, AWSError>;
246 /**
247 * Gets the Deployments for an API.
248 */
249 getDeployments(params: ApiGatewayV2.Types.GetDeploymentsRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetDeploymentsResponse) => void): Request<ApiGatewayV2.Types.GetDeploymentsResponse, AWSError>;
250 /**
251 * Gets the Deployments for an API.
252 */
253 getDeployments(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetDeploymentsResponse) => void): Request<ApiGatewayV2.Types.GetDeploymentsResponse, AWSError>;
254 /**
255 * Gets a domain name.
256 */
257 getDomainName(params: ApiGatewayV2.Types.GetDomainNameRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetDomainNameResponse) => void): Request<ApiGatewayV2.Types.GetDomainNameResponse, AWSError>;
258 /**
259 * Gets a domain name.
260 */
261 getDomainName(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetDomainNameResponse) => void): Request<ApiGatewayV2.Types.GetDomainNameResponse, AWSError>;
262 /**
263 * Gets the domain names for an AWS account.
264 */
265 getDomainNames(params: ApiGatewayV2.Types.GetDomainNamesRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetDomainNamesResponse) => void): Request<ApiGatewayV2.Types.GetDomainNamesResponse, AWSError>;
266 /**
267 * Gets the domain names for an AWS account.
268 */
269 getDomainNames(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetDomainNamesResponse) => void): Request<ApiGatewayV2.Types.GetDomainNamesResponse, AWSError>;
270 /**
271 * Gets an Integration.
272 */
273 getIntegration(params: ApiGatewayV2.Types.GetIntegrationRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetIntegrationResponse) => void): Request<ApiGatewayV2.Types.GetIntegrationResponse, AWSError>;
274 /**
275 * Gets an Integration.
276 */
277 getIntegration(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetIntegrationResponse) => void): Request<ApiGatewayV2.Types.GetIntegrationResponse, AWSError>;
278 /**
279 * Gets an IntegrationResponses.
280 */
281 getIntegrationResponse(params: ApiGatewayV2.Types.GetIntegrationResponseRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetIntegrationResponseResponse) => void): Request<ApiGatewayV2.Types.GetIntegrationResponseResponse, AWSError>;
282 /**
283 * Gets an IntegrationResponses.
284 */
285 getIntegrationResponse(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetIntegrationResponseResponse) => void): Request<ApiGatewayV2.Types.GetIntegrationResponseResponse, AWSError>;
286 /**
287 * Gets the IntegrationResponses for an Integration.
288 */
289 getIntegrationResponses(params: ApiGatewayV2.Types.GetIntegrationResponsesRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetIntegrationResponsesResponse) => void): Request<ApiGatewayV2.Types.GetIntegrationResponsesResponse, AWSError>;
290 /**
291 * Gets the IntegrationResponses for an Integration.
292 */
293 getIntegrationResponses(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetIntegrationResponsesResponse) => void): Request<ApiGatewayV2.Types.GetIntegrationResponsesResponse, AWSError>;
294 /**
295 * Gets the Integrations for an API.
296 */
297 getIntegrations(params: ApiGatewayV2.Types.GetIntegrationsRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetIntegrationsResponse) => void): Request<ApiGatewayV2.Types.GetIntegrationsResponse, AWSError>;
298 /**
299 * Gets the Integrations for an API.
300 */
301 getIntegrations(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetIntegrationsResponse) => void): Request<ApiGatewayV2.Types.GetIntegrationsResponse, AWSError>;
302 /**
303 * Gets a Model.
304 */
305 getModel(params: ApiGatewayV2.Types.GetModelRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetModelResponse) => void): Request<ApiGatewayV2.Types.GetModelResponse, AWSError>;
306 /**
307 * Gets a Model.
308 */
309 getModel(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetModelResponse) => void): Request<ApiGatewayV2.Types.GetModelResponse, AWSError>;
310 /**
311 * Gets a model template.
312 */
313 getModelTemplate(params: ApiGatewayV2.Types.GetModelTemplateRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetModelTemplateResponse) => void): Request<ApiGatewayV2.Types.GetModelTemplateResponse, AWSError>;
314 /**
315 * Gets a model template.
316 */
317 getModelTemplate(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetModelTemplateResponse) => void): Request<ApiGatewayV2.Types.GetModelTemplateResponse, AWSError>;
318 /**
319 * Gets the Models for an API.
320 */
321 getModels(params: ApiGatewayV2.Types.GetModelsRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetModelsResponse) => void): Request<ApiGatewayV2.Types.GetModelsResponse, AWSError>;
322 /**
323 * Gets the Models for an API.
324 */
325 getModels(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetModelsResponse) => void): Request<ApiGatewayV2.Types.GetModelsResponse, AWSError>;
326 /**
327 * Gets a Route.
328 */
329 getRoute(params: ApiGatewayV2.Types.GetRouteRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetRouteResponse) => void): Request<ApiGatewayV2.Types.GetRouteResponse, AWSError>;
330 /**
331 * Gets a Route.
332 */
333 getRoute(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetRouteResponse) => void): Request<ApiGatewayV2.Types.GetRouteResponse, AWSError>;
334 /**
335 * Gets a RouteResponse.
336 */
337 getRouteResponse(params: ApiGatewayV2.Types.GetRouteResponseRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetRouteResponseResponse) => void): Request<ApiGatewayV2.Types.GetRouteResponseResponse, AWSError>;
338 /**
339 * Gets a RouteResponse.
340 */
341 getRouteResponse(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetRouteResponseResponse) => void): Request<ApiGatewayV2.Types.GetRouteResponseResponse, AWSError>;
342 /**
343 * Gets the RouteResponses for a Route.
344 */
345 getRouteResponses(params: ApiGatewayV2.Types.GetRouteResponsesRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetRouteResponsesResponse) => void): Request<ApiGatewayV2.Types.GetRouteResponsesResponse, AWSError>;
346 /**
347 * Gets the RouteResponses for a Route.
348 */
349 getRouteResponses(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetRouteResponsesResponse) => void): Request<ApiGatewayV2.Types.GetRouteResponsesResponse, AWSError>;
350 /**
351 * Gets the Routes for an API.
352 */
353 getRoutes(params: ApiGatewayV2.Types.GetRoutesRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetRoutesResponse) => void): Request<ApiGatewayV2.Types.GetRoutesResponse, AWSError>;
354 /**
355 * Gets the Routes for an API.
356 */
357 getRoutes(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetRoutesResponse) => void): Request<ApiGatewayV2.Types.GetRoutesResponse, AWSError>;
358 /**
359 * Gets a Stage.
360 */
361 getStage(params: ApiGatewayV2.Types.GetStageRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetStageResponse) => void): Request<ApiGatewayV2.Types.GetStageResponse, AWSError>;
362 /**
363 * Gets a Stage.
364 */
365 getStage(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetStageResponse) => void): Request<ApiGatewayV2.Types.GetStageResponse, AWSError>;
366 /**
367 * Gets the Stages for an API.
368 */
369 getStages(params: ApiGatewayV2.Types.GetStagesRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetStagesResponse) => void): Request<ApiGatewayV2.Types.GetStagesResponse, AWSError>;
370 /**
371 * Gets the Stages for an API.
372 */
373 getStages(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetStagesResponse) => void): Request<ApiGatewayV2.Types.GetStagesResponse, AWSError>;
374 /**
375 * Gets the Tags for an API.
376 */
377 getTags(params: ApiGatewayV2.Types.GetTagsRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.GetTagsResponse) => void): Request<ApiGatewayV2.Types.GetTagsResponse, AWSError>;
378 /**
379 * Gets the Tags for an API.
380 */
381 getTags(callback?: (err: AWSError, data: ApiGatewayV2.Types.GetTagsResponse) => void): Request<ApiGatewayV2.Types.GetTagsResponse, AWSError>;
382 /**
383 * Tag an APIGW resource
384 */
385 tagResource(params: ApiGatewayV2.Types.TagResourceRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.TagResourceResponse) => void): Request<ApiGatewayV2.Types.TagResourceResponse, AWSError>;
386 /**
387 * Tag an APIGW resource
388 */
389 tagResource(callback?: (err: AWSError, data: ApiGatewayV2.Types.TagResourceResponse) => void): Request<ApiGatewayV2.Types.TagResourceResponse, AWSError>;
390 /**
391 * Untag an APIGW resource
392 */
393 untagResource(params: ApiGatewayV2.Types.UntagResourceRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
394 /**
395 * Untag an APIGW resource
396 */
397 untagResource(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
398 /**
399 * Updates an Api resource.
400 */
401 updateApi(params: ApiGatewayV2.Types.UpdateApiRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateApiResponse) => void): Request<ApiGatewayV2.Types.UpdateApiResponse, AWSError>;
402 /**
403 * Updates an Api resource.
404 */
405 updateApi(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateApiResponse) => void): Request<ApiGatewayV2.Types.UpdateApiResponse, AWSError>;
406 /**
407 * The API mapping.
408 */
409 updateApiMapping(params: ApiGatewayV2.Types.UpdateApiMappingRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateApiMappingResponse) => void): Request<ApiGatewayV2.Types.UpdateApiMappingResponse, AWSError>;
410 /**
411 * The API mapping.
412 */
413 updateApiMapping(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateApiMappingResponse) => void): Request<ApiGatewayV2.Types.UpdateApiMappingResponse, AWSError>;
414 /**
415 * Updates an Authorizer.
416 */
417 updateAuthorizer(params: ApiGatewayV2.Types.UpdateAuthorizerRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateAuthorizerResponse) => void): Request<ApiGatewayV2.Types.UpdateAuthorizerResponse, AWSError>;
418 /**
419 * Updates an Authorizer.
420 */
421 updateAuthorizer(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateAuthorizerResponse) => void): Request<ApiGatewayV2.Types.UpdateAuthorizerResponse, AWSError>;
422 /**
423 * Updates a Deployment.
424 */
425 updateDeployment(params: ApiGatewayV2.Types.UpdateDeploymentRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateDeploymentResponse) => void): Request<ApiGatewayV2.Types.UpdateDeploymentResponse, AWSError>;
426 /**
427 * Updates a Deployment.
428 */
429 updateDeployment(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateDeploymentResponse) => void): Request<ApiGatewayV2.Types.UpdateDeploymentResponse, AWSError>;
430 /**
431 * Updates a domain name.
432 */
433 updateDomainName(params: ApiGatewayV2.Types.UpdateDomainNameRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateDomainNameResponse) => void): Request<ApiGatewayV2.Types.UpdateDomainNameResponse, AWSError>;
434 /**
435 * Updates a domain name.
436 */
437 updateDomainName(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateDomainNameResponse) => void): Request<ApiGatewayV2.Types.UpdateDomainNameResponse, AWSError>;
438 /**
439 * Updates an Integration.
440 */
441 updateIntegration(params: ApiGatewayV2.Types.UpdateIntegrationRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateIntegrationResponse) => void): Request<ApiGatewayV2.Types.UpdateIntegrationResponse, AWSError>;
442 /**
443 * Updates an Integration.
444 */
445 updateIntegration(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateIntegrationResponse) => void): Request<ApiGatewayV2.Types.UpdateIntegrationResponse, AWSError>;
446 /**
447 * Updates an IntegrationResponses.
448 */
449 updateIntegrationResponse(params: ApiGatewayV2.Types.UpdateIntegrationResponseRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateIntegrationResponseResponse) => void): Request<ApiGatewayV2.Types.UpdateIntegrationResponseResponse, AWSError>;
450 /**
451 * Updates an IntegrationResponses.
452 */
453 updateIntegrationResponse(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateIntegrationResponseResponse) => void): Request<ApiGatewayV2.Types.UpdateIntegrationResponseResponse, AWSError>;
454 /**
455 * Updates a Model.
456 */
457 updateModel(params: ApiGatewayV2.Types.UpdateModelRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateModelResponse) => void): Request<ApiGatewayV2.Types.UpdateModelResponse, AWSError>;
458 /**
459 * Updates a Model.
460 */
461 updateModel(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateModelResponse) => void): Request<ApiGatewayV2.Types.UpdateModelResponse, AWSError>;
462 /**
463 * Updates a Route.
464 */
465 updateRoute(params: ApiGatewayV2.Types.UpdateRouteRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateRouteResponse) => void): Request<ApiGatewayV2.Types.UpdateRouteResponse, AWSError>;
466 /**
467 * Updates a Route.
468 */
469 updateRoute(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateRouteResponse) => void): Request<ApiGatewayV2.Types.UpdateRouteResponse, AWSError>;
470 /**
471 * Updates a RouteResponse.
472 */
473 updateRouteResponse(params: ApiGatewayV2.Types.UpdateRouteResponseRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateRouteResponseResponse) => void): Request<ApiGatewayV2.Types.UpdateRouteResponseResponse, AWSError>;
474 /**
475 * Updates a RouteResponse.
476 */
477 updateRouteResponse(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateRouteResponseResponse) => void): Request<ApiGatewayV2.Types.UpdateRouteResponseResponse, AWSError>;
478 /**
479 * Updates a Stage.
480 */
481 updateStage(params: ApiGatewayV2.Types.UpdateStageRequest, callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateStageResponse) => void): Request<ApiGatewayV2.Types.UpdateStageResponse, AWSError>;
482 /**
483 * Updates a Stage.
484 */
485 updateStage(callback?: (err: AWSError, data: ApiGatewayV2.Types.UpdateStageResponse) => void): Request<ApiGatewayV2.Types.UpdateStageResponse, AWSError>;
486}
487declare namespace ApiGatewayV2 {
488 export interface AccessLogSettings {
489 /**
490 * The ARN of the CloudWatch Logs log group to receive access logs.
491 */
492 DestinationArn?: Arn;
493 /**
494 * A single line format of the access logs of data, as specified by selected $context
495 variables. The format must include at least $context.requestId.
496 */
497 Format?: StringWithLengthBetween1And1024;
498 }
499 export interface Api {
500 /**
501 * The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The
502 stage name is typically appended to this URI to form a complete path to a deployed
503 API stage.
504 */
505 ApiEndpoint?: __string;
506 /**
507 * The API ID.
508 */
509 ApiId?: Id;
510 /**
511 * An API key selection expression. See API Key Selection Expressions.
512 */
513 ApiKeySelectionExpression?: SelectionExpression;
514 /**
515 * The timestamp when the API was created.
516 */
517 CreatedDate?: __timestampIso8601;
518 /**
519 * The description of the API.
520 */
521 Description?: StringWithLengthBetween0And1024;
522 /**
523 * Avoid validating models when creating a deployment.
524 */
525 DisableSchemaValidation?: __boolean;
526 /**
527 * The name of the API.
528 */
529 Name: StringWithLengthBetween1And128;
530 /**
531 * The API protocol: Currently only WEBSOCKET is supported.
532 */
533 ProtocolType: ProtocolType;
534 /**
535 * The route selection expression for the API.
536 */
537 RouteSelectionExpression: SelectionExpression;
538 /**
539 * A version identifier for the API.
540 */
541 Version?: StringWithLengthBetween1And64;
542 /**
543 * The warning messages reported when failonwarnings is turned on during
544 API import.
545 */
546 Warnings?: __listOf__string;
547 /**
548 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
549 */
550 Tags?: Tags;
551 }
552 export interface ApiMapping {
553 /**
554 * The API identifier.
555 */
556 ApiId: Id;
557 /**
558 * The API mapping identifier.
559 */
560 ApiMappingId?: Id;
561 /**
562 * The API mapping key.
563 */
564 ApiMappingKey?: SelectionKey;
565 /**
566 * The API stage.
567 */
568 Stage: StringWithLengthBetween1And128;
569 }
570 export type Arn = string;
571 export type AuthorizationScopes = StringWithLengthBetween1And64[];
572 export type AuthorizationType = "NONE"|"AWS_IAM"|"CUSTOM"|string;
573 export interface Authorizer {
574 /**
575 * Specifies the required credentials as an IAM role for API Gateway to invoke the
576 authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon
577 Resource Name (ARN). To use resource-based permissions on the Lambda function,
578 specify null.
579 */
580 AuthorizerCredentialsArn?: Arn;
581 /**
582 * The authorizer identifier.
583 */
584 AuthorizerId?: Id;
585 /**
586 * The time to live (TTL), in seconds, of cached authorizer results. If it equals 0,
587 authorization caching is disabled. If it is greater than 0, API Gateway will cache
588 authorizer responses. If this field is not set, the default value is 300. The maximum
589 value is 3600, or 1 hour.
590 */
591 AuthorizerResultTtlInSeconds?: IntegerWithLengthBetween0And3600;
592 /**
593 * The authorizer type. Currently the only valid value is REQUEST, for a
594 Lambda function using incoming request parameters.
595 */
596 AuthorizerType?: AuthorizerType;
597 /**
598 * The authorizer's Uniform Resource Identifier (URI).
599 ForREQUEST authorizers, this must be a
600 well-formed Lambda function URI, for example,
601 arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations.
602 In general, the URI has this form:
603 arn:aws:apigateway:{region}:lambda:path/{service_api}
604 , where {region} is the same as the region hosting the Lambda
605 function, path indicates that the remaining substring in the URI should be treated as
606 the path to the resource, including the initial /. For Lambda functions,
607 this is usually of the form
608 /2015-03-31/functions/[FunctionARN]/invocations.
609 */
610 AuthorizerUri?: UriWithLengthBetween1And2048;
611 /**
612 * The identity source for which authorization is requested.For the REQUEST authorizer, this is required when authorization
613 caching is enabled. The value is a comma-separated string of one or more mapping
614 expressions of the specified request parameters. For example, if an Auth
615 header and a Name query string parameters are defined as identity
616 sources, this value is method.request.header.Auth,
617 method.request.querystring.Name. These parameters will be used to
618 derive the authorization caching key and to perform runtime validation of the
619 REQUEST authorizer by verifying all of the identity-related request
620 parameters are present, not null, and non-empty. Only when this is true does the
621 authorizer invoke the authorizer Lambda function, otherwise, it returns a 401
622 Unauthorized response without calling the Lambda function. The valid value
623 is a string of comma-separated mapping expressions of the specified request
624 parameters. When the authorization caching is not enabled, this property is
625 optional.
626 */
627 IdentitySource?: IdentitySourceList;
628 /**
629 * The
630 validation expression does not apply to the REQUEST authorizer.
631 */
632 IdentityValidationExpression?: StringWithLengthBetween0And1024;
633 /**
634 * The name of the authorizer.
635 */
636 Name: StringWithLengthBetween1And128;
637 /**
638 * For
639 REQUEST authorizer, this is not
640 defined.
641 */
642 ProviderArns?: ProviderArnList;
643 }
644 export type AuthorizerType = "REQUEST"|string;
645 export type ConnectionType = "INTERNET"|"VPC_LINK"|string;
646 export type ContentHandlingStrategy = "CONVERT_TO_BINARY"|"CONVERT_TO_TEXT"|string;
647 export interface CreateApiMappingRequest {
648 /**
649 * The API identifier.
650 */
651 ApiId: Id;
652 ApiMappingKey?: SelectionKey;
653 /**
654 * The domain name.
655 */
656 DomainName: __string;
657 /**
658 * The API stage.
659 */
660 Stage: StringWithLengthBetween1And128;
661 }
662 export interface CreateApiMappingResponse {
663 /**
664 * The API identifier.
665 */
666 ApiId?: Id;
667 /**
668 * The API mapping identifier.
669 */
670 ApiMappingId?: Id;
671 /**
672 * The API mapping key.
673 */
674 ApiMappingKey?: SelectionKey;
675 /**
676 * The API stage.
677 */
678 Stage?: StringWithLengthBetween1And128;
679 }
680 export interface CreateApiRequest {
681 /**
682 * An API key selection expression. See API Key Selection Expressions.
683 */
684 ApiKeySelectionExpression?: SelectionExpression;
685 /**
686 * The description of the API.
687 */
688 Description?: StringWithLengthBetween0And1024;
689 /**
690 * Avoid validating models when creating a deployment.
691 */
692 DisableSchemaValidation?: __boolean;
693 /**
694 * The name of the API.
695 */
696 Name: StringWithLengthBetween1And128;
697 /**
698 * The API protocol: Currently only WEBSOCKET is supported.
699 */
700 ProtocolType: ProtocolType;
701 /**
702 * The route selection expression for the API.
703 */
704 RouteSelectionExpression: SelectionExpression;
705 /**
706 * A version identifier for the API.
707 */
708 Version?: StringWithLengthBetween1And64;
709 /**
710 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
711 */
712 Tags?: Tags;
713 }
714 export interface CreateApiResponse {
715 /**
716 * The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The
717 stage name is typically appended to this URI to form a complete path to a deployed
718 API stage.
719 */
720 ApiEndpoint?: __string;
721 /**
722 * The API ID.
723 */
724 ApiId?: Id;
725 /**
726 * An API key selection expression. See API Key Selection Expressions.
727 */
728 ApiKeySelectionExpression?: SelectionExpression;
729 /**
730 * The timestamp when the API was created.
731 */
732 CreatedDate?: __timestampIso8601;
733 /**
734 * The description of the API.
735 */
736 Description?: StringWithLengthBetween0And1024;
737 /**
738 * Avoid validating models when creating a deployment.
739 */
740 DisableSchemaValidation?: __boolean;
741 /**
742 * The name of the API.
743 */
744 Name?: StringWithLengthBetween1And128;
745 /**
746 * The API protocol: Currently only WEBSOCKET is supported.
747 */
748 ProtocolType?: ProtocolType;
749 /**
750 * The route selection expression for the API.
751 */
752 RouteSelectionExpression?: SelectionExpression;
753 /**
754 * A version identifier for the API.
755 */
756 Version?: StringWithLengthBetween1And64;
757 /**
758 * The warning messages reported when failonwarnings is turned on during
759 API import.
760 */
761 Warnings?: __listOf__string;
762 /**
763 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
764 */
765 Tags?: Tags;
766 }
767 export interface CreateAuthorizerRequest {
768 /**
769 * The API identifier.
770 */
771 ApiId: __string;
772 /**
773 * Specifies the required credentials as an IAM role for API Gateway to invoke the
774 authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon
775 Resource Name (ARN). To use resource-based permissions on the Lambda function,
776 specify null.
777 */
778 AuthorizerCredentialsArn?: Arn;
779 /**
780 * The time to live (TTL), in seconds, of cached authorizer results. If it equals 0,
781 authorization caching is disabled. If it is greater than 0, API Gateway will cache
782 authorizer responses. If this field is not set, the default value is 300. The maximum
783 value is 3600, or 1 hour.
784 */
785 AuthorizerResultTtlInSeconds?: IntegerWithLengthBetween0And3600;
786 /**
787 * The authorizer type. Currently the only valid value is REQUEST, for a
788 Lambda function using incoming request parameters.
789 */
790 AuthorizerType: AuthorizerType;
791 /**
792 * The authorizer's Uniform Resource Identifier (URI). For
793 REQUEST authorizers, this must be a
794 well-formed Lambda function URI, for example,
795 arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations.
796 In general, the URI has this form:
797 arn:aws:apigateway:{region}:lambda:path/{service_api}
798 , where {region} is the same as the region hosting the Lambda
799 function, path indicates that the remaining substring in the URI should be treated as
800 the path to the resource, including the initial /. For Lambda functions,
801 this is usually of the form
802 /2015-03-31/functions/[FunctionARN]/invocations.
803 */
804 AuthorizerUri: UriWithLengthBetween1And2048;
805 /**
806 * The identity source for which authorization is requested.For the REQUEST authorizer, this is required when authorization
807 caching is enabled. The value is a comma-separated string of one or more mapping
808 expressions of the specified request parameters. For example, if an Auth
809 header and a Name query string parameters are defined as identity
810 sources, this value is method.request.header.Auth,
811 method.request.querystring.Name. These parameters will be used to
812 derive the authorization caching key and to perform runtime validation of the
813 REQUEST authorizer by verifying all of the identity-related request
814 parameters are present, not null, and non-empty. Only when this is true does the
815 authorizer invoke the authorizer Lambda function, otherwise, it returns a 401
816 Unauthorized response without calling the Lambda function. The valid value
817 is a string of comma-separated mapping expressions of the specified request
818 parameters. When the authorization caching is not enabled, this property is
819 optional.
820 */
821 IdentitySource: IdentitySourceList;
822 /**
823 * The
824 validation expression does not apply to the REQUEST authorizer.
825 */
826 IdentityValidationExpression?: StringWithLengthBetween0And1024;
827 /**
828 * The name of the authorizer.
829 */
830 Name: StringWithLengthBetween1And128;
831 /**
832 * For
833 REQUEST authorizer, this is not
834 defined.
835 */
836 ProviderArns?: ProviderArnList;
837 }
838 export interface CreateAuthorizerResponse {
839 /**
840 * Specifies the required credentials as an IAM role for API Gateway to invoke the
841 authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon
842 Resource Name (ARN). To use resource-based permissions on the Lambda function,
843 specify null.
844 */
845 AuthorizerCredentialsArn?: Arn;
846 /**
847 * The authorizer identifier.
848 */
849 AuthorizerId?: Id;
850 /**
851 * The time to live (TTL), in seconds, of cached authorizer results. If it equals 0,
852 authorization caching is disabled. If it is greater than 0, API Gateway will cache
853 authorizer responses. If this field is not set, the default value is 300. The maximum
854 value is 3600, or 1 hour.
855 */
856 AuthorizerResultTtlInSeconds?: IntegerWithLengthBetween0And3600;
857 /**
858 * The authorizer type. Currently the only valid value is REQUEST, for a
859 Lambda function using incoming request parameters.
860 */
861 AuthorizerType?: AuthorizerType;
862 /**
863 * The authorizer's Uniform Resource Identifier (URI).
864 ForREQUEST authorizers, this must be a
865 well-formed Lambda function URI, for example,
866 arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations.
867 In general, the URI has this form:
868 arn:aws:apigateway:{region}:lambda:path/{service_api}
869 , where {region} is the same as the region hosting the Lambda
870 function, path indicates that the remaining substring in the URI should be treated as
871 the path to the resource, including the initial /. For Lambda functions,
872 this is usually of the form
873 /2015-03-31/functions/[FunctionARN]/invocations.
874 */
875 AuthorizerUri?: UriWithLengthBetween1And2048;
876 /**
877 * The identity source for which authorization is requested.For the REQUEST authorizer, this is required when authorization
878 caching is enabled. The value is a comma-separated string of one or more mapping
879 expressions of the specified request parameters. For example, if an Auth
880 header and a Name query string parameters are defined as identity
881 sources, this value is method.request.header.Auth,
882 method.request.querystring.Name. These parameters will be used to
883 derive the authorization caching key and to perform runtime validation of the
884 REQUEST authorizer by verifying all of the identity-related request
885 parameters are present, not null, and non-empty. Only when this is true does the
886 authorizer invoke the authorizer Lambda function, otherwise, it returns a 401
887 Unauthorized response without calling the Lambda function. The valid value
888 is a string of comma-separated mapping expressions of the specified request
889 parameters. When the authorization caching is not enabled, this property is
890 optional.
891 */
892 IdentitySource?: IdentitySourceList;
893 /**
894 * The
895 validation expression does not apply to the REQUEST authorizer.
896 */
897 IdentityValidationExpression?: StringWithLengthBetween0And1024;
898 /**
899 * The name of the authorizer.
900 */
901 Name?: StringWithLengthBetween1And128;
902 /**
903 * For
904 REQUEST authorizer, this is not
905 defined.
906 */
907 ProviderArns?: ProviderArnList;
908 }
909 export interface CreateDeploymentRequest {
910 /**
911 * The API identifier.
912 */
913 ApiId: __string;
914 /**
915 * The description for the deployment resource.
916 */
917 Description?: StringWithLengthBetween0And1024;
918 /**
919 * The name of the Stage resource for the Deployment
920 resource to create.
921 */
922 StageName?: StringWithLengthBetween1And128;
923 }
924 export interface CreateDeploymentResponse {
925 /**
926 * The date and time when the Deployment resource was created.
927 */
928 CreatedDate?: __timestampIso8601;
929 /**
930 * The identifier for the deployment.
931 */
932 DeploymentId?: Id;
933 /**
934 * The status of the deployment: PENDING, FAILED, or
935 SUCCEEDED.
936 */
937 DeploymentStatus?: DeploymentStatus;
938 /**
939 * May contain additional feedback on the status of an API deployment.
940 */
941 DeploymentStatusMessage?: __string;
942 /**
943 * The description for the deployment.
944 */
945 Description?: StringWithLengthBetween0And1024;
946 }
947 export interface CreateDomainNameRequest {
948 /**
949 * The domain name.
950 */
951 DomainName: StringWithLengthBetween1And512;
952 /**
953 * The domain name configurations.
954 */
955 DomainNameConfigurations?: DomainNameConfigurations;
956 /**
957 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
958 */
959 Tags?: Tags;
960 }
961 export interface CreateDomainNameResponse {
962 /**
963 * The API mapping selection expression.
964 */
965 ApiMappingSelectionExpression?: SelectionExpression;
966 /**
967 * The name of the DomainName resource.
968 */
969 DomainName?: StringWithLengthBetween1And512;
970 /**
971 * The domain name configurations.
972 */
973 DomainNameConfigurations?: DomainNameConfigurations;
974 /**
975 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
976 */
977 Tags?: Tags;
978 }
979 export interface CreateIntegrationRequest {
980 /**
981 * The API identifier.
982 */
983 ApiId: __string;
984 /**
985 * The connection ID.
986 */
987 ConnectionId?: StringWithLengthBetween1And1024;
988 /**
989 * The type of the network connection to the integration endpoint. Currently the only
990 valid value is INTERNET, for connections through the public routable
991 internet.
992 */
993 ConnectionType?: ConnectionType;
994 /**
995 * Specifies how to handle response payload content type conversions. Supported
996 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
997 following behaviors:
998 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
999 string to the corresponding binary blob.
1000 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
1001 Base64-encoded string.If this property is not defined, the response payload will be passed through from
1002 the integration response to the route response or method response without
1003 modification.
1004 */
1005 ContentHandlingStrategy?: ContentHandlingStrategy;
1006 /**
1007 * Specifies the credentials required for the integration, if any. For AWS
1008 integrations, three options are available. To specify an IAM Role for API Gateway to
1009 assume, use the role's Amazon Resource Name (ARN). To require that the caller's
1010 identity be passed through from the request, specify the string
1011 arn:aws:iam::*:user/*. To use resource-based permissions on supported
1012 AWS services, specify null.
1013 */
1014 CredentialsArn?: Arn;
1015 /**
1016 * The description of the integration.
1017 */
1018 Description?: StringWithLengthBetween0And1024;
1019 /**
1020 * Specifies the integration's HTTP method type.
1021 */
1022 IntegrationMethod?: StringWithLengthBetween1And64;
1023 /**
1024 * The integration type of an integration. One of the following:
1025 AWS: for integrating the route or method request with an AWS service
1026 action, including the Lambda function-invoking action. With the Lambda
1027 function-invoking action, this is referred to as the Lambda custom integration. With
1028 any other AWS service action, this is known as AWS integration.
1029 AWS_PROXY: for integrating the route or method request with the Lambda
1030 function-invoking action with the client request passed through as-is. This
1031 integration is also referred to as Lambda proxy integration.
1032 HTTP: for integrating the route or method request with an HTTP
1033 endpoint. This
1034 integration is also referred to as HTTP custom integration.
1035 HTTP_PROXY: for integrating route or method request with an HTTP
1036 endpoint, with the client
1037 request passed through as-is. This is also referred to as HTTP proxy
1038 integration.
1039 MOCK: for integrating the route or method request with API Gateway as a
1040 "loopback" endpoint without invoking any backend.
1041 */
1042 IntegrationType: IntegrationType;
1043 /**
1044 * For a Lambda proxy integration, this is the URI of the Lambda function.
1045 */
1046 IntegrationUri?: UriWithLengthBetween1And2048;
1047 /**
1048 * Specifies the pass-through behavior for incoming requests based on the
1049 Content-Type header in the request, and the available mapping
1050 templates specified as the requestTemplates property on the
1051 Integration resource. There are three valid values:
1052 WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and
1053 NEVER.
1054 WHEN_NO_MATCH passes the request body for unmapped content types through
1055 to the integration backend without transformation.
1056 NEVER rejects unmapped content types with an HTTP 415 Unsupported
1057 Media Type response.
1058 WHEN_NO_TEMPLATES allows pass-through when the integration has no
1059 content types mapped to templates. However, if there is at least one content type
1060 defined, unmapped content types will be rejected with the same HTTP 415
1061 Unsupported Media Type response.
1062 */
1063 PassthroughBehavior?: PassthroughBehavior;
1064 /**
1065 * A key-value map specifying request parameters that are passed from the method
1066 request to the backend. The key is an integration request parameter name and the
1067 associated value is a method request parameter value or static value that must be
1068 enclosed within single quotes and pre-encoded as required by the backend. The method
1069 request parameter value must match the pattern of
1070 method.request.{location}.{name}
1071 , where
1072 {location}
1073 is querystring, path, or header; and
1074 {name}
1075 must be a valid and unique method request parameter name.
1076 */
1077 RequestParameters?: IntegrationParameters;
1078 /**
1079 * Represents a map of Velocity templates that are applied on the request payload
1080 based on the value of the Content-Type header sent by the client. The content type
1081 value is the key in this map, and the template (as a String) is the value.
1082 */
1083 RequestTemplates?: TemplateMap;
1084 /**
1085 * The template selection expression for the integration.
1086 */
1087 TemplateSelectionExpression?: SelectionExpression;
1088 /**
1089 * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000
1090 milliseconds or 29 seconds.
1091 */
1092 TimeoutInMillis?: IntegerWithLengthBetween50And29000;
1093 }
1094 export interface CreateIntegrationResponse {
1095 /**
1096 * The connection ID.
1097 */
1098 ConnectionId?: StringWithLengthBetween1And1024;
1099 /**
1100 * The type of the network connection to the integration endpoint. Currently the only
1101 valid value is INTERNET, for connections through the public routable
1102 internet.
1103 */
1104 ConnectionType?: ConnectionType;
1105 /**
1106 * Specifies how to handle response payload content type conversions. Supported
1107 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
1108 following behaviors:
1109 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
1110 string to the corresponding binary blob.
1111 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
1112 Base64-encoded string.If this property is not defined, the response payload will be passed through from
1113 the integration response to the route response or method response without
1114 modification.
1115 */
1116 ContentHandlingStrategy?: ContentHandlingStrategy;
1117 /**
1118 * Specifies the credentials required for the integration, if any. For AWS
1119 integrations, three options are available. To specify an IAM Role for API Gateway to
1120 assume, use the role's Amazon Resource Name (ARN). To require that the caller's
1121 identity be passed through from the request, specify the string
1122 arn:aws:iam::*:user/*. To use resource-based permissions on supported
1123 AWS services, specify null.
1124 */
1125 CredentialsArn?: Arn;
1126 /**
1127 * Represents the description of an integration.
1128 */
1129 Description?: StringWithLengthBetween0And1024;
1130 /**
1131 * Represents the identifier of an integration.
1132 */
1133 IntegrationId?: Id;
1134 /**
1135 * Specifies the integration's HTTP method type.
1136 */
1137 IntegrationMethod?: StringWithLengthBetween1And64;
1138 /**
1139 * The integration response selection expression for the integration. See Integration Response Selection Expressions.
1140 */
1141 IntegrationResponseSelectionExpression?: SelectionExpression;
1142 /**
1143 * The integration type of an integration. One of the following:
1144 AWS: for integrating the route or method request with an AWS service
1145 action, including the Lambda function-invoking action. With the Lambda
1146 function-invoking action, this is referred to as the Lambda custom integration. With
1147 any other AWS service action, this is known as AWS integration.
1148 AWS_PROXY: for integrating the route or method request with the Lambda
1149 function-invoking action with the client request passed through as-is. This
1150 integration is also referred to as Lambda proxy integration.
1151 HTTP: for integrating the route or method request with an HTTP
1152 endpoint. This
1153 integration is also referred to as the HTTP custom integration.
1154 HTTP_PROXY: for integrating route or method request with an HTTP
1155 endpoint, with the client
1156 request passed through as-is. This is also referred to as HTTP proxy
1157 integration.
1158 MOCK: for integrating the route or method request with API Gateway as a
1159 "loopback" endpoint without invoking any backend.
1160 */
1161 IntegrationType?: IntegrationType;
1162 /**
1163 * For a Lambda proxy integration, this is the URI of the Lambda function.
1164 */
1165 IntegrationUri?: UriWithLengthBetween1And2048;
1166 /**
1167 * Specifies the pass-through behavior for incoming requests based on the
1168 Content-Type header in the request, and the available mapping
1169 templates specified as the requestTemplates property on the
1170 Integration resource. There are three valid values:
1171 WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and
1172 NEVER.
1173 WHEN_NO_MATCH passes the request body for unmapped content types through
1174 to the integration backend without transformation.
1175 NEVER rejects unmapped content types with an HTTP 415 Unsupported
1176 Media Type response.
1177 WHEN_NO_TEMPLATES allows pass-through when the integration has no
1178 content types mapped to templates. However, if there is at least one content type
1179 defined, unmapped content types will be rejected with the same HTTP 415
1180 Unsupported Media Type response.
1181 */
1182 PassthroughBehavior?: PassthroughBehavior;
1183 /**
1184 * A key-value map specifying request parameters that are passed from the method
1185 request to the backend. The key is an integration request parameter name and the
1186 associated value is a method request parameter value or static value that must be
1187 enclosed within single quotes and pre-encoded as required by the backend. The method
1188 request parameter value must match the pattern of
1189 method.request.{location}.{name}
1190 , where
1191 {location}
1192 is querystring, path, or header; and
1193 {name}
1194 must be a valid and unique method request parameter name.
1195 */
1196 RequestParameters?: IntegrationParameters;
1197 /**
1198 * Represents a map of Velocity templates that are applied on the request payload
1199 based on the value of the Content-Type header sent by the client. The content type
1200 value is the key in this map, and the template (as a String) is the value.
1201 */
1202 RequestTemplates?: TemplateMap;
1203 /**
1204 * The template selection expression for the integration.
1205 */
1206 TemplateSelectionExpression?: SelectionExpression;
1207 /**
1208 * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000
1209 milliseconds or 29 seconds.
1210 */
1211 TimeoutInMillis?: IntegerWithLengthBetween50And29000;
1212 }
1213 export interface CreateIntegrationResponseRequest {
1214 /**
1215 * The API identifier.
1216 */
1217 ApiId: __string;
1218 /**
1219 * Specifies how to handle response payload content type conversions. Supported
1220 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
1221 following behaviors:
1222 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
1223 string to the corresponding binary blob.
1224 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
1225 Base64-encoded string.If this property is not defined, the response payload will be passed through from
1226 the integration response to the route response or method response without
1227 modification.
1228 */
1229 ContentHandlingStrategy?: ContentHandlingStrategy;
1230 /**
1231 * The integration ID.
1232 */
1233 IntegrationId: __string;
1234 /**
1235 * The integration response key.
1236 */
1237 IntegrationResponseKey: SelectionKey;
1238 /**
1239 * A key-value map specifying response parameters that are passed to the method
1240 response from the backend. The key is a method response header parameter name and the
1241 mapped value is an integration response header value, a static value enclosed within
1242 a pair of single quotes, or a JSON expression from the integration response body. The
1243 mapping key must match the pattern of method.response.header.{name},
1244 where {name} is a valid and unique header name. The mapped non-static
1245 value must match the pattern of integration.response.header.{name} or
1246 integration.response.body.{JSON-expression}, where
1247 {name} is a valid and unique response header name and
1248 {JSON-expression} is a valid JSON expression without the $
1249 prefix.
1250 */
1251 ResponseParameters?: IntegrationParameters;
1252 /**
1253 * The collection of response templates for the integration response as a
1254 string-to-string map of key-value pairs. Response templates are represented as a
1255 key/value map, with a content-type as the key and a template as the value.
1256 */
1257 ResponseTemplates?: TemplateMap;
1258 /**
1259 * The template selection expression for the integration response.
1260 */
1261 TemplateSelectionExpression?: SelectionExpression;
1262 }
1263 export interface CreateIntegrationResponseResponse {
1264 /**
1265 * Specifies how to handle response payload content type conversions. Supported
1266 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
1267 following behaviors:
1268 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
1269 string to the corresponding binary blob.
1270 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
1271 Base64-encoded string.If this property is not defined, the response payload will be passed through from
1272 the integration response to the route response or method response without
1273 modification.
1274 */
1275 ContentHandlingStrategy?: ContentHandlingStrategy;
1276 /**
1277 * The integration response ID.
1278 */
1279 IntegrationResponseId?: Id;
1280 /**
1281 * The integration response key.
1282 */
1283 IntegrationResponseKey?: SelectionKey;
1284 /**
1285 * A key-value map specifying response parameters that are passed to the method
1286 response from the backend. The key is a method response header parameter name and the
1287 mapped value is an integration response header value, a static value enclosed within
1288 a pair of single quotes, or a JSON expression from the integration response body. The
1289 mapping key must match the pattern of method.response.header.{name}, where name is a
1290 valid and unique header name. The mapped non-static value must match the pattern of
1291 integration.response.header.{name} or integration.response.body.{JSON-expression},
1292 where name is a valid and unique response header name and JSON-expression is a valid
1293 JSON expression without the $ prefix.
1294 */
1295 ResponseParameters?: IntegrationParameters;
1296 /**
1297 * The collection of response templates for the integration response as a
1298 string-to-string map of key-value pairs. Response templates are represented as a
1299 key/value map, with a content-type as the key and a template as the value.
1300 */
1301 ResponseTemplates?: TemplateMap;
1302 /**
1303 * The template selection expressions for the integration response.
1304 */
1305 TemplateSelectionExpression?: SelectionExpression;
1306 }
1307 export interface CreateModelRequest {
1308 /**
1309 * The API identifier.
1310 */
1311 ApiId: __string;
1312 /**
1313 * The content-type for the model, for example, "application/json".
1314 */
1315 ContentType?: StringWithLengthBetween1And256;
1316 /**
1317 * The description of the model.
1318 */
1319 Description?: StringWithLengthBetween0And1024;
1320 /**
1321 * The name of the model. Must be alphanumeric.
1322 */
1323 Name: StringWithLengthBetween1And128;
1324 /**
1325 * The schema for the model. For application/json models, this should be JSON schema
1326 draft 4 model.
1327 */
1328 Schema: StringWithLengthBetween0And32K;
1329 }
1330 export interface CreateModelResponse {
1331 /**
1332 * The content-type for the model, for example, "application/json".
1333 */
1334 ContentType?: StringWithLengthBetween1And256;
1335 /**
1336 * The description of the model.
1337 */
1338 Description?: StringWithLengthBetween0And1024;
1339 /**
1340 * The model identifier.
1341 */
1342 ModelId?: Id;
1343 /**
1344 * The name of the model. Must be alphanumeric.
1345 */
1346 Name?: StringWithLengthBetween1And128;
1347 /**
1348 * The schema for the model. For application/json models, this should be JSON schema
1349 draft 4 model.
1350 */
1351 Schema?: StringWithLengthBetween0And32K;
1352 }
1353 export interface CreateRouteRequest {
1354 /**
1355 * The API identifier.
1356 */
1357 ApiId: __string;
1358 /**
1359 * Specifies whether an API key is required for the route.
1360 */
1361 ApiKeyRequired?: __boolean;
1362 /**
1363 * The authorization scopes supported by this
1364 route.
1365 */
1366 AuthorizationScopes?: AuthorizationScopes;
1367 /**
1368 * The authorization type for the route. Valid values are NONE for open
1369 access, AWS_IAM for using AWS IAM permissions, and CUSTOM
1370 for using a Lambda
1371 authorizer.
1372 */
1373 AuthorizationType?: AuthorizationType;
1374 /**
1375 * The identifier of the Authorizer resource to be associated with this
1376 route, if the authorizationType is CUSTOM
1377 . The authorizer identifier is generated by API Gateway
1378 when you created the authorizer.
1379 */
1380 AuthorizerId?: Id;
1381 /**
1382 * The model selection expression for the route.
1383 */
1384 ModelSelectionExpression?: SelectionExpression;
1385 /**
1386 * The operation name for the route.
1387 */
1388 OperationName?: StringWithLengthBetween1And64;
1389 /**
1390 * The request models for the route.
1391 */
1392 RequestModels?: RouteModels;
1393 /**
1394 * The request parameters for the route.
1395 */
1396 RequestParameters?: RouteParameters;
1397 /**
1398 * The route key for the route.
1399 */
1400 RouteKey: SelectionKey;
1401 /**
1402 * The route response selection expression for the route.
1403 */
1404 RouteResponseSelectionExpression?: SelectionExpression;
1405 /**
1406 * The target for the route.
1407 */
1408 Target?: StringWithLengthBetween1And128;
1409 }
1410 export interface CreateRouteResponse {
1411 /**
1412 * Specifies whether an API key is required for this route.
1413 */
1414 ApiKeyRequired?: __boolean;
1415 /**
1416 * A list of authorization scopes configured on a route. The scopes are used with a
1417 COGNITO_USER_POOLS authorizer to authorize the method invocation. The authorization
1418 works by matching the route scopes against the scopes parsed from the access token in
1419 the incoming request. The method invocation is authorized if any route scope matches
1420 a claimed scope in the access token. Otherwise, the invocation is not authorized.
1421 When the route scope is configured, the client must provide an access token instead
1422 of an identity token for authorization purposes.
1423 */
1424 AuthorizationScopes?: AuthorizationScopes;
1425 /**
1426 * The authorization type for the route. Valid values are NONE for open
1427 access, AWS_IAM for using AWS IAM permissions, and CUSTOM
1428 for using a Lambda
1429 authorizer
1430 */
1431 AuthorizationType?: AuthorizationType;
1432 /**
1433 * The identifier of the Authorizer resource to be associated with this
1434 route, if the authorizationType is CUSTOM
1435 . The authorizer identifier is generated by API Gateway
1436 when you created the authorizer.
1437 */
1438 AuthorizerId?: Id;
1439 /**
1440 * The model selection expression for the route.
1441 */
1442 ModelSelectionExpression?: SelectionExpression;
1443 /**
1444 * The operation name for the route.
1445 */
1446 OperationName?: StringWithLengthBetween1And64;
1447 /**
1448 * The request models for the route.
1449 */
1450 RequestModels?: RouteModels;
1451 /**
1452 * The request parameters for the route.
1453 */
1454 RequestParameters?: RouteParameters;
1455 /**
1456 * The route ID.
1457 */
1458 RouteId?: Id;
1459 /**
1460 * The route key for the route.
1461 */
1462 RouteKey?: SelectionKey;
1463 /**
1464 * The route response selection expression for the route.
1465 */
1466 RouteResponseSelectionExpression?: SelectionExpression;
1467 /**
1468 * The target for the route.
1469 */
1470 Target?: StringWithLengthBetween1And128;
1471 }
1472 export interface CreateRouteResponseRequest {
1473 /**
1474 * The API identifier.
1475 */
1476 ApiId: __string;
1477 /**
1478 * The model selection expression for the route response.
1479 */
1480 ModelSelectionExpression?: SelectionExpression;
1481 /**
1482 * The response models for the route response.
1483 */
1484 ResponseModels?: RouteModels;
1485 /**
1486 * The route response parameters.
1487 */
1488 ResponseParameters?: RouteParameters;
1489 /**
1490 * The route ID.
1491 */
1492 RouteId: __string;
1493 /**
1494 * The route response key.
1495 */
1496 RouteResponseKey: SelectionKey;
1497 }
1498 export interface CreateRouteResponseResponse {
1499 /**
1500 * Represents the model selection expression of a route response.
1501 */
1502 ModelSelectionExpression?: SelectionExpression;
1503 /**
1504 * Represents the response models of a route response.
1505 */
1506 ResponseModels?: RouteModels;
1507 /**
1508 * Represents the response parameters of a route response.
1509 */
1510 ResponseParameters?: RouteParameters;
1511 /**
1512 * Represents the identifier of a route response.
1513 */
1514 RouteResponseId?: Id;
1515 /**
1516 * Represents the route response key of a route response.
1517 */
1518 RouteResponseKey?: SelectionKey;
1519 }
1520 export interface CreateStageRequest {
1521 /**
1522 * Settings for logging access in this stage.
1523 */
1524 AccessLogSettings?: AccessLogSettings;
1525 /**
1526 * The API identifier.
1527 */
1528 ApiId: __string;
1529 /**
1530 * The identifier of a client certificate for a Stage.
1531 */
1532 ClientCertificateId?: Id;
1533 /**
1534 * The default route settings for the stage.
1535 */
1536 DefaultRouteSettings?: RouteSettings;
1537 /**
1538 * The deployment identifier of the API stage.
1539 */
1540 DeploymentId?: Id;
1541 /**
1542 * The description for the API stage.
1543 */
1544 Description?: StringWithLengthBetween0And1024;
1545 /**
1546 * Route settings for the stage.
1547 */
1548 RouteSettings?: RouteSettingsMap;
1549 /**
1550 * The name of the stage.
1551 */
1552 StageName: StringWithLengthBetween1And128;
1553 /**
1554 * A map that defines the stage variables for a Stage. Variable names
1555 can have alphanumeric and underscore characters, and the values must match
1556 [A-Za-z0-9-._~:/?#&=,]+.
1557 */
1558 StageVariables?: StageVariablesMap;
1559 /**
1560 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
1561 */
1562 Tags?: Tags;
1563 }
1564 export interface CreateStageResponse {
1565 /**
1566 * Settings for logging access in this stage.
1567 */
1568 AccessLogSettings?: AccessLogSettings;
1569 /**
1570 * The identifier of a client certificate for a Stage.
1571 */
1572 ClientCertificateId?: Id;
1573 /**
1574 * The timestamp when the stage was created.
1575 */
1576 CreatedDate?: __timestampIso8601;
1577 /**
1578 * Default route settings for the stage.
1579 */
1580 DefaultRouteSettings?: RouteSettings;
1581 /**
1582 * The identifier of the Deployment that the Stage is
1583 associated with.
1584 */
1585 DeploymentId?: Id;
1586 /**
1587 * The description of the stage.
1588 */
1589 Description?: StringWithLengthBetween0And1024;
1590 /**
1591 * The timestamp when the stage was last updated.
1592 */
1593 LastUpdatedDate?: __timestampIso8601;
1594 /**
1595 * Route settings for the stage.
1596 */
1597 RouteSettings?: RouteSettingsMap;
1598 /**
1599 * The name of the stage.
1600 */
1601 StageName?: StringWithLengthBetween1And128;
1602 /**
1603 * A map that defines the stage variables for a stage resource. Variable names can
1604 have alphanumeric and underscore characters, and the values must match
1605 [A-Za-z0-9-._~:/?#&=,]+.
1606 */
1607 StageVariables?: StageVariablesMap;
1608 /**
1609 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
1610 */
1611 Tags?: Tags;
1612 }
1613 export interface DeleteApiMappingRequest {
1614 /**
1615 * The API mapping identifier.
1616 */
1617 ApiMappingId: __string;
1618 /**
1619 * The domain name.
1620 */
1621 DomainName: __string;
1622 }
1623 export interface DeleteApiRequest {
1624 /**
1625 * The API identifier.
1626 */
1627 ApiId: __string;
1628 }
1629 export interface DeleteAuthorizerRequest {
1630 /**
1631 * The API identifier.
1632 */
1633 ApiId: __string;
1634 /**
1635 * The authorizer identifier.
1636 */
1637 AuthorizerId: __string;
1638 }
1639 export interface DeleteDeploymentRequest {
1640 /**
1641 * The API identifier.
1642 */
1643 ApiId: __string;
1644 /**
1645 * The deployment ID.
1646 */
1647 DeploymentId: __string;
1648 }
1649 export interface DeleteDomainNameRequest {
1650 /**
1651 * The domain name.
1652 */
1653 DomainName: __string;
1654 }
1655 export interface DeleteIntegrationRequest {
1656 /**
1657 * The API identifier.
1658 */
1659 ApiId: __string;
1660 /**
1661 * The integration ID.
1662 */
1663 IntegrationId: __string;
1664 }
1665 export interface DeleteIntegrationResponseRequest {
1666 /**
1667 * The API identifier.
1668 */
1669 ApiId: __string;
1670 /**
1671 * The integration ID.
1672 */
1673 IntegrationId: __string;
1674 /**
1675 * The integration response ID.
1676 */
1677 IntegrationResponseId: __string;
1678 }
1679 export interface DeleteModelRequest {
1680 /**
1681 * The API identifier.
1682 */
1683 ApiId: __string;
1684 /**
1685 * The model ID.
1686 */
1687 ModelId: __string;
1688 }
1689 export interface DeleteRouteRequest {
1690 /**
1691 * The API identifier.
1692 */
1693 ApiId: __string;
1694 /**
1695 * The route ID.
1696 */
1697 RouteId: __string;
1698 }
1699 export interface DeleteRouteResponseRequest {
1700 /**
1701 * The API identifier.
1702 */
1703 ApiId: __string;
1704 /**
1705 * The route ID.
1706 */
1707 RouteId: __string;
1708 /**
1709 * The route response ID.
1710 */
1711 RouteResponseId: __string;
1712 }
1713 export interface DeleteStageRequest {
1714 /**
1715 * The API identifier.
1716 */
1717 ApiId: __string;
1718 /**
1719 * The stage name.
1720 */
1721 StageName: __string;
1722 }
1723 export interface Deployment {
1724 /**
1725 * The date and time when the Deployment resource was created.
1726 */
1727 CreatedDate?: __timestampIso8601;
1728 /**
1729 * The identifier for the deployment.
1730 */
1731 DeploymentId?: Id;
1732 /**
1733 * The status of the deployment: PENDING, FAILED, or
1734 SUCCEEDED.
1735 */
1736 DeploymentStatus?: DeploymentStatus;
1737 /**
1738 * May contain additional feedback on the status of an API deployment.
1739 */
1740 DeploymentStatusMessage?: __string;
1741 /**
1742 * The description for the deployment.
1743 */
1744 Description?: StringWithLengthBetween0And1024;
1745 }
1746 export type DeploymentStatus = "PENDING"|"FAILED"|"DEPLOYED"|string;
1747 export interface DomainName {
1748 /**
1749 * The API mapping selection expression.
1750 */
1751 ApiMappingSelectionExpression?: SelectionExpression;
1752 /**
1753 * The name of the DomainName resource.
1754 */
1755 DomainName: StringWithLengthBetween1And512;
1756 /**
1757 * The domain name configurations.
1758 */
1759 DomainNameConfigurations?: DomainNameConfigurations;
1760 /**
1761 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
1762 */
1763 Tags?: Tags;
1764 }
1765 export interface DomainNameConfiguration {
1766 /**
1767 * A domain name for the WebSocket API.
1768 */
1769 ApiGatewayDomainName?: __string;
1770 /**
1771 * An AWS-managed certificate that will be used by the edge-optimized endpoint for
1772 this domain name. AWS Certificate Manager is the only supported source.
1773 */
1774 CertificateArn?: Arn;
1775 /**
1776 * The user-friendly name of the certificate that will be used by the edge-optimized
1777 endpoint for this domain name.
1778 */
1779 CertificateName?: StringWithLengthBetween1And128;
1780 /**
1781 * The timestamp when the certificate that was used by edge-optimized endpoint for
1782 this domain name was uploaded.
1783 */
1784 CertificateUploadDate?: __timestampIso8601;
1785 /**
1786 * The endpoint type.
1787 */
1788 EndpointType?: EndpointType;
1789 /**
1790 * The Amazon Route 53 Hosted Zone ID of the endpoint.
1791 */
1792 HostedZoneId?: __string;
1793 /**
1794 * 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.
1795 */
1796 SecurityPolicy?: SecurityPolicy;
1797 /**
1798 * The status of the domain name migration. The valid values are AVAILABLE and UPDATING. 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.
1799 */
1800 DomainNameStatus?: DomainNameStatus;
1801 /**
1802 * An optional text message containing detailed information about status of the domain name migration.
1803 */
1804 DomainNameStatusMessage?: __string;
1805 }
1806 export type DomainNameConfigurations = DomainNameConfiguration[];
1807 export type EndpointType = "REGIONAL"|"EDGE"|string;
1808 export type SecurityPolicy = "TLS_1_0"|"TLS_1_2"|string;
1809 export type DomainNameStatus = "AVAILABLE"|"UPDATING"|string;
1810 export interface GetApiMappingRequest {
1811 /**
1812 * The API mapping identifier.
1813 */
1814 ApiMappingId: __string;
1815 /**
1816 * The domain name.
1817 */
1818 DomainName: __string;
1819 }
1820 export interface GetApiMappingResponse {
1821 /**
1822 * The API identifier.
1823 */
1824 ApiId?: Id;
1825 /**
1826 * The API mapping identifier.
1827 */
1828 ApiMappingId?: Id;
1829 /**
1830 * The API mapping key.
1831 */
1832 ApiMappingKey?: SelectionKey;
1833 /**
1834 * The API stage.
1835 */
1836 Stage?: StringWithLengthBetween1And128;
1837 }
1838 export interface GetApiMappingsRequest {
1839 /**
1840 * The domain name.
1841 */
1842 DomainName: __string;
1843 /**
1844 * The maximum number of elements to be returned for this resource.
1845 */
1846 MaxResults?: __string;
1847 /**
1848 * The next page of elements from this collection. Not valid for the last element of
1849 the collection.
1850 */
1851 NextToken?: __string;
1852 }
1853 export interface GetApiMappingsResponse {
1854 /**
1855 * The elements from this collection.
1856 */
1857 Items?: __listOfApiMapping;
1858 /**
1859 * The next page of elements from this collection. Not valid for the last element of
1860 the collection.
1861 */
1862 NextToken?: NextToken;
1863 }
1864 export interface GetApiRequest {
1865 /**
1866 * The API identifier.
1867 */
1868 ApiId: __string;
1869 }
1870 export interface GetApiResponse {
1871 /**
1872 * The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The
1873 stage name is typically appended to this URI to form a complete path to a deployed
1874 API stage.
1875 */
1876 ApiEndpoint?: __string;
1877 /**
1878 * The API ID.
1879 */
1880 ApiId?: Id;
1881 /**
1882 * An API key selection expression. See API Key Selection Expressions.
1883 */
1884 ApiKeySelectionExpression?: SelectionExpression;
1885 /**
1886 * The timestamp when the API was created.
1887 */
1888 CreatedDate?: __timestampIso8601;
1889 /**
1890 * The description of the API.
1891 */
1892 Description?: StringWithLengthBetween0And1024;
1893 /**
1894 * Avoid validating models when creating a deployment.
1895 */
1896 DisableSchemaValidation?: __boolean;
1897 /**
1898 * The name of the API.
1899 */
1900 Name?: StringWithLengthBetween1And128;
1901 /**
1902 * The API protocol: Currently only WEBSOCKET is supported.
1903 */
1904 ProtocolType?: ProtocolType;
1905 /**
1906 * The route selection expression for the API.
1907 */
1908 RouteSelectionExpression?: SelectionExpression;
1909 /**
1910 * A version identifier for the API.
1911 */
1912 Version?: StringWithLengthBetween1And64;
1913 /**
1914 * The warning messages reported when failonwarnings is turned on during
1915 API import.
1916 */
1917 Warnings?: __listOf__string;
1918 /**
1919 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
1920 */
1921 Tags?: Tags;
1922 }
1923 export interface GetApisRequest {
1924 /**
1925 * The maximum number of elements to be returned for this resource.
1926 */
1927 MaxResults?: __string;
1928 /**
1929 * The next page of elements from this collection. Not valid for the last element of
1930 the collection.
1931 */
1932 NextToken?: __string;
1933 }
1934 export interface GetApisResponse {
1935 /**
1936 * The elements from this collection.
1937 */
1938 Items?: __listOfApi;
1939 /**
1940 * The next page of elements from this collection. Not valid for the last element of
1941 the collection.
1942 */
1943 NextToken?: NextToken;
1944 }
1945 export interface GetAuthorizerRequest {
1946 /**
1947 * The API identifier.
1948 */
1949 ApiId: __string;
1950 /**
1951 * The authorizer identifier.
1952 */
1953 AuthorizerId: __string;
1954 }
1955 export interface GetAuthorizerResponse {
1956 /**
1957 * Specifies the required credentials as an IAM role for API Gateway to invoke the
1958 authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon
1959 Resource Name (ARN). To use resource-based permissions on the Lambda function,
1960 specify null.
1961 */
1962 AuthorizerCredentialsArn?: Arn;
1963 /**
1964 * The authorizer identifier.
1965 */
1966 AuthorizerId?: Id;
1967 /**
1968 * The time to live (TTL), in seconds, of cached authorizer results. If it equals 0,
1969 authorization caching is disabled. If it is greater than 0, API Gateway will cache
1970 authorizer responses. If this field is not set, the default value is 300. The maximum
1971 value is 3600, or 1 hour.
1972 */
1973 AuthorizerResultTtlInSeconds?: IntegerWithLengthBetween0And3600;
1974 /**
1975 * The authorizer type. Currently the only valid value is REQUEST, for a
1976 Lambda function using incoming request parameters.
1977 */
1978 AuthorizerType?: AuthorizerType;
1979 /**
1980 * The authorizer's Uniform Resource Identifier (URI).
1981 ForREQUEST authorizers, this must be a
1982 well-formed Lambda function URI, for example,
1983 arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations.
1984 In general, the URI has this form:
1985 arn:aws:apigateway:{region}:lambda:path/{service_api}
1986 , where {region} is the same as the region hosting the Lambda
1987 function, path indicates that the remaining substring in the URI should be treated as
1988 the path to the resource, including the initial /. For Lambda functions,
1989 this is usually of the form
1990 /2015-03-31/functions/[FunctionARN]/invocations.
1991 */
1992 AuthorizerUri?: UriWithLengthBetween1And2048;
1993 /**
1994 * The identity source for which authorization is requested.For the REQUEST authorizer, this is required when authorization
1995 caching is enabled. The value is a comma-separated string of one or more mapping
1996 expressions of the specified request parameters. For example, if an Auth
1997 header and a Name query string parameters are defined as identity
1998 sources, this value is method.request.header.Auth,
1999 method.request.querystring.Name. These parameters will be used to
2000 derive the authorization caching key and to perform runtime validation of the
2001 REQUEST authorizer by verifying all of the identity-related request
2002 parameters are present, not null, and non-empty. Only when this is true does the
2003 authorizer invoke the authorizer Lambda function, otherwise, it returns a 401
2004 Unauthorized response without calling the Lambda function. The valid value
2005 is a string of comma-separated mapping expressions of the specified request
2006 parameters. When the authorization caching is not enabled, this property is
2007 optional.
2008 */
2009 IdentitySource?: IdentitySourceList;
2010 /**
2011 * The
2012 validation expression does not apply to the REQUEST authorizer.
2013 */
2014 IdentityValidationExpression?: StringWithLengthBetween0And1024;
2015 /**
2016 * The name of the authorizer.
2017 */
2018 Name?: StringWithLengthBetween1And128;
2019 /**
2020 * For
2021 REQUEST authorizer, this is not
2022 defined.
2023 */
2024 ProviderArns?: ProviderArnList;
2025 }
2026 export interface GetAuthorizersRequest {
2027 /**
2028 * The API identifier.
2029 */
2030 ApiId: __string;
2031 /**
2032 * The maximum number of elements to be returned for this resource.
2033 */
2034 MaxResults?: __string;
2035 /**
2036 * The next page of elements from this collection. Not valid for the last element of
2037 the collection.
2038 */
2039 NextToken?: __string;
2040 }
2041 export interface GetAuthorizersResponse {
2042 /**
2043 * The elements from this collection.
2044 */
2045 Items?: __listOfAuthorizer;
2046 /**
2047 * The next page of elements from this collection. Not valid for the last element of
2048 the collection.
2049 */
2050 NextToken?: NextToken;
2051 }
2052 export interface GetDeploymentRequest {
2053 /**
2054 * The API identifier.
2055 */
2056 ApiId: __string;
2057 /**
2058 * The deployment ID.
2059 */
2060 DeploymentId: __string;
2061 }
2062 export interface GetDeploymentResponse {
2063 /**
2064 * The date and time when the Deployment resource was created.
2065 */
2066 CreatedDate?: __timestampIso8601;
2067 /**
2068 * The identifier for the deployment.
2069 */
2070 DeploymentId?: Id;
2071 /**
2072 * The status of the deployment: PENDING, FAILED, or
2073 SUCCEEDED.
2074 */
2075 DeploymentStatus?: DeploymentStatus;
2076 /**
2077 * May contain additional feedback on the status of an API deployment.
2078 */
2079 DeploymentStatusMessage?: __string;
2080 /**
2081 * The description for the deployment.
2082 */
2083 Description?: StringWithLengthBetween0And1024;
2084 }
2085 export interface GetDeploymentsRequest {
2086 /**
2087 * The API identifier.
2088 */
2089 ApiId: __string;
2090 /**
2091 * The maximum number of elements to be returned for this resource.
2092 */
2093 MaxResults?: __string;
2094 /**
2095 * The next page of elements from this collection. Not valid for the last element of
2096 the collection.
2097 */
2098 NextToken?: __string;
2099 }
2100 export interface GetDeploymentsResponse {
2101 /**
2102 * The elements from this collection.
2103 */
2104 Items?: __listOfDeployment;
2105 /**
2106 * The next page of elements from this collection. Not valid for the last element of
2107 the collection.
2108 */
2109 NextToken?: NextToken;
2110 }
2111 export interface GetDomainNameRequest {
2112 /**
2113 * The domain name.
2114 */
2115 DomainName: __string;
2116 }
2117 export interface GetDomainNameResponse {
2118 /**
2119 * The API mapping selection expression.
2120 */
2121 ApiMappingSelectionExpression?: SelectionExpression;
2122 /**
2123 * The name of the DomainName resource.
2124 */
2125 DomainName?: StringWithLengthBetween1And512;
2126 /**
2127 * The domain name configurations.
2128 */
2129 DomainNameConfigurations?: DomainNameConfigurations;
2130 /**
2131 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
2132 */
2133 Tags?: Tags;
2134 }
2135 export interface GetDomainNamesRequest {
2136 /**
2137 * The maximum number of elements to be returned for this resource.
2138 */
2139 MaxResults?: __string;
2140 /**
2141 * The next page of elements from this collection. Not valid for the last element of
2142 the collection.
2143 */
2144 NextToken?: __string;
2145 }
2146 export interface GetDomainNamesResponse {
2147 /**
2148 * The elements from this collection.
2149 */
2150 Items?: __listOfDomainName;
2151 /**
2152 * The next page of elements from this collection. Not valid for the last element of
2153 the collection.
2154 */
2155 NextToken?: NextToken;
2156 }
2157 export interface GetIntegrationRequest {
2158 /**
2159 * The API identifier.
2160 */
2161 ApiId: __string;
2162 /**
2163 * The integration ID.
2164 */
2165 IntegrationId: __string;
2166 }
2167 export interface GetIntegrationResponse {
2168 /**
2169 * The connection ID.
2170 */
2171 ConnectionId?: StringWithLengthBetween1And1024;
2172 /**
2173 * The type of the network connection to the integration endpoint. Currently the only
2174 valid value is INTERNET, for connections through the public routable
2175 internet.
2176 */
2177 ConnectionType?: ConnectionType;
2178 /**
2179 * Specifies how to handle response payload content type conversions. Supported
2180 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
2181 following behaviors:
2182 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
2183 string to the corresponding binary blob.
2184 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
2185 Base64-encoded string.If this property is not defined, the response payload will be passed through from
2186 the integration response to the route response or method response without
2187 modification.
2188 */
2189 ContentHandlingStrategy?: ContentHandlingStrategy;
2190 /**
2191 * Specifies the credentials required for the integration, if any. For AWS
2192 integrations, three options are available. To specify an IAM Role for API Gateway to
2193 assume, use the role's Amazon Resource Name (ARN). To require that the caller's
2194 identity be passed through from the request, specify the string
2195 arn:aws:iam::*:user/*. To use resource-based permissions on supported
2196 AWS services, specify null.
2197 */
2198 CredentialsArn?: Arn;
2199 /**
2200 * Represents the description of an integration.
2201 */
2202 Description?: StringWithLengthBetween0And1024;
2203 /**
2204 * Represents the identifier of an integration.
2205 */
2206 IntegrationId?: Id;
2207 /**
2208 * Specifies the integration's HTTP method type.
2209 */
2210 IntegrationMethod?: StringWithLengthBetween1And64;
2211 /**
2212 * The integration response selection expression for the integration. See Integration Response Selection Expressions.
2213 */
2214 IntegrationResponseSelectionExpression?: SelectionExpression;
2215 /**
2216 * The integration type of an integration. One of the following:
2217 AWS: for integrating the route or method request with an AWS service
2218 action, including the Lambda function-invoking action. With the Lambda
2219 function-invoking action, this is referred to as the Lambda custom integration. With
2220 any other AWS service action, this is known as AWS integration.
2221 AWS_PROXY: for integrating the route or method request with the Lambda
2222 function-invoking action with the client request passed through as-is. This
2223 integration is also referred to as Lambda proxy integration.
2224 HTTP: for integrating the route or method request with an HTTP
2225 endpoint. This
2226 integration is also referred to as the HTTP custom integration.
2227 HTTP_PROXY: for integrating route or method request with an HTTP
2228 endpoint, with the client
2229 request passed through as-is. This is also referred to as HTTP proxy
2230 integration.
2231 MOCK: for integrating the route or method request with API Gateway as a
2232 "loopback" endpoint without invoking any backend.
2233 */
2234 IntegrationType?: IntegrationType;
2235 /**
2236 * For a Lambda proxy integration, this is the URI of the Lambda function.
2237 */
2238 IntegrationUri?: UriWithLengthBetween1And2048;
2239 /**
2240 * Specifies the pass-through behavior for incoming requests based on the
2241 Content-Type header in the request, and the available mapping
2242 templates specified as the requestTemplates property on the
2243 Integration resource. There are three valid values:
2244 WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and
2245 NEVER.
2246 WHEN_NO_MATCH passes the request body for unmapped content types through
2247 to the integration backend without transformation.
2248 NEVER rejects unmapped content types with an HTTP 415 Unsupported
2249 Media Type response.
2250 WHEN_NO_TEMPLATES allows pass-through when the integration has no
2251 content types mapped to templates. However, if there is at least one content type
2252 defined, unmapped content types will be rejected with the same HTTP 415
2253 Unsupported Media Type response.
2254 */
2255 PassthroughBehavior?: PassthroughBehavior;
2256 /**
2257 * A key-value map specifying request parameters that are passed from the method
2258 request to the backend. The key is an integration request parameter name and the
2259 associated value is a method request parameter value or static value that must be
2260 enclosed within single quotes and pre-encoded as required by the backend. The method
2261 request parameter value must match the pattern of
2262 method.request.{location}.{name}
2263 , where
2264 {location}
2265 is querystring, path, or header; and
2266 {name}
2267 must be a valid and unique method request parameter name.
2268 */
2269 RequestParameters?: IntegrationParameters;
2270 /**
2271 * Represents a map of Velocity templates that are applied on the request payload
2272 based on the value of the Content-Type header sent by the client. The content type
2273 value is the key in this map, and the template (as a String) is the value.
2274 */
2275 RequestTemplates?: TemplateMap;
2276 /**
2277 * The template selection expression for the integration.
2278 */
2279 TemplateSelectionExpression?: SelectionExpression;
2280 /**
2281 * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000
2282 milliseconds or 29 seconds.
2283 */
2284 TimeoutInMillis?: IntegerWithLengthBetween50And29000;
2285 }
2286 export interface GetIntegrationResponseRequest {
2287 /**
2288 * The API identifier.
2289 */
2290 ApiId: __string;
2291 /**
2292 * The integration ID.
2293 */
2294 IntegrationId: __string;
2295 /**
2296 * The integration response ID.
2297 */
2298 IntegrationResponseId: __string;
2299 }
2300 export interface GetIntegrationResponseResponse {
2301 /**
2302 * Specifies how to handle response payload content type conversions. Supported
2303 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
2304 following behaviors:
2305 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
2306 string to the corresponding binary blob.
2307 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
2308 Base64-encoded string.If this property is not defined, the response payload will be passed through from
2309 the integration response to the route response or method response without
2310 modification.
2311 */
2312 ContentHandlingStrategy?: ContentHandlingStrategy;
2313 /**
2314 * The integration response ID.
2315 */
2316 IntegrationResponseId?: Id;
2317 /**
2318 * The integration response key.
2319 */
2320 IntegrationResponseKey?: SelectionKey;
2321 /**
2322 * A key-value map specifying response parameters that are passed to the method
2323 response from the backend. The key is a method response header parameter name and the
2324 mapped value is an integration response header value, a static value enclosed within
2325 a pair of single quotes, or a JSON expression from the integration response body. The
2326 mapping key must match the pattern of method.response.header.{name}, where name is a
2327 valid and unique header name. The mapped non-static value must match the pattern of
2328 integration.response.header.{name} or integration.response.body.{JSON-expression},
2329 where name is a valid and unique response header name and JSON-expression is a valid
2330 JSON expression without the $ prefix.
2331 */
2332 ResponseParameters?: IntegrationParameters;
2333 /**
2334 * The collection of response templates for the integration response as a
2335 string-to-string map of key-value pairs. Response templates are represented as a
2336 key/value map, with a content-type as the key and a template as the value.
2337 */
2338 ResponseTemplates?: TemplateMap;
2339 /**
2340 * The template selection expressions for the integration response.
2341 */
2342 TemplateSelectionExpression?: SelectionExpression;
2343 }
2344 export interface GetIntegrationResponsesRequest {
2345 /**
2346 * The API identifier.
2347 */
2348 ApiId: __string;
2349 /**
2350 * The integration ID.
2351 */
2352 IntegrationId: __string;
2353 /**
2354 * The maximum number of elements to be returned for this resource.
2355 */
2356 MaxResults?: __string;
2357 /**
2358 * The next page of elements from this collection. Not valid for the last element of
2359 the collection.
2360 */
2361 NextToken?: __string;
2362 }
2363 export interface GetIntegrationResponsesResponse {
2364 /**
2365 * The elements from this collection.
2366 */
2367 Items?: __listOfIntegrationResponse;
2368 /**
2369 * The next page of elements from this collection. Not valid for the last element of
2370 the collection.
2371 */
2372 NextToken?: NextToken;
2373 }
2374 export interface GetIntegrationsRequest {
2375 /**
2376 * The API identifier.
2377 */
2378 ApiId: __string;
2379 /**
2380 * The maximum number of elements to be returned for this resource.
2381 */
2382 MaxResults?: __string;
2383 /**
2384 * The next page of elements from this collection. Not valid for the last element of
2385 the collection.
2386 */
2387 NextToken?: __string;
2388 }
2389 export interface GetIntegrationsResponse {
2390 /**
2391 * The elements from this collection.
2392 */
2393 Items?: __listOfIntegration;
2394 /**
2395 * The next page of elements from this collection. Not valid for the last element of
2396 the collection.
2397 */
2398 NextToken?: NextToken;
2399 }
2400 export interface GetModelRequest {
2401 /**
2402 * The API identifier.
2403 */
2404 ApiId: __string;
2405 /**
2406 * The model ID.
2407 */
2408 ModelId: __string;
2409 }
2410 export interface GetModelResponse {
2411 /**
2412 * The content-type for the model, for example, "application/json".
2413 */
2414 ContentType?: StringWithLengthBetween1And256;
2415 /**
2416 * The description of the model.
2417 */
2418 Description?: StringWithLengthBetween0And1024;
2419 /**
2420 * The model identifier.
2421 */
2422 ModelId?: Id;
2423 /**
2424 * The name of the model. Must be alphanumeric.
2425 */
2426 Name?: StringWithLengthBetween1And128;
2427 /**
2428 * The schema for the model. For application/json models, this should be JSON schema
2429 draft 4 model.
2430 */
2431 Schema?: StringWithLengthBetween0And32K;
2432 }
2433 export interface GetModelTemplateRequest {
2434 /**
2435 * The API identifier.
2436 */
2437 ApiId: __string;
2438 /**
2439 * The model ID.
2440 */
2441 ModelId: __string;
2442 }
2443 export interface GetModelTemplateResponse {
2444 /**
2445 * The template value.
2446 */
2447 Value?: __string;
2448 }
2449 export interface GetModelsRequest {
2450 /**
2451 * The API identifier.
2452 */
2453 ApiId: __string;
2454 /**
2455 * The maximum number of elements to be returned for this resource.
2456 */
2457 MaxResults?: __string;
2458 /**
2459 * The next page of elements from this collection. Not valid for the last element of
2460 the collection.
2461 */
2462 NextToken?: __string;
2463 }
2464 export interface GetModelsResponse {
2465 /**
2466 * The elements from this collection.
2467 */
2468 Items?: __listOfModel;
2469 /**
2470 * The next page of elements from this collection. Not valid for the last element of
2471 the collection.
2472 */
2473 NextToken?: NextToken;
2474 }
2475 export interface GetRouteRequest {
2476 /**
2477 * The API identifier.
2478 */
2479 ApiId: __string;
2480 /**
2481 * The route ID.
2482 */
2483 RouteId: __string;
2484 }
2485 export interface GetRouteResponse {
2486 /**
2487 * Specifies whether an API key is required for this route.
2488 */
2489 ApiKeyRequired?: __boolean;
2490 /**
2491 * A list of authorization scopes configured on a route. The scopes are used with a
2492 COGNITO_USER_POOLS authorizer to authorize the method invocation. The authorization
2493 works by matching the route scopes against the scopes parsed from the access token in
2494 the incoming request. The method invocation is authorized if any route scope matches
2495 a claimed scope in the access token. Otherwise, the invocation is not authorized.
2496 When the route scope is configured, the client must provide an access token instead
2497 of an identity token for authorization purposes.
2498 */
2499 AuthorizationScopes?: AuthorizationScopes;
2500 /**
2501 * The authorization type for the route. Valid values are NONE for open
2502 access, AWS_IAM for using AWS IAM permissions, and CUSTOM
2503 for using a Lambda
2504 authorizer
2505 */
2506 AuthorizationType?: AuthorizationType;
2507 /**
2508 * The identifier of the Authorizer resource to be associated with this
2509 route, if the authorizationType is CUSTOM
2510 . The authorizer identifier is generated by API Gateway
2511 when you created the authorizer.
2512 */
2513 AuthorizerId?: Id;
2514 /**
2515 * The model selection expression for the route.
2516 */
2517 ModelSelectionExpression?: SelectionExpression;
2518 /**
2519 * The operation name for the route.
2520 */
2521 OperationName?: StringWithLengthBetween1And64;
2522 /**
2523 * The request models for the route.
2524 */
2525 RequestModels?: RouteModels;
2526 /**
2527 * The request parameters for the route.
2528 */
2529 RequestParameters?: RouteParameters;
2530 /**
2531 * The route ID.
2532 */
2533 RouteId?: Id;
2534 /**
2535 * The route key for the route.
2536 */
2537 RouteKey?: SelectionKey;
2538 /**
2539 * The route response selection expression for the route.
2540 */
2541 RouteResponseSelectionExpression?: SelectionExpression;
2542 /**
2543 * The target for the route.
2544 */
2545 Target?: StringWithLengthBetween1And128;
2546 }
2547 export interface GetRouteResponseRequest {
2548 /**
2549 * The API identifier.
2550 */
2551 ApiId: __string;
2552 /**
2553 * The route ID.
2554 */
2555 RouteId: __string;
2556 /**
2557 * The route response ID.
2558 */
2559 RouteResponseId: __string;
2560 }
2561 export interface GetRouteResponseResponse {
2562 /**
2563 * Represents the model selection expression of a route response.
2564 */
2565 ModelSelectionExpression?: SelectionExpression;
2566 /**
2567 * Represents the response models of a route response.
2568 */
2569 ResponseModels?: RouteModels;
2570 /**
2571 * Represents the response parameters of a route response.
2572 */
2573 ResponseParameters?: RouteParameters;
2574 /**
2575 * Represents the identifier of a route response.
2576 */
2577 RouteResponseId?: Id;
2578 /**
2579 * Represents the route response key of a route response.
2580 */
2581 RouteResponseKey?: SelectionKey;
2582 }
2583 export interface GetRouteResponsesRequest {
2584 /**
2585 * The API identifier.
2586 */
2587 ApiId: __string;
2588 /**
2589 * The maximum number of elements to be returned for this resource.
2590 */
2591 MaxResults?: __string;
2592 /**
2593 * The next page of elements from this collection. Not valid for the last element of
2594 the collection.
2595 */
2596 NextToken?: __string;
2597 /**
2598 * The route ID.
2599 */
2600 RouteId: __string;
2601 }
2602 export interface GetRouteResponsesResponse {
2603 /**
2604 * The elements from this collection.
2605 */
2606 Items?: __listOfRouteResponse;
2607 /**
2608 * The next page of elements from this collection. Not valid for the last element of
2609 the collection.
2610 */
2611 NextToken?: NextToken;
2612 }
2613 export interface GetRoutesRequest {
2614 /**
2615 * The API identifier.
2616 */
2617 ApiId: __string;
2618 /**
2619 * The maximum number of elements to be returned for this resource.
2620 */
2621 MaxResults?: __string;
2622 /**
2623 * The next page of elements from this collection. Not valid for the last element of
2624 the collection.
2625 */
2626 NextToken?: __string;
2627 }
2628 export interface GetRoutesResponse {
2629 /**
2630 * The elements from this collection.
2631 */
2632 Items?: __listOfRoute;
2633 /**
2634 * The next page of elements from this collection. Not valid for the last element of
2635 the collection.
2636 */
2637 NextToken?: NextToken;
2638 }
2639 export interface GetStageRequest {
2640 /**
2641 * The API identifier.
2642 */
2643 ApiId: __string;
2644 /**
2645 * The stage name.
2646 */
2647 StageName: __string;
2648 }
2649 export interface GetStageResponse {
2650 /**
2651 * Settings for logging access in this stage.
2652 */
2653 AccessLogSettings?: AccessLogSettings;
2654 /**
2655 * The identifier of a client certificate for a Stage.
2656 */
2657 ClientCertificateId?: Id;
2658 /**
2659 * The timestamp when the stage was created.
2660 */
2661 CreatedDate?: __timestampIso8601;
2662 /**
2663 * Default route settings for the stage.
2664 */
2665 DefaultRouteSettings?: RouteSettings;
2666 /**
2667 * The identifier of the Deployment that the Stage is
2668 associated with.
2669 */
2670 DeploymentId?: Id;
2671 /**
2672 * The description of the stage.
2673 */
2674 Description?: StringWithLengthBetween0And1024;
2675 /**
2676 * The timestamp when the stage was last updated.
2677 */
2678 LastUpdatedDate?: __timestampIso8601;
2679 /**
2680 * Route settings for the stage.
2681 */
2682 RouteSettings?: RouteSettingsMap;
2683 /**
2684 * The name of the stage.
2685 */
2686 StageName?: StringWithLengthBetween1And128;
2687 /**
2688 * A map that defines the stage variables for a stage resource. Variable names can
2689 have alphanumeric and underscore characters, and the values must match
2690 [A-Za-z0-9-._~:/?#&=,]+.
2691 */
2692 StageVariables?: StageVariablesMap;
2693 /**
2694 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
2695 */
2696 Tags?: Tags;
2697 }
2698 export interface GetStagesRequest {
2699 /**
2700 * The API identifier.
2701 */
2702 ApiId: __string;
2703 /**
2704 * The maximum number of elements to be returned for this resource.
2705 */
2706 MaxResults?: __string;
2707 /**
2708 * The next page of elements from this collection. Not valid for the last element of
2709 the collection.
2710 */
2711 NextToken?: __string;
2712 }
2713 export interface GetStagesResponse {
2714 /**
2715 * The elements from this collection.
2716 */
2717 Items?: __listOfStage;
2718 /**
2719 * The next page of elements from this collection. Not valid for the last element of
2720 the collection.
2721 */
2722 NextToken?: NextToken;
2723 }
2724 export type Id = string;
2725 export type IdentitySourceList = __string[];
2726 export type IntegerWithLengthBetween0And3600 = number;
2727 export type IntegerWithLengthBetween50And29000 = number;
2728 export interface Integration {
2729 /**
2730 * The connection ID.
2731 */
2732 ConnectionId?: StringWithLengthBetween1And1024;
2733 /**
2734 * The type of the network connection to the integration endpoint. Currently the only
2735 valid value is INTERNET, for connections through the public routable
2736 internet.
2737 */
2738 ConnectionType?: ConnectionType;
2739 /**
2740 * Specifies how to handle response payload content type conversions. Supported
2741 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
2742 following behaviors:
2743 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
2744 string to the corresponding binary blob.
2745 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
2746 Base64-encoded string.If this property is not defined, the response payload will be passed through from
2747 the integration response to the route response or method response without
2748 modification.
2749 */
2750 ContentHandlingStrategy?: ContentHandlingStrategy;
2751 /**
2752 * Specifies the credentials required for the integration, if any. For AWS
2753 integrations, three options are available. To specify an IAM Role for API Gateway to
2754 assume, use the role's Amazon Resource Name (ARN). To require that the caller's
2755 identity be passed through from the request, specify the string
2756 arn:aws:iam::*:user/*. To use resource-based permissions on supported
2757 AWS services, specify null.
2758 */
2759 CredentialsArn?: Arn;
2760 /**
2761 * Represents the description of an integration.
2762 */
2763 Description?: StringWithLengthBetween0And1024;
2764 /**
2765 * Represents the identifier of an integration.
2766 */
2767 IntegrationId?: Id;
2768 /**
2769 * Specifies the integration's HTTP method type.
2770 */
2771 IntegrationMethod?: StringWithLengthBetween1And64;
2772 /**
2773 * The integration response selection expression for the integration. See Integration Response Selection Expressions.
2774 */
2775 IntegrationResponseSelectionExpression?: SelectionExpression;
2776 /**
2777 * The integration type of an integration. One of the following:
2778 AWS: for integrating the route or method request with an AWS service
2779 action, including the Lambda function-invoking action. With the Lambda
2780 function-invoking action, this is referred to as the Lambda custom integration. With
2781 any other AWS service action, this is known as AWS integration.
2782 AWS_PROXY: for integrating the route or method request with the Lambda
2783 function-invoking action with the client request passed through as-is. This
2784 integration is also referred to as Lambda proxy integration.
2785 HTTP: for integrating the route or method request with an HTTP
2786 endpoint. This
2787 integration is also referred to as the HTTP custom integration.
2788 HTTP_PROXY: for integrating route or method request with an HTTP
2789 endpoint, with the client
2790 request passed through as-is. This is also referred to as HTTP proxy
2791 integration.
2792 MOCK: for integrating the route or method request with API Gateway as a
2793 "loopback" endpoint without invoking any backend.
2794 */
2795 IntegrationType?: IntegrationType;
2796 /**
2797 * For a Lambda proxy integration, this is the URI of the Lambda function.
2798 */
2799 IntegrationUri?: UriWithLengthBetween1And2048;
2800 /**
2801 * Specifies the pass-through behavior for incoming requests based on the
2802 Content-Type header in the request, and the available mapping
2803 templates specified as the requestTemplates property on the
2804 Integration resource. There are three valid values:
2805 WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and
2806 NEVER.
2807 WHEN_NO_MATCH passes the request body for unmapped content types through
2808 to the integration backend without transformation.
2809 NEVER rejects unmapped content types with an HTTP 415 Unsupported
2810 Media Type response.
2811 WHEN_NO_TEMPLATES allows pass-through when the integration has no
2812 content types mapped to templates. However, if there is at least one content type
2813 defined, unmapped content types will be rejected with the same HTTP 415
2814 Unsupported Media Type response.
2815 */
2816 PassthroughBehavior?: PassthroughBehavior;
2817 /**
2818 * A key-value map specifying request parameters that are passed from the method
2819 request to the backend. The key is an integration request parameter name and the
2820 associated value is a method request parameter value or static value that must be
2821 enclosed within single quotes and pre-encoded as required by the backend. The method
2822 request parameter value must match the pattern of
2823 method.request.{location}.{name}
2824 , where
2825 {location}
2826 is querystring, path, or header; and
2827 {name}
2828 must be a valid and unique method request parameter name.
2829 */
2830 RequestParameters?: IntegrationParameters;
2831 /**
2832 * Represents a map of Velocity templates that are applied on the request payload
2833 based on the value of the Content-Type header sent by the client. The content type
2834 value is the key in this map, and the template (as a String) is the value.
2835 */
2836 RequestTemplates?: TemplateMap;
2837 /**
2838 * The template selection expression for the integration.
2839 */
2840 TemplateSelectionExpression?: SelectionExpression;
2841 /**
2842 * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000
2843 milliseconds or 29 seconds.
2844 */
2845 TimeoutInMillis?: IntegerWithLengthBetween50And29000;
2846 }
2847 export type IntegrationParameters = {[key: string]: StringWithLengthBetween1And512};
2848 export interface IntegrationResponse {
2849 /**
2850 * Specifies how to handle response payload content type conversions. Supported
2851 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
2852 following behaviors:
2853 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
2854 string to the corresponding binary blob.
2855 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
2856 Base64-encoded string.If this property is not defined, the response payload will be passed through from
2857 the integration response to the route response or method response without
2858 modification.
2859 */
2860 ContentHandlingStrategy?: ContentHandlingStrategy;
2861 /**
2862 * The integration response ID.
2863 */
2864 IntegrationResponseId?: Id;
2865 /**
2866 * The integration response key.
2867 */
2868 IntegrationResponseKey: SelectionKey;
2869 /**
2870 * A key-value map specifying response parameters that are passed to the method
2871 response from the backend. The key is a method response header parameter name and the
2872 mapped value is an integration response header value, a static value enclosed within
2873 a pair of single quotes, or a JSON expression from the integration response body. The
2874 mapping key must match the pattern of method.response.header.{name}, where name is a
2875 valid and unique header name. The mapped non-static value must match the pattern of
2876 integration.response.header.{name} or integration.response.body.{JSON-expression},
2877 where name is a valid and unique response header name and JSON-expression is a valid
2878 JSON expression without the $ prefix.
2879 */
2880 ResponseParameters?: IntegrationParameters;
2881 /**
2882 * The collection of response templates for the integration response as a
2883 string-to-string map of key-value pairs. Response templates are represented as a
2884 key/value map, with a content-type as the key and a template as the value.
2885 */
2886 ResponseTemplates?: TemplateMap;
2887 /**
2888 * The template selection expressions for the integration response.
2889 */
2890 TemplateSelectionExpression?: SelectionExpression;
2891 }
2892 export type IntegrationType = "AWS"|"HTTP"|"MOCK"|"HTTP_PROXY"|"AWS_PROXY"|string;
2893 export interface GetTagsRequest {
2894 ResourceArn: __string;
2895 }
2896 export interface GetTagsResponse {
2897 Tags?: __mapOf__string;
2898 }
2899 export type LoggingLevel = "ERROR"|"INFO"|"false"|string;
2900 export interface Model {
2901 /**
2902 * The content-type for the model, for example, "application/json".
2903 */
2904 ContentType?: StringWithLengthBetween1And256;
2905 /**
2906 * The description of the model.
2907 */
2908 Description?: StringWithLengthBetween0And1024;
2909 /**
2910 * The model identifier.
2911 */
2912 ModelId?: Id;
2913 /**
2914 * The name of the model. Must be alphanumeric.
2915 */
2916 Name: StringWithLengthBetween1And128;
2917 /**
2918 * The schema for the model. For application/json models, this should be JSON schema
2919 draft 4 model.
2920 */
2921 Schema?: StringWithLengthBetween0And32K;
2922 }
2923 export type NextToken = string;
2924 export interface ParameterConstraints {
2925 /**
2926 * Whether or not the parameter is required.
2927 */
2928 Required?: __boolean;
2929 }
2930 export type PassthroughBehavior = "WHEN_NO_MATCH"|"NEVER"|"WHEN_NO_TEMPLATES"|string;
2931 export type ProtocolType = "WEBSOCKET"|string;
2932 export type ProviderArnList = Arn[];
2933 export interface Route {
2934 /**
2935 * Specifies whether an API key is required for this route.
2936 */
2937 ApiKeyRequired?: __boolean;
2938 /**
2939 * A list of authorization scopes configured on a route. The scopes are used with a
2940 COGNITO_USER_POOLS authorizer to authorize the method invocation. The authorization
2941 works by matching the route scopes against the scopes parsed from the access token in
2942 the incoming request. The method invocation is authorized if any route scope matches
2943 a claimed scope in the access token. Otherwise, the invocation is not authorized.
2944 When the route scope is configured, the client must provide an access token instead
2945 of an identity token for authorization purposes.
2946 */
2947 AuthorizationScopes?: AuthorizationScopes;
2948 /**
2949 * The authorization type for the route. Valid values are NONE for open
2950 access, AWS_IAM for using AWS IAM permissions, and CUSTOM
2951 for using a Lambda
2952 authorizer
2953 */
2954 AuthorizationType?: AuthorizationType;
2955 /**
2956 * The identifier of the Authorizer resource to be associated with this
2957 route, if the authorizationType is CUSTOM
2958 . The authorizer identifier is generated by API Gateway
2959 when you created the authorizer.
2960 */
2961 AuthorizerId?: Id;
2962 /**
2963 * The model selection expression for the route.
2964 */
2965 ModelSelectionExpression?: SelectionExpression;
2966 /**
2967 * The operation name for the route.
2968 */
2969 OperationName?: StringWithLengthBetween1And64;
2970 /**
2971 * The request models for the route.
2972 */
2973 RequestModels?: RouteModels;
2974 /**
2975 * The request parameters for the route.
2976 */
2977 RequestParameters?: RouteParameters;
2978 /**
2979 * The route ID.
2980 */
2981 RouteId?: Id;
2982 /**
2983 * The route key for the route.
2984 */
2985 RouteKey: SelectionKey;
2986 /**
2987 * The route response selection expression for the route.
2988 */
2989 RouteResponseSelectionExpression?: SelectionExpression;
2990 /**
2991 * The target for the route.
2992 */
2993 Target?: StringWithLengthBetween1And128;
2994 }
2995 export type RouteModels = {[key: string]: StringWithLengthBetween1And128};
2996 export type RouteParameters = {[key: string]: ParameterConstraints};
2997 export interface RouteResponse {
2998 /**
2999 * Represents the model selection expression of a route response.
3000 */
3001 ModelSelectionExpression?: SelectionExpression;
3002 /**
3003 * Represents the response models of a route response.
3004 */
3005 ResponseModels?: RouteModels;
3006 /**
3007 * Represents the response parameters of a route response.
3008 */
3009 ResponseParameters?: RouteParameters;
3010 /**
3011 * Represents the identifier of a route response.
3012 */
3013 RouteResponseId?: Id;
3014 /**
3015 * Represents the route response key of a route response.
3016 */
3017 RouteResponseKey: SelectionKey;
3018 }
3019 export interface RouteSettings {
3020 /**
3021 * Specifies whether (true) or not (false) data trace
3022 logging is enabled for this route. This property affects the log entries pushed to
3023 Amazon CloudWatch Logs.
3024 */
3025 DataTraceEnabled?: __boolean;
3026 /**
3027 * Specifies whether detailed metrics are enabled.
3028 */
3029 DetailedMetricsEnabled?: __boolean;
3030 /**
3031 * Specifies the logging level for this route: DEBUG, INFO,
3032 or WARN. This property affects the log entries pushed to Amazon
3033 CloudWatch Logs.
3034 */
3035 LoggingLevel?: LoggingLevel;
3036 /**
3037 * Specifies the throttling burst limit.
3038 */
3039 ThrottlingBurstLimit?: __integer;
3040 /**
3041 * Specifies the throttling rate limit.
3042 */
3043 ThrottlingRateLimit?: __double;
3044 }
3045 export type RouteSettingsMap = {[key: string]: RouteSettings};
3046 export type SelectionExpression = string;
3047 export type SelectionKey = string;
3048 export interface Stage {
3049 /**
3050 * Settings for logging access in this stage.
3051 */
3052 AccessLogSettings?: AccessLogSettings;
3053 /**
3054 * The identifier of a client certificate for a Stage.
3055 */
3056 ClientCertificateId?: Id;
3057 /**
3058 * The timestamp when the stage was created.
3059 */
3060 CreatedDate?: __timestampIso8601;
3061 /**
3062 * Default route settings for the stage.
3063 */
3064 DefaultRouteSettings?: RouteSettings;
3065 /**
3066 * The identifier of the Deployment that the Stage is
3067 associated with.
3068 */
3069 DeploymentId?: Id;
3070 /**
3071 * The description of the stage.
3072 */
3073 Description?: StringWithLengthBetween0And1024;
3074 /**
3075 * The timestamp when the stage was last updated.
3076 */
3077 LastUpdatedDate?: __timestampIso8601;
3078 /**
3079 * Route settings for the stage.
3080 */
3081 RouteSettings?: RouteSettingsMap;
3082 /**
3083 * The name of the stage.
3084 */
3085 StageName: StringWithLengthBetween1And128;
3086 /**
3087 * A map that defines the stage variables for a stage resource. Variable names can
3088 have alphanumeric and underscore characters, and the values must match
3089 [A-Za-z0-9-._~:/?#&=,]+.
3090 */
3091 StageVariables?: StageVariablesMap;
3092 /**
3093 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
3094 */
3095 Tags?: Tags;
3096 }
3097 export type StageVariablesMap = {[key: string]: StringWithLengthBetween0And2048};
3098 export type StringWithLengthBetween0And1024 = string;
3099 export type StringWithLengthBetween0And2048 = string;
3100 export type StringWithLengthBetween0And32K = string;
3101 export type StringWithLengthBetween1And1024 = string;
3102 export type StringWithLengthBetween1And128 = string;
3103 export type StringWithLengthBetween1And256 = string;
3104 export type StringWithLengthBetween1And512 = string;
3105 export type StringWithLengthBetween1And64 = string;
3106 export type StringWithLengthBetween1And1600 = string;
3107 export interface TagResourceRequest {
3108 /**
3109 * AWS resource arn
3110 */
3111 ResourceArn: __string;
3112 /**
3113 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
3114 */
3115 Tags?: Tags;
3116 }
3117 export interface TagResourceResponse {
3118 }
3119 export type Tags = {[key: string]: StringWithLengthBetween1And1600};
3120 export interface UntagResourceRequest {
3121 /**
3122 * AWS resource arn
3123 */
3124 ResourceArn: __string;
3125 /**
3126 * The Tag keys to delete
3127 */
3128 TagKeys: __listOf__string;
3129 }
3130 export type TemplateMap = {[key: string]: StringWithLengthBetween0And32K};
3131 export interface UpdateApiMappingRequest {
3132 /**
3133 * The API identifier.
3134 */
3135 ApiId: Id;
3136 /**
3137 * The API mapping identifier.
3138 */
3139 ApiMappingId: __string;
3140 /**
3141 * The API mapping key.
3142 */
3143 ApiMappingKey?: SelectionKey;
3144 /**
3145 * The domain name.
3146 */
3147 DomainName: __string;
3148 /**
3149 * The API stage.
3150 */
3151 Stage?: StringWithLengthBetween1And128;
3152 }
3153 export interface UpdateApiMappingResponse {
3154 /**
3155 * The API identifier.
3156 */
3157 ApiId?: Id;
3158 /**
3159 * The API mapping identifier.
3160 */
3161 ApiMappingId?: Id;
3162 /**
3163 * The API mapping key.
3164 */
3165 ApiMappingKey?: SelectionKey;
3166 /**
3167 * The API stage.
3168 */
3169 Stage?: StringWithLengthBetween1And128;
3170 }
3171 export interface UpdateApiRequest {
3172 /**
3173 * The API identifier.
3174 */
3175 ApiId: __string;
3176 /**
3177 * An API key selection expression. See API Key Selection Expressions.
3178 */
3179 ApiKeySelectionExpression?: SelectionExpression;
3180 /**
3181 * The description of the API.
3182 */
3183 Description?: StringWithLengthBetween0And1024;
3184 /**
3185 * Avoid validating models when creating a deployment.
3186 */
3187 DisableSchemaValidation?: __boolean;
3188 /**
3189 * The name of the API.
3190 */
3191 Name?: StringWithLengthBetween1And128;
3192 /**
3193 * The route selection expression for the API.
3194 */
3195 RouteSelectionExpression?: SelectionExpression;
3196 /**
3197 * A version identifier for the API.
3198 */
3199 Version?: StringWithLengthBetween1And64;
3200 }
3201 export interface UpdateApiResponse {
3202 /**
3203 * The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The
3204 stage name is typically appended to this URI to form a complete path to a deployed
3205 API stage.
3206 */
3207 ApiEndpoint?: __string;
3208 /**
3209 * The API ID.
3210 */
3211 ApiId?: Id;
3212 /**
3213 * An API key selection expression. See API Key Selection Expressions.
3214 */
3215 ApiKeySelectionExpression?: SelectionExpression;
3216 /**
3217 * The timestamp when the API was created.
3218 */
3219 CreatedDate?: __timestampIso8601;
3220 /**
3221 * The description of the API.
3222 */
3223 Description?: StringWithLengthBetween0And1024;
3224 /**
3225 * Avoid validating models when creating a deployment.
3226 */
3227 DisableSchemaValidation?: __boolean;
3228 /**
3229 * The name of the API.
3230 */
3231 Name?: StringWithLengthBetween1And128;
3232 /**
3233 * The API protocol: Currently only WEBSOCKET is supported.
3234 */
3235 ProtocolType?: ProtocolType;
3236 /**
3237 * The route selection expression for the API.
3238 */
3239 RouteSelectionExpression?: SelectionExpression;
3240 /**
3241 * A version identifier for the API.
3242 */
3243 Version?: StringWithLengthBetween1And64;
3244 /**
3245 * The warning messages reported when failonwarnings is turned on during
3246 API import.
3247 */
3248 Warnings?: __listOf__string;
3249 /**
3250 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
3251 */
3252 Tags?: Tags;
3253 }
3254 export interface UpdateAuthorizerRequest {
3255 /**
3256 * The API identifier.
3257 */
3258 ApiId: __string;
3259 /**
3260 * Specifies the required credentials as an IAM role for API Gateway to invoke the
3261 authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon
3262 Resource Name (ARN). To use resource-based permissions on the Lambda function,
3263 specify null.
3264 */
3265 AuthorizerCredentialsArn?: Arn;
3266 /**
3267 * The authorizer identifier.
3268 */
3269 AuthorizerId: __string;
3270 /**
3271 * The time to live (TTL), in seconds, of cached authorizer results. If it is zero,
3272 authorization caching is disabled. If it is greater than zero, API Gateway will cache
3273 authorizer responses. If this field is not set, the default value is 300. The maximum
3274 value is 3600, or 1 hour.
3275 */
3276 AuthorizerResultTtlInSeconds?: IntegerWithLengthBetween0And3600;
3277 /**
3278 * The authorizer type. Currently the only valid value is REQUEST, for a
3279 Lambda function using incoming request parameters.
3280 */
3281 AuthorizerType?: AuthorizerType;
3282 /**
3283 * The authorizer's Uniform Resource Identifier (URI). For
3284 REQUEST authorizers, this must be a
3285 well-formed Lambda function URI, for example,
3286 arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations.
3287 In general, the URI has this form:
3288 arn:aws:apigateway:{region}:lambda:path/{service_api}
3289 , where {region} is the same as the region hosting the Lambda
3290 function, path indicates that the remaining substring in the URI should be treated as
3291 the path to the resource, including the initial /. For Lambda functions,
3292 this is usually of the form
3293 /2015-03-31/functions/[FunctionARN]/invocations.
3294 */
3295 AuthorizerUri?: UriWithLengthBetween1And2048;
3296 /**
3297 * The identity source for which authorization is requested.For the REQUEST authorizer, this is required when authorization
3298 caching is enabled. The value is a comma-separated string of one or more mapping
3299 expressions of the specified request parameters. For example, if an Auth header, a
3300 Name query string parameter are defined as identity sources, this value is
3301 $method.request.header.Auth, $method.request.querystring.Name. These
3302 parameters will be used to derive the authorization caching key and to perform
3303 runtime validation of the REQUEST authorizer by verifying all of the
3304 identity-related request parameters are present, not null and non-empty. Only when
3305 this is true does the authorizer invoke the authorizer Lambda function, otherwise, it
3306 returns a 401 Unauthorized response without calling the Lambda function.
3307 The valid value is a string of comma-separated mapping expressions of the specified
3308 request parameters. When the authorization caching is not enabled, this property is
3309 optional.
3310 */
3311 IdentitySource?: IdentitySourceList;
3312 /**
3313 * The
3314 validation expression does not apply to the REQUEST authorizer.
3315 */
3316 IdentityValidationExpression?: StringWithLengthBetween0And1024;
3317 /**
3318 * The name of the authorizer.
3319 */
3320 Name?: StringWithLengthBetween1And128;
3321 /**
3322 * For
3323 REQUEST authorizer, this is not
3324 defined.
3325 */
3326 ProviderArns?: ProviderArnList;
3327 }
3328 export interface UpdateAuthorizerResponse {
3329 /**
3330 * Specifies the required credentials as an IAM role for API Gateway to invoke the
3331 authorizer. To specify an IAM role for API Gateway to assume, use the role's Amazon
3332 Resource Name (ARN). To use resource-based permissions on the Lambda function,
3333 specify null.
3334 */
3335 AuthorizerCredentialsArn?: Arn;
3336 /**
3337 * The authorizer identifier.
3338 */
3339 AuthorizerId?: Id;
3340 /**
3341 * The time to live (TTL), in seconds, of cached authorizer results. If it equals 0,
3342 authorization caching is disabled. If it is greater than 0, API Gateway will cache
3343 authorizer responses. If this field is not set, the default value is 300. The maximum
3344 value is 3600, or 1 hour.
3345 */
3346 AuthorizerResultTtlInSeconds?: IntegerWithLengthBetween0And3600;
3347 /**
3348 * The authorizer type. Currently the only valid value is REQUEST, for a
3349 Lambda function using incoming request parameters.
3350 */
3351 AuthorizerType?: AuthorizerType;
3352 /**
3353 * The authorizer's Uniform Resource Identifier (URI).
3354 ForREQUEST authorizers, this must be a
3355 well-formed Lambda function URI, for example,
3356 arn:aws:apigateway:us-west-2:lambda:path/2015-03-31/functions/arn:aws:lambda:us-west-2:{account_id}:function:{lambda_function_name}/invocations.
3357 In general, the URI has this form:
3358 arn:aws:apigateway:{region}:lambda:path/{service_api}
3359 , where {region} is the same as the region hosting the Lambda
3360 function, path indicates that the remaining substring in the URI should be treated as
3361 the path to the resource, including the initial /. For Lambda functions,
3362 this is usually of the form
3363 /2015-03-31/functions/[FunctionARN]/invocations.
3364 */
3365 AuthorizerUri?: UriWithLengthBetween1And2048;
3366 /**
3367 * The identity source for which authorization is requested.For the REQUEST authorizer, this is required when authorization
3368 caching is enabled. The value is a comma-separated string of one or more mapping
3369 expressions of the specified request parameters. For example, if an Auth
3370 header and a Name query string parameters are defined as identity
3371 sources, this value is method.request.header.Auth,
3372 method.request.querystring.Name. These parameters will be used to
3373 derive the authorization caching key and to perform runtime validation of the
3374 REQUEST authorizer by verifying all of the identity-related request
3375 parameters are present, not null, and non-empty. Only when this is true does the
3376 authorizer invoke the authorizer Lambda function, otherwise, it returns a 401
3377 Unauthorized response without calling the Lambda function. The valid value
3378 is a string of comma-separated mapping expressions of the specified request
3379 parameters. When the authorization caching is not enabled, this property is
3380 optional.
3381 */
3382 IdentitySource?: IdentitySourceList;
3383 /**
3384 * The
3385 validation expression does not apply to the REQUEST authorizer.
3386 */
3387 IdentityValidationExpression?: StringWithLengthBetween0And1024;
3388 /**
3389 * The name of the authorizer.
3390 */
3391 Name?: StringWithLengthBetween1And128;
3392 /**
3393 * For
3394 REQUEST authorizer, this is not
3395 defined.
3396 */
3397 ProviderArns?: ProviderArnList;
3398 }
3399 export interface UpdateDeploymentRequest {
3400 /**
3401 * The API identifier.
3402 */
3403 ApiId: __string;
3404 /**
3405 * The deployment ID.
3406 */
3407 DeploymentId: __string;
3408 /**
3409 * The description for the deployment resource.
3410 */
3411 Description?: StringWithLengthBetween0And1024;
3412 }
3413 export interface UpdateDeploymentResponse {
3414 /**
3415 * The date and time when the Deployment resource was created.
3416 */
3417 CreatedDate?: __timestampIso8601;
3418 /**
3419 * The identifier for the deployment.
3420 */
3421 DeploymentId?: Id;
3422 /**
3423 * The status of the deployment: PENDING, FAILED, or
3424 SUCCEEDED.
3425 */
3426 DeploymentStatus?: DeploymentStatus;
3427 /**
3428 * May contain additional feedback on the status of an API deployment.
3429 */
3430 DeploymentStatusMessage?: __string;
3431 /**
3432 * The description for the deployment.
3433 */
3434 Description?: StringWithLengthBetween0And1024;
3435 }
3436 export interface UpdateDomainNameRequest {
3437 /**
3438 * The domain name.
3439 */
3440 DomainName: __string;
3441 /**
3442 * The domain name configurations.
3443 */
3444 DomainNameConfigurations?: DomainNameConfigurations;
3445 }
3446 export interface UpdateDomainNameResponse {
3447 /**
3448 * The API mapping selection expression.
3449 */
3450 ApiMappingSelectionExpression?: SelectionExpression;
3451 /**
3452 * The name of the DomainName resource.
3453 */
3454 DomainName?: StringWithLengthBetween1And512;
3455 /**
3456 * The domain name configurations.
3457 */
3458 DomainNameConfigurations?: DomainNameConfigurations;
3459 /**
3460 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
3461 */
3462 Tags?: Tags;
3463 }
3464 export interface UpdateIntegrationRequest {
3465 /**
3466 * The API identifier.
3467 */
3468 ApiId: __string;
3469 /**
3470 * The connection ID.
3471 */
3472 ConnectionId?: StringWithLengthBetween1And1024;
3473 /**
3474 * The type of the network connection to the integration endpoint. Currently the only
3475 valid value is INTERNET, for connections through the public routable
3476 internet.
3477 */
3478 ConnectionType?: ConnectionType;
3479 /**
3480 * Specifies how to handle response payload content type conversions. Supported
3481 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
3482 following behaviors:
3483 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
3484 string to the corresponding binary blob.
3485 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
3486 Base64-encoded string.If this property is not defined, the response payload will be passed through from
3487 the integration response to the route response or method response without
3488 modification.
3489 */
3490 ContentHandlingStrategy?: ContentHandlingStrategy;
3491 /**
3492 * Specifies the credentials required for the integration, if any. For AWS
3493 integrations, three options are available. To specify an IAM Role for API Gateway to
3494 assume, use the role's Amazon Resource Name (ARN). To require that the caller's
3495 identity be passed through from the request, specify the string
3496 arn:aws:iam::*:user/*. To use resource-based permissions on supported
3497 AWS services, specify null.
3498 */
3499 CredentialsArn?: Arn;
3500 /**
3501 * The description of the integration
3502 */
3503 Description?: StringWithLengthBetween0And1024;
3504 /**
3505 * The integration ID.
3506 */
3507 IntegrationId: __string;
3508 /**
3509 * Specifies the integration's HTTP method type.
3510 */
3511 IntegrationMethod?: StringWithLengthBetween1And64;
3512 /**
3513 * The integration type of an integration. One of the following:
3514 AWS: for integrating the route or method request with an AWS service
3515 action, including the Lambda function-invoking action. With the Lambda
3516 function-invoking action, this is referred to as the Lambda custom integration. With
3517 any other AWS service action, this is known as AWS integration.
3518 AWS_PROXY: for integrating the route or method request with the Lambda
3519 function-invoking action with the client request passed through as-is. This
3520 integration is also referred to as Lambda proxy integration.
3521 HTTP: for integrating the route or method request with an HTTP
3522 endpoint. This
3523 integration is also referred to as the HTTP custom integration.
3524 HTTP_PROXY: for integrating route or method request with an HTTP
3525 endpoint, with the client
3526 request passed through as-is. This is also referred to as HTTP proxy
3527 integration.
3528 MOCK: for integrating the route or method request with API Gateway as a
3529 "loopback" endpoint without invoking any backend.
3530 */
3531 IntegrationType?: IntegrationType;
3532 /**
3533 * For a Lambda proxy integration, this is the URI of the Lambda function.
3534 */
3535 IntegrationUri?: UriWithLengthBetween1And2048;
3536 /**
3537 * Specifies the pass-through behavior for incoming requests based on the
3538 Content-Type header in the request, and the available mapping
3539 templates specified as the requestTemplates property on the
3540 Integration resource. There are three valid values:
3541 WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and
3542 NEVER.
3543 WHEN_NO_MATCH passes the request body for unmapped content types through
3544 to the integration backend without transformation.
3545 NEVER rejects unmapped content types with an HTTP 415 Unsupported
3546 Media Type response.
3547 WHEN_NO_TEMPLATES allows pass-through when the integration has no
3548 content types mapped to templates. However, if there is at least one content type
3549 defined, unmapped content types will be rejected with the same HTTP 415
3550 Unsupported Media Type response.
3551 */
3552 PassthroughBehavior?: PassthroughBehavior;
3553 /**
3554 * A key-value map specifying request parameters that are passed from the method
3555 request to the backend. The key is an integration request parameter name and the
3556 associated value is a method request parameter value or static value that must be
3557 enclosed within single quotes and pre-encoded as required by the backend. The method
3558 request parameter value must match the pattern of
3559 method.request.{location}.{name}
3560 , where
3561 {location}
3562 is querystring, path, or header; and
3563 {name}
3564 must be a valid and unique method request parameter name.
3565 */
3566 RequestParameters?: IntegrationParameters;
3567 /**
3568 * Represents a map of Velocity templates that are applied on the request payload
3569 based on the value of the Content-Type header sent by the client. The content type
3570 value is the key in this map, and the template (as a String) is the value.
3571 */
3572 RequestTemplates?: TemplateMap;
3573 /**
3574 * The template selection expression for the integration.
3575 */
3576 TemplateSelectionExpression?: SelectionExpression;
3577 /**
3578 * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000
3579 milliseconds or 29 seconds.
3580 */
3581 TimeoutInMillis?: IntegerWithLengthBetween50And29000;
3582 }
3583 export interface UpdateIntegrationResponse {
3584 /**
3585 * The connection ID.
3586 */
3587 ConnectionId?: StringWithLengthBetween1And1024;
3588 /**
3589 * The type of the network connection to the integration endpoint. Currently the only
3590 valid value is INTERNET, for connections through the public routable
3591 internet.
3592 */
3593 ConnectionType?: ConnectionType;
3594 /**
3595 * Specifies how to handle response payload content type conversions. Supported
3596 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
3597 following behaviors:
3598 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
3599 string to the corresponding binary blob.
3600 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
3601 Base64-encoded string.If this property is not defined, the response payload will be passed through from
3602 the integration response to the route response or method response without
3603 modification.
3604 */
3605 ContentHandlingStrategy?: ContentHandlingStrategy;
3606 /**
3607 * Specifies the credentials required for the integration, if any. For AWS
3608 integrations, three options are available. To specify an IAM Role for API Gateway to
3609 assume, use the role's Amazon Resource Name (ARN). To require that the caller's
3610 identity be passed through from the request, specify the string
3611 arn:aws:iam::*:user/*. To use resource-based permissions on supported
3612 AWS services, specify null.
3613 */
3614 CredentialsArn?: Arn;
3615 /**
3616 * Represents the description of an integration.
3617 */
3618 Description?: StringWithLengthBetween0And1024;
3619 /**
3620 * Represents the identifier of an integration.
3621 */
3622 IntegrationId?: Id;
3623 /**
3624 * Specifies the integration's HTTP method type.
3625 */
3626 IntegrationMethod?: StringWithLengthBetween1And64;
3627 /**
3628 * The integration response selection expression for the integration. See Integration Response Selection Expressions.
3629 */
3630 IntegrationResponseSelectionExpression?: SelectionExpression;
3631 /**
3632 * The integration type of an integration. One of the following:
3633 AWS: for integrating the route or method request with an AWS service
3634 action, including the Lambda function-invoking action. With the Lambda
3635 function-invoking action, this is referred to as the Lambda custom integration. With
3636 any other AWS service action, this is known as AWS integration.
3637 AWS_PROXY: for integrating the route or method request with the Lambda
3638 function-invoking action with the client request passed through as-is. This
3639 integration is also referred to as Lambda proxy integration.
3640 HTTP: for integrating the route or method request with an HTTP
3641 endpoint. This
3642 integration is also referred to as the HTTP custom integration.
3643 HTTP_PROXY: for integrating route or method request with an HTTP
3644 endpoint, with the client
3645 request passed through as-is. This is also referred to as HTTP proxy
3646 integration.
3647 MOCK: for integrating the route or method request with API Gateway as a
3648 "loopback" endpoint without invoking any backend.
3649 */
3650 IntegrationType?: IntegrationType;
3651 /**
3652 * For a Lambda proxy integration, this is the URI of the Lambda function.
3653 */
3654 IntegrationUri?: UriWithLengthBetween1And2048;
3655 /**
3656 * Specifies the pass-through behavior for incoming requests based on the
3657 Content-Type header in the request, and the available mapping
3658 templates specified as the requestTemplates property on the
3659 Integration resource. There are three valid values:
3660 WHEN_NO_MATCH, WHEN_NO_TEMPLATES, and
3661 NEVER.
3662 WHEN_NO_MATCH passes the request body for unmapped content types through
3663 to the integration backend without transformation.
3664 NEVER rejects unmapped content types with an HTTP 415 Unsupported
3665 Media Type response.
3666 WHEN_NO_TEMPLATES allows pass-through when the integration has no
3667 content types mapped to templates. However, if there is at least one content type
3668 defined, unmapped content types will be rejected with the same HTTP 415
3669 Unsupported Media Type response.
3670 */
3671 PassthroughBehavior?: PassthroughBehavior;
3672 /**
3673 * A key-value map specifying request parameters that are passed from the method
3674 request to the backend. The key is an integration request parameter name and the
3675 associated value is a method request parameter value or static value that must be
3676 enclosed within single quotes and pre-encoded as required by the backend. The method
3677 request parameter value must match the pattern of
3678 method.request.{location}.{name}
3679 , where
3680 {location}
3681 is querystring, path, or header; and
3682 {name}
3683 must be a valid and unique method request parameter name.
3684 */
3685 RequestParameters?: IntegrationParameters;
3686 /**
3687 * Represents a map of Velocity templates that are applied on the request payload
3688 based on the value of the Content-Type header sent by the client. The content type
3689 value is the key in this map, and the template (as a String) is the value.
3690 */
3691 RequestTemplates?: TemplateMap;
3692 /**
3693 * The template selection expression for the integration.
3694 */
3695 TemplateSelectionExpression?: SelectionExpression;
3696 /**
3697 * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000
3698 milliseconds or 29 seconds.
3699 */
3700 TimeoutInMillis?: IntegerWithLengthBetween50And29000;
3701 }
3702 export interface UpdateIntegrationResponseRequest {
3703 /**
3704 * The API identifier.
3705 */
3706 ApiId: __string;
3707 /**
3708 * Specifies how to handle response payload content type conversions. Supported
3709 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
3710 following behaviors:
3711 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
3712 string to the corresponding binary blob.
3713 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
3714 Base64-encoded string.If this property is not defined, the response payload will be passed through from
3715 the integration response to the route response or method response without
3716 modification.
3717 */
3718 ContentHandlingStrategy?: ContentHandlingStrategy;
3719 /**
3720 * The integration ID.
3721 */
3722 IntegrationId: __string;
3723 /**
3724 * The integration response ID.
3725 */
3726 IntegrationResponseId: __string;
3727 /**
3728 * The integration response key.
3729 */
3730 IntegrationResponseKey?: SelectionKey;
3731 /**
3732 * A key-value map specifying response parameters that are passed to the method
3733 response from the backend. The key is a method response header parameter name and the
3734 mapped value is an integration response header value, a static value enclosed within
3735 a pair of single quotes, or a JSON expression from the integration response body. The
3736 mapping key must match the pattern of
3737 method.response.header.{name}
3738 , where name is a valid and unique header name. The mapped non-static value
3739 must match the pattern of
3740 integration.response.header.{name}
3741 or
3742 integration.response.body.{JSON-expression}
3743 , where
3744 {name}
3745 is a valid and unique response header name and
3746 {JSON-expression}
3747 is a valid JSON expression without the $ prefix.
3748 */
3749 ResponseParameters?: IntegrationParameters;
3750 /**
3751 * The collection of response templates for the integration response as a
3752 string-to-string map of key-value pairs. Response templates are represented as a
3753 key/value map, with a content-type as the key and a template as the value.
3754 */
3755 ResponseTemplates?: TemplateMap;
3756 /**
3757 * The template selection expression for the integration response.
3758 */
3759 TemplateSelectionExpression?: SelectionExpression;
3760 }
3761 export interface UpdateIntegrationResponseResponse {
3762 /**
3763 * Specifies how to handle response payload content type conversions. Supported
3764 values are CONVERT_TO_BINARY and CONVERT_TO_TEXT, with the
3765 following behaviors:
3766 CONVERT_TO_BINARY: Converts a response payload from a Base64-encoded
3767 string to the corresponding binary blob.
3768 CONVERT_TO_TEXT: Converts a response payload from a binary blob to a
3769 Base64-encoded string.If this property is not defined, the response payload will be passed through from
3770 the integration response to the route response or method response without
3771 modification.
3772 */
3773 ContentHandlingStrategy?: ContentHandlingStrategy;
3774 /**
3775 * The integration response ID.
3776 */
3777 IntegrationResponseId?: Id;
3778 /**
3779 * The integration response key.
3780 */
3781 IntegrationResponseKey?: SelectionKey;
3782 /**
3783 * A key-value map specifying response parameters that are passed to the method
3784 response from the backend. The key is a method response header parameter name and the
3785 mapped value is an integration response header value, a static value enclosed within
3786 a pair of single quotes, or a JSON expression from the integration response body. The
3787 mapping key must match the pattern of method.response.header.{name}, where name is a
3788 valid and unique header name. The mapped non-static value must match the pattern of
3789 integration.response.header.{name} or integration.response.body.{JSON-expression},
3790 where name is a valid and unique response header name and JSON-expression is a valid
3791 JSON expression without the $ prefix.
3792 */
3793 ResponseParameters?: IntegrationParameters;
3794 /**
3795 * The collection of response templates for the integration response as a
3796 string-to-string map of key-value pairs. Response templates are represented as a
3797 key/value map, with a content-type as the key and a template as the value.
3798 */
3799 ResponseTemplates?: TemplateMap;
3800 /**
3801 * The template selection expressions for the integration response.
3802 */
3803 TemplateSelectionExpression?: SelectionExpression;
3804 }
3805 export interface UpdateModelRequest {
3806 /**
3807 * The API identifier.
3808 */
3809 ApiId: __string;
3810 /**
3811 * The content-type for the model, for example, "application/json".
3812 */
3813 ContentType?: StringWithLengthBetween1And256;
3814 /**
3815 * The description of the model.
3816 */
3817 Description?: StringWithLengthBetween0And1024;
3818 /**
3819 * The model ID.
3820 */
3821 ModelId: __string;
3822 /**
3823 * The name of the model.
3824 */
3825 Name?: StringWithLengthBetween1And128;
3826 /**
3827 * The schema for the model. For application/json models, this should be JSON schema
3828 draft 4 model.
3829 */
3830 Schema?: StringWithLengthBetween0And32K;
3831 }
3832 export interface UpdateModelResponse {
3833 /**
3834 * The content-type for the model, for example, "application/json".
3835 */
3836 ContentType?: StringWithLengthBetween1And256;
3837 /**
3838 * The description of the model.
3839 */
3840 Description?: StringWithLengthBetween0And1024;
3841 /**
3842 * The model identifier.
3843 */
3844 ModelId?: Id;
3845 /**
3846 * The name of the model. Must be alphanumeric.
3847 */
3848 Name?: StringWithLengthBetween1And128;
3849 /**
3850 * The schema for the model. For application/json models, this should be JSON schema
3851 draft 4 model.
3852 */
3853 Schema?: StringWithLengthBetween0And32K;
3854 }
3855 export interface UpdateRouteRequest {
3856 /**
3857 * The API identifier.
3858 */
3859 ApiId: __string;
3860 /**
3861 * Specifies whether an API key is required for the route.
3862 */
3863 ApiKeyRequired?: __boolean;
3864 /**
3865 * The authorization scopes supported by this
3866 route.
3867 */
3868 AuthorizationScopes?: AuthorizationScopes;
3869 /**
3870 * The authorization type for the route. Valid values are NONE for open
3871 access, AWS_IAM for using AWS IAM permissions, and CUSTOM
3872 for using a Lambda
3873 authorizer.
3874 */
3875 AuthorizationType?: AuthorizationType;
3876 /**
3877 * The identifier of the Authorizer resource to be associated with this
3878 route, if the authorizationType is CUSTOM
3879 . The authorizer identifier is generated by API Gateway
3880 when you created the authorizer.
3881 */
3882 AuthorizerId?: Id;
3883 /**
3884 * The model selection expression for the route.
3885 */
3886 ModelSelectionExpression?: SelectionExpression;
3887 /**
3888 * The operation name for the route.
3889 */
3890 OperationName?: StringWithLengthBetween1And64;
3891 /**
3892 * The request models for the route.
3893 */
3894 RequestModels?: RouteModels;
3895 /**
3896 * The request parameters for the route.
3897 */
3898 RequestParameters?: RouteParameters;
3899 /**
3900 * The route ID.
3901 */
3902 RouteId: __string;
3903 /**
3904 * The route key for the route.
3905 */
3906 RouteKey?: SelectionKey;
3907 /**
3908 * The route response selection expression for the route.
3909 */
3910 RouteResponseSelectionExpression?: SelectionExpression;
3911 /**
3912 * The target for the route.
3913 */
3914 Target?: StringWithLengthBetween1And128;
3915 }
3916 export interface UpdateRouteResponse {
3917 /**
3918 * Specifies whether an API key is required for this route.
3919 */
3920 ApiKeyRequired?: __boolean;
3921 /**
3922 * A list of authorization scopes configured on a route. The scopes are used with a
3923 COGNITO_USER_POOLS authorizer to authorize the method invocation. The authorization
3924 works by matching the route scopes against the scopes parsed from the access token in
3925 the incoming request. The method invocation is authorized if any route scope matches
3926 a claimed scope in the access token. Otherwise, the invocation is not authorized.
3927 When the route scope is configured, the client must provide an access token instead
3928 of an identity token for authorization purposes.
3929 */
3930 AuthorizationScopes?: AuthorizationScopes;
3931 /**
3932 * The authorization type for the route. Valid values are NONE for open
3933 access, AWS_IAM for using AWS IAM permissions, and CUSTOM
3934 for using a Lambda
3935 authorizer
3936 */
3937 AuthorizationType?: AuthorizationType;
3938 /**
3939 * The identifier of the Authorizer resource to be associated with this
3940 route, if the authorizationType is CUSTOM
3941 . The authorizer identifier is generated by API Gateway
3942 when you created the authorizer.
3943 */
3944 AuthorizerId?: Id;
3945 /**
3946 * The model selection expression for the route.
3947 */
3948 ModelSelectionExpression?: SelectionExpression;
3949 /**
3950 * The operation name for the route.
3951 */
3952 OperationName?: StringWithLengthBetween1And64;
3953 /**
3954 * The request models for the route.
3955 */
3956 RequestModels?: RouteModels;
3957 /**
3958 * The request parameters for the route.
3959 */
3960 RequestParameters?: RouteParameters;
3961 /**
3962 * The route ID.
3963 */
3964 RouteId?: Id;
3965 /**
3966 * The route key for the route.
3967 */
3968 RouteKey?: SelectionKey;
3969 /**
3970 * The route response selection expression for the route.
3971 */
3972 RouteResponseSelectionExpression?: SelectionExpression;
3973 /**
3974 * The target for the route.
3975 */
3976 Target?: StringWithLengthBetween1And128;
3977 }
3978 export interface UpdateRouteResponseRequest {
3979 /**
3980 * The API identifier.
3981 */
3982 ApiId: __string;
3983 /**
3984 * The model selection expression for the route response.
3985 */
3986 ModelSelectionExpression?: SelectionExpression;
3987 /**
3988 * The response models for the route response.
3989 */
3990 ResponseModels?: RouteModels;
3991 /**
3992 * The route response parameters.
3993 */
3994 ResponseParameters?: RouteParameters;
3995 /**
3996 * The route ID.
3997 */
3998 RouteId: __string;
3999 /**
4000 * The route response ID.
4001 */
4002 RouteResponseId: __string;
4003 /**
4004 * The route response key.
4005 */
4006 RouteResponseKey?: SelectionKey;
4007 }
4008 export interface UpdateRouteResponseResponse {
4009 /**
4010 * Represents the model selection expression of a route response.
4011 */
4012 ModelSelectionExpression?: SelectionExpression;
4013 /**
4014 * Represents the response models of a route response.
4015 */
4016 ResponseModels?: RouteModels;
4017 /**
4018 * Represents the response parameters of a route response.
4019 */
4020 ResponseParameters?: RouteParameters;
4021 /**
4022 * Represents the identifier of a route response.
4023 */
4024 RouteResponseId?: Id;
4025 /**
4026 * Represents the route response key of a route response.
4027 */
4028 RouteResponseKey?: SelectionKey;
4029 }
4030 export interface UpdateStageRequest {
4031 /**
4032 * Settings for logging access in this stage.
4033 */
4034 AccessLogSettings?: AccessLogSettings;
4035 /**
4036 * The API identifier.
4037 */
4038 ApiId: __string;
4039 /**
4040 * The identifier of a client certificate for a Stage.
4041 */
4042 ClientCertificateId?: Id;
4043 /**
4044 * The default route settings for the stage.
4045 */
4046 DefaultRouteSettings?: RouteSettings;
4047 /**
4048 * The deployment identifier for the API stage.
4049 */
4050 DeploymentId?: Id;
4051 /**
4052 * The description for the API stage.
4053 */
4054 Description?: StringWithLengthBetween0And1024;
4055 /**
4056 * Route settings for the stage.
4057 */
4058 RouteSettings?: RouteSettingsMap;
4059 /**
4060 * The stage name.
4061 */
4062 StageName: __string;
4063 /**
4064 * A map that defines the stage variables for a Stage. Variable names
4065 can have alphanumeric and underscore characters, and the values must match
4066 [A-Za-z0-9-._~:/?#&=,]+.
4067 */
4068 StageVariables?: StageVariablesMap;
4069 }
4070 export interface UpdateStageResponse {
4071 /**
4072 * Settings for logging access in this stage.
4073 */
4074 AccessLogSettings?: AccessLogSettings;
4075 /**
4076 * The identifier of a client certificate for a Stage.
4077 */
4078 ClientCertificateId?: Id;
4079 /**
4080 * The timestamp when the stage was created.
4081 */
4082 CreatedDate?: __timestampIso8601;
4083 /**
4084 * Default route settings for the stage.
4085 */
4086 DefaultRouteSettings?: RouteSettings;
4087 /**
4088 * The identifier of the Deployment that the Stage is
4089 associated with.
4090 */
4091 DeploymentId?: Id;
4092 /**
4093 * The description of the stage.
4094 */
4095 Description?: StringWithLengthBetween0And1024;
4096 /**
4097 * The timestamp when the stage was last updated.
4098 */
4099 LastUpdatedDate?: __timestampIso8601;
4100 /**
4101 * Route settings for the stage.
4102 */
4103 RouteSettings?: RouteSettingsMap;
4104 /**
4105 * The name of the stage.
4106 */
4107 StageName?: StringWithLengthBetween1And128;
4108 /**
4109 * A map that defines the stage variables for a stage resource. Variable names can
4110 have alphanumeric and underscore characters, and the values must match
4111 [A-Za-z0-9-._~:/?#&=,]+.
4112 */
4113 StageVariables?: StageVariablesMap;
4114 /**
4115 * The key-value map of strings. The valid character set is [a-zA-Z+-=._:/]. The tag key can be up to 128 characters and must not start with aws:. The tag value can be up to 256 characters..
4116 */
4117 Tags?: Tags;
4118 }
4119 export type UriWithLengthBetween1And2048 = string;
4120 export type __boolean = boolean;
4121 export type __double = number;
4122 export type __integer = number;
4123 export type __listOfApi = Api[];
4124 export type __listOfApiMapping = ApiMapping[];
4125 export type __listOfAuthorizer = Authorizer[];
4126 export type __listOfDeployment = Deployment[];
4127 export type __listOfDomainName = DomainName[];
4128 export type __listOfIntegration = Integration[];
4129 export type __listOfIntegrationResponse = IntegrationResponse[];
4130 export type __listOfModel = Model[];
4131 export type __listOfRoute = Route[];
4132 export type __listOfRouteResponse = RouteResponse[];
4133 export type __listOfStage = Stage[];
4134 export type __listOf__string = __string[];
4135 export type __string = string;
4136 export type __mapOf__string = {[key: string]: __string};
4137 export type __timestampIso8601 = Date;
4138 /**
4139 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
4140 */
4141 export type apiVersion = "2018-11-29"|"latest"|string;
4142 export interface ClientApiVersions {
4143 /**
4144 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
4145 */
4146 apiVersion?: apiVersion;
4147 }
4148 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
4149 /**
4150 * Contains interfaces for use with the ApiGatewayV2 client.
4151 */
4152 export import Types = ApiGatewayV2;
4153}
4154export = ApiGatewayV2;