Skip to content

Commit ef4a874

Browse files
author
awstools
committed
feat(client-api-gateway): Adds support for setting the IP address type to allow dual-stack or IPv4 address types to invoke your APIs or domain names.
1 parent 625ee9c commit ef4a874

12 files changed

+67
-10
lines changed

clients/client-api-gateway/src/commands/CreateDomainNameCommand.ts

+2
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ export interface CreateDomainNameCommandOutput extends DomainName, __MetadataBea
4848
* types: [ // ListOfEndpointType
4949
* "REGIONAL" || "EDGE" || "PRIVATE",
5050
* ],
51+
* ipAddressType: "ipv4" || "dualstack",
5152
* vpcEndpointIds: [ // ListOfString
5253
* "STRING_VALUE",
5354
* ],
@@ -82,6 +83,7 @@ export interface CreateDomainNameCommandOutput extends DomainName, __MetadataBea
8283
* // types: [ // ListOfEndpointType
8384
* // "REGIONAL" || "EDGE" || "PRIVATE",
8485
* // ],
86+
* // ipAddressType: "ipv4" || "dualstack",
8587
* // vpcEndpointIds: [ // ListOfString
8688
* // "STRING_VALUE",
8789
* // ],

clients/client-api-gateway/src/commands/CreateRestApiCommand.ts

+2
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export interface CreateRestApiCommandOutput extends RestApi, __MetadataBearer {}
4949
* types: [ // ListOfEndpointType
5050
* "REGIONAL" || "EDGE" || "PRIVATE",
5151
* ],
52+
* ipAddressType: "ipv4" || "dualstack",
5253
* vpcEndpointIds: [
5354
* "STRING_VALUE",
5455
* ],
@@ -79,6 +80,7 @@ export interface CreateRestApiCommandOutput extends RestApi, __MetadataBearer {}
7980
* // types: [ // ListOfEndpointType
8081
* // "REGIONAL" || "EDGE" || "PRIVATE",
8182
* // ],
83+
* // ipAddressType: "ipv4" || "dualstack",
8284
* // vpcEndpointIds: [
8385
* // "STRING_VALUE",
8486
* // ],

clients/client-api-gateway/src/commands/GetDomainNameCommand.ts

+1
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ export interface GetDomainNameCommandOutput extends DomainName, __MetadataBearer
5858
* // types: [ // ListOfEndpointType
5959
* // "REGIONAL" || "EDGE" || "PRIVATE",
6060
* // ],
61+
* // ipAddressType: "ipv4" || "dualstack",
6162
* // vpcEndpointIds: [ // ListOfString
6263
* // "STRING_VALUE",
6364
* // ],

clients/client-api-gateway/src/commands/GetDomainNamesCommand.ts

+1
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ export interface GetDomainNamesCommandOutput extends DomainNames, __MetadataBear
6161
* // types: [ // ListOfEndpointType
6262
* // "REGIONAL" || "EDGE" || "PRIVATE",
6363
* // ],
64+
* // ipAddressType: "ipv4" || "dualstack",
6465
* // vpcEndpointIds: [ // ListOfString
6566
* // "STRING_VALUE",
6667
* // ],

clients/client-api-gateway/src/commands/GetRestApiCommand.ts

+1
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ export interface GetRestApiCommandOutput extends RestApi, __MetadataBearer {}
5858
* // types: [ // ListOfEndpointType
5959
* // "REGIONAL" || "EDGE" || "PRIVATE",
6060
* // ],
61+
* // ipAddressType: "ipv4" || "dualstack",
6162
* // vpcEndpointIds: [
6263
* // "STRING_VALUE",
6364
* // ],

clients/client-api-gateway/src/commands/GetRestApisCommand.ts

+1
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ export interface GetRestApisCommandOutput extends RestApis, __MetadataBearer {}
6161
* // types: [ // ListOfEndpointType
6262
* // "REGIONAL" || "EDGE" || "PRIVATE",
6363
* // ],
64+
* // ipAddressType: "ipv4" || "dualstack",
6465
* // vpcEndpointIds: [
6566
* // "STRING_VALUE",
6667
* // ],

clients/client-api-gateway/src/commands/ImportRestApiCommand.ts

+1
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ export interface ImportRestApiCommandOutput extends RestApi, __MetadataBearer {}
6969
* // types: [ // ListOfEndpointType
7070
* // "REGIONAL" || "EDGE" || "PRIVATE",
7171
* // ],
72+
* // ipAddressType: "ipv4" || "dualstack",
7273
* // vpcEndpointIds: [
7374
* // "STRING_VALUE",
7475
* // ],

clients/client-api-gateway/src/commands/PutRestApiCommand.ts

+1
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ export interface PutRestApiCommandOutput extends RestApi, __MetadataBearer {}
7272
* // types: [ // ListOfEndpointType
7373
* // "REGIONAL" || "EDGE" || "PRIVATE",
7474
* // ],
75+
* // ipAddressType: "ipv4" || "dualstack",
7576
* // vpcEndpointIds: [
7677
* // "STRING_VALUE",
7778
* // ],

clients/client-api-gateway/src/commands/UpdateDomainNameCommand.ts

+1
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ export interface UpdateDomainNameCommandOutput extends DomainName, __MetadataBea
6666
* // types: [ // ListOfEndpointType
6767
* // "REGIONAL" || "EDGE" || "PRIVATE",
6868
* // ],
69+
* // ipAddressType: "ipv4" || "dualstack",
6970
* // vpcEndpointIds: [ // ListOfString
7071
* // "STRING_VALUE",
7172
* // ],

clients/client-api-gateway/src/commands/UpdateRestApiCommand.ts

+1
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ export interface UpdateRestApiCommandOutput extends RestApi, __MetadataBearer {}
6666
* // types: [ // ListOfEndpointType
6767
* // "REGIONAL" || "EDGE" || "PRIVATE",
6868
* // ],
69+
* // ipAddressType: "ipv4" || "dualstack",
6970
* // vpcEndpointIds: [
7071
* // "STRING_VALUE",
7172
* // ],

clients/client-api-gateway/src/models/models_0.ts

+27-5
Original file line numberDiff line numberDiff line change
@@ -1031,6 +1031,20 @@ export interface DocumentationVersion {
10311031
description?: string | undefined;
10321032
}
10331033

1034+
/**
1035+
* @public
1036+
* @enum
1037+
*/
1038+
export const IpAddressType = {
1039+
dualstack: "dualstack",
1040+
ipv4: "ipv4",
1041+
} as const;
1042+
1043+
/**
1044+
* @public
1045+
*/
1046+
export type IpAddressType = (typeof IpAddressType)[keyof typeof IpAddressType];
1047+
10341048
/**
10351049
* @public
10361050
* @enum
@@ -1047,7 +1061,7 @@ export const EndpointType = {
10471061
export type EndpointType = (typeof EndpointType)[keyof typeof EndpointType];
10481062

10491063
/**
1050-
* <p>The endpoint configuration to indicate the types of endpoints an API (RestApi) or its custom domain name (DomainName) has. </p>
1064+
* <p>The endpoint configuration to indicate the types of endpoints an API (RestApi) or its custom domain name (DomainName) has and the IP address types that can invoke it. </p>
10511065
* @public
10521066
*/
10531067
export interface EndpointConfiguration {
@@ -1057,6 +1071,14 @@ export interface EndpointConfiguration {
10571071
*/
10581072
types?: EndpointType[] | undefined;
10591073

1074+
/**
1075+
* <p>The IP address types that can invoke an API (RestApi) or a DomainName. Use <code>ipv4</code> to allow only IPv4 addresses to
1076+
* invoke an API or DomainName, or use <code>dualstack</code> to allow both IPv4 and IPv6 addresses to invoke an API or a DomainName. For the
1077+
* <code>PRIVATE</code> endpoint type, only <code>dualstack</code> is supported.</p>
1078+
* @public
1079+
*/
1080+
ipAddressType?: IpAddressType | undefined;
1081+
10601082
/**
10611083
* <p>A list of VpcEndpointIds of an API (RestApi) against which to create Route53 ALIASes. It is only supported for <code>PRIVATE</code> endpoint type.</p>
10621084
* @public
@@ -1156,7 +1178,7 @@ export interface CreateDomainNameRequest {
11561178
regionalCertificateArn?: string | undefined;
11571179

11581180
/**
1159-
* <p>The endpoint configuration of this DomainName showing the endpoint types of the domain name. </p>
1181+
* <p>The endpoint configuration of this DomainName showing the endpoint types and IP address types of the domain name. </p>
11601182
* @public
11611183
*/
11621184
endpointConfiguration?: EndpointConfiguration | undefined;
@@ -1327,7 +1349,7 @@ export interface DomainName {
13271349
distributionHostedZoneId?: string | undefined;
13281350

13291351
/**
1330-
* <p>The endpoint configuration of this DomainName showing the endpoint types of the domain name. </p>
1352+
* <p>The endpoint configuration of this DomainName showing the endpoint types and IP address types of the domain name. </p>
13311353
* @public
13321354
*/
13331355
endpointConfiguration?: EndpointConfiguration | undefined;
@@ -2044,7 +2066,7 @@ export interface CreateRestApiRequest {
20442066
apiKeySource?: ApiKeySourceType | undefined;
20452067

20462068
/**
2047-
* <p>The endpoint configuration of this RestApi showing the endpoint types of the API. </p>
2069+
* <p>The endpoint configuration of this RestApi showing the endpoint types and IP address types of the API. </p>
20482070
* @public
20492071
*/
20502072
endpointConfiguration?: EndpointConfiguration | undefined;
@@ -2134,7 +2156,7 @@ export interface RestApi {
21342156
apiKeySource?: ApiKeySourceType | undefined;
21352157

21362158
/**
2137-
* <p>The endpoint configuration of this RestApi showing the endpoint types of the API. </p>
2159+
* <p>The endpoint configuration of this RestApi showing the endpoint types and IP address types of the API. </p>
21382160
* @public
21392161
*/
21402162
endpointConfiguration?: EndpointConfiguration | undefined;

codegen/sdk-codegen/aws-models/api-gateway.json

+28-5
Original file line numberDiff line numberDiff line change
@@ -2688,7 +2688,7 @@
26882688
"endpointConfiguration": {
26892689
"target": "com.amazonaws.apigateway#EndpointConfiguration",
26902690
"traits": {
2691-
"smithy.api#documentation": "<p>The endpoint configuration of this DomainName showing the endpoint types of the domain name. </p>"
2691+
"smithy.api#documentation": "<p>The endpoint configuration of this DomainName showing the endpoint types and IP address types of the domain name. </p>"
26922692
}
26932693
},
26942694
"tags": {
@@ -3030,7 +3030,7 @@
30303030
"endpointConfiguration": {
30313031
"target": "com.amazonaws.apigateway#EndpointConfiguration",
30323032
"traits": {
3033-
"smithy.api#documentation": "<p>The endpoint configuration of this RestApi showing the endpoint types of the API. </p>"
3033+
"smithy.api#documentation": "<p>The endpoint configuration of this RestApi showing the endpoint types and IP address types of the API. </p>"
30343034
}
30353035
},
30363036
"policy": {
@@ -5100,7 +5100,7 @@
51005100
"endpointConfiguration": {
51015101
"target": "com.amazonaws.apigateway#EndpointConfiguration",
51025102
"traits": {
5103-
"smithy.api#documentation": "<p>The endpoint configuration of this DomainName showing the endpoint types of the domain name. </p>"
5103+
"smithy.api#documentation": "<p>The endpoint configuration of this DomainName showing the endpoint types and IP address types of the domain name. </p>"
51045104
}
51055105
},
51065106
"domainNameStatus": {
@@ -5285,6 +5285,12 @@
52855285
"smithy.api#documentation": "<p>A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is <code>\"EDGE\"</code>. For a regional API and its custom domain name, the endpoint type is <code>REGIONAL</code>. For a private API, the endpoint type is <code>PRIVATE</code>.</p>"
52865286
}
52875287
},
5288+
"ipAddressType": {
5289+
"target": "com.amazonaws.apigateway#IpAddressType",
5290+
"traits": {
5291+
"smithy.api#documentation": "<p>The IP address types that can invoke an API (RestApi) or a DomainName. Use <code>ipv4</code> to allow only IPv4 addresses to\n invoke an API or DomainName, or use <code>dualstack</code> to allow both IPv4 and IPv6 addresses to invoke an API or a DomainName. For the\n <code>PRIVATE</code> endpoint type, only <code>dualstack</code> is supported.</p>"
5292+
}
5293+
},
52885294
"vpcEndpointIds": {
52895295
"target": "com.amazonaws.apigateway#ListOfString",
52905296
"traits": {
@@ -5293,7 +5299,7 @@
52935299
}
52945300
},
52955301
"traits": {
5296-
"smithy.api#documentation": "<p>The endpoint configuration to indicate the types of endpoints an API (RestApi) or its custom domain name (DomainName) has. </p>"
5302+
"smithy.api#documentation": "<p>The endpoint configuration to indicate the types of endpoints an API (RestApi) or its custom domain name (DomainName) has and the IP address types that can invoke it. </p>"
52975303
}
52985304
},
52995305
"com.amazonaws.apigateway#EndpointType": {
@@ -9078,6 +9084,23 @@
90789084
"smithy.api#documentation": "<p>The integration type. The valid value is <code>HTTP</code> for integrating an API method with an HTTP backend; <code>AWS</code> with any Amazon Web Services service endpoints; <code>MOCK</code> for testing without actually invoking the backend; <code>HTTP_PROXY</code> for integrating with the HTTP proxy integration; <code>AWS_PROXY</code> for integrating with the Lambda proxy integration. </p>"
90799085
}
90809086
},
9087+
"com.amazonaws.apigateway#IpAddressType": {
9088+
"type": "enum",
9089+
"members": {
9090+
"ipv4": {
9091+
"target": "smithy.api#Unit",
9092+
"traits": {
9093+
"smithy.api#enumValue": "ipv4"
9094+
}
9095+
},
9096+
"dualstack": {
9097+
"target": "smithy.api#Unit",
9098+
"traits": {
9099+
"smithy.api#enumValue": "dualstack"
9100+
}
9101+
}
9102+
}
9103+
},
90819104
"com.amazonaws.apigateway#LimitExceededException": {
90829105
"type": "structure",
90839106
"members": {
@@ -10737,7 +10760,7 @@
1073710760
"endpointConfiguration": {
1073810761
"target": "com.amazonaws.apigateway#EndpointConfiguration",
1073910762
"traits": {
10740-
"smithy.api#documentation": "<p>The endpoint configuration of this RestApi showing the endpoint types of the API. </p>"
10763+
"smithy.api#documentation": "<p>The endpoint configuration of this RestApi showing the endpoint types and IP address types of the API. </p>"
1074110764
}
1074210765
},
1074310766
"policy": {

0 commit comments

Comments
 (0)