From f36b021c20d31bb774c8e93f3c889217f32be2c4 Mon Sep 17 00:00:00 2001 From: awstools Date: Thu, 10 Nov 2022 21:37:29 +0000 Subject: [PATCH] feat(client-elasticsearch-service): Amazon OpenSearch Service now offers managed VPC endpoints to connect to your Amazon OpenSearch Service VPC-enabled domain in a Virtual Private Cloud (VPC). This feature allows you to privately access OpenSearch Service domain without using public IPs or requiring traffic to traverse the Internet. --- .../src/ElasticsearchService.ts | 335 ++ .../src/ElasticsearchServiceClient.ts | 42 + .../AuthorizeVpcEndpointAccessCommand.ts | 121 + .../src/commands/CreateVpcEndpointCommand.ts | 118 + .../src/commands/DeleteVpcEndpointCommand.ts | 118 + .../commands/DescribeVpcEndpointsCommand.ts | 118 + .../commands/ListVpcEndpointAccessCommand.ts | 119 + .../src/commands/ListVpcEndpointsCommand.ts | 118 + .../ListVpcEndpointsForDomainCommand.ts | 121 + .../RevokeVpcEndpointAccessCommand.ts | 119 + .../src/commands/UpdateVpcEndpointCommand.ts | 118 + .../src/commands/index.ts | 9 + .../src/models/models_0.ts | 720 +++- .../src/protocols/Aws_restJson1.ts | 970 ++++- .../aws-models/elasticsearch-service.json | 3196 ++++++++++++----- 15 files changed, 5205 insertions(+), 1137 deletions(-) create mode 100644 clients/client-elasticsearch-service/src/commands/AuthorizeVpcEndpointAccessCommand.ts create mode 100644 clients/client-elasticsearch-service/src/commands/CreateVpcEndpointCommand.ts create mode 100644 clients/client-elasticsearch-service/src/commands/DeleteVpcEndpointCommand.ts create mode 100644 clients/client-elasticsearch-service/src/commands/DescribeVpcEndpointsCommand.ts create mode 100644 clients/client-elasticsearch-service/src/commands/ListVpcEndpointAccessCommand.ts create mode 100644 clients/client-elasticsearch-service/src/commands/ListVpcEndpointsCommand.ts create mode 100644 clients/client-elasticsearch-service/src/commands/ListVpcEndpointsForDomainCommand.ts create mode 100644 clients/client-elasticsearch-service/src/commands/RevokeVpcEndpointAccessCommand.ts create mode 100644 clients/client-elasticsearch-service/src/commands/UpdateVpcEndpointCommand.ts diff --git a/clients/client-elasticsearch-service/src/ElasticsearchService.ts b/clients/client-elasticsearch-service/src/ElasticsearchService.ts index e315a29026cc..798e627f86c9 100644 --- a/clients/client-elasticsearch-service/src/ElasticsearchService.ts +++ b/clients/client-elasticsearch-service/src/ElasticsearchService.ts @@ -12,6 +12,11 @@ import { AssociatePackageCommandInput, AssociatePackageCommandOutput, } from "./commands/AssociatePackageCommand"; +import { + AuthorizeVpcEndpointAccessCommand, + AuthorizeVpcEndpointAccessCommandInput, + AuthorizeVpcEndpointAccessCommandOutput, +} from "./commands/AuthorizeVpcEndpointAccessCommand"; import { CancelElasticsearchServiceSoftwareUpdateCommand, CancelElasticsearchServiceSoftwareUpdateCommandInput, @@ -32,6 +37,11 @@ import { CreatePackageCommandInput, CreatePackageCommandOutput, } from "./commands/CreatePackageCommand"; +import { + CreateVpcEndpointCommand, + CreateVpcEndpointCommandInput, + CreateVpcEndpointCommandOutput, +} from "./commands/CreateVpcEndpointCommand"; import { DeleteElasticsearchDomainCommand, DeleteElasticsearchDomainCommandInput, @@ -57,6 +67,11 @@ import { DeletePackageCommandInput, DeletePackageCommandOutput, } from "./commands/DeletePackageCommand"; +import { + DeleteVpcEndpointCommand, + DeleteVpcEndpointCommandInput, + DeleteVpcEndpointCommandOutput, +} from "./commands/DeleteVpcEndpointCommand"; import { DescribeDomainAutoTunesCommand, DescribeDomainAutoTunesCommandInput, @@ -112,6 +127,11 @@ import { DescribeReservedElasticsearchInstancesCommandInput, DescribeReservedElasticsearchInstancesCommandOutput, } from "./commands/DescribeReservedElasticsearchInstancesCommand"; +import { + DescribeVpcEndpointsCommand, + DescribeVpcEndpointsCommandInput, + DescribeVpcEndpointsCommandOutput, +} from "./commands/DescribeVpcEndpointsCommand"; import { DissociatePackageCommand, DissociatePackageCommandInput, @@ -163,6 +183,21 @@ import { ListPackagesForDomainCommandOutput, } from "./commands/ListPackagesForDomainCommand"; import { ListTagsCommand, ListTagsCommandInput, ListTagsCommandOutput } from "./commands/ListTagsCommand"; +import { + ListVpcEndpointAccessCommand, + ListVpcEndpointAccessCommandInput, + ListVpcEndpointAccessCommandOutput, +} from "./commands/ListVpcEndpointAccessCommand"; +import { + ListVpcEndpointsCommand, + ListVpcEndpointsCommandInput, + ListVpcEndpointsCommandOutput, +} from "./commands/ListVpcEndpointsCommand"; +import { + ListVpcEndpointsForDomainCommand, + ListVpcEndpointsForDomainCommandInput, + ListVpcEndpointsForDomainCommandOutput, +} from "./commands/ListVpcEndpointsForDomainCommand"; import { PurchaseReservedElasticsearchInstanceOfferingCommand, PurchaseReservedElasticsearchInstanceOfferingCommandInput, @@ -174,6 +209,11 @@ import { RejectInboundCrossClusterSearchConnectionCommandOutput, } from "./commands/RejectInboundCrossClusterSearchConnectionCommand"; import { RemoveTagsCommand, RemoveTagsCommandInput, RemoveTagsCommandOutput } from "./commands/RemoveTagsCommand"; +import { + RevokeVpcEndpointAccessCommand, + RevokeVpcEndpointAccessCommandInput, + RevokeVpcEndpointAccessCommandOutput, +} from "./commands/RevokeVpcEndpointAccessCommand"; import { StartElasticsearchServiceSoftwareUpdateCommand, StartElasticsearchServiceSoftwareUpdateCommandInput, @@ -189,6 +229,11 @@ import { UpdatePackageCommandInput, UpdatePackageCommandOutput, } from "./commands/UpdatePackageCommand"; +import { + UpdateVpcEndpointCommand, + UpdateVpcEndpointCommandInput, + UpdateVpcEndpointCommandOutput, +} from "./commands/UpdateVpcEndpointCommand"; import { UpgradeElasticsearchDomainCommand, UpgradeElasticsearchDomainCommandInput, @@ -299,6 +344,38 @@ export class ElasticsearchService extends ElasticsearchServiceClient { } } + /** + *

Provides access to an Amazon OpenSearch Service domain through the use of an interface VPC endpoint.

+ */ + public authorizeVpcEndpointAccess( + args: AuthorizeVpcEndpointAccessCommandInput, + options?: __HttpHandlerOptions + ): Promise; + public authorizeVpcEndpointAccess( + args: AuthorizeVpcEndpointAccessCommandInput, + cb: (err: any, data?: AuthorizeVpcEndpointAccessCommandOutput) => void + ): void; + public authorizeVpcEndpointAccess( + args: AuthorizeVpcEndpointAccessCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: AuthorizeVpcEndpointAccessCommandOutput) => void + ): void; + public authorizeVpcEndpointAccess( + args: AuthorizeVpcEndpointAccessCommandInput, + optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: AuthorizeVpcEndpointAccessCommandOutput) => void), + cb?: (err: any, data?: AuthorizeVpcEndpointAccessCommandOutput) => void + ): Promise | void { + const command = new AuthorizeVpcEndpointAccessCommand(args); + if (typeof optionsOrCb === "function") { + this.send(command, optionsOrCb); + } else if (typeof cb === "function") { + if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`); + this.send(command, optionsOrCb || {}, cb); + } else { + return this.send(command, optionsOrCb); + } + } + /** *

Cancels a scheduled service software update for an Amazon ES domain. You can only perform this operation before the AutomatedUpdateDate and when the UpdateStatus is in the PENDING_UPDATE state.

*/ @@ -432,6 +509,38 @@ export class ElasticsearchService extends ElasticsearchServiceClient { } } + /** + *

Creates an Amazon OpenSearch Service-managed VPC endpoint.

+ */ + public createVpcEndpoint( + args: CreateVpcEndpointCommandInput, + options?: __HttpHandlerOptions + ): Promise; + public createVpcEndpoint( + args: CreateVpcEndpointCommandInput, + cb: (err: any, data?: CreateVpcEndpointCommandOutput) => void + ): void; + public createVpcEndpoint( + args: CreateVpcEndpointCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateVpcEndpointCommandOutput) => void + ): void; + public createVpcEndpoint( + args: CreateVpcEndpointCommandInput, + optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: CreateVpcEndpointCommandOutput) => void), + cb?: (err: any, data?: CreateVpcEndpointCommandOutput) => void + ): Promise | void { + const command = new CreateVpcEndpointCommand(args); + if (typeof optionsOrCb === "function") { + this.send(command, optionsOrCb); + } else if (typeof cb === "function") { + if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`); + this.send(command, optionsOrCb || {}, cb); + } else { + return this.send(command, optionsOrCb); + } + } + /** *

Permanently deletes the specified Elasticsearch domain and all of its data. Once a domain is deleted, it cannot be recovered.

*/ @@ -596,6 +705,38 @@ export class ElasticsearchService extends ElasticsearchServiceClient { } } + /** + *

Deletes an Amazon OpenSearch Service-managed interface VPC endpoint.

+ */ + public deleteVpcEndpoint( + args: DeleteVpcEndpointCommandInput, + options?: __HttpHandlerOptions + ): Promise; + public deleteVpcEndpoint( + args: DeleteVpcEndpointCommandInput, + cb: (err: any, data?: DeleteVpcEndpointCommandOutput) => void + ): void; + public deleteVpcEndpoint( + args: DeleteVpcEndpointCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteVpcEndpointCommandOutput) => void + ): void; + public deleteVpcEndpoint( + args: DeleteVpcEndpointCommandInput, + optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: DeleteVpcEndpointCommandOutput) => void), + cb?: (err: any, data?: DeleteVpcEndpointCommandOutput) => void + ): Promise | void { + const command = new DeleteVpcEndpointCommand(args); + if (typeof optionsOrCb === "function") { + this.send(command, optionsOrCb); + } else if (typeof cb === "function") { + if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`); + this.send(command, optionsOrCb || {}, cb); + } else { + return this.send(command, optionsOrCb); + } + } + /** *

Provides scheduled Auto-Tune action details for the Elasticsearch domain, such as Auto-Tune action type, description, severity, and scheduled date.

*/ @@ -966,6 +1107,38 @@ export class ElasticsearchService extends ElasticsearchServiceClient { } } + /** + *

Describes one or more Amazon OpenSearch Service-managed VPC endpoints.

+ */ + public describeVpcEndpoints( + args: DescribeVpcEndpointsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + public describeVpcEndpoints( + args: DescribeVpcEndpointsCommandInput, + cb: (err: any, data?: DescribeVpcEndpointsCommandOutput) => void + ): void; + public describeVpcEndpoints( + args: DescribeVpcEndpointsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DescribeVpcEndpointsCommandOutput) => void + ): void; + public describeVpcEndpoints( + args: DescribeVpcEndpointsCommandInput, + optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: DescribeVpcEndpointsCommandOutput) => void), + cb?: (err: any, data?: DescribeVpcEndpointsCommandOutput) => void + ): Promise | void { + const command = new DescribeVpcEndpointsCommand(args); + if (typeof optionsOrCb === "function") { + this.send(command, optionsOrCb); + } else if (typeof cb === "function") { + if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`); + this.send(command, optionsOrCb || {}, cb); + } else { + return this.send(command, optionsOrCb); + } + } + /** *

Dissociates a package from the Amazon ES domain.

*/ @@ -1319,6 +1492,103 @@ export class ElasticsearchService extends ElasticsearchServiceClient { } } + /** + *

Retrieves information about each principal that is allowed to access a + * given Amazon OpenSearch Service domain through the use of an interface VPC endpoint.

+ */ + public listVpcEndpointAccess( + args: ListVpcEndpointAccessCommandInput, + options?: __HttpHandlerOptions + ): Promise; + public listVpcEndpointAccess( + args: ListVpcEndpointAccessCommandInput, + cb: (err: any, data?: ListVpcEndpointAccessCommandOutput) => void + ): void; + public listVpcEndpointAccess( + args: ListVpcEndpointAccessCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListVpcEndpointAccessCommandOutput) => void + ): void; + public listVpcEndpointAccess( + args: ListVpcEndpointAccessCommandInput, + optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: ListVpcEndpointAccessCommandOutput) => void), + cb?: (err: any, data?: ListVpcEndpointAccessCommandOutput) => void + ): Promise | void { + const command = new ListVpcEndpointAccessCommand(args); + if (typeof optionsOrCb === "function") { + this.send(command, optionsOrCb); + } else if (typeof cb === "function") { + if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`); + this.send(command, optionsOrCb || {}, cb); + } else { + return this.send(command, optionsOrCb); + } + } + + /** + *

Retrieves all Amazon OpenSearch Service-managed VPC endpoints in the current account and Region.

+ */ + public listVpcEndpoints( + args: ListVpcEndpointsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + public listVpcEndpoints( + args: ListVpcEndpointsCommandInput, + cb: (err: any, data?: ListVpcEndpointsCommandOutput) => void + ): void; + public listVpcEndpoints( + args: ListVpcEndpointsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListVpcEndpointsCommandOutput) => void + ): void; + public listVpcEndpoints( + args: ListVpcEndpointsCommandInput, + optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: ListVpcEndpointsCommandOutput) => void), + cb?: (err: any, data?: ListVpcEndpointsCommandOutput) => void + ): Promise | void { + const command = new ListVpcEndpointsCommand(args); + if (typeof optionsOrCb === "function") { + this.send(command, optionsOrCb); + } else if (typeof cb === "function") { + if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`); + this.send(command, optionsOrCb || {}, cb); + } else { + return this.send(command, optionsOrCb); + } + } + + /** + *

Retrieves all Amazon OpenSearch Service-managed VPC endpoints associated with a particular domain.

+ */ + public listVpcEndpointsForDomain( + args: ListVpcEndpointsForDomainCommandInput, + options?: __HttpHandlerOptions + ): Promise; + public listVpcEndpointsForDomain( + args: ListVpcEndpointsForDomainCommandInput, + cb: (err: any, data?: ListVpcEndpointsForDomainCommandOutput) => void + ): void; + public listVpcEndpointsForDomain( + args: ListVpcEndpointsForDomainCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListVpcEndpointsForDomainCommandOutput) => void + ): void; + public listVpcEndpointsForDomain( + args: ListVpcEndpointsForDomainCommandInput, + optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: ListVpcEndpointsForDomainCommandOutput) => void), + cb?: (err: any, data?: ListVpcEndpointsForDomainCommandOutput) => void + ): Promise | void { + const command = new ListVpcEndpointsForDomainCommand(args); + if (typeof optionsOrCb === "function") { + this.send(command, optionsOrCb); + } else if (typeof cb === "function") { + if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`); + this.send(command, optionsOrCb || {}, cb); + } else { + return this.send(command, optionsOrCb); + } + } + /** *

Allows you to purchase reserved Elasticsearch instances.

*/ @@ -1413,6 +1683,39 @@ export class ElasticsearchService extends ElasticsearchServiceClient { } } + /** + *

Revokes access to an Amazon OpenSearch Service domain that was provided through an interface + * VPC endpoint.

+ */ + public revokeVpcEndpointAccess( + args: RevokeVpcEndpointAccessCommandInput, + options?: __HttpHandlerOptions + ): Promise; + public revokeVpcEndpointAccess( + args: RevokeVpcEndpointAccessCommandInput, + cb: (err: any, data?: RevokeVpcEndpointAccessCommandOutput) => void + ): void; + public revokeVpcEndpointAccess( + args: RevokeVpcEndpointAccessCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: RevokeVpcEndpointAccessCommandOutput) => void + ): void; + public revokeVpcEndpointAccess( + args: RevokeVpcEndpointAccessCommandInput, + optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: RevokeVpcEndpointAccessCommandOutput) => void), + cb?: (err: any, data?: RevokeVpcEndpointAccessCommandOutput) => void + ): Promise | void { + const command = new RevokeVpcEndpointAccessCommand(args); + if (typeof optionsOrCb === "function") { + this.send(command, optionsOrCb); + } else if (typeof cb === "function") { + if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`); + this.send(command, optionsOrCb || {}, cb); + } else { + return this.send(command, optionsOrCb); + } + } + /** *

Schedules a service software update for an Amazon ES domain.

*/ @@ -1511,6 +1814,38 @@ export class ElasticsearchService extends ElasticsearchServiceClient { } } + /** + *

Modifies an Amazon OpenSearch Service-managed interface VPC endpoint.

+ */ + public updateVpcEndpoint( + args: UpdateVpcEndpointCommandInput, + options?: __HttpHandlerOptions + ): Promise; + public updateVpcEndpoint( + args: UpdateVpcEndpointCommandInput, + cb: (err: any, data?: UpdateVpcEndpointCommandOutput) => void + ): void; + public updateVpcEndpoint( + args: UpdateVpcEndpointCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateVpcEndpointCommandOutput) => void + ): void; + public updateVpcEndpoint( + args: UpdateVpcEndpointCommandInput, + optionsOrCb?: __HttpHandlerOptions | ((err: any, data?: UpdateVpcEndpointCommandOutput) => void), + cb?: (err: any, data?: UpdateVpcEndpointCommandOutput) => void + ): Promise | void { + const command = new UpdateVpcEndpointCommand(args); + if (typeof optionsOrCb === "function") { + this.send(command, optionsOrCb); + } else if (typeof cb === "function") { + if (typeof optionsOrCb !== "object") throw new Error(`Expect http options but get ${typeof optionsOrCb}`); + this.send(command, optionsOrCb || {}, cb); + } else { + return this.send(command, optionsOrCb); + } + } + /** *

Allows you to either upgrade your domain or perform an Upgrade eligibility check to a compatible Elasticsearch version.

*/ diff --git a/clients/client-elasticsearch-service/src/ElasticsearchServiceClient.ts b/clients/client-elasticsearch-service/src/ElasticsearchServiceClient.ts index 664405dcac07..624d73e8c3f8 100644 --- a/clients/client-elasticsearch-service/src/ElasticsearchServiceClient.ts +++ b/clients/client-elasticsearch-service/src/ElasticsearchServiceClient.ts @@ -53,6 +53,10 @@ import { } from "./commands/AcceptInboundCrossClusterSearchConnectionCommand"; import { AddTagsCommandInput, AddTagsCommandOutput } from "./commands/AddTagsCommand"; import { AssociatePackageCommandInput, AssociatePackageCommandOutput } from "./commands/AssociatePackageCommand"; +import { + AuthorizeVpcEndpointAccessCommandInput, + AuthorizeVpcEndpointAccessCommandOutput, +} from "./commands/AuthorizeVpcEndpointAccessCommand"; import { CancelElasticsearchServiceSoftwareUpdateCommandInput, CancelElasticsearchServiceSoftwareUpdateCommandOutput, @@ -66,6 +70,7 @@ import { CreateOutboundCrossClusterSearchConnectionCommandOutput, } from "./commands/CreateOutboundCrossClusterSearchConnectionCommand"; import { CreatePackageCommandInput, CreatePackageCommandOutput } from "./commands/CreatePackageCommand"; +import { CreateVpcEndpointCommandInput, CreateVpcEndpointCommandOutput } from "./commands/CreateVpcEndpointCommand"; import { DeleteElasticsearchDomainCommandInput, DeleteElasticsearchDomainCommandOutput, @@ -83,6 +88,7 @@ import { DeleteOutboundCrossClusterSearchConnectionCommandOutput, } from "./commands/DeleteOutboundCrossClusterSearchConnectionCommand"; import { DeletePackageCommandInput, DeletePackageCommandOutput } from "./commands/DeletePackageCommand"; +import { DeleteVpcEndpointCommandInput, DeleteVpcEndpointCommandOutput } from "./commands/DeleteVpcEndpointCommand"; import { DescribeDomainAutoTunesCommandInput, DescribeDomainAutoTunesCommandOutput, @@ -124,6 +130,10 @@ import { DescribeReservedElasticsearchInstancesCommandInput, DescribeReservedElasticsearchInstancesCommandOutput, } from "./commands/DescribeReservedElasticsearchInstancesCommand"; +import { + DescribeVpcEndpointsCommandInput, + DescribeVpcEndpointsCommandOutput, +} from "./commands/DescribeVpcEndpointsCommand"; import { DissociatePackageCommandInput, DissociatePackageCommandOutput } from "./commands/DissociatePackageCommand"; import { GetCompatibleElasticsearchVersionsCommandInput, @@ -153,6 +163,15 @@ import { ListPackagesForDomainCommandOutput, } from "./commands/ListPackagesForDomainCommand"; import { ListTagsCommandInput, ListTagsCommandOutput } from "./commands/ListTagsCommand"; +import { + ListVpcEndpointAccessCommandInput, + ListVpcEndpointAccessCommandOutput, +} from "./commands/ListVpcEndpointAccessCommand"; +import { ListVpcEndpointsCommandInput, ListVpcEndpointsCommandOutput } from "./commands/ListVpcEndpointsCommand"; +import { + ListVpcEndpointsForDomainCommandInput, + ListVpcEndpointsForDomainCommandOutput, +} from "./commands/ListVpcEndpointsForDomainCommand"; import { PurchaseReservedElasticsearchInstanceOfferingCommandInput, PurchaseReservedElasticsearchInstanceOfferingCommandOutput, @@ -162,6 +181,10 @@ import { RejectInboundCrossClusterSearchConnectionCommandOutput, } from "./commands/RejectInboundCrossClusterSearchConnectionCommand"; import { RemoveTagsCommandInput, RemoveTagsCommandOutput } from "./commands/RemoveTagsCommand"; +import { + RevokeVpcEndpointAccessCommandInput, + RevokeVpcEndpointAccessCommandOutput, +} from "./commands/RevokeVpcEndpointAccessCommand"; import { StartElasticsearchServiceSoftwareUpdateCommandInput, StartElasticsearchServiceSoftwareUpdateCommandOutput, @@ -171,6 +194,7 @@ import { UpdateElasticsearchDomainConfigCommandOutput, } from "./commands/UpdateElasticsearchDomainConfigCommand"; import { UpdatePackageCommandInput, UpdatePackageCommandOutput } from "./commands/UpdatePackageCommand"; +import { UpdateVpcEndpointCommandInput, UpdateVpcEndpointCommandOutput } from "./commands/UpdateVpcEndpointCommand"; import { UpgradeElasticsearchDomainCommandInput, UpgradeElasticsearchDomainCommandOutput, @@ -187,15 +211,18 @@ export type ServiceInputTypes = | AcceptInboundCrossClusterSearchConnectionCommandInput | AddTagsCommandInput | AssociatePackageCommandInput + | AuthorizeVpcEndpointAccessCommandInput | CancelElasticsearchServiceSoftwareUpdateCommandInput | CreateElasticsearchDomainCommandInput | CreateOutboundCrossClusterSearchConnectionCommandInput | CreatePackageCommandInput + | CreateVpcEndpointCommandInput | DeleteElasticsearchDomainCommandInput | DeleteElasticsearchServiceRoleCommandInput | DeleteInboundCrossClusterSearchConnectionCommandInput | DeleteOutboundCrossClusterSearchConnectionCommandInput | DeletePackageCommandInput + | DeleteVpcEndpointCommandInput | DescribeDomainAutoTunesCommandInput | DescribeDomainChangeProgressCommandInput | DescribeElasticsearchDomainCommandInput @@ -207,6 +234,7 @@ export type ServiceInputTypes = | DescribePackagesCommandInput | DescribeReservedElasticsearchInstanceOfferingsCommandInput | DescribeReservedElasticsearchInstancesCommandInput + | DescribeVpcEndpointsCommandInput | DissociatePackageCommandInput | GetCompatibleElasticsearchVersionsCommandInput | GetPackageVersionHistoryCommandInput @@ -218,27 +246,35 @@ export type ServiceInputTypes = | ListElasticsearchVersionsCommandInput | ListPackagesForDomainCommandInput | ListTagsCommandInput + | ListVpcEndpointAccessCommandInput + | ListVpcEndpointsCommandInput + | ListVpcEndpointsForDomainCommandInput | PurchaseReservedElasticsearchInstanceOfferingCommandInput | RejectInboundCrossClusterSearchConnectionCommandInput | RemoveTagsCommandInput + | RevokeVpcEndpointAccessCommandInput | StartElasticsearchServiceSoftwareUpdateCommandInput | UpdateElasticsearchDomainConfigCommandInput | UpdatePackageCommandInput + | UpdateVpcEndpointCommandInput | UpgradeElasticsearchDomainCommandInput; export type ServiceOutputTypes = | AcceptInboundCrossClusterSearchConnectionCommandOutput | AddTagsCommandOutput | AssociatePackageCommandOutput + | AuthorizeVpcEndpointAccessCommandOutput | CancelElasticsearchServiceSoftwareUpdateCommandOutput | CreateElasticsearchDomainCommandOutput | CreateOutboundCrossClusterSearchConnectionCommandOutput | CreatePackageCommandOutput + | CreateVpcEndpointCommandOutput | DeleteElasticsearchDomainCommandOutput | DeleteElasticsearchServiceRoleCommandOutput | DeleteInboundCrossClusterSearchConnectionCommandOutput | DeleteOutboundCrossClusterSearchConnectionCommandOutput | DeletePackageCommandOutput + | DeleteVpcEndpointCommandOutput | DescribeDomainAutoTunesCommandOutput | DescribeDomainChangeProgressCommandOutput | DescribeElasticsearchDomainCommandOutput @@ -250,6 +286,7 @@ export type ServiceOutputTypes = | DescribePackagesCommandOutput | DescribeReservedElasticsearchInstanceOfferingsCommandOutput | DescribeReservedElasticsearchInstancesCommandOutput + | DescribeVpcEndpointsCommandOutput | DissociatePackageCommandOutput | GetCompatibleElasticsearchVersionsCommandOutput | GetPackageVersionHistoryCommandOutput @@ -261,12 +298,17 @@ export type ServiceOutputTypes = | ListElasticsearchVersionsCommandOutput | ListPackagesForDomainCommandOutput | ListTagsCommandOutput + | ListVpcEndpointAccessCommandOutput + | ListVpcEndpointsCommandOutput + | ListVpcEndpointsForDomainCommandOutput | PurchaseReservedElasticsearchInstanceOfferingCommandOutput | RejectInboundCrossClusterSearchConnectionCommandOutput | RemoveTagsCommandOutput + | RevokeVpcEndpointAccessCommandOutput | StartElasticsearchServiceSoftwareUpdateCommandOutput | UpdateElasticsearchDomainConfigCommandOutput | UpdatePackageCommandOutput + | UpdateVpcEndpointCommandOutput | UpgradeElasticsearchDomainCommandOutput; export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__HttpHandlerOptions>> { diff --git a/clients/client-elasticsearch-service/src/commands/AuthorizeVpcEndpointAccessCommand.ts b/clients/client-elasticsearch-service/src/commands/AuthorizeVpcEndpointAccessCommand.ts new file mode 100644 index 000000000000..286f1ac12ed3 --- /dev/null +++ b/clients/client-elasticsearch-service/src/commands/AuthorizeVpcEndpointAccessCommand.ts @@ -0,0 +1,121 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +import { + ElasticsearchServiceClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ElasticsearchServiceClient"; +import { + AuthorizeVpcEndpointAccessRequest, + AuthorizeVpcEndpointAccessRequestFilterSensitiveLog, + AuthorizeVpcEndpointAccessResponse, + AuthorizeVpcEndpointAccessResponseFilterSensitiveLog, +} from "../models/models_0"; +import { + deserializeAws_restJson1AuthorizeVpcEndpointAccessCommand, + serializeAws_restJson1AuthorizeVpcEndpointAccessCommand, +} from "../protocols/Aws_restJson1"; + +export interface AuthorizeVpcEndpointAccessCommandInput extends AuthorizeVpcEndpointAccessRequest {} +export interface AuthorizeVpcEndpointAccessCommandOutput extends AuthorizeVpcEndpointAccessResponse, __MetadataBearer {} + +/** + *

Provides access to an Amazon OpenSearch Service domain through the use of an interface VPC endpoint.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ElasticsearchServiceClient, AuthorizeVpcEndpointAccessCommand } from "@aws-sdk/client-elasticsearch-service"; // ES Modules import + * // const { ElasticsearchServiceClient, AuthorizeVpcEndpointAccessCommand } = require("@aws-sdk/client-elasticsearch-service"); // CommonJS import + * const client = new ElasticsearchServiceClient(config); + * const command = new AuthorizeVpcEndpointAccessCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link AuthorizeVpcEndpointAccessCommandInput} for command's `input` shape. + * @see {@link AuthorizeVpcEndpointAccessCommandOutput} for command's `response` shape. + * @see {@link ElasticsearchServiceClientResolvedConfig | config} for ElasticsearchServiceClient's `config` shape. + * + */ +export class AuthorizeVpcEndpointAccessCommand extends $Command< + AuthorizeVpcEndpointAccessCommandInput, + AuthorizeVpcEndpointAccessCommandOutput, + ElasticsearchServiceClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + constructor(readonly input: AuthorizeVpcEndpointAccessCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ElasticsearchServiceClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, AuthorizeVpcEndpointAccessCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ElasticsearchServiceClient"; + const commandName = "AuthorizeVpcEndpointAccessCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: AuthorizeVpcEndpointAccessRequestFilterSensitiveLog, + outputFilterSensitiveLog: AuthorizeVpcEndpointAccessResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + private serialize(input: AuthorizeVpcEndpointAccessCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return serializeAws_restJson1AuthorizeVpcEndpointAccessCommand(input, context); + } + + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return deserializeAws_restJson1AuthorizeVpcEndpointAccessCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-elasticsearch-service/src/commands/CreateVpcEndpointCommand.ts b/clients/client-elasticsearch-service/src/commands/CreateVpcEndpointCommand.ts new file mode 100644 index 000000000000..3cdb4e7a5d63 --- /dev/null +++ b/clients/client-elasticsearch-service/src/commands/CreateVpcEndpointCommand.ts @@ -0,0 +1,118 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +import { + ElasticsearchServiceClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ElasticsearchServiceClient"; +import { + CreateVpcEndpointRequest, + CreateVpcEndpointRequestFilterSensitiveLog, + CreateVpcEndpointResponse, + CreateVpcEndpointResponseFilterSensitiveLog, +} from "../models/models_0"; +import { + deserializeAws_restJson1CreateVpcEndpointCommand, + serializeAws_restJson1CreateVpcEndpointCommand, +} from "../protocols/Aws_restJson1"; + +export interface CreateVpcEndpointCommandInput extends CreateVpcEndpointRequest {} +export interface CreateVpcEndpointCommandOutput extends CreateVpcEndpointResponse, __MetadataBearer {} + +/** + *

Creates an Amazon OpenSearch Service-managed VPC endpoint.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ElasticsearchServiceClient, CreateVpcEndpointCommand } from "@aws-sdk/client-elasticsearch-service"; // ES Modules import + * // const { ElasticsearchServiceClient, CreateVpcEndpointCommand } = require("@aws-sdk/client-elasticsearch-service"); // CommonJS import + * const client = new ElasticsearchServiceClient(config); + * const command = new CreateVpcEndpointCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link CreateVpcEndpointCommandInput} for command's `input` shape. + * @see {@link CreateVpcEndpointCommandOutput} for command's `response` shape. + * @see {@link ElasticsearchServiceClientResolvedConfig | config} for ElasticsearchServiceClient's `config` shape. + * + */ +export class CreateVpcEndpointCommand extends $Command< + CreateVpcEndpointCommandInput, + CreateVpcEndpointCommandOutput, + ElasticsearchServiceClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + constructor(readonly input: CreateVpcEndpointCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ElasticsearchServiceClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, CreateVpcEndpointCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ElasticsearchServiceClient"; + const commandName = "CreateVpcEndpointCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: CreateVpcEndpointRequestFilterSensitiveLog, + outputFilterSensitiveLog: CreateVpcEndpointResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + private serialize(input: CreateVpcEndpointCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return serializeAws_restJson1CreateVpcEndpointCommand(input, context); + } + + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return deserializeAws_restJson1CreateVpcEndpointCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-elasticsearch-service/src/commands/DeleteVpcEndpointCommand.ts b/clients/client-elasticsearch-service/src/commands/DeleteVpcEndpointCommand.ts new file mode 100644 index 000000000000..545b0336b1cc --- /dev/null +++ b/clients/client-elasticsearch-service/src/commands/DeleteVpcEndpointCommand.ts @@ -0,0 +1,118 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +import { + ElasticsearchServiceClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ElasticsearchServiceClient"; +import { + DeleteVpcEndpointRequest, + DeleteVpcEndpointRequestFilterSensitiveLog, + DeleteVpcEndpointResponse, + DeleteVpcEndpointResponseFilterSensitiveLog, +} from "../models/models_0"; +import { + deserializeAws_restJson1DeleteVpcEndpointCommand, + serializeAws_restJson1DeleteVpcEndpointCommand, +} from "../protocols/Aws_restJson1"; + +export interface DeleteVpcEndpointCommandInput extends DeleteVpcEndpointRequest {} +export interface DeleteVpcEndpointCommandOutput extends DeleteVpcEndpointResponse, __MetadataBearer {} + +/** + *

Deletes an Amazon OpenSearch Service-managed interface VPC endpoint.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ElasticsearchServiceClient, DeleteVpcEndpointCommand } from "@aws-sdk/client-elasticsearch-service"; // ES Modules import + * // const { ElasticsearchServiceClient, DeleteVpcEndpointCommand } = require("@aws-sdk/client-elasticsearch-service"); // CommonJS import + * const client = new ElasticsearchServiceClient(config); + * const command = new DeleteVpcEndpointCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeleteVpcEndpointCommandInput} for command's `input` shape. + * @see {@link DeleteVpcEndpointCommandOutput} for command's `response` shape. + * @see {@link ElasticsearchServiceClientResolvedConfig | config} for ElasticsearchServiceClient's `config` shape. + * + */ +export class DeleteVpcEndpointCommand extends $Command< + DeleteVpcEndpointCommandInput, + DeleteVpcEndpointCommandOutput, + ElasticsearchServiceClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + constructor(readonly input: DeleteVpcEndpointCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ElasticsearchServiceClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, DeleteVpcEndpointCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ElasticsearchServiceClient"; + const commandName = "DeleteVpcEndpointCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: DeleteVpcEndpointRequestFilterSensitiveLog, + outputFilterSensitiveLog: DeleteVpcEndpointResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + private serialize(input: DeleteVpcEndpointCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return serializeAws_restJson1DeleteVpcEndpointCommand(input, context); + } + + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return deserializeAws_restJson1DeleteVpcEndpointCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-elasticsearch-service/src/commands/DescribeVpcEndpointsCommand.ts b/clients/client-elasticsearch-service/src/commands/DescribeVpcEndpointsCommand.ts new file mode 100644 index 000000000000..c6c87cf03f56 --- /dev/null +++ b/clients/client-elasticsearch-service/src/commands/DescribeVpcEndpointsCommand.ts @@ -0,0 +1,118 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +import { + ElasticsearchServiceClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ElasticsearchServiceClient"; +import { + DescribeVpcEndpointsRequest, + DescribeVpcEndpointsRequestFilterSensitiveLog, + DescribeVpcEndpointsResponse, + DescribeVpcEndpointsResponseFilterSensitiveLog, +} from "../models/models_0"; +import { + deserializeAws_restJson1DescribeVpcEndpointsCommand, + serializeAws_restJson1DescribeVpcEndpointsCommand, +} from "../protocols/Aws_restJson1"; + +export interface DescribeVpcEndpointsCommandInput extends DescribeVpcEndpointsRequest {} +export interface DescribeVpcEndpointsCommandOutput extends DescribeVpcEndpointsResponse, __MetadataBearer {} + +/** + *

Describes one or more Amazon OpenSearch Service-managed VPC endpoints.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ElasticsearchServiceClient, DescribeVpcEndpointsCommand } from "@aws-sdk/client-elasticsearch-service"; // ES Modules import + * // const { ElasticsearchServiceClient, DescribeVpcEndpointsCommand } = require("@aws-sdk/client-elasticsearch-service"); // CommonJS import + * const client = new ElasticsearchServiceClient(config); + * const command = new DescribeVpcEndpointsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeVpcEndpointsCommandInput} for command's `input` shape. + * @see {@link DescribeVpcEndpointsCommandOutput} for command's `response` shape. + * @see {@link ElasticsearchServiceClientResolvedConfig | config} for ElasticsearchServiceClient's `config` shape. + * + */ +export class DescribeVpcEndpointsCommand extends $Command< + DescribeVpcEndpointsCommandInput, + DescribeVpcEndpointsCommandOutput, + ElasticsearchServiceClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + constructor(readonly input: DescribeVpcEndpointsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ElasticsearchServiceClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, DescribeVpcEndpointsCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ElasticsearchServiceClient"; + const commandName = "DescribeVpcEndpointsCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: DescribeVpcEndpointsRequestFilterSensitiveLog, + outputFilterSensitiveLog: DescribeVpcEndpointsResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + private serialize(input: DescribeVpcEndpointsCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return serializeAws_restJson1DescribeVpcEndpointsCommand(input, context); + } + + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return deserializeAws_restJson1DescribeVpcEndpointsCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-elasticsearch-service/src/commands/ListVpcEndpointAccessCommand.ts b/clients/client-elasticsearch-service/src/commands/ListVpcEndpointAccessCommand.ts new file mode 100644 index 000000000000..d767622da15d --- /dev/null +++ b/clients/client-elasticsearch-service/src/commands/ListVpcEndpointAccessCommand.ts @@ -0,0 +1,119 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +import { + ElasticsearchServiceClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ElasticsearchServiceClient"; +import { + ListVpcEndpointAccessRequest, + ListVpcEndpointAccessRequestFilterSensitiveLog, + ListVpcEndpointAccessResponse, + ListVpcEndpointAccessResponseFilterSensitiveLog, +} from "../models/models_0"; +import { + deserializeAws_restJson1ListVpcEndpointAccessCommand, + serializeAws_restJson1ListVpcEndpointAccessCommand, +} from "../protocols/Aws_restJson1"; + +export interface ListVpcEndpointAccessCommandInput extends ListVpcEndpointAccessRequest {} +export interface ListVpcEndpointAccessCommandOutput extends ListVpcEndpointAccessResponse, __MetadataBearer {} + +/** + *

Retrieves information about each principal that is allowed to access a + * given Amazon OpenSearch Service domain through the use of an interface VPC endpoint.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ElasticsearchServiceClient, ListVpcEndpointAccessCommand } from "@aws-sdk/client-elasticsearch-service"; // ES Modules import + * // const { ElasticsearchServiceClient, ListVpcEndpointAccessCommand } = require("@aws-sdk/client-elasticsearch-service"); // CommonJS import + * const client = new ElasticsearchServiceClient(config); + * const command = new ListVpcEndpointAccessCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ListVpcEndpointAccessCommandInput} for command's `input` shape. + * @see {@link ListVpcEndpointAccessCommandOutput} for command's `response` shape. + * @see {@link ElasticsearchServiceClientResolvedConfig | config} for ElasticsearchServiceClient's `config` shape. + * + */ +export class ListVpcEndpointAccessCommand extends $Command< + ListVpcEndpointAccessCommandInput, + ListVpcEndpointAccessCommandOutput, + ElasticsearchServiceClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + constructor(readonly input: ListVpcEndpointAccessCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ElasticsearchServiceClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListVpcEndpointAccessCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ElasticsearchServiceClient"; + const commandName = "ListVpcEndpointAccessCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: ListVpcEndpointAccessRequestFilterSensitiveLog, + outputFilterSensitiveLog: ListVpcEndpointAccessResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + private serialize(input: ListVpcEndpointAccessCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return serializeAws_restJson1ListVpcEndpointAccessCommand(input, context); + } + + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return deserializeAws_restJson1ListVpcEndpointAccessCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-elasticsearch-service/src/commands/ListVpcEndpointsCommand.ts b/clients/client-elasticsearch-service/src/commands/ListVpcEndpointsCommand.ts new file mode 100644 index 000000000000..eef23a443389 --- /dev/null +++ b/clients/client-elasticsearch-service/src/commands/ListVpcEndpointsCommand.ts @@ -0,0 +1,118 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +import { + ElasticsearchServiceClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ElasticsearchServiceClient"; +import { + ListVpcEndpointsRequest, + ListVpcEndpointsRequestFilterSensitiveLog, + ListVpcEndpointsResponse, + ListVpcEndpointsResponseFilterSensitiveLog, +} from "../models/models_0"; +import { + deserializeAws_restJson1ListVpcEndpointsCommand, + serializeAws_restJson1ListVpcEndpointsCommand, +} from "../protocols/Aws_restJson1"; + +export interface ListVpcEndpointsCommandInput extends ListVpcEndpointsRequest {} +export interface ListVpcEndpointsCommandOutput extends ListVpcEndpointsResponse, __MetadataBearer {} + +/** + *

Retrieves all Amazon OpenSearch Service-managed VPC endpoints in the current account and Region.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ElasticsearchServiceClient, ListVpcEndpointsCommand } from "@aws-sdk/client-elasticsearch-service"; // ES Modules import + * // const { ElasticsearchServiceClient, ListVpcEndpointsCommand } = require("@aws-sdk/client-elasticsearch-service"); // CommonJS import + * const client = new ElasticsearchServiceClient(config); + * const command = new ListVpcEndpointsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ListVpcEndpointsCommandInput} for command's `input` shape. + * @see {@link ListVpcEndpointsCommandOutput} for command's `response` shape. + * @see {@link ElasticsearchServiceClientResolvedConfig | config} for ElasticsearchServiceClient's `config` shape. + * + */ +export class ListVpcEndpointsCommand extends $Command< + ListVpcEndpointsCommandInput, + ListVpcEndpointsCommandOutput, + ElasticsearchServiceClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + constructor(readonly input: ListVpcEndpointsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ElasticsearchServiceClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListVpcEndpointsCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ElasticsearchServiceClient"; + const commandName = "ListVpcEndpointsCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: ListVpcEndpointsRequestFilterSensitiveLog, + outputFilterSensitiveLog: ListVpcEndpointsResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + private serialize(input: ListVpcEndpointsCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return serializeAws_restJson1ListVpcEndpointsCommand(input, context); + } + + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return deserializeAws_restJson1ListVpcEndpointsCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-elasticsearch-service/src/commands/ListVpcEndpointsForDomainCommand.ts b/clients/client-elasticsearch-service/src/commands/ListVpcEndpointsForDomainCommand.ts new file mode 100644 index 000000000000..4b954ea9d7e7 --- /dev/null +++ b/clients/client-elasticsearch-service/src/commands/ListVpcEndpointsForDomainCommand.ts @@ -0,0 +1,121 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +import { + ElasticsearchServiceClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ElasticsearchServiceClient"; +import { + ListVpcEndpointsForDomainRequest, + ListVpcEndpointsForDomainRequestFilterSensitiveLog, + ListVpcEndpointsForDomainResponse, + ListVpcEndpointsForDomainResponseFilterSensitiveLog, +} from "../models/models_0"; +import { + deserializeAws_restJson1ListVpcEndpointsForDomainCommand, + serializeAws_restJson1ListVpcEndpointsForDomainCommand, +} from "../protocols/Aws_restJson1"; + +export interface ListVpcEndpointsForDomainCommandInput extends ListVpcEndpointsForDomainRequest {} +export interface ListVpcEndpointsForDomainCommandOutput extends ListVpcEndpointsForDomainResponse, __MetadataBearer {} + +/** + *

Retrieves all Amazon OpenSearch Service-managed VPC endpoints associated with a particular domain.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ElasticsearchServiceClient, ListVpcEndpointsForDomainCommand } from "@aws-sdk/client-elasticsearch-service"; // ES Modules import + * // const { ElasticsearchServiceClient, ListVpcEndpointsForDomainCommand } = require("@aws-sdk/client-elasticsearch-service"); // CommonJS import + * const client = new ElasticsearchServiceClient(config); + * const command = new ListVpcEndpointsForDomainCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ListVpcEndpointsForDomainCommandInput} for command's `input` shape. + * @see {@link ListVpcEndpointsForDomainCommandOutput} for command's `response` shape. + * @see {@link ElasticsearchServiceClientResolvedConfig | config} for ElasticsearchServiceClient's `config` shape. + * + */ +export class ListVpcEndpointsForDomainCommand extends $Command< + ListVpcEndpointsForDomainCommandInput, + ListVpcEndpointsForDomainCommandOutput, + ElasticsearchServiceClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + constructor(readonly input: ListVpcEndpointsForDomainCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ElasticsearchServiceClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListVpcEndpointsForDomainCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ElasticsearchServiceClient"; + const commandName = "ListVpcEndpointsForDomainCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: ListVpcEndpointsForDomainRequestFilterSensitiveLog, + outputFilterSensitiveLog: ListVpcEndpointsForDomainResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + private serialize(input: ListVpcEndpointsForDomainCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return serializeAws_restJson1ListVpcEndpointsForDomainCommand(input, context); + } + + private deserialize( + output: __HttpResponse, + context: __SerdeContext + ): Promise { + return deserializeAws_restJson1ListVpcEndpointsForDomainCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-elasticsearch-service/src/commands/RevokeVpcEndpointAccessCommand.ts b/clients/client-elasticsearch-service/src/commands/RevokeVpcEndpointAccessCommand.ts new file mode 100644 index 000000000000..dc227e2af148 --- /dev/null +++ b/clients/client-elasticsearch-service/src/commands/RevokeVpcEndpointAccessCommand.ts @@ -0,0 +1,119 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +import { + ElasticsearchServiceClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ElasticsearchServiceClient"; +import { + RevokeVpcEndpointAccessRequest, + RevokeVpcEndpointAccessRequestFilterSensitiveLog, + RevokeVpcEndpointAccessResponse, + RevokeVpcEndpointAccessResponseFilterSensitiveLog, +} from "../models/models_0"; +import { + deserializeAws_restJson1RevokeVpcEndpointAccessCommand, + serializeAws_restJson1RevokeVpcEndpointAccessCommand, +} from "../protocols/Aws_restJson1"; + +export interface RevokeVpcEndpointAccessCommandInput extends RevokeVpcEndpointAccessRequest {} +export interface RevokeVpcEndpointAccessCommandOutput extends RevokeVpcEndpointAccessResponse, __MetadataBearer {} + +/** + *

Revokes access to an Amazon OpenSearch Service domain that was provided through an interface + * VPC endpoint.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ElasticsearchServiceClient, RevokeVpcEndpointAccessCommand } from "@aws-sdk/client-elasticsearch-service"; // ES Modules import + * // const { ElasticsearchServiceClient, RevokeVpcEndpointAccessCommand } = require("@aws-sdk/client-elasticsearch-service"); // CommonJS import + * const client = new ElasticsearchServiceClient(config); + * const command = new RevokeVpcEndpointAccessCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link RevokeVpcEndpointAccessCommandInput} for command's `input` shape. + * @see {@link RevokeVpcEndpointAccessCommandOutput} for command's `response` shape. + * @see {@link ElasticsearchServiceClientResolvedConfig | config} for ElasticsearchServiceClient's `config` shape. + * + */ +export class RevokeVpcEndpointAccessCommand extends $Command< + RevokeVpcEndpointAccessCommandInput, + RevokeVpcEndpointAccessCommandOutput, + ElasticsearchServiceClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + constructor(readonly input: RevokeVpcEndpointAccessCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ElasticsearchServiceClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, RevokeVpcEndpointAccessCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ElasticsearchServiceClient"; + const commandName = "RevokeVpcEndpointAccessCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: RevokeVpcEndpointAccessRequestFilterSensitiveLog, + outputFilterSensitiveLog: RevokeVpcEndpointAccessResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + private serialize(input: RevokeVpcEndpointAccessCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return serializeAws_restJson1RevokeVpcEndpointAccessCommand(input, context); + } + + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return deserializeAws_restJson1RevokeVpcEndpointAccessCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-elasticsearch-service/src/commands/UpdateVpcEndpointCommand.ts b/clients/client-elasticsearch-service/src/commands/UpdateVpcEndpointCommand.ts new file mode 100644 index 000000000000..39e8222cac5c --- /dev/null +++ b/clients/client-elasticsearch-service/src/commands/UpdateVpcEndpointCommand.ts @@ -0,0 +1,118 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@aws-sdk/middleware-endpoint"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +import { + ElasticsearchServiceClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../ElasticsearchServiceClient"; +import { + UpdateVpcEndpointRequest, + UpdateVpcEndpointRequestFilterSensitiveLog, + UpdateVpcEndpointResponse, + UpdateVpcEndpointResponseFilterSensitiveLog, +} from "../models/models_0"; +import { + deserializeAws_restJson1UpdateVpcEndpointCommand, + serializeAws_restJson1UpdateVpcEndpointCommand, +} from "../protocols/Aws_restJson1"; + +export interface UpdateVpcEndpointCommandInput extends UpdateVpcEndpointRequest {} +export interface UpdateVpcEndpointCommandOutput extends UpdateVpcEndpointResponse, __MetadataBearer {} + +/** + *

Modifies an Amazon OpenSearch Service-managed interface VPC endpoint.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ElasticsearchServiceClient, UpdateVpcEndpointCommand } from "@aws-sdk/client-elasticsearch-service"; // ES Modules import + * // const { ElasticsearchServiceClient, UpdateVpcEndpointCommand } = require("@aws-sdk/client-elasticsearch-service"); // CommonJS import + * const client = new ElasticsearchServiceClient(config); + * const command = new UpdateVpcEndpointCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link UpdateVpcEndpointCommandInput} for command's `input` shape. + * @see {@link UpdateVpcEndpointCommandOutput} for command's `response` shape. + * @see {@link ElasticsearchServiceClientResolvedConfig | config} for ElasticsearchServiceClient's `config` shape. + * + */ +export class UpdateVpcEndpointCommand extends $Command< + UpdateVpcEndpointCommandInput, + UpdateVpcEndpointCommandOutput, + ElasticsearchServiceClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + constructor(readonly input: UpdateVpcEndpointCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ElasticsearchServiceClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, UpdateVpcEndpointCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ElasticsearchServiceClient"; + const commandName = "UpdateVpcEndpointCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: UpdateVpcEndpointRequestFilterSensitiveLog, + outputFilterSensitiveLog: UpdateVpcEndpointResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + private serialize(input: UpdateVpcEndpointCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return serializeAws_restJson1UpdateVpcEndpointCommand(input, context); + } + + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return deserializeAws_restJson1UpdateVpcEndpointCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-elasticsearch-service/src/commands/index.ts b/clients/client-elasticsearch-service/src/commands/index.ts index f46292e2ef65..c8ffd1a673fd 100644 --- a/clients/client-elasticsearch-service/src/commands/index.ts +++ b/clients/client-elasticsearch-service/src/commands/index.ts @@ -2,15 +2,18 @@ export * from "./AcceptInboundCrossClusterSearchConnectionCommand"; export * from "./AddTagsCommand"; export * from "./AssociatePackageCommand"; +export * from "./AuthorizeVpcEndpointAccessCommand"; export * from "./CancelElasticsearchServiceSoftwareUpdateCommand"; export * from "./CreateElasticsearchDomainCommand"; export * from "./CreateOutboundCrossClusterSearchConnectionCommand"; export * from "./CreatePackageCommand"; +export * from "./CreateVpcEndpointCommand"; export * from "./DeleteElasticsearchDomainCommand"; export * from "./DeleteElasticsearchServiceRoleCommand"; export * from "./DeleteInboundCrossClusterSearchConnectionCommand"; export * from "./DeleteOutboundCrossClusterSearchConnectionCommand"; export * from "./DeletePackageCommand"; +export * from "./DeleteVpcEndpointCommand"; export * from "./DescribeDomainAutoTunesCommand"; export * from "./DescribeDomainChangeProgressCommand"; export * from "./DescribeElasticsearchDomainCommand"; @@ -22,6 +25,7 @@ export * from "./DescribeOutboundCrossClusterSearchConnectionsCommand"; export * from "./DescribePackagesCommand"; export * from "./DescribeReservedElasticsearchInstanceOfferingsCommand"; export * from "./DescribeReservedElasticsearchInstancesCommand"; +export * from "./DescribeVpcEndpointsCommand"; export * from "./DissociatePackageCommand"; export * from "./GetCompatibleElasticsearchVersionsCommand"; export * from "./GetPackageVersionHistoryCommand"; @@ -33,10 +37,15 @@ export * from "./ListElasticsearchInstanceTypesCommand"; export * from "./ListElasticsearchVersionsCommand"; export * from "./ListPackagesForDomainCommand"; export * from "./ListTagsCommand"; +export * from "./ListVpcEndpointAccessCommand"; +export * from "./ListVpcEndpointsCommand"; +export * from "./ListVpcEndpointsForDomainCommand"; export * from "./PurchaseReservedElasticsearchInstanceOfferingCommand"; export * from "./RejectInboundCrossClusterSearchConnectionCommand"; export * from "./RemoveTagsCommand"; +export * from "./RevokeVpcEndpointAccessCommand"; export * from "./StartElasticsearchServiceSoftwareUpdateCommand"; export * from "./UpdateElasticsearchDomainConfigCommand"; export * from "./UpdatePackageCommand"; +export * from "./UpdateVpcEndpointCommand"; export * from "./UpgradeElasticsearchDomainCommand"; diff --git a/clients/client-elasticsearch-service/src/models/models_0.ts b/clients/client-elasticsearch-service/src/models/models_0.ts index 9f05f1fdc025..fdbb8c785eed 100644 --- a/clients/client-elasticsearch-service/src/models/models_0.ts +++ b/clients/client-elasticsearch-service/src/models/models_0.ts @@ -166,7 +166,11 @@ export class AccessDeniedException extends __BaseException { } } -export type OptionState = "Active" | "Processing" | "RequiresIndexDocuments"; +export enum OptionState { + Active = "Active", + Processing = "Processing", + RequiresIndexDocuments = "RequiresIndexDocuments", +} /** *

Provides the current status of the entity.

@@ -576,19 +580,22 @@ export interface AssociatePackageRequest { DomainName: string | undefined; } -export type DomainPackageStatus = - | "ACTIVE" - | "ASSOCIATING" - | "ASSOCIATION_FAILED" - | "DISSOCIATING" - | "DISSOCIATION_FAILED"; +export enum DomainPackageStatus { + ACTIVE = "ACTIVE", + ASSOCIATING = "ASSOCIATING", + ASSOCIATION_FAILED = "ASSOCIATION_FAILED", + DISSOCIATING = "DISSOCIATING", + DISSOCIATION_FAILED = "DISSOCIATION_FAILED", +} export interface ErrorDetails { ErrorType?: string; ErrorMessage?: string; } -export type PackageType = "TXT-DICTIONARY"; +export enum PackageType { + TXT_DICTIONARY = "TXT-DICTIONARY", +} /** *

Information on a package that is associated with a domain.

@@ -671,6 +678,55 @@ export class ConflictException extends __BaseException { } } +/** + *

Container for request parameters to the AuthorizeVpcEndpointAccess operation. + * Specifies the account to be permitted to manage VPC endpoints against the domain.

+ */ +export interface AuthorizeVpcEndpointAccessRequest { + /** + *

The name of the OpenSearch Service domain to provide access to.

+ */ + DomainName: string | undefined; + + /** + *

The account ID to grant access to.

+ */ + Account: string | undefined; +} + +export enum PrincipalType { + AWS_ACCOUNT = "AWS_ACCOUNT", + AWS_SERVICE = "AWS_SERVICE", +} + +/** + *

Information about an account or service that has access to an Amazon + * OpenSearch Service domain through the use of an interface VPC endpoint.

+ */ +export interface AuthorizedPrincipal { + /** + *

The type of principal.

+ */ + PrincipalType?: PrincipalType | string; + + /** + *

The IAM principal that is allowed access to the domain.

+ */ + Principal?: string; +} + +/** + *

Container for response parameters to the AuthorizeVpcEndpointAccess operation. + * Contains the account ID and the type of the account being authorized to access the VPC endpoint.

+ */ +export interface AuthorizeVpcEndpointAccessResponse { + /** + *

Information about the account or service that was provided access to the + * domain.

+ */ + AuthorizedPrincipal: AuthorizedPrincipal | undefined; +} + /** *

Container for the parameters to the CancelElasticsearchServiceSoftwareUpdate operation. Specifies the name of the Elasticsearch domain that you wish to cancel a service software update on.

*/ @@ -681,7 +737,13 @@ export interface CancelElasticsearchServiceSoftwareUpdateRequest { DomainName: string | undefined; } -export type DeploymentStatus = "COMPLETED" | "ELIGIBLE" | "IN_PROGRESS" | "NOT_ELIGIBLE" | "PENDING_UPDATE"; +export enum DeploymentStatus { + COMPLETED = "COMPLETED", + ELIGIBLE = "ELIGIBLE", + IN_PROGRESS = "IN_PROGRESS", + NOT_ELIGIBLE = "NOT_ELIGIBLE", + PENDING_UPDATE = "PENDING_UPDATE", +} /** *

The current options of an Elasticsearch domain service software options.

@@ -863,7 +925,12 @@ export interface DomainEndpointOptions { CustomEndpointCertificateArn?: string; } -export type VolumeType = "gp2" | "gp3" | "io1" | "standard"; +export enum VolumeType { + gp2 = "gp2", + gp3 = "gp3", + io1 = "io1", + standard = "standard", +} /** *

Options to enable, disable, and specify the properties of EBS storage volumes. For more information, see Configuring EBS-based Storage.

@@ -905,67 +972,71 @@ export interface ColdStorageOptions { Enabled: boolean | undefined; } -export type ESPartitionInstanceType = - | "c4.2xlarge.elasticsearch" - | "c4.4xlarge.elasticsearch" - | "c4.8xlarge.elasticsearch" - | "c4.large.elasticsearch" - | "c4.xlarge.elasticsearch" - | "c5.18xlarge.elasticsearch" - | "c5.2xlarge.elasticsearch" - | "c5.4xlarge.elasticsearch" - | "c5.9xlarge.elasticsearch" - | "c5.large.elasticsearch" - | "c5.xlarge.elasticsearch" - | "d2.2xlarge.elasticsearch" - | "d2.4xlarge.elasticsearch" - | "d2.8xlarge.elasticsearch" - | "d2.xlarge.elasticsearch" - | "i2.2xlarge.elasticsearch" - | "i2.xlarge.elasticsearch" - | "i3.16xlarge.elasticsearch" - | "i3.2xlarge.elasticsearch" - | "i3.4xlarge.elasticsearch" - | "i3.8xlarge.elasticsearch" - | "i3.large.elasticsearch" - | "i3.xlarge.elasticsearch" - | "m3.2xlarge.elasticsearch" - | "m3.large.elasticsearch" - | "m3.medium.elasticsearch" - | "m3.xlarge.elasticsearch" - | "m4.10xlarge.elasticsearch" - | "m4.2xlarge.elasticsearch" - | "m4.4xlarge.elasticsearch" - | "m4.large.elasticsearch" - | "m4.xlarge.elasticsearch" - | "m5.12xlarge.elasticsearch" - | "m5.2xlarge.elasticsearch" - | "m5.4xlarge.elasticsearch" - | "m5.large.elasticsearch" - | "m5.xlarge.elasticsearch" - | "r3.2xlarge.elasticsearch" - | "r3.4xlarge.elasticsearch" - | "r3.8xlarge.elasticsearch" - | "r3.large.elasticsearch" - | "r3.xlarge.elasticsearch" - | "r4.16xlarge.elasticsearch" - | "r4.2xlarge.elasticsearch" - | "r4.4xlarge.elasticsearch" - | "r4.8xlarge.elasticsearch" - | "r4.large.elasticsearch" - | "r4.xlarge.elasticsearch" - | "r5.12xlarge.elasticsearch" - | "r5.2xlarge.elasticsearch" - | "r5.4xlarge.elasticsearch" - | "r5.large.elasticsearch" - | "r5.xlarge.elasticsearch" - | "t2.medium.elasticsearch" - | "t2.micro.elasticsearch" - | "t2.small.elasticsearch" - | "ultrawarm1.large.elasticsearch" - | "ultrawarm1.medium.elasticsearch"; - -export type ESWarmPartitionInstanceType = "ultrawarm1.large.elasticsearch" | "ultrawarm1.medium.elasticsearch"; +export enum ESPartitionInstanceType { + c4_2xlarge_elasticsearch = "c4.2xlarge.elasticsearch", + c4_4xlarge_elasticsearch = "c4.4xlarge.elasticsearch", + c4_8xlarge_elasticsearch = "c4.8xlarge.elasticsearch", + c4_large_elasticsearch = "c4.large.elasticsearch", + c4_xlarge_elasticsearch = "c4.xlarge.elasticsearch", + c5_18xlarge_elasticsearch = "c5.18xlarge.elasticsearch", + c5_2xlarge_elasticsearch = "c5.2xlarge.elasticsearch", + c5_4xlarge_elasticsearch = "c5.4xlarge.elasticsearch", + c5_9xlarge_elasticsearch = "c5.9xlarge.elasticsearch", + c5_large_elasticsearch = "c5.large.elasticsearch", + c5_xlarge_elasticsearch = "c5.xlarge.elasticsearch", + d2_2xlarge_elasticsearch = "d2.2xlarge.elasticsearch", + d2_4xlarge_elasticsearch = "d2.4xlarge.elasticsearch", + d2_8xlarge_elasticsearch = "d2.8xlarge.elasticsearch", + d2_xlarge_elasticsearch = "d2.xlarge.elasticsearch", + i2_2xlarge_elasticsearch = "i2.2xlarge.elasticsearch", + i2_xlarge_elasticsearch = "i2.xlarge.elasticsearch", + i3_16xlarge_elasticsearch = "i3.16xlarge.elasticsearch", + i3_2xlarge_elasticsearch = "i3.2xlarge.elasticsearch", + i3_4xlarge_elasticsearch = "i3.4xlarge.elasticsearch", + i3_8xlarge_elasticsearch = "i3.8xlarge.elasticsearch", + i3_large_elasticsearch = "i3.large.elasticsearch", + i3_xlarge_elasticsearch = "i3.xlarge.elasticsearch", + m3_2xlarge_elasticsearch = "m3.2xlarge.elasticsearch", + m3_large_elasticsearch = "m3.large.elasticsearch", + m3_medium_elasticsearch = "m3.medium.elasticsearch", + m3_xlarge_elasticsearch = "m3.xlarge.elasticsearch", + m4_10xlarge_elasticsearch = "m4.10xlarge.elasticsearch", + m4_2xlarge_elasticsearch = "m4.2xlarge.elasticsearch", + m4_4xlarge_elasticsearch = "m4.4xlarge.elasticsearch", + m4_large_elasticsearch = "m4.large.elasticsearch", + m4_xlarge_elasticsearch = "m4.xlarge.elasticsearch", + m5_12xlarge_elasticsearch = "m5.12xlarge.elasticsearch", + m5_2xlarge_elasticsearch = "m5.2xlarge.elasticsearch", + m5_4xlarge_elasticsearch = "m5.4xlarge.elasticsearch", + m5_large_elasticsearch = "m5.large.elasticsearch", + m5_xlarge_elasticsearch = "m5.xlarge.elasticsearch", + r3_2xlarge_elasticsearch = "r3.2xlarge.elasticsearch", + r3_4xlarge_elasticsearch = "r3.4xlarge.elasticsearch", + r3_8xlarge_elasticsearch = "r3.8xlarge.elasticsearch", + r3_large_elasticsearch = "r3.large.elasticsearch", + r3_xlarge_elasticsearch = "r3.xlarge.elasticsearch", + r4_16xlarge_elasticsearch = "r4.16xlarge.elasticsearch", + r4_2xlarge_elasticsearch = "r4.2xlarge.elasticsearch", + r4_4xlarge_elasticsearch = "r4.4xlarge.elasticsearch", + r4_8xlarge_elasticsearch = "r4.8xlarge.elasticsearch", + r4_large_elasticsearch = "r4.large.elasticsearch", + r4_xlarge_elasticsearch = "r4.xlarge.elasticsearch", + r5_12xlarge_elasticsearch = "r5.12xlarge.elasticsearch", + r5_2xlarge_elasticsearch = "r5.2xlarge.elasticsearch", + r5_4xlarge_elasticsearch = "r5.4xlarge.elasticsearch", + r5_large_elasticsearch = "r5.large.elasticsearch", + r5_xlarge_elasticsearch = "r5.xlarge.elasticsearch", + t2_medium_elasticsearch = "t2.medium.elasticsearch", + t2_micro_elasticsearch = "t2.micro.elasticsearch", + t2_small_elasticsearch = "t2.small.elasticsearch", + ultrawarm1_large_elasticsearch = "ultrawarm1.large.elasticsearch", + ultrawarm1_medium_elasticsearch = "ultrawarm1.medium.elasticsearch", +} + +export enum ESWarmPartitionInstanceType { + ultrawarm1_large_elasticsearch = "ultrawarm1.large.elasticsearch", + ultrawarm1_medium_elasticsearch = "ultrawarm1.medium.elasticsearch", +} /** *

Specifies the zone awareness configuration for the domain cluster, such as the number of availability zones.

@@ -1052,7 +1123,12 @@ export interface EncryptionAtRestOptions { KmsKeyId?: string; } -export type LogType = "AUDIT_LOGS" | "ES_APPLICATION_LOGS" | "INDEX_SLOW_LOGS" | "SEARCH_SLOW_LOGS"; +export enum LogType { + AUDIT_LOGS = "AUDIT_LOGS", + ES_APPLICATION_LOGS = "ES_APPLICATION_LOGS", + INDEX_SLOW_LOGS = "INDEX_SLOW_LOGS", + SEARCH_SLOW_LOGS = "SEARCH_SLOW_LOGS", +} /** *

Log Publishing option that is set for given domain. @@ -1567,15 +1643,16 @@ export interface CreatePackageRequest { PackageSource: PackageSource | undefined; } -export type PackageStatus = - | "AVAILABLE" - | "COPYING" - | "COPY_FAILED" - | "DELETED" - | "DELETE_FAILED" - | "DELETING" - | "VALIDATING" - | "VALIDATION_FAILED"; +export enum PackageStatus { + AVAILABLE = "AVAILABLE", + COPYING = "COPYING", + COPY_FAILED = "COPY_FAILED", + DELETED = "DELETED", + DELETE_FAILED = "DELETE_FAILED", + DELETING = "DELETING", + VALIDATING = "VALIDATING", + VALIDATION_FAILED = "VALIDATION_FAILED", +} /** *

Basic information about a package.

@@ -1635,6 +1712,83 @@ export interface CreatePackageResponse { PackageDetails?: PackageDetails; } +/** + *

Container for the parameters to the CreateVpcEndpointRequest operation.

+ */ +export interface CreateVpcEndpointRequest { + /** + *

The Amazon Resource Name (ARN) of the domain to grant access to.

+ */ + DomainArn: string | undefined; + + /** + *

Options to specify the subnets and security groups for the endpoint.

+ */ + VpcOptions: VPCOptions | undefined; + + /** + *

Unique, case-sensitive identifier to ensure idempotency of the request.

+ */ + ClientToken?: string; +} + +export enum VpcEndpointStatus { + ACTIVE = "ACTIVE", + CREATE_FAILED = "CREATE_FAILED", + CREATING = "CREATING", + DELETE_FAILED = "DELETE_FAILED", + DELETING = "DELETING", + UPDATE_FAILED = "UPDATE_FAILED", + UPDATING = "UPDATING", +} + +/** + *

The connection endpoint for connecting to an Amazon OpenSearch Service domain through a + * proxy.

+ */ +export interface VpcEndpoint { + /** + *

The unique identifier of the endpoint.

+ */ + VpcEndpointId?: string; + + /** + *

The creator of the endpoint.

+ */ + VpcEndpointOwner?: string; + + /** + *

The Amazon Resource Name (ARN) of the domain associated with the endpoint.

+ */ + DomainArn?: string; + + /** + *

Options to specify the subnets and security groups for an Amazon OpenSearch Service VPC + * endpoint.

+ */ + VpcOptions?: VPCDerivedInfo; + + /** + *

The current status of the endpoint.

+ */ + Status?: VpcEndpointStatus | string; + + /** + *

The connection endpoint ID for connecting to the domain.

+ */ + Endpoint?: string; +} + +/** + *

Container for response parameters to the CreateVpcEndpoint operation. Contains the configuration and status of the VPC Endpoint being created.

+ */ +export interface CreateVpcEndpointResponse { + /** + *

Information about the newly created VPC endpoint.

+ */ + VpcEndpoint: VpcEndpoint | undefined; +} + /** *

Container for the parameters to the DeleteElasticsearchDomain operation. Specifies the name of the Elasticsearch domain that you want to delete.

*/ @@ -1757,6 +1911,52 @@ export interface DeletePackageResponse { PackageDetails?: PackageDetails; } +/** + *

Deletes an Amazon OpenSearch Service-managed interface VPC endpoint.

+ */ +export interface DeleteVpcEndpointRequest { + /** + *

The unique identifier of the endpoint to be deleted.

+ */ + VpcEndpointId: string | undefined; +} + +/** + *

Summary information for an Amazon OpenSearch Service-managed VPC endpoint.

+ */ +export interface VpcEndpointSummary { + /** + *

The unique identifier of the endpoint.

+ */ + VpcEndpointId?: string; + + /** + *

The creator of the endpoint.

+ */ + VpcEndpointOwner?: string; + + /** + *

The Amazon Resource Name (ARN) of the domain associated with the endpoint.

+ */ + DomainArn?: string; + + /** + *

The current status of the endpoint.

+ */ + Status?: VpcEndpointStatus | string; +} + +/** + *

Container for response parameters to the DeleteVpcEndpoint operation. Contains the summarized detail of the VPC Endpoint being deleted.

+ */ +export interface DeleteVpcEndpointResponse { + /** + *

Information about the deleted endpoint, including its current status (DELETING + * or DELETE_FAILED).

+ */ + VpcEndpointSummary: VpcEndpointSummary | undefined; +} + /** *

Container for the parameters to the DescribeDomainAutoTunes operation.

*/ @@ -2782,7 +2982,11 @@ export interface DescribeReservedElasticsearchInstanceOfferingsRequest { NextToken?: string; } -export type ReservedElasticsearchInstancePaymentOption = "ALL_UPFRONT" | "NO_UPFRONT" | "PARTIAL_UPFRONT"; +export enum ReservedElasticsearchInstancePaymentOption { + ALL_UPFRONT = "ALL_UPFRONT", + NO_UPFRONT = "NO_UPFRONT", + PARTIAL_UPFRONT = "PARTIAL_UPFRONT", +} /** *

Contains the specific price and frequency of a recurring charges for a reserved Elasticsearch instance, or for a reserved Elasticsearch instance offering.

@@ -2965,6 +3169,58 @@ export interface DescribeReservedElasticsearchInstancesResponse { ReservedElasticsearchInstances?: ReservedElasticsearchInstance[]; } +/** + *

Container for request parameters to the DescribeVpcEndpoints operation. Specifies the list of VPC endpoints to be described.

+ */ +export interface DescribeVpcEndpointsRequest { + /** + *

The unique identifiers of the endpoints to get information about.

+ */ + VpcEndpointIds: string[] | undefined; +} + +export enum VpcEndpointErrorCode { + ENDPOINT_NOT_FOUND = "ENDPOINT_NOT_FOUND", + SERVER_ERROR = "SERVER_ERROR", +} + +/** + *

Error information when attempting to describe an Amazon OpenSearch Service-managed VPC + * endpoint.

+ */ +export interface VpcEndpointError { + /** + *

The unique identifier of the endpoint.

+ */ + VpcEndpointId?: string; + + /** + *

The code associated with the error.

+ */ + ErrorCode?: VpcEndpointErrorCode | string; + + /** + *

A message describing the error.

+ */ + ErrorMessage?: string; +} + +/** + *

Container for response parameters to the DescribeVpcEndpoints operation. Returns a list containing configuration details and + * status of the VPC Endpoints as well as a list containing error responses of the endpoints that could not be described

+ */ +export interface DescribeVpcEndpointsResponse { + /** + *

Information about each requested VPC endpoint.

+ */ + VpcEndpoints: VpcEndpoint[] | undefined; + + /** + *

Any errors associated with the request.

+ */ + VpcEndpointErrors: VpcEndpointError[] | undefined; +} + /** *

* Container for request parameters to @@ -3162,9 +3418,18 @@ export interface GetUpgradeHistoryRequest { NextToken?: string; } -export type UpgradeStep = "PRE_UPGRADE_CHECK" | "SNAPSHOT" | "UPGRADE"; +export enum UpgradeStep { + PRE_UPGRADE_CHECK = "PRE_UPGRADE_CHECK", + SNAPSHOT = "SNAPSHOT", + UPGRADE = "UPGRADE", +} -export type UpgradeStatus = "FAILED" | "IN_PROGRESS" | "SUCCEEDED" | "SUCCEEDED_WITH_ISSUES"; +export enum UpgradeStatus { + FAILED = "FAILED", + IN_PROGRESS = "IN_PROGRESS", + SUCCEEDED = "SUCCEEDED", + SUCCEEDED_WITH_ISSUES = "SUCCEEDED_WITH_ISSUES", +} /** *

Represents a single step of the Upgrade or Upgrade Eligibility Check workflow.

@@ -3623,6 +3888,93 @@ export interface ListTagsResponse { TagList?: Tag[]; } +/** + *

Retrieves information about each principal that is allowed to access a + * given Amazon OpenSearch Service domain through the use of an interface VPC endpoint

+ */ +export interface ListVpcEndpointAccessRequest { + /** + *

The name of the OpenSearch Service domain to retrieve access information for.

+ */ + DomainName: string | undefined; + + /** + *

Provides an identifier to allow retrieval of paginated results.

+ */ + NextToken?: string; +} + +/** + *

Container for response parameters to the ListVpcEndpointAccess operation. + * Returns a list of accounts id and account type authorized to manage VPC endpoints.

+ */ +export interface ListVpcEndpointAccessResponse { + /** + *

List of AuthorizedPrincipal describing the details of the permissions to manage VPC endpoints against the specified domain.

+ */ + AuthorizedPrincipalList: AuthorizedPrincipal[] | undefined; + + /** + *

Provides an identifier to allow retrieval of paginated results.

+ */ + NextToken: string | undefined; +} + +/** + *

Container for request parameters to the ListVpcEndpoints operation.

+ */ +export interface ListVpcEndpointsRequest { + /** + *

Identifier to allow retrieval of paginated results.

+ */ + NextToken?: string; +} + +/** + *

Container for response parameters to the ListVpcEndpoints operation. Returns a list containing summarized details of the VPC endpoints.

+ */ +export interface ListVpcEndpointsResponse { + /** + *

Information about each endpoint.

+ */ + VpcEndpointSummaryList: VpcEndpointSummary[] | undefined; + + /** + *

Provides an identifier to allow retrieval of paginated results.

+ */ + NextToken: string | undefined; +} + +/** + *

Container for request parameters to the ListVpcEndpointsForDomain operation. Specifies the domain whose VPC endpoints will be listed.

+ */ +export interface ListVpcEndpointsForDomainRequest { + /** + *

Name of the ElasticSearch domain whose VPC endpoints are to be listed.

+ */ + DomainName: string | undefined; + + /** + *

Provides an identifier to allow retrieval of paginated results.

+ */ + NextToken?: string; +} + +/** + *

Container for response parameters to the ListVpcEndpointsForDomain operation. Returns a list containing summarized details of the VPC endpoints.

+ */ +export interface ListVpcEndpointsForDomainResponse { + /** + *

Provides list of VpcEndpointSummary summarizing details of the VPC endpoints.

+ */ + VpcEndpointSummaryList: VpcEndpointSummary[] | undefined; + + /** + *

Information about each endpoint associated with the domain.

+ */ + NextToken: string | undefined; +} + /** *

Container for parameters to PurchaseReservedElasticsearchInstanceOffering

*/ @@ -3693,6 +4045,27 @@ export interface RemoveTagsRequest { TagKeys: string[] | undefined; } +/** + *

Revokes access to an Amazon OpenSearch Service domain that was provided through an interface + * VPC endpoint.

+ */ +export interface RevokeVpcEndpointAccessRequest { + /** + *

The name of the OpenSearch Service domain.

+ */ + DomainName: string | undefined; + + /** + *

The account ID to revoke access from.

+ */ + Account: string | undefined; +} + +/** + *

Container for response parameters to the RevokeVpcEndpointAccess operation. The response body for this operation is empty.

+ */ +export interface RevokeVpcEndpointAccessResponse {} + /** *

Container for the parameters to the StartElasticsearchServiceSoftwareUpdate operation. Specifies the name of the Elasticsearch domain that you wish to schedule a service software update on.

*/ @@ -3879,6 +4252,31 @@ export interface UpdatePackageResponse { PackageDetails?: PackageDetails; } +/** + *

Modifies an Amazon OpenSearch Service-managed interface VPC endpoint.

+ */ +export interface UpdateVpcEndpointRequest { + /** + *

Unique identifier of the VPC endpoint to be updated.

+ */ + VpcEndpointId: string | undefined; + + /** + *

The security groups and/or subnets to add, remove, or modify.

+ */ + VpcOptions: VPCOptions | undefined; +} + +/** + *

Contains the configuration and status of the VPC endpoint being updated.

+ */ +export interface UpdateVpcEndpointResponse { + /** + *

The endpoint to be updated.

+ */ + VpcEndpoint: VpcEndpoint | undefined; +} + /** *

* Container for request parameters to @@ -4109,6 +4507,27 @@ export const AssociatePackageResponseFilterSensitiveLog = (obj: AssociatePackage ...obj, }); +/** + * @internal + */ +export const AuthorizeVpcEndpointAccessRequestFilterSensitiveLog = (obj: AuthorizeVpcEndpointAccessRequest): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const AuthorizedPrincipalFilterSensitiveLog = (obj: AuthorizedPrincipal): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const AuthorizeVpcEndpointAccessResponseFilterSensitiveLog = (obj: AuthorizeVpcEndpointAccessResponse): any => ({ + ...obj, +}); + /** * @internal */ @@ -4332,6 +4751,27 @@ export const CreatePackageResponseFilterSensitiveLog = (obj: CreatePackageRespon ...obj, }); +/** + * @internal + */ +export const CreateVpcEndpointRequestFilterSensitiveLog = (obj: CreateVpcEndpointRequest): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const VpcEndpointFilterSensitiveLog = (obj: VpcEndpoint): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const CreateVpcEndpointResponseFilterSensitiveLog = (obj: CreateVpcEndpointResponse): any => ({ + ...obj, +}); + /** * @internal */ @@ -4405,6 +4845,27 @@ export const DeletePackageResponseFilterSensitiveLog = (obj: DeletePackageRespon ...obj, }); +/** + * @internal + */ +export const DeleteVpcEndpointRequestFilterSensitiveLog = (obj: DeleteVpcEndpointRequest): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const VpcEndpointSummaryFilterSensitiveLog = (obj: VpcEndpointSummary): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const DeleteVpcEndpointResponseFilterSensitiveLog = (obj: DeleteVpcEndpointResponse): any => ({ + ...obj, +}); + /** * @internal */ @@ -4798,6 +5259,27 @@ export const DescribeReservedElasticsearchInstancesResponseFilterSensitiveLog = ...obj, }); +/** + * @internal + */ +export const DescribeVpcEndpointsRequestFilterSensitiveLog = (obj: DescribeVpcEndpointsRequest): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const VpcEndpointErrorFilterSensitiveLog = (obj: VpcEndpointError): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const DescribeVpcEndpointsResponseFilterSensitiveLog = (obj: DescribeVpcEndpointsResponse): any => ({ + ...obj, +}); + /** * @internal */ @@ -4995,6 +5477,48 @@ export const ListTagsResponseFilterSensitiveLog = (obj: ListTagsResponse): any = ...obj, }); +/** + * @internal + */ +export const ListVpcEndpointAccessRequestFilterSensitiveLog = (obj: ListVpcEndpointAccessRequest): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const ListVpcEndpointAccessResponseFilterSensitiveLog = (obj: ListVpcEndpointAccessResponse): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const ListVpcEndpointsRequestFilterSensitiveLog = (obj: ListVpcEndpointsRequest): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const ListVpcEndpointsResponseFilterSensitiveLog = (obj: ListVpcEndpointsResponse): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const ListVpcEndpointsForDomainRequestFilterSensitiveLog = (obj: ListVpcEndpointsForDomainRequest): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const ListVpcEndpointsForDomainResponseFilterSensitiveLog = (obj: ListVpcEndpointsForDomainResponse): any => ({ + ...obj, +}); + /** * @internal */ @@ -5038,6 +5562,20 @@ export const RemoveTagsRequestFilterSensitiveLog = (obj: RemoveTagsRequest): any ...obj, }); +/** + * @internal + */ +export const RevokeVpcEndpointAccessRequestFilterSensitiveLog = (obj: RevokeVpcEndpointAccessRequest): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const RevokeVpcEndpointAccessResponseFilterSensitiveLog = (obj: RevokeVpcEndpointAccessResponse): any => ({ + ...obj, +}); + /** * @internal */ @@ -5098,6 +5636,20 @@ export const UpdatePackageResponseFilterSensitiveLog = (obj: UpdatePackageRespon ...obj, }); +/** + * @internal + */ +export const UpdateVpcEndpointRequestFilterSensitiveLog = (obj: UpdateVpcEndpointRequest): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const UpdateVpcEndpointResponseFilterSensitiveLog = (obj: UpdateVpcEndpointResponse): any => ({ + ...obj, +}); + /** * @internal */ diff --git a/clients/client-elasticsearch-service/src/protocols/Aws_restJson1.ts b/clients/client-elasticsearch-service/src/protocols/Aws_restJson1.ts index d9ffdaabeca3..e960dbd4d242 100644 --- a/clients/client-elasticsearch-service/src/protocols/Aws_restJson1.ts +++ b/clients/client-elasticsearch-service/src/protocols/Aws_restJson1.ts @@ -28,6 +28,10 @@ import { } from "../commands/AcceptInboundCrossClusterSearchConnectionCommand"; import { AddTagsCommandInput, AddTagsCommandOutput } from "../commands/AddTagsCommand"; import { AssociatePackageCommandInput, AssociatePackageCommandOutput } from "../commands/AssociatePackageCommand"; +import { + AuthorizeVpcEndpointAccessCommandInput, + AuthorizeVpcEndpointAccessCommandOutput, +} from "../commands/AuthorizeVpcEndpointAccessCommand"; import { CancelElasticsearchServiceSoftwareUpdateCommandInput, CancelElasticsearchServiceSoftwareUpdateCommandOutput, @@ -41,6 +45,7 @@ import { CreateOutboundCrossClusterSearchConnectionCommandOutput, } from "../commands/CreateOutboundCrossClusterSearchConnectionCommand"; import { CreatePackageCommandInput, CreatePackageCommandOutput } from "../commands/CreatePackageCommand"; +import { CreateVpcEndpointCommandInput, CreateVpcEndpointCommandOutput } from "../commands/CreateVpcEndpointCommand"; import { DeleteElasticsearchDomainCommandInput, DeleteElasticsearchDomainCommandOutput, @@ -58,6 +63,7 @@ import { DeleteOutboundCrossClusterSearchConnectionCommandOutput, } from "../commands/DeleteOutboundCrossClusterSearchConnectionCommand"; import { DeletePackageCommandInput, DeletePackageCommandOutput } from "../commands/DeletePackageCommand"; +import { DeleteVpcEndpointCommandInput, DeleteVpcEndpointCommandOutput } from "../commands/DeleteVpcEndpointCommand"; import { DescribeDomainAutoTunesCommandInput, DescribeDomainAutoTunesCommandOutput, @@ -99,6 +105,10 @@ import { DescribeReservedElasticsearchInstancesCommandInput, DescribeReservedElasticsearchInstancesCommandOutput, } from "../commands/DescribeReservedElasticsearchInstancesCommand"; +import { + DescribeVpcEndpointsCommandInput, + DescribeVpcEndpointsCommandOutput, +} from "../commands/DescribeVpcEndpointsCommand"; import { DissociatePackageCommandInput, DissociatePackageCommandOutput } from "../commands/DissociatePackageCommand"; import { GetCompatibleElasticsearchVersionsCommandInput, @@ -128,6 +138,15 @@ import { ListPackagesForDomainCommandOutput, } from "../commands/ListPackagesForDomainCommand"; import { ListTagsCommandInput, ListTagsCommandOutput } from "../commands/ListTagsCommand"; +import { + ListVpcEndpointAccessCommandInput, + ListVpcEndpointAccessCommandOutput, +} from "../commands/ListVpcEndpointAccessCommand"; +import { ListVpcEndpointsCommandInput, ListVpcEndpointsCommandOutput } from "../commands/ListVpcEndpointsCommand"; +import { + ListVpcEndpointsForDomainCommandInput, + ListVpcEndpointsForDomainCommandOutput, +} from "../commands/ListVpcEndpointsForDomainCommand"; import { PurchaseReservedElasticsearchInstanceOfferingCommandInput, PurchaseReservedElasticsearchInstanceOfferingCommandOutput, @@ -137,6 +156,10 @@ import { RejectInboundCrossClusterSearchConnectionCommandOutput, } from "../commands/RejectInboundCrossClusterSearchConnectionCommand"; import { RemoveTagsCommandInput, RemoveTagsCommandOutput } from "../commands/RemoveTagsCommand"; +import { + RevokeVpcEndpointAccessCommandInput, + RevokeVpcEndpointAccessCommandOutput, +} from "../commands/RevokeVpcEndpointAccessCommand"; import { StartElasticsearchServiceSoftwareUpdateCommandInput, StartElasticsearchServiceSoftwareUpdateCommandOutput, @@ -146,6 +169,7 @@ import { UpdateElasticsearchDomainConfigCommandOutput, } from "../commands/UpdateElasticsearchDomainConfigCommand"; import { UpdatePackageCommandInput, UpdatePackageCommandOutput } from "../commands/UpdatePackageCommand"; +import { UpdateVpcEndpointCommandInput, UpdateVpcEndpointCommandOutput } from "../commands/UpdateVpcEndpointCommand"; import { UpgradeElasticsearchDomainCommandInput, UpgradeElasticsearchDomainCommandOutput, @@ -159,6 +183,7 @@ import { AdvancedSecurityOptions, AdvancedSecurityOptionsInput, AdvancedSecurityOptionsStatus, + AuthorizedPrincipal, AutoTune, AutoTuneDetails, AutoTuneMaintenanceSchedule, @@ -238,6 +263,9 @@ import { ValidationException, VPCDerivedInfo, VPCDerivedInfoStatus, + VpcEndpoint, + VpcEndpointError, + VpcEndpointSummary, VPCOptions, ZoneAwarenessConfig, } from "../models/models_0"; @@ -319,6 +347,33 @@ export const serializeAws_restJson1AssociatePackageCommand = async ( }); }; +export const serializeAws_restJson1AuthorizeVpcEndpointAccessCommand = async ( + input: AuthorizeVpcEndpointAccessCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/2015-01-01/es/domain/{DomainName}/authorizeVpcEndpointAccess"; + resolvedPath = __resolvedPath(resolvedPath, input, "DomainName", () => input.DomainName!, "{DomainName}", false); + let body: any; + body = JSON.stringify({ + ...(input.Account != null && { Account: input.Account }), + }); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + export const serializeAws_restJson1CancelElasticsearchServiceSoftwareUpdateCommand = async ( input: CancelElasticsearchServiceSoftwareUpdateCommandInput, context: __SerdeContext @@ -473,6 +528,33 @@ export const serializeAws_restJson1CreatePackageCommand = async ( }); }; +export const serializeAws_restJson1CreateVpcEndpointCommand = async ( + input: CreateVpcEndpointCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + const resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-01-01/es/vpcEndpoints"; + let body: any; + body = JSON.stringify({ + ...(input.ClientToken != null && { ClientToken: input.ClientToken }), + ...(input.DomainArn != null && { DomainArn: input.DomainArn }), + ...(input.VpcOptions != null && { VpcOptions: serializeAws_restJson1VPCOptions(input.VpcOptions, context) }), + }); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + export const serializeAws_restJson1DeleteElasticsearchDomainCommand = async ( input: DeleteElasticsearchDomainCommandInput, context: __SerdeContext @@ -595,6 +677,35 @@ export const serializeAws_restJson1DeletePackageCommand = async ( }); }; +export const serializeAws_restJson1DeleteVpcEndpointCommand = async ( + input: DeleteVpcEndpointCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/2015-01-01/es/vpcEndpoints/{VpcEndpointId}"; + resolvedPath = __resolvedPath( + resolvedPath, + input, + "VpcEndpointId", + () => input.VpcEndpointId!, + "{VpcEndpointId}", + false + ); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "DELETE", + headers, + path: resolvedPath, + body, + }); +}; + export const serializeAws_restJson1DescribeDomainAutoTunesCommand = async ( input: DescribeDomainAutoTunesCommandInput, context: __SerdeContext @@ -892,6 +1003,33 @@ export const serializeAws_restJson1DescribeReservedElasticsearchInstancesCommand }); }; +export const serializeAws_restJson1DescribeVpcEndpointsCommand = async ( + input: DescribeVpcEndpointsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + const resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-01-01/es/vpcEndpoints/describe"; + let body: any; + body = JSON.stringify({ + ...(input.VpcEndpointIds != null && { + VpcEndpointIds: serializeAws_restJson1VpcEndpointIdList(input.VpcEndpointIds, context), + }), + }); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + export const serializeAws_restJson1DissociatePackageCommand = async ( input: DissociatePackageCommandInput, context: __SerdeContext @@ -1172,6 +1310,82 @@ export const serializeAws_restJson1ListTagsCommand = async ( }); }; +export const serializeAws_restJson1ListVpcEndpointAccessCommand = async ( + input: ListVpcEndpointAccessCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/2015-01-01/es/domain/{DomainName}/listVpcEndpointAccess"; + resolvedPath = __resolvedPath(resolvedPath, input, "DomainName", () => input.DomainName!, "{DomainName}", false); + const query: any = map({ + nextToken: [, input.NextToken!], + }); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + query, + body, + }); +}; + +export const serializeAws_restJson1ListVpcEndpointsCommand = async ( + input: ListVpcEndpointsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + const resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-01-01/es/vpcEndpoints"; + const query: any = map({ + nextToken: [, input.NextToken!], + }); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + query, + body, + }); +}; + +export const serializeAws_restJson1ListVpcEndpointsForDomainCommand = async ( + input: ListVpcEndpointsForDomainCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/2015-01-01/es/domain/{DomainName}/vpcEndpoints"; + resolvedPath = __resolvedPath(resolvedPath, input, "DomainName", () => input.DomainName!, "{DomainName}", false); + const query: any = map({ + nextToken: [, input.NextToken!], + }); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + query, + body, + }); +}; + export const serializeAws_restJson1PurchaseReservedElasticsearchInstanceOfferingCommand = async ( input: PurchaseReservedElasticsearchInstanceOfferingCommandInput, context: __SerdeContext @@ -1257,6 +1471,33 @@ export const serializeAws_restJson1RemoveTagsCommand = async ( }); }; +export const serializeAws_restJson1RevokeVpcEndpointAccessCommand = async ( + input: RevokeVpcEndpointAccessCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/2015-01-01/es/domain/{DomainName}/revokeVpcEndpointAccess"; + resolvedPath = __resolvedPath(resolvedPath, input, "DomainName", () => input.DomainName!, "{DomainName}", false); + let body: any; + body = JSON.stringify({ + ...(input.Account != null && { Account: input.Account }), + }); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + export const serializeAws_restJson1StartElasticsearchServiceSoftwareUpdateCommand = async ( input: StartElasticsearchServiceSoftwareUpdateCommandInput, context: __SerdeContext @@ -1381,6 +1622,32 @@ export const serializeAws_restJson1UpdatePackageCommand = async ( }); }; +export const serializeAws_restJson1UpdateVpcEndpointCommand = async ( + input: UpdateVpcEndpointCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + const resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/2015-01-01/es/vpcEndpoints/update"; + let body: any; + body = JSON.stringify({ + ...(input.VpcEndpointId != null && { VpcEndpointId: input.VpcEndpointId }), + ...(input.VpcOptions != null && { VpcOptions: serializeAws_restJson1VPCOptions(input.VpcOptions, context) }), + }); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + export const serializeAws_restJson1UpgradeElasticsearchDomainCommand = async ( input: UpgradeElasticsearchDomainCommandInput, context: __SerdeContext @@ -1561,6 +1828,62 @@ const deserializeAws_restJson1AssociatePackageCommandError = async ( } }; +export const deserializeAws_restJson1AuthorizeVpcEndpointAccessCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return deserializeAws_restJson1AuthorizeVpcEndpointAccessCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + if (data.AuthorizedPrincipal != null) { + contents.AuthorizedPrincipal = deserializeAws_restJson1AuthorizedPrincipal(data.AuthorizedPrincipal, context); + } + return contents; +}; + +const deserializeAws_restJson1AuthorizeVpcEndpointAccessCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BaseException": + case "com.amazonaws.elasticsearchservice#BaseException": + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "DisabledOperationException": + case "com.amazonaws.elasticsearchservice#DisabledOperationException": + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); + case "InternalException": + case "com.amazonaws.elasticsearchservice#InternalException": + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.elasticsearchservice#LimitExceededException": + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.elasticsearchservice#ValidationException": + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + throwDefaultError({ + output, + parsedBody, + exceptionCtor: __BaseException, + errorCode, + }); + } +}; + export const deserializeAws_restJson1CancelElasticsearchServiceSoftwareUpdateCommand = async ( output: __HttpResponse, context: __SerdeContext @@ -1797,10 +2120,66 @@ const deserializeAws_restJson1CreatePackageCommandError = async ( } }; -export const deserializeAws_restJson1DeleteElasticsearchDomainCommand = async ( +export const deserializeAws_restJson1CreateVpcEndpointCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return deserializeAws_restJson1CreateVpcEndpointCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + if (data.VpcEndpoint != null) { + contents.VpcEndpoint = deserializeAws_restJson1VpcEndpoint(data.VpcEndpoint, context); + } + return contents; +}; + +const deserializeAws_restJson1CreateVpcEndpointCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BaseException": + case "com.amazonaws.elasticsearchservice#BaseException": + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "ConflictException": + case "com.amazonaws.elasticsearchservice#ConflictException": + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); + case "DisabledOperationException": + case "com.amazonaws.elasticsearchservice#DisabledOperationException": + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); + case "InternalException": + case "com.amazonaws.elasticsearchservice#InternalException": + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); + case "LimitExceededException": + case "com.amazonaws.elasticsearchservice#LimitExceededException": + throw await deserializeAws_restJson1LimitExceededExceptionResponse(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.elasticsearchservice#ValidationException": + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + throwDefaultError({ + output, + parsedBody, + exceptionCtor: __BaseException, + errorCode, + }); + } +}; + +export const deserializeAws_restJson1DeleteElasticsearchDomainCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { return deserializeAws_restJson1DeleteElasticsearchDomainCommandError(output, context); } @@ -2041,6 +2420,56 @@ const deserializeAws_restJson1DeletePackageCommandError = async ( } }; +export const deserializeAws_restJson1DeleteVpcEndpointCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return deserializeAws_restJson1DeleteVpcEndpointCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + if (data.VpcEndpointSummary != null) { + contents.VpcEndpointSummary = deserializeAws_restJson1VpcEndpointSummary(data.VpcEndpointSummary, context); + } + return contents; +}; + +const deserializeAws_restJson1DeleteVpcEndpointCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BaseException": + case "com.amazonaws.elasticsearchservice#BaseException": + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "DisabledOperationException": + case "com.amazonaws.elasticsearchservice#DisabledOperationException": + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); + case "InternalException": + case "com.amazonaws.elasticsearchservice#InternalException": + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + throwDefaultError({ + output, + parsedBody, + exceptionCtor: __BaseException, + errorCode, + }); + } +}; + export const deserializeAws_restJson1DescribeDomainAutoTunesCommand = async ( output: __HttpResponse, context: __SerdeContext @@ -2618,6 +3047,59 @@ const deserializeAws_restJson1DescribeReservedElasticsearchInstancesCommandError } }; +export const deserializeAws_restJson1DescribeVpcEndpointsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return deserializeAws_restJson1DescribeVpcEndpointsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + if (data.VpcEndpointErrors != null) { + contents.VpcEndpointErrors = deserializeAws_restJson1VpcEndpointErrorList(data.VpcEndpointErrors, context); + } + if (data.VpcEndpoints != null) { + contents.VpcEndpoints = deserializeAws_restJson1VpcEndpoints(data.VpcEndpoints, context); + } + return contents; +}; + +const deserializeAws_restJson1DescribeVpcEndpointsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BaseException": + case "com.amazonaws.elasticsearchservice#BaseException": + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "DisabledOperationException": + case "com.amazonaws.elasticsearchservice#DisabledOperationException": + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); + case "InternalException": + case "com.amazonaws.elasticsearchservice#InternalException": + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.elasticsearchservice#ValidationException": + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + throwDefaultError({ + output, + parsedBody, + exceptionCtor: __BaseException, + errorCode, + }); + } +}; + export const deserializeAws_restJson1DissociatePackageCommand = async ( output: __HttpResponse, context: __SerdeContext @@ -2951,12 +3433,183 @@ const deserializeAws_restJson1ListDomainNamesCommandError = async ( } }; -export const deserializeAws_restJson1ListDomainsForPackageCommand = async ( +export const deserializeAws_restJson1ListDomainsForPackageCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return deserializeAws_restJson1ListDomainsForPackageCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + if (data.DomainPackageDetailsList != null) { + contents.DomainPackageDetailsList = deserializeAws_restJson1DomainPackageDetailsList( + data.DomainPackageDetailsList, + context + ); + } + if (data.NextToken != null) { + contents.NextToken = __expectString(data.NextToken); + } + return contents; +}; + +const deserializeAws_restJson1ListDomainsForPackageCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.elasticsearchservice#AccessDeniedException": + throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); + case "BaseException": + case "com.amazonaws.elasticsearchservice#BaseException": + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "InternalException": + case "com.amazonaws.elasticsearchservice#InternalException": + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.elasticsearchservice#ValidationException": + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + throwDefaultError({ + output, + parsedBody, + exceptionCtor: __BaseException, + errorCode, + }); + } +}; + +export const deserializeAws_restJson1ListElasticsearchInstanceTypesCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return deserializeAws_restJson1ListElasticsearchInstanceTypesCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + if (data.ElasticsearchInstanceTypes != null) { + contents.ElasticsearchInstanceTypes = deserializeAws_restJson1ElasticsearchInstanceTypeList( + data.ElasticsearchInstanceTypes, + context + ); + } + if (data.NextToken != null) { + contents.NextToken = __expectString(data.NextToken); + } + return contents; +}; + +const deserializeAws_restJson1ListElasticsearchInstanceTypesCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BaseException": + case "com.amazonaws.elasticsearchservice#BaseException": + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "InternalException": + case "com.amazonaws.elasticsearchservice#InternalException": + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.elasticsearchservice#ValidationException": + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + throwDefaultError({ + output, + parsedBody, + exceptionCtor: __BaseException, + errorCode, + }); + } +}; + +export const deserializeAws_restJson1ListElasticsearchVersionsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return deserializeAws_restJson1ListElasticsearchVersionsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + if (data.ElasticsearchVersions != null) { + contents.ElasticsearchVersions = deserializeAws_restJson1ElasticsearchVersionList( + data.ElasticsearchVersions, + context + ); + } + if (data.NextToken != null) { + contents.NextToken = __expectString(data.NextToken); + } + return contents; +}; + +const deserializeAws_restJson1ListElasticsearchVersionsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BaseException": + case "com.amazonaws.elasticsearchservice#BaseException": + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "InternalException": + case "com.amazonaws.elasticsearchservice#InternalException": + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.elasticsearchservice#ValidationException": + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + throwDefaultError({ + output, + parsedBody, + exceptionCtor: __BaseException, + errorCode, + }); + } +}; + +export const deserializeAws_restJson1ListPackagesForDomainCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return deserializeAws_restJson1ListDomainsForPackageCommandError(output, context); + return deserializeAws_restJson1ListPackagesForDomainCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), @@ -2974,10 +3627,10 @@ export const deserializeAws_restJson1ListDomainsForPackageCommand = async ( return contents; }; -const deserializeAws_restJson1ListDomainsForPackageCommandError = async ( +const deserializeAws_restJson1ListPackagesForDomainCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -3010,33 +3663,27 @@ const deserializeAws_restJson1ListDomainsForPackageCommandError = async ( } }; -export const deserializeAws_restJson1ListElasticsearchInstanceTypesCommand = async ( +export const deserializeAws_restJson1ListTagsCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return deserializeAws_restJson1ListElasticsearchInstanceTypesCommandError(output, context); + return deserializeAws_restJson1ListTagsCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); - if (data.ElasticsearchInstanceTypes != null) { - contents.ElasticsearchInstanceTypes = deserializeAws_restJson1ElasticsearchInstanceTypeList( - data.ElasticsearchInstanceTypes, - context - ); - } - if (data.NextToken != null) { - contents.NextToken = __expectString(data.NextToken); + if (data.TagList != null) { + contents.TagList = deserializeAws_restJson1TagList(data.TagList, context); } return contents; }; -const deserializeAws_restJson1ListElasticsearchInstanceTypesCommandError = async ( +const deserializeAws_restJson1ListTagsCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -3066,20 +3713,20 @@ const deserializeAws_restJson1ListElasticsearchInstanceTypesCommandError = async } }; -export const deserializeAws_restJson1ListElasticsearchVersionsCommand = async ( +export const deserializeAws_restJson1ListVpcEndpointAccessCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return deserializeAws_restJson1ListElasticsearchVersionsCommandError(output, context); + return deserializeAws_restJson1ListVpcEndpointAccessCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); - if (data.ElasticsearchVersions != null) { - contents.ElasticsearchVersions = deserializeAws_restJson1ElasticsearchVersionList( - data.ElasticsearchVersions, + if (data.AuthorizedPrincipalList != null) { + contents.AuthorizedPrincipalList = deserializeAws_restJson1AuthorizedPrincipalList( + data.AuthorizedPrincipalList, context ); } @@ -3089,10 +3736,10 @@ export const deserializeAws_restJson1ListElasticsearchVersionsCommand = async ( return contents; }; -const deserializeAws_restJson1ListElasticsearchVersionsCommandError = async ( +const deserializeAws_restJson1ListVpcEndpointAccessCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -3102,15 +3749,15 @@ const deserializeAws_restJson1ListElasticsearchVersionsCommandError = async ( case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "DisabledOperationException": + case "com.amazonaws.elasticsearchservice#DisabledOperationException": + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); - case "ValidationException": - case "com.amazonaws.elasticsearchservice#ValidationException": - throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; throwDefaultError({ @@ -3122,54 +3769,48 @@ const deserializeAws_restJson1ListElasticsearchVersionsCommandError = async ( } }; -export const deserializeAws_restJson1ListPackagesForDomainCommand = async ( +export const deserializeAws_restJson1ListVpcEndpointsCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return deserializeAws_restJson1ListPackagesForDomainCommandError(output, context); + return deserializeAws_restJson1ListVpcEndpointsCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); - if (data.DomainPackageDetailsList != null) { - contents.DomainPackageDetailsList = deserializeAws_restJson1DomainPackageDetailsList( - data.DomainPackageDetailsList, - context - ); - } if (data.NextToken != null) { contents.NextToken = __expectString(data.NextToken); } + if (data.VpcEndpointSummaryList != null) { + contents.VpcEndpointSummaryList = deserializeAws_restJson1VpcEndpointSummaryList( + data.VpcEndpointSummaryList, + context + ); + } return contents; }; -const deserializeAws_restJson1ListPackagesForDomainCommandError = async ( +const deserializeAws_restJson1ListVpcEndpointsCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), }; const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); switch (errorCode) { - case "AccessDeniedException": - case "com.amazonaws.elasticsearchservice#AccessDeniedException": - throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context); case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "DisabledOperationException": + case "com.amazonaws.elasticsearchservice#DisabledOperationException": + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); - case "ResourceNotFoundException": - case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": - throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); - case "ValidationException": - case "com.amazonaws.elasticsearchservice#ValidationException": - throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; throwDefaultError({ @@ -3181,27 +3822,33 @@ const deserializeAws_restJson1ListPackagesForDomainCommandError = async ( } }; -export const deserializeAws_restJson1ListTagsCommand = async ( +export const deserializeAws_restJson1ListVpcEndpointsForDomainCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode !== 200 && output.statusCode >= 300) { - return deserializeAws_restJson1ListTagsCommandError(output, context); + return deserializeAws_restJson1ListVpcEndpointsForDomainCommandError(output, context); } const contents: any = map({ $metadata: deserializeMetadata(output), }); const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); - if (data.TagList != null) { - contents.TagList = deserializeAws_restJson1TagList(data.TagList, context); + if (data.NextToken != null) { + contents.NextToken = __expectString(data.NextToken); + } + if (data.VpcEndpointSummaryList != null) { + contents.VpcEndpointSummaryList = deserializeAws_restJson1VpcEndpointSummaryList( + data.VpcEndpointSummaryList, + context + ); } return contents; }; -const deserializeAws_restJson1ListTagsCommandError = async ( +const deserializeAws_restJson1ListVpcEndpointsForDomainCommandError = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { const parsedOutput: any = { ...output, body: await parseErrorBody(output.body, context), @@ -3211,15 +3858,15 @@ const deserializeAws_restJson1ListTagsCommandError = async ( case "BaseException": case "com.amazonaws.elasticsearchservice#BaseException": throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "DisabledOperationException": + case "com.amazonaws.elasticsearchservice#DisabledOperationException": + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); case "InternalException": case "com.amazonaws.elasticsearchservice#InternalException": throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); case "ResourceNotFoundException": case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); - case "ValidationException": - case "com.amazonaws.elasticsearchservice#ValidationException": - throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); default: const parsedBody = parsedOutput.body; throwDefaultError({ @@ -3381,6 +4028,56 @@ const deserializeAws_restJson1RemoveTagsCommandError = async ( } }; +export const deserializeAws_restJson1RevokeVpcEndpointAccessCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return deserializeAws_restJson1RevokeVpcEndpointAccessCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +const deserializeAws_restJson1RevokeVpcEndpointAccessCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BaseException": + case "com.amazonaws.elasticsearchservice#BaseException": + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "DisabledOperationException": + case "com.amazonaws.elasticsearchservice#DisabledOperationException": + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); + case "InternalException": + case "com.amazonaws.elasticsearchservice#InternalException": + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.elasticsearchservice#ValidationException": + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + throwDefaultError({ + output, + parsedBody, + exceptionCtor: __BaseException, + errorCode, + }); + } +}; + export const deserializeAws_restJson1StartElasticsearchServiceSoftwareUpdateCommand = async ( output: __HttpResponse, context: __SerdeContext @@ -3549,6 +4246,62 @@ const deserializeAws_restJson1UpdatePackageCommandError = async ( } }; +export const deserializeAws_restJson1UpdateVpcEndpointCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return deserializeAws_restJson1UpdateVpcEndpointCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + if (data.VpcEndpoint != null) { + contents.VpcEndpoint = deserializeAws_restJson1VpcEndpoint(data.VpcEndpoint, context); + } + return contents; +}; + +const deserializeAws_restJson1UpdateVpcEndpointCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "BaseException": + case "com.amazonaws.elasticsearchservice#BaseException": + throw await deserializeAws_restJson1BaseExceptionResponse(parsedOutput, context); + case "ConflictException": + case "com.amazonaws.elasticsearchservice#ConflictException": + throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context); + case "DisabledOperationException": + case "com.amazonaws.elasticsearchservice#DisabledOperationException": + throw await deserializeAws_restJson1DisabledOperationExceptionResponse(parsedOutput, context); + case "InternalException": + case "com.amazonaws.elasticsearchservice#InternalException": + throw await deserializeAws_restJson1InternalExceptionResponse(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.elasticsearchservice#ResourceNotFoundException": + throw await deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context); + case "ValidationException": + case "com.amazonaws.elasticsearchservice#ValidationException": + throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + throwDefaultError({ + output, + parsedBody, + exceptionCtor: __BaseException, + errorCode, + }); + } +}; + export const deserializeAws_restJson1UpgradeElasticsearchDomainCommand = async ( output: __HttpResponse, context: __SerdeContext @@ -4101,6 +4854,14 @@ const serializeAws_restJson1ValueStringList = (input: string[], context: __Serde }); }; +const serializeAws_restJson1VpcEndpointIdList = (input: string[], context: __SerdeContext): any => { + return input + .filter((e: any) => e != null) + .map((entry) => { + return entry; + }); +}; + const serializeAws_restJson1VPCOptions = (input: VPCOptions, context: __SerdeContext): any => { return { ...(input.SecurityGroupIds != null && { @@ -4190,6 +4951,28 @@ const deserializeAws_restJson1AdvancedSecurityOptionsStatus = ( } as any; }; +const deserializeAws_restJson1AuthorizedPrincipal = (output: any, context: __SerdeContext): AuthorizedPrincipal => { + return { + Principal: __expectString(output.Principal), + PrincipalType: __expectString(output.PrincipalType), + } as any; +}; + +const deserializeAws_restJson1AuthorizedPrincipalList = ( + output: any, + context: __SerdeContext +): AuthorizedPrincipal[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + if (entry === null) { + return null as any; + } + return deserializeAws_restJson1AuthorizedPrincipal(entry, context); + }); + return retVal; +}; + const deserializeAws_restJson1AutoTune = (output: any, context: __SerdeContext): AutoTune => { return { AutoTuneDetails: @@ -5348,6 +6131,71 @@ const deserializeAws_restJson1VPCDerivedInfoStatus = (output: any, context: __Se } as any; }; +const deserializeAws_restJson1VpcEndpoint = (output: any, context: __SerdeContext): VpcEndpoint => { + return { + DomainArn: __expectString(output.DomainArn), + Endpoint: __expectString(output.Endpoint), + Status: __expectString(output.Status), + VpcEndpointId: __expectString(output.VpcEndpointId), + VpcEndpointOwner: __expectString(output.VpcEndpointOwner), + VpcOptions: + output.VpcOptions != null ? deserializeAws_restJson1VPCDerivedInfo(output.VpcOptions, context) : undefined, + } as any; +}; + +const deserializeAws_restJson1VpcEndpointError = (output: any, context: __SerdeContext): VpcEndpointError => { + return { + ErrorCode: __expectString(output.ErrorCode), + ErrorMessage: __expectString(output.ErrorMessage), + VpcEndpointId: __expectString(output.VpcEndpointId), + } as any; +}; + +const deserializeAws_restJson1VpcEndpointErrorList = (output: any, context: __SerdeContext): VpcEndpointError[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + if (entry === null) { + return null as any; + } + return deserializeAws_restJson1VpcEndpointError(entry, context); + }); + return retVal; +}; + +const deserializeAws_restJson1VpcEndpoints = (output: any, context: __SerdeContext): VpcEndpoint[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + if (entry === null) { + return null as any; + } + return deserializeAws_restJson1VpcEndpoint(entry, context); + }); + return retVal; +}; + +const deserializeAws_restJson1VpcEndpointSummary = (output: any, context: __SerdeContext): VpcEndpointSummary => { + return { + DomainArn: __expectString(output.DomainArn), + Status: __expectString(output.Status), + VpcEndpointId: __expectString(output.VpcEndpointId), + VpcEndpointOwner: __expectString(output.VpcEndpointOwner), + } as any; +}; + +const deserializeAws_restJson1VpcEndpointSummaryList = (output: any, context: __SerdeContext): VpcEndpointSummary[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + if (entry === null) { + return null as any; + } + return deserializeAws_restJson1VpcEndpointSummary(entry, context); + }); + return retVal; +}; + const deserializeAws_restJson1ZoneAwarenessConfig = (output: any, context: __SerdeContext): ZoneAwarenessConfig => { return { AvailabilityZoneCount: __expectInt32(output.AvailabilityZoneCount), diff --git a/codegen/sdk-codegen/aws-models/elasticsearch-service.json b/codegen/sdk-codegen/aws-models/elasticsearch-service.json index f0e836589928..3a478ab07b47 100644 --- a/codegen/sdk-codegen/aws-models/elasticsearch-service.json +++ b/codegen/sdk-codegen/aws-models/elasticsearch-service.json @@ -35,6 +35,12 @@ "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Elasticsearch domain. See Identifiers for IAM Entities in Using AWS Identity and Access Management for more information.

" } }, + "com.amazonaws.elasticsearchservice#AWSAccount": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9]+$" + } + }, "com.amazonaws.elasticsearchservice#AcceptInboundCrossClusterSearchConnection": { "type": "operation", "input": { @@ -355,6 +361,9 @@ { "target": "com.amazonaws.elasticsearchservice#AssociatePackage" }, + { + "target": "com.amazonaws.elasticsearchservice#AuthorizeVpcEndpointAccess" + }, { "target": "com.amazonaws.elasticsearchservice#CancelElasticsearchServiceSoftwareUpdate" }, @@ -367,6 +376,9 @@ { "target": "com.amazonaws.elasticsearchservice#CreatePackage" }, + { + "target": "com.amazonaws.elasticsearchservice#CreateVpcEndpoint" + }, { "target": "com.amazonaws.elasticsearchservice#DeleteElasticsearchDomain" }, @@ -382,6 +394,9 @@ { "target": "com.amazonaws.elasticsearchservice#DeletePackage" }, + { + "target": "com.amazonaws.elasticsearchservice#DeleteVpcEndpoint" + }, { "target": "com.amazonaws.elasticsearchservice#DescribeDomainAutoTunes" }, @@ -415,6 +430,9 @@ { "target": "com.amazonaws.elasticsearchservice#DescribeReservedElasticsearchInstances" }, + { + "target": "com.amazonaws.elasticsearchservice#DescribeVpcEndpoints" + }, { "target": "com.amazonaws.elasticsearchservice#DissociatePackage" }, @@ -448,6 +466,15 @@ { "target": "com.amazonaws.elasticsearchservice#ListTags" }, + { + "target": "com.amazonaws.elasticsearchservice#ListVpcEndpointAccess" + }, + { + "target": "com.amazonaws.elasticsearchservice#ListVpcEndpoints" + }, + { + "target": "com.amazonaws.elasticsearchservice#ListVpcEndpointsForDomain" + }, { "target": "com.amazonaws.elasticsearchservice#PurchaseReservedElasticsearchInstanceOffering" }, @@ -457,6 +484,9 @@ { "target": "com.amazonaws.elasticsearchservice#RemoveTags" }, + { + "target": "com.amazonaws.elasticsearchservice#RevokeVpcEndpointAccess" + }, { "target": "com.amazonaws.elasticsearchservice#StartElasticsearchServiceSoftwareUpdate" }, @@ -466,6 +496,9 @@ { "target": "com.amazonaws.elasticsearchservice#UpdatePackage" }, + { + "target": "com.amazonaws.elasticsearchservice#UpdateVpcEndpoint" + }, { "target": "com.amazonaws.elasticsearchservice#UpgradeElasticsearchDomain" } @@ -812,9 +845,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-south-2", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -825,9 +858,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-south-2", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -838,9 +871,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-south-2", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -851,9 +884,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-south-2", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -864,9 +897,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-south-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -877,9 +910,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-south-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -890,9 +923,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-south-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -903,9 +936,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-south-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -916,9 +949,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-south-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -929,9 +962,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-south-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -942,9 +975,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-south-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -955,9 +988,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-south-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -968,9 +1001,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-south-2", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -981,9 +1014,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-south-2", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -994,9 +1027,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-south-2", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1007,9 +1040,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-south-2", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1020,9 +1053,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-gov-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1033,9 +1066,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-gov-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1046,9 +1079,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-gov-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1059,9 +1092,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-gov-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1072,9 +1105,9 @@ } }, "params": { + "UseFIPS": true, "Region": "me-central-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1085,9 +1118,9 @@ } }, "params": { + "UseFIPS": true, "Region": "me-central-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1098,9 +1131,9 @@ } }, "params": { + "UseFIPS": false, "Region": "me-central-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1111,9 +1144,9 @@ } }, "params": { + "UseFIPS": false, "Region": "me-central-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1124,9 +1157,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ca-central-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1137,9 +1170,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ca-central-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1150,9 +1183,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ca-central-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1163,9 +1196,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ca-central-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1176,9 +1209,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-central-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1189,9 +1222,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-central-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1202,9 +1235,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-central-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1215,9 +1248,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-central-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1226,9 +1259,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "UseFIPS": true, "Region": "us-iso-west-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1239,9 +1272,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-iso-west-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1250,9 +1283,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "UseFIPS": false, "Region": "us-iso-west-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1263,9 +1296,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-iso-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1276,9 +1309,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-central-2", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1289,9 +1322,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-central-2", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1302,9 +1335,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-central-2", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1315,9 +1348,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-central-2", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1328,9 +1361,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-west-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1341,9 +1374,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-west-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1354,9 +1387,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-west-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1367,9 +1400,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1380,9 +1413,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1393,9 +1426,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1406,9 +1439,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-west-2", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1419,9 +1452,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-west-2", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1432,9 +1465,9 @@ } }, "params": { + "UseFIPS": true, "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1445,9 +1478,9 @@ } }, "params": { + "UseFIPS": true, "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1458,9 +1491,9 @@ } }, "params": { + "UseFIPS": false, "Region": "af-south-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1471,9 +1504,9 @@ } }, "params": { + "UseFIPS": false, "Region": "af-south-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1484,9 +1517,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-north-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1497,9 +1530,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-north-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1510,9 +1543,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-north-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1523,9 +1556,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-north-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1536,9 +1569,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-west-3", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1549,9 +1582,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-west-3", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1562,9 +1595,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-west-3", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1575,9 +1608,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-west-3", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1588,9 +1621,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-west-2", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1601,9 +1634,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-west-2", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1614,9 +1647,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-west-2", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1627,9 +1660,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-west-2", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1640,9 +1673,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-west-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1653,9 +1686,9 @@ } }, "params": { + "UseFIPS": true, "Region": "eu-west-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1666,9 +1699,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-west-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1679,9 +1712,9 @@ } }, "params": { + "UseFIPS": false, "Region": "eu-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1692,9 +1725,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-northeast-3", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1705,9 +1738,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-northeast-3", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1718,9 +1751,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-northeast-3", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1731,9 +1764,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-northeast-3", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1744,9 +1777,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-northeast-2", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1757,9 +1790,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-northeast-2", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1770,9 +1803,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-northeast-2", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1783,9 +1816,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-northeast-2", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1796,9 +1829,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-northeast-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1809,9 +1842,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-northeast-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1822,9 +1855,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-northeast-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1835,9 +1868,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-northeast-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1848,9 +1881,9 @@ } }, "params": { + "UseFIPS": true, "Region": "me-south-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1861,9 +1894,9 @@ } }, "params": { + "UseFIPS": true, "Region": "me-south-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1874,9 +1907,9 @@ } }, "params": { + "UseFIPS": false, "Region": "me-south-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1887,9 +1920,9 @@ } }, "params": { + "UseFIPS": false, "Region": "me-south-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1900,9 +1933,9 @@ } }, "params": { + "UseFIPS": true, "Region": "sa-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1913,9 +1946,9 @@ } }, "params": { + "UseFIPS": true, "Region": "sa-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1926,9 +1959,9 @@ } }, "params": { + "UseFIPS": false, "Region": "sa-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1939,9 +1972,9 @@ } }, "params": { + "UseFIPS": false, "Region": "sa-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -1952,9 +1985,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -1965,9 +1998,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -1978,9 +2011,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -1991,9 +2024,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2004,9 +2037,9 @@ } }, "params": { + "UseFIPS": true, "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2017,9 +2050,9 @@ } }, "params": { + "UseFIPS": true, "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2030,9 +2063,9 @@ } }, "params": { + "UseFIPS": false, "Region": "cn-north-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2043,9 +2076,9 @@ } }, "params": { + "UseFIPS": false, "Region": "cn-north-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2056,9 +2089,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-gov-west-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2069,9 +2102,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-gov-west-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2082,9 +2115,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-gov-west-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2095,9 +2128,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-gov-west-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2108,9 +2141,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-southeast-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2121,9 +2154,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-southeast-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2134,9 +2167,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-southeast-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2147,9 +2180,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-southeast-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2160,9 +2193,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-southeast-2", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2173,9 +2206,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-southeast-2", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2186,9 +2219,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-southeast-2", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2199,9 +2232,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-southeast-2", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2210,9 +2243,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "UseFIPS": true, "Region": "us-iso-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2223,9 +2256,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-iso-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2234,9 +2267,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "UseFIPS": false, "Region": "us-iso-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2247,9 +2280,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-iso-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2260,9 +2293,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-southeast-3", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2273,9 +2306,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-southeast-3", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2286,9 +2319,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-southeast-3", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2299,9 +2332,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-southeast-3", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2312,9 +2345,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-southeast-4", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2325,9 +2358,9 @@ } }, "params": { + "UseFIPS": true, "Region": "ap-southeast-4", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2338,9 +2371,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-southeast-4", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2351,9 +2384,9 @@ } }, "params": { + "UseFIPS": false, "Region": "ap-southeast-4", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2364,9 +2397,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2377,9 +2410,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2390,9 +2423,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2403,9 +2436,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2416,9 +2449,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-east-2", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2429,9 +2462,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-east-2", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2442,9 +2475,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-east-2", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2455,9 +2488,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-east-2", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2468,9 +2501,9 @@ } }, "params": { + "UseFIPS": true, "Region": "cn-northwest-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2481,9 +2514,9 @@ } }, "params": { + "UseFIPS": true, "Region": "cn-northwest-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2494,9 +2527,9 @@ } }, "params": { + "UseFIPS": false, "Region": "cn-northwest-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2507,9 +2540,9 @@ } }, "params": { + "UseFIPS": false, "Region": "cn-northwest-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2518,9 +2551,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { + "UseFIPS": true, "Region": "us-isob-east-1", - "UseDualStack": true, - "UseFIPS": true + "UseDualStack": true } }, { @@ -2531,9 +2564,9 @@ } }, "params": { + "UseFIPS": true, "Region": "us-isob-east-1", - "UseDualStack": false, - "UseFIPS": true + "UseDualStack": false } }, { @@ -2542,9 +2575,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { + "UseFIPS": false, "Region": "us-isob-east-1", - "UseDualStack": true, - "UseFIPS": false + "UseDualStack": true } }, { @@ -2555,9 +2588,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-isob-east-1", - "UseDualStack": false, - "UseFIPS": false + "UseDualStack": false } }, { @@ -2568,9 +2601,9 @@ } }, "params": { + "UseFIPS": false, "Region": "us-east-1", "UseDualStack": false, - "UseFIPS": false, "Endpoint": "https://example.com" } }, @@ -2580,9 +2613,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { + "UseFIPS": true, "Region": "us-east-1", "UseDualStack": false, - "UseFIPS": true, "Endpoint": "https://example.com" } }, @@ -2592,9 +2625,9 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { + "UseFIPS": false, "Region": "us-east-1", "UseDualStack": true, - "UseFIPS": false, "Endpoint": "https://example.com" } } @@ -2678,6 +2711,107 @@ "smithy.api#documentation": "

\n Container for response returned by\n \n AssociatePackage\n \n operation.\n

" } }, + "com.amazonaws.elasticsearchservice#AuthorizeVpcEndpointAccess": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticsearchservice#AuthorizeVpcEndpointAccessRequest" + }, + "output": { + "target": "com.amazonaws.elasticsearchservice#AuthorizeVpcEndpointAccessResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticsearchservice#BaseException" + }, + { + "target": "com.amazonaws.elasticsearchservice#DisabledOperationException" + }, + { + "target": "com.amazonaws.elasticsearchservice#InternalException" + }, + { + "target": "com.amazonaws.elasticsearchservice#LimitExceededException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Provides access to an Amazon OpenSearch Service domain through the use of an interface VPC endpoint.

", + "smithy.api#http": { + "method": "POST", + "uri": "/2015-01-01/es/domain/{DomainName}/authorizeVpcEndpointAccess", + "code": 200 + } + } + }, + "com.amazonaws.elasticsearchservice#AuthorizeVpcEndpointAccessRequest": { + "type": "structure", + "members": { + "DomainName": { + "target": "com.amazonaws.elasticsearchservice#DomainName", + "traits": { + "smithy.api#documentation": "

The name of the OpenSearch Service domain to provide access to.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Account": { + "target": "com.amazonaws.elasticsearchservice#AWSAccount", + "traits": { + "smithy.api#documentation": "

The account ID to grant access to.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for request parameters to the AuthorizeVpcEndpointAccess operation.\n Specifies the account to be permitted to manage VPC endpoints against the domain.

" + } + }, + "com.amazonaws.elasticsearchservice#AuthorizeVpcEndpointAccessResponse": { + "type": "structure", + "members": { + "AuthorizedPrincipal": { + "target": "com.amazonaws.elasticsearchservice#AuthorizedPrincipal", + "traits": { + "smithy.api#documentation": "

Information about the account or service that was provided access to the\n domain.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for response parameters to the AuthorizeVpcEndpointAccess operation.\n Contains the account ID and the type of the account being authorized to access the VPC endpoint.

" + } + }, + "com.amazonaws.elasticsearchservice#AuthorizedPrincipal": { + "type": "structure", + "members": { + "PrincipalType": { + "target": "com.amazonaws.elasticsearchservice#PrincipalType", + "traits": { + "smithy.api#documentation": "

The type of principal.

" + } + }, + "Principal": { + "target": "com.amazonaws.elasticsearchservice#String", + "traits": { + "smithy.api#documentation": "

The IAM principal that is allowed access to the domain.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about an account or service that has access to an Amazon\n OpenSearch Service domain through the use of an interface VPC endpoint.

" + } + }, + "com.amazonaws.elasticsearchservice#AuthorizedPrincipalList": { + "type": "list", + "member": { + "target": "com.amazonaws.elasticsearchservice#AuthorizedPrincipal" + } + }, "com.amazonaws.elasticsearchservice#AutoTune": { "type": "structure", "members": { @@ -2705,19 +2839,23 @@ } }, "com.amazonaws.elasticsearchservice#AutoTuneDesiredState": { - "type": "string", - "traits": { - "smithy.api#documentation": "

Specifies the Auto-Tune desired state. Valid values are ENABLED, DISABLED.

", - "smithy.api#enum": [ - { - "value": "ENABLED", - "name": "ENABLED" - }, - { - "value": "DISABLED", - "name": "DISABLED" + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" } - ] + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the Auto-Tune desired state. Valid values are ENABLED, DISABLED.

" } }, "com.amazonaws.elasticsearchservice#AutoTuneDetails": { @@ -2862,47 +3000,65 @@ } }, "com.amazonaws.elasticsearchservice#AutoTuneState": { - "type": "string", - "traits": { - "smithy.api#documentation": "

Specifies the Auto-Tune state for the Elasticsearch domain. For valid states see the Developer Guide.

", - "smithy.api#enum": [ - { - "value": "ENABLED", - "name": "ENABLED" - }, - { - "value": "DISABLED", - "name": "DISABLED" - }, - { - "value": "ENABLE_IN_PROGRESS", - "name": "ENABLE_IN_PROGRESS" - }, - { - "value": "DISABLE_IN_PROGRESS", - "name": "DISABLE_IN_PROGRESS" - }, - { - "value": "DISABLED_AND_ROLLBACK_SCHEDULED", - "name": "DISABLED_AND_ROLLBACK_SCHEDULED" - }, - { - "value": "DISABLED_AND_ROLLBACK_IN_PROGRESS", - "name": "DISABLED_AND_ROLLBACK_IN_PROGRESS" - }, - { - "value": "DISABLED_AND_ROLLBACK_COMPLETE", - "name": "DISABLED_AND_ROLLBACK_COMPLETE" - }, - { - "value": "DISABLED_AND_ROLLBACK_ERROR", - "name": "DISABLED_AND_ROLLBACK_ERROR" - }, - { - "value": "ERROR", - "name": "ERROR" + "type": "enum", + "members": { + "ENABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLED" + } + }, + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + }, + "ENABLE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENABLE_IN_PROGRESS" + } + }, + "DISABLE_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLE_IN_PROGRESS" + } + }, + "DISABLED_AND_ROLLBACK_SCHEDULED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED_AND_ROLLBACK_SCHEDULED" + } + }, + "DISABLED_AND_ROLLBACK_IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED_AND_ROLLBACK_IN_PROGRESS" + } + }, + "DISABLED_AND_ROLLBACK_COMPLETE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED_AND_ROLLBACK_COMPLETE" + } + }, + "DISABLED_AND_ROLLBACK_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED_AND_ROLLBACK_ERROR" } - ] + }, + "ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ERROR" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the Auto-Tune state for the Elasticsearch domain. For valid states see the Developer Guide.

" } }, "com.amazonaws.elasticsearchservice#AutoTuneStatus": { @@ -2954,15 +3110,17 @@ } }, "com.amazonaws.elasticsearchservice#AutoTuneType": { - "type": "string", - "traits": { - "smithy.api#documentation": "

Specifies Auto-Tune type. Valid value is SCHEDULED_ACTION.

", - "smithy.api#enum": [ - { - "value": "SCHEDULED_ACTION", - "name": "SCHEDULED_ACTION" + "type": "enum", + "members": { + "SCHEDULED_ACTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SCHEDULED_ACTION" } - ] + } + }, + "traits": { + "smithy.api#documentation": "

Specifies Auto-Tune type. Valid value is SCHEDULED_ACTION.

" } }, "com.amazonaws.elasticsearchservice#BackendRole": { @@ -3182,6 +3340,15 @@ "smithy.api#documentation": "

The progress details of a specific domain configuration change.

" } }, + "com.amazonaws.elasticsearchservice#ClientToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + } + } + }, "com.amazonaws.elasticsearchservice#CloudWatchLogsLogGroupArn": { "type": "string", "traits": { @@ -3657,6 +3824,86 @@ "smithy.api#documentation": "

\n Container for response returned by\n \n CreatePackage\n \n operation.\n

" } }, + "com.amazonaws.elasticsearchservice#CreateVpcEndpoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticsearchservice#CreateVpcEndpointRequest" + }, + "output": { + "target": "com.amazonaws.elasticsearchservice#CreateVpcEndpointResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticsearchservice#BaseException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ConflictException" + }, + { + "target": "com.amazonaws.elasticsearchservice#DisabledOperationException" + }, + { + "target": "com.amazonaws.elasticsearchservice#InternalException" + }, + { + "target": "com.amazonaws.elasticsearchservice#LimitExceededException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates an Amazon OpenSearch Service-managed VPC endpoint.

", + "smithy.api#http": { + "method": "POST", + "uri": "/2015-01-01/es/vpcEndpoints", + "code": 200 + } + } + }, + "com.amazonaws.elasticsearchservice#CreateVpcEndpointRequest": { + "type": "structure", + "members": { + "DomainArn": { + "target": "com.amazonaws.elasticsearchservice#DomainArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the domain to grant access to.

", + "smithy.api#required": {} + } + }, + "VpcOptions": { + "target": "com.amazonaws.elasticsearchservice#VPCOptions", + "traits": { + "smithy.api#documentation": "

Options to specify the subnets and security groups for the endpoint.

", + "smithy.api#required": {} + } + }, + "ClientToken": { + "target": "com.amazonaws.elasticsearchservice#ClientToken", + "traits": { + "smithy.api#documentation": "

Unique, case-sensitive identifier to ensure idempotency of the request.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for the parameters to the CreateVpcEndpointRequest operation.

" + } + }, + "com.amazonaws.elasticsearchservice#CreateVpcEndpointResponse": { + "type": "structure", + "members": { + "VpcEndpoint": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpoint", + "traits": { + "smithy.api#documentation": "

Information about the newly created VPC endpoint.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for response parameters to the CreateVpcEndpoint operation. Contains the configuration and status of the VPC Endpoint being created.

" + } + }, "com.amazonaws.elasticsearchservice#CreatedAt": { "type": "timestamp" }, @@ -3932,34 +4179,104 @@ "smithy.api#documentation": "

\n Container for response parameters to\n \n DeletePackage\n \n operation.\n

" } }, - "com.amazonaws.elasticsearchservice#DeploymentCloseDateTimeStamp": { - "type": "timestamp" - }, - "com.amazonaws.elasticsearchservice#DeploymentStatus": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "PENDING_UPDATE", - "name": "PENDING_UPDATE" - }, - { - "value": "IN_PROGRESS", - "name": "IN_PROGRESS" - }, - { - "value": "COMPLETED", - "name": "COMPLETED" - }, - { - "value": "NOT_ELIGIBLE", - "name": "NOT_ELIGIBLE" - }, - { - "value": "ELIGIBLE", - "name": "ELIGIBLE" - } - ] + "com.amazonaws.elasticsearchservice#DeleteVpcEndpoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticsearchservice#DeleteVpcEndpointRequest" + }, + "output": { + "target": "com.amazonaws.elasticsearchservice#DeleteVpcEndpointResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticsearchservice#BaseException" + }, + { + "target": "com.amazonaws.elasticsearchservice#DisabledOperationException" + }, + { + "target": "com.amazonaws.elasticsearchservice#InternalException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes an Amazon OpenSearch Service-managed interface VPC endpoint.

", + "smithy.api#http": { + "method": "DELETE", + "uri": "/2015-01-01/es/vpcEndpoints/{VpcEndpointId}", + "code": 200 + } + } + }, + "com.amazonaws.elasticsearchservice#DeleteVpcEndpointRequest": { + "type": "structure", + "members": { + "VpcEndpointId": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the endpoint to be deleted.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Deletes an Amazon OpenSearch Service-managed interface VPC endpoint.

" + } + }, + "com.amazonaws.elasticsearchservice#DeleteVpcEndpointResponse": { + "type": "structure", + "members": { + "VpcEndpointSummary": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointSummary", + "traits": { + "smithy.api#documentation": "

Information about the deleted endpoint, including its current status (DELETING\n or DELETE_FAILED).

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for response parameters to the DeleteVpcEndpoint operation. Contains the summarized detail of the VPC Endpoint being deleted.

" + } + }, + "com.amazonaws.elasticsearchservice#DeploymentCloseDateTimeStamp": { + "type": "timestamp" + }, + "com.amazonaws.elasticsearchservice#DeploymentStatus": { + "type": "enum", + "members": { + "PENDING_UPDATE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING_UPDATE" + } + }, + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" + } + }, + "NOT_ELIGIBLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOT_ELIGIBLE" + } + }, + "ELIGIBLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ELIGIBLE" + } + } } }, "com.amazonaws.elasticsearchservice#DeploymentType": { @@ -4608,22 +4925,26 @@ } }, "com.amazonaws.elasticsearchservice#DescribePackagesFilterName": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "PackageID", - "name": "PackageID" - }, - { - "value": "PackageName", - "name": "PackageName" - }, - { - "value": "PackageStatus", - "name": "PackageStatus" + "type": "enum", + "members": { + "PackageID": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PackageID" + } + }, + "PackageName": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PackageName" + } + }, + "PackageStatus": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PackageStatus" } - ] + } } }, "com.amazonaws.elasticsearchservice#DescribePackagesFilterValue": { @@ -4854,6 +5175,74 @@ "smithy.api#documentation": "

Container for results from DescribeReservedElasticsearchInstances

" } }, + "com.amazonaws.elasticsearchservice#DescribeVpcEndpoints": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticsearchservice#DescribeVpcEndpointsRequest" + }, + "output": { + "target": "com.amazonaws.elasticsearchservice#DescribeVpcEndpointsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticsearchservice#BaseException" + }, + { + "target": "com.amazonaws.elasticsearchservice#DisabledOperationException" + }, + { + "target": "com.amazonaws.elasticsearchservice#InternalException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Describes one or more Amazon OpenSearch Service-managed VPC endpoints.

", + "smithy.api#http": { + "method": "POST", + "uri": "/2015-01-01/es/vpcEndpoints/describe", + "code": 200 + } + } + }, + "com.amazonaws.elasticsearchservice#DescribeVpcEndpointsRequest": { + "type": "structure", + "members": { + "VpcEndpointIds": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointIdList", + "traits": { + "smithy.api#documentation": "

The unique identifiers of the endpoints to get information about.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for request parameters to the DescribeVpcEndpoints operation. Specifies the list of VPC endpoints to be described.

" + } + }, + "com.amazonaws.elasticsearchservice#DescribeVpcEndpointsResponse": { + "type": "structure", + "members": { + "VpcEndpoints": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpoints", + "traits": { + "smithy.api#documentation": "

Information about each requested VPC endpoint.

", + "smithy.api#required": {} + } + }, + "VpcEndpointErrors": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointErrorList", + "traits": { + "smithy.api#documentation": "

Any errors associated with the request.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for response parameters to the DescribeVpcEndpoints operation. Returns a list containing configuration details and\n status of the VPC Endpoints as well as a list containing error responses of the endpoints that could not be described

" + } + }, "com.amazonaws.elasticsearchservice#Description": { "type": "string" }, @@ -4951,6 +5340,16 @@ "smithy.api#documentation": "

\n Container for response returned by\n \n DissociatePackage\n \n operation.\n

" } }, + "com.amazonaws.elasticsearchservice#DomainArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 512 + }, + "smithy.api#pattern": "^arn:aws[a-z\\-]*:[a-z]+:[a-z0-9\\-]+:[0-9]+:domain\\/[a-z0-9\\-]+$" + } + }, "com.amazonaws.elasticsearchservice#DomainEndpointOptions": { "type": "structure", "members": { @@ -5160,30 +5559,38 @@ } }, "com.amazonaws.elasticsearchservice#DomainPackageStatus": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "ASSOCIATING", - "name": "ASSOCIATING" - }, - { - "value": "ASSOCIATION_FAILED", - "name": "ASSOCIATION_FAILED" - }, - { - "value": "ACTIVE", - "name": "ACTIVE" - }, - { - "value": "DISSOCIATING", - "name": "DISSOCIATING" - }, - { - "value": "DISSOCIATION_FAILED", - "name": "DISSOCIATION_FAILED" + "type": "enum", + "members": { + "ASSOCIATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASSOCIATING" + } + }, + "ASSOCIATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASSOCIATION_FAILED" + } + }, + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTIVE" + } + }, + "DISSOCIATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISSOCIATING" + } + }, + "DISSOCIATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISSOCIATION_FAILED" } - ] + } } }, "com.amazonaws.elasticsearchservice#Double": { @@ -5302,306 +5709,422 @@ } }, "com.amazonaws.elasticsearchservice#ESPartitionInstanceType": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "m3.medium.elasticsearch", - "name": "m3_medium_elasticsearch" - }, - { - "value": "m3.large.elasticsearch", - "name": "m3_large_elasticsearch" - }, - { - "value": "m3.xlarge.elasticsearch", - "name": "m3_xlarge_elasticsearch" - }, - { - "value": "m3.2xlarge.elasticsearch", - "name": "m3_2xlarge_elasticsearch" - }, - { - "value": "m4.large.elasticsearch", - "name": "m4_large_elasticsearch" - }, - { - "value": "m4.xlarge.elasticsearch", - "name": "m4_xlarge_elasticsearch" - }, - { - "value": "m4.2xlarge.elasticsearch", - "name": "m4_2xlarge_elasticsearch" - }, - { - "value": "m4.4xlarge.elasticsearch", - "name": "m4_4xlarge_elasticsearch" - }, - { - "value": "m4.10xlarge.elasticsearch", - "name": "m4_10xlarge_elasticsearch" - }, - { - "value": "m5.large.elasticsearch", - "name": "m5_large_elasticsearch" - }, - { - "value": "m5.xlarge.elasticsearch", - "name": "m5_xlarge_elasticsearch" - }, - { - "value": "m5.2xlarge.elasticsearch", - "name": "m5_2xlarge_elasticsearch" - }, - { - "value": "m5.4xlarge.elasticsearch", - "name": "m5_4xlarge_elasticsearch" - }, - { - "value": "m5.12xlarge.elasticsearch", - "name": "m5_12xlarge_elasticsearch" - }, - { - "value": "r5.large.elasticsearch", - "name": "r5_large_elasticsearch" - }, - { - "value": "r5.xlarge.elasticsearch", - "name": "r5_xlarge_elasticsearch" - }, - { - "value": "r5.2xlarge.elasticsearch", - "name": "r5_2xlarge_elasticsearch" - }, - { - "value": "r5.4xlarge.elasticsearch", - "name": "r5_4xlarge_elasticsearch" - }, - { - "value": "r5.12xlarge.elasticsearch", - "name": "r5_12xlarge_elasticsearch" - }, - { - "value": "c5.large.elasticsearch", - "name": "c5_large_elasticsearch" - }, - { - "value": "c5.xlarge.elasticsearch", - "name": "c5_xlarge_elasticsearch" - }, - { - "value": "c5.2xlarge.elasticsearch", - "name": "c5_2xlarge_elasticsearch" - }, - { - "value": "c5.4xlarge.elasticsearch", - "name": "c5_4xlarge_elasticsearch" - }, - { - "value": "c5.9xlarge.elasticsearch", - "name": "c5_9xlarge_elasticsearch" - }, - { - "value": "c5.18xlarge.elasticsearch", - "name": "c5_18xlarge_elasticsearch" - }, - { - "value": "ultrawarm1.medium.elasticsearch", - "name": "ultrawarm1_medium_elasticsearch" - }, - { - "value": "ultrawarm1.large.elasticsearch", - "name": "ultrawarm1_large_elasticsearch" - }, - { - "value": "t2.micro.elasticsearch", - "name": "t2_micro_elasticsearch" - }, - { - "value": "t2.small.elasticsearch", - "name": "t2_small_elasticsearch" - }, - { - "value": "t2.medium.elasticsearch", - "name": "t2_medium_elasticsearch" - }, - { - "value": "r3.large.elasticsearch", - "name": "r3_large_elasticsearch" - }, - { - "value": "r3.xlarge.elasticsearch", - "name": "r3_xlarge_elasticsearch" - }, - { - "value": "r3.2xlarge.elasticsearch", - "name": "r3_2xlarge_elasticsearch" - }, - { - "value": "r3.4xlarge.elasticsearch", - "name": "r3_4xlarge_elasticsearch" - }, - { - "value": "r3.8xlarge.elasticsearch", - "name": "r3_8xlarge_elasticsearch" - }, - { - "value": "i2.xlarge.elasticsearch", - "name": "i2_xlarge_elasticsearch" - }, - { - "value": "i2.2xlarge.elasticsearch", - "name": "i2_2xlarge_elasticsearch" - }, - { - "value": "d2.xlarge.elasticsearch", - "name": "d2_xlarge_elasticsearch" - }, - { - "value": "d2.2xlarge.elasticsearch", - "name": "d2_2xlarge_elasticsearch" - }, - { - "value": "d2.4xlarge.elasticsearch", - "name": "d2_4xlarge_elasticsearch" - }, - { - "value": "d2.8xlarge.elasticsearch", - "name": "d2_8xlarge_elasticsearch" - }, - { - "value": "c4.large.elasticsearch", - "name": "c4_large_elasticsearch" - }, - { - "value": "c4.xlarge.elasticsearch", - "name": "c4_xlarge_elasticsearch" - }, - { - "value": "c4.2xlarge.elasticsearch", - "name": "c4_2xlarge_elasticsearch" - }, - { - "value": "c4.4xlarge.elasticsearch", - "name": "c4_4xlarge_elasticsearch" - }, - { - "value": "c4.8xlarge.elasticsearch", - "name": "c4_8xlarge_elasticsearch" - }, - { - "value": "r4.large.elasticsearch", - "name": "r4_large_elasticsearch" - }, - { - "value": "r4.xlarge.elasticsearch", - "name": "r4_xlarge_elasticsearch" - }, - { - "value": "r4.2xlarge.elasticsearch", - "name": "r4_2xlarge_elasticsearch" - }, - { - "value": "r4.4xlarge.elasticsearch", - "name": "r4_4xlarge_elasticsearch" - }, - { - "value": "r4.8xlarge.elasticsearch", - "name": "r4_8xlarge_elasticsearch" - }, - { - "value": "r4.16xlarge.elasticsearch", - "name": "r4_16xlarge_elasticsearch" - }, - { - "value": "i3.large.elasticsearch", - "name": "i3_large_elasticsearch" - }, - { - "value": "i3.xlarge.elasticsearch", - "name": "i3_xlarge_elasticsearch" - }, - { - "value": "i3.2xlarge.elasticsearch", - "name": "i3_2xlarge_elasticsearch" - }, - { - "value": "i3.4xlarge.elasticsearch", - "name": "i3_4xlarge_elasticsearch" - }, - { - "value": "i3.8xlarge.elasticsearch", - "name": "i3_8xlarge_elasticsearch" - }, - { - "value": "i3.16xlarge.elasticsearch", - "name": "i3_16xlarge_elasticsearch" - } - ] - } - }, - "com.amazonaws.elasticsearchservice#ESWarmPartitionInstanceType": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "ultrawarm1.medium.elasticsearch", - "name": "ultrawarm1_medium_elasticsearch" - }, - { - "value": "ultrawarm1.large.elasticsearch", - "name": "ultrawarm1_large_elasticsearch" - } - ] - } - }, - "com.amazonaws.elasticsearchservice#ElasticsearchClusterConfig": { - "type": "structure", + "type": "enum", "members": { - "InstanceType": { - "target": "com.amazonaws.elasticsearchservice#ESPartitionInstanceType", + "m3_medium_elasticsearch": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The instance type for an Elasticsearch cluster. UltraWarm instance types are not supported for data instances.

" + "smithy.api#enumValue": "m3.medium.elasticsearch" } }, - "InstanceCount": { - "target": "com.amazonaws.elasticsearchservice#IntegerClass", + "m3_large_elasticsearch": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The number of instances in the specified domain cluster.

" + "smithy.api#enumValue": "m3.large.elasticsearch" } }, - "DedicatedMasterEnabled": { - "target": "com.amazonaws.elasticsearchservice#Boolean", + "m3_xlarge_elasticsearch": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A boolean value to indicate whether a dedicated master node is enabled. See About Dedicated Master Nodes for more information.

" + "smithy.api#enumValue": "m3.xlarge.elasticsearch" } }, - "ZoneAwarenessEnabled": { - "target": "com.amazonaws.elasticsearchservice#Boolean", + "m3_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

A boolean value to indicate whether zone awareness is enabled. See About Zone Awareness for more information.

" + "smithy.api#enumValue": "m3.2xlarge.elasticsearch" } }, - "ZoneAwarenessConfig": { - "target": "com.amazonaws.elasticsearchservice#ZoneAwarenessConfig", + "m4_large_elasticsearch": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Specifies the zone awareness configuration for a domain when zone awareness is enabled.

" + "smithy.api#enumValue": "m4.large.elasticsearch" } }, - "DedicatedMasterType": { - "target": "com.amazonaws.elasticsearchservice#ESPartitionInstanceType", + "m4_xlarge_elasticsearch": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

The instance type for a dedicated master node.

" + "smithy.api#enumValue": "m4.xlarge.elasticsearch" } }, - "DedicatedMasterCount": { - "target": "com.amazonaws.elasticsearchservice#IntegerClass", + "m4_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Total number of dedicated master nodes, active and on standby, for the cluster.

" + "smithy.api#enumValue": "m4.2xlarge.elasticsearch" } }, - "WarmEnabled": { - "target": "com.amazonaws.elasticsearchservice#Boolean", + "m4_4xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m4.4xlarge.elasticsearch" + } + }, + "m4_10xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m4.10xlarge.elasticsearch" + } + }, + "m5_large_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m5.large.elasticsearch" + } + }, + "m5_xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m5.xlarge.elasticsearch" + } + }, + "m5_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m5.2xlarge.elasticsearch" + } + }, + "m5_4xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m5.4xlarge.elasticsearch" + } + }, + "m5_12xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "m5.12xlarge.elasticsearch" + } + }, + "r5_large_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r5.large.elasticsearch" + } + }, + "r5_xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r5.xlarge.elasticsearch" + } + }, + "r5_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r5.2xlarge.elasticsearch" + } + }, + "r5_4xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r5.4xlarge.elasticsearch" + } + }, + "r5_12xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r5.12xlarge.elasticsearch" + } + }, + "c5_large_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c5.large.elasticsearch" + } + }, + "c5_xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c5.xlarge.elasticsearch" + } + }, + "c5_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c5.2xlarge.elasticsearch" + } + }, + "c5_4xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c5.4xlarge.elasticsearch" + } + }, + "c5_9xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c5.9xlarge.elasticsearch" + } + }, + "c5_18xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c5.18xlarge.elasticsearch" + } + }, + "ultrawarm1_medium_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ultrawarm1.medium.elasticsearch" + } + }, + "ultrawarm1_large_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ultrawarm1.large.elasticsearch" + } + }, + "t2_micro_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "t2.micro.elasticsearch" + } + }, + "t2_small_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "t2.small.elasticsearch" + } + }, + "t2_medium_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "t2.medium.elasticsearch" + } + }, + "r3_large_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r3.large.elasticsearch" + } + }, + "r3_xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r3.xlarge.elasticsearch" + } + }, + "r3_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r3.2xlarge.elasticsearch" + } + }, + "r3_4xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r3.4xlarge.elasticsearch" + } + }, + "r3_8xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r3.8xlarge.elasticsearch" + } + }, + "i2_xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "i2.xlarge.elasticsearch" + } + }, + "i2_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "i2.2xlarge.elasticsearch" + } + }, + "d2_xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "d2.xlarge.elasticsearch" + } + }, + "d2_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "d2.2xlarge.elasticsearch" + } + }, + "d2_4xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "d2.4xlarge.elasticsearch" + } + }, + "d2_8xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "d2.8xlarge.elasticsearch" + } + }, + "c4_large_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c4.large.elasticsearch" + } + }, + "c4_xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c4.xlarge.elasticsearch" + } + }, + "c4_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c4.2xlarge.elasticsearch" + } + }, + "c4_4xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c4.4xlarge.elasticsearch" + } + }, + "c4_8xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "c4.8xlarge.elasticsearch" + } + }, + "r4_large_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r4.large.elasticsearch" + } + }, + "r4_xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r4.xlarge.elasticsearch" + } + }, + "r4_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r4.2xlarge.elasticsearch" + } + }, + "r4_4xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r4.4xlarge.elasticsearch" + } + }, + "r4_8xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r4.8xlarge.elasticsearch" + } + }, + "r4_16xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "r4.16xlarge.elasticsearch" + } + }, + "i3_large_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "i3.large.elasticsearch" + } + }, + "i3_xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "i3.xlarge.elasticsearch" + } + }, + "i3_2xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "i3.2xlarge.elasticsearch" + } + }, + "i3_4xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "i3.4xlarge.elasticsearch" + } + }, + "i3_8xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "i3.8xlarge.elasticsearch" + } + }, + "i3_16xlarge_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "i3.16xlarge.elasticsearch" + } + } + } + }, + "com.amazonaws.elasticsearchservice#ESWarmPartitionInstanceType": { + "type": "enum", + "members": { + "ultrawarm1_medium_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ultrawarm1.medium.elasticsearch" + } + }, + "ultrawarm1_large_elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ultrawarm1.large.elasticsearch" + } + } + } + }, + "com.amazonaws.elasticsearchservice#ElasticsearchClusterConfig": { + "type": "structure", + "members": { + "InstanceType": { + "target": "com.amazonaws.elasticsearchservice#ESPartitionInstanceType", + "traits": { + "smithy.api#documentation": "

The instance type for an Elasticsearch cluster. UltraWarm instance types are not supported for data instances.

" + } + }, + "InstanceCount": { + "target": "com.amazonaws.elasticsearchservice#IntegerClass", + "traits": { + "smithy.api#documentation": "

The number of instances in the specified domain cluster.

" + } + }, + "DedicatedMasterEnabled": { + "target": "com.amazonaws.elasticsearchservice#Boolean", + "traits": { + "smithy.api#documentation": "

A boolean value to indicate whether a dedicated master node is enabled. See About Dedicated Master Nodes for more information.

" + } + }, + "ZoneAwarenessEnabled": { + "target": "com.amazonaws.elasticsearchservice#Boolean", + "traits": { + "smithy.api#documentation": "

A boolean value to indicate whether zone awareness is enabled. See About Zone Awareness for more information.

" + } + }, + "ZoneAwarenessConfig": { + "target": "com.amazonaws.elasticsearchservice#ZoneAwarenessConfig", + "traits": { + "smithy.api#documentation": "

Specifies the zone awareness configuration for a domain when zone awareness is enabled.

" + } + }, + "DedicatedMasterType": { + "target": "com.amazonaws.elasticsearchservice#ESPartitionInstanceType", + "traits": { + "smithy.api#documentation": "

The instance type for a dedicated master node.

" + } + }, + "DedicatedMasterCount": { + "target": "com.amazonaws.elasticsearchservice#IntegerClass", + "traits": { + "smithy.api#documentation": "

Total number of dedicated master nodes, active and on standby, for the cluster.

" + } + }, + "WarmEnabled": { + "target": "com.amazonaws.elasticsearchservice#Boolean", "traits": { "smithy.api#documentation": "

True to enable warm storage.

" } @@ -6005,6 +6528,12 @@ "smithy.api#documentation": "

Status of the Encryption At Rest options for the specified Elasticsearch domain.

" } }, + "com.amazonaws.elasticsearchservice#Endpoint": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[A-Za-z0-9\\-\\.]+$" + } + }, "com.amazonaws.elasticsearchservice#EndpointsMap": { "type": "map", "key": { @@ -6015,18 +6544,20 @@ } }, "com.amazonaws.elasticsearchservice#EngineType": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "OpenSearch", - "name": "OpenSearch" - }, - { - "value": "Elasticsearch", - "name": "Elasticsearch" + "type": "enum", + "members": { + "OpenSearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OpenSearch" + } + }, + "Elasticsearch": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Elasticsearch" } - ] + } } }, "com.amazonaws.elasticsearchservice#ErrorDetails": { @@ -6455,34 +6986,44 @@ } }, "com.amazonaws.elasticsearchservice#InboundCrossClusterSearchConnectionStatusCode": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "PENDING_ACCEPTANCE", - "name": "PENDING_ACCEPTANCE" - }, - { - "value": "APPROVED", - "name": "APPROVED" - }, - { - "value": "REJECTING", - "name": "REJECTING" - }, - { - "value": "REJECTED", - "name": "REJECTED" - }, - { - "value": "DELETING", - "name": "DELETING" - }, - { - "value": "DELETED", - "name": "DELETED" + "type": "enum", + "members": { + "PENDING_ACCEPTANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING_ACCEPTANCE" + } + }, + "APPROVED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "APPROVED" + } + }, + "REJECTING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REJECTING" } - ] + }, + "REJECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REJECTED" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + }, + "DELETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETED" + } + } } }, "com.amazonaws.elasticsearchservice#InboundCrossClusterSearchConnections": { @@ -7134,12 +7675,229 @@ "smithy.api#documentation": "

The result of a ListTags operation. Contains tags for all requested Elasticsearch domains.

" } }, - "com.amazonaws.elasticsearchservice#LogPublishingOption": { - "type": "structure", - "members": { - "CloudWatchLogsLogGroupArn": { - "target": "com.amazonaws.elasticsearchservice#CloudWatchLogsLogGroupArn" - }, + "com.amazonaws.elasticsearchservice#ListVpcEndpointAccess": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticsearchservice#ListVpcEndpointAccessRequest" + }, + "output": { + "target": "com.amazonaws.elasticsearchservice#ListVpcEndpointAccessResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticsearchservice#BaseException" + }, + { + "target": "com.amazonaws.elasticsearchservice#DisabledOperationException" + }, + { + "target": "com.amazonaws.elasticsearchservice#InternalException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves information about each principal that is allowed to access a\n given Amazon OpenSearch Service domain through the use of an interface VPC endpoint.

", + "smithy.api#http": { + "method": "GET", + "uri": "/2015-01-01/es/domain/{DomainName}/listVpcEndpointAccess", + "code": 200 + } + } + }, + "com.amazonaws.elasticsearchservice#ListVpcEndpointAccessRequest": { + "type": "structure", + "members": { + "DomainName": { + "target": "com.amazonaws.elasticsearchservice#DomainName", + "traits": { + "smithy.api#documentation": "

The name of the OpenSearch Service domain to retrieve access information for.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.elasticsearchservice#NextToken", + "traits": { + "smithy.api#documentation": "

Provides an identifier to allow retrieval of paginated results.

", + "smithy.api#httpQuery": "nextToken" + } + } + }, + "traits": { + "smithy.api#documentation": "

Retrieves information about each principal that is allowed to access a\n given Amazon OpenSearch Service domain through the use of an interface VPC endpoint

" + } + }, + "com.amazonaws.elasticsearchservice#ListVpcEndpointAccessResponse": { + "type": "structure", + "members": { + "AuthorizedPrincipalList": { + "target": "com.amazonaws.elasticsearchservice#AuthorizedPrincipalList", + "traits": { + "smithy.api#documentation": "

List of AuthorizedPrincipal describing the details of the permissions to manage VPC endpoints against the specified domain.

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.elasticsearchservice#NextToken", + "traits": { + "smithy.api#documentation": "

Provides an identifier to allow retrieval of paginated results.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for response parameters to the ListVpcEndpointAccess operation.\n Returns a list of accounts id and account type authorized to manage VPC endpoints.

" + } + }, + "com.amazonaws.elasticsearchservice#ListVpcEndpoints": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticsearchservice#ListVpcEndpointsRequest" + }, + "output": { + "target": "com.amazonaws.elasticsearchservice#ListVpcEndpointsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticsearchservice#BaseException" + }, + { + "target": "com.amazonaws.elasticsearchservice#DisabledOperationException" + }, + { + "target": "com.amazonaws.elasticsearchservice#InternalException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves all Amazon OpenSearch Service-managed VPC endpoints in the current account and Region.

", + "smithy.api#http": { + "method": "GET", + "uri": "/2015-01-01/es/vpcEndpoints", + "code": 200 + } + } + }, + "com.amazonaws.elasticsearchservice#ListVpcEndpointsForDomain": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticsearchservice#ListVpcEndpointsForDomainRequest" + }, + "output": { + "target": "com.amazonaws.elasticsearchservice#ListVpcEndpointsForDomainResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticsearchservice#BaseException" + }, + { + "target": "com.amazonaws.elasticsearchservice#DisabledOperationException" + }, + { + "target": "com.amazonaws.elasticsearchservice#InternalException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves all Amazon OpenSearch Service-managed VPC endpoints associated with a particular domain.

", + "smithy.api#http": { + "method": "GET", + "uri": "/2015-01-01/es/domain/{DomainName}/vpcEndpoints", + "code": 200 + } + } + }, + "com.amazonaws.elasticsearchservice#ListVpcEndpointsForDomainRequest": { + "type": "structure", + "members": { + "DomainName": { + "target": "com.amazonaws.elasticsearchservice#DomainName", + "traits": { + "smithy.api#documentation": "

Name of the ElasticSearch domain whose VPC endpoints are to be listed.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.elasticsearchservice#NextToken", + "traits": { + "smithy.api#documentation": "

Provides an identifier to allow retrieval of paginated results.

", + "smithy.api#httpQuery": "nextToken" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for request parameters to the ListVpcEndpointsForDomain operation. Specifies the domain whose VPC endpoints will be listed.

" + } + }, + "com.amazonaws.elasticsearchservice#ListVpcEndpointsForDomainResponse": { + "type": "structure", + "members": { + "VpcEndpointSummaryList": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointSummaryList", + "traits": { + "smithy.api#documentation": "

Provides list of VpcEndpointSummary summarizing details of the VPC endpoints.

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.elasticsearchservice#NextToken", + "traits": { + "smithy.api#documentation": "

Information about each endpoint associated with the domain.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for response parameters to the ListVpcEndpointsForDomain operation. Returns a list containing summarized details of the VPC endpoints.

" + } + }, + "com.amazonaws.elasticsearchservice#ListVpcEndpointsRequest": { + "type": "structure", + "members": { + "NextToken": { + "target": "com.amazonaws.elasticsearchservice#NextToken", + "traits": { + "smithy.api#documentation": "

Identifier to allow retrieval of paginated results.

", + "smithy.api#httpQuery": "nextToken" + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for request parameters to the ListVpcEndpoints operation.

" + } + }, + "com.amazonaws.elasticsearchservice#ListVpcEndpointsResponse": { + "type": "structure", + "members": { + "VpcEndpointSummaryList": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointSummaryList", + "traits": { + "smithy.api#documentation": "

Information about each endpoint.

", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.elasticsearchservice#NextToken", + "traits": { + "smithy.api#documentation": "

Provides an identifier to allow retrieval of paginated results.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Container for response parameters to the ListVpcEndpoints operation. Returns a list containing summarized details of the VPC endpoints.

" + } + }, + "com.amazonaws.elasticsearchservice#LogPublishingOption": { + "type": "structure", + "members": { + "CloudWatchLogsLogGroupArn": { + "target": "com.amazonaws.elasticsearchservice#CloudWatchLogsLogGroupArn" + }, "Enabled": { "target": "com.amazonaws.elasticsearchservice#Boolean", "traits": { @@ -7181,27 +7939,35 @@ } }, "com.amazonaws.elasticsearchservice#LogType": { - "type": "string", - "traits": { - "smithy.api#documentation": "

Type of Log File, it can be one of the following:\n

    \n
  • INDEX_SLOW_LOGS: Index slow logs contain insert requests that took more time than configured index query log threshold to execute.
  • \n
  • SEARCH_SLOW_LOGS: Search slow logs contain search queries that took more time than configured search query log threshold to execute.
  • \n
  • ES_APPLICATION_LOGS: Elasticsearch application logs contain information about errors and warnings raised during the operation of the service and can be useful for troubleshooting.
  • \n
  • AUDIT_LOGS: Audit logs contain records of user requests for access from the domain.
  • \n
\n

", - "smithy.api#enum": [ - { - "value": "INDEX_SLOW_LOGS", - "name": "INDEX_SLOW_LOGS" - }, - { - "value": "SEARCH_SLOW_LOGS", - "name": "SEARCH_SLOW_LOGS" - }, - { - "value": "ES_APPLICATION_LOGS", - "name": "ES_APPLICATION_LOGS" - }, - { - "value": "AUDIT_LOGS", - "name": "AUDIT_LOGS" + "type": "enum", + "members": { + "INDEX_SLOW_LOGS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INDEX_SLOW_LOGS" } - ] + }, + "SEARCH_SLOW_LOGS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SEARCH_SLOW_LOGS" + } + }, + "ES_APPLICATION_LOGS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ES_APPLICATION_LOGS" + } + }, + "AUDIT_LOGS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AUDIT_LOGS" + } + } + }, + "traits": { + "smithy.api#documentation": "

Type of Log File, it can be one of the following:\n

    \n
  • INDEX_SLOW_LOGS: Index slow logs contain insert requests that took more time than configured index query log threshold to execute.
  • \n
  • SEARCH_SLOW_LOGS: Search slow logs contain search queries that took more time than configured search query log threshold to execute.
  • \n
  • ES_APPLICATION_LOGS: Elasticsearch application logs contain information about errors and warnings raised during the operation of the service and can be useful for troubleshooting.
  • \n
  • AUDIT_LOGS: Audit logs contain records of user requests for access from the domain.
  • \n
\n

" } }, "com.amazonaws.elasticsearchservice#MasterUserOptions": { @@ -7314,23 +8080,29 @@ } }, "com.amazonaws.elasticsearchservice#OptionState": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The state of a requested change. One of the following:

\n
    \n
  • Processing: The request change is still in-process.
  • \n
  • Active: The request change is processed and deployed to the Elasticsearch domain.
  • \n
", - "smithy.api#enum": [ - { - "value": "RequiresIndexDocuments", - "name": "RequiresIndexDocuments" - }, - { - "value": "Processing", - "name": "Processing" - }, - { - "value": "Active", - "name": "Active" + "type": "enum", + "members": { + "RequiresIndexDocuments": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "RequiresIndexDocuments" + } + }, + "Processing": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Processing" + } + }, + "Active": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Active" } - ] + } + }, + "traits": { + "smithy.api#documentation": "

The state of a requested change. One of the following:

\n
    \n
  • Processing: The request change is still in-process.
  • \n
  • Active: The request change is processed and deployed to the Elasticsearch domain.
  • \n
" } }, "com.amazonaws.elasticsearchservice#OptionStatus": { @@ -7434,42 +8206,56 @@ } }, "com.amazonaws.elasticsearchservice#OutboundCrossClusterSearchConnectionStatusCode": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "PENDING_ACCEPTANCE", - "name": "PENDING_ACCEPTANCE" - }, - { - "value": "VALIDATING", - "name": "VALIDATING" - }, - { - "value": "VALIDATION_FAILED", - "name": "VALIDATION_FAILED" - }, - { - "value": "PROVISIONING", - "name": "PROVISIONING" - }, - { - "value": "ACTIVE", - "name": "ACTIVE" - }, - { - "value": "REJECTED", - "name": "REJECTED" - }, - { - "value": "DELETING", - "name": "DELETING" - }, - { - "value": "DELETED", - "name": "DELETED" + "type": "enum", + "members": { + "PENDING_ACCEPTANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING_ACCEPTANCE" + } + }, + "VALIDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VALIDATING" + } + }, + "VALIDATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VALIDATION_FAILED" + } + }, + "PROVISIONING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PROVISIONING" + } + }, + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTIVE" } - ] + }, + "REJECTED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REJECTED" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + }, + "DELETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETED" + } + } } }, "com.amazonaws.elasticsearchservice#OutboundCrossClusterSearchConnections": { @@ -7479,27 +8265,35 @@ } }, "com.amazonaws.elasticsearchservice#OverallChangeStatus": { - "type": "string", - "traits": { - "smithy.api#documentation": "

The overall status value of the domain configuration change.

", - "smithy.api#enum": [ - { - "value": "PENDING", - "name": "PENDING" - }, - { - "value": "PROCESSING", - "name": "PROCESSING" - }, - { - "value": "COMPLETED", - "name": "COMPLETED" - }, - { - "value": "FAILED", - "name": "FAILED" + "type": "enum", + "members": { + "PENDING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PENDING" + } + }, + "PROCESSING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PROCESSING" + } + }, + "COMPLETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COMPLETED" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" } - ] + } + }, + "traits": { + "smithy.api#documentation": "

The overall status value of the domain configuration change.

" } }, "com.amazonaws.elasticsearchservice#OwnerId": { @@ -7616,53 +8410,67 @@ } }, "com.amazonaws.elasticsearchservice#PackageStatus": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "COPYING", - "name": "COPYING" - }, - { - "value": "COPY_FAILED", - "name": "COPY_FAILED" - }, - { - "value": "VALIDATING", - "name": "VALIDATING" - }, - { - "value": "VALIDATION_FAILED", - "name": "VALIDATION_FAILED" - }, - { - "value": "AVAILABLE", - "name": "AVAILABLE" - }, - { - "value": "DELETING", - "name": "DELETING" - }, - { - "value": "DELETED", - "name": "DELETED" - }, - { - "value": "DELETE_FAILED", - "name": "DELETE_FAILED" + "type": "enum", + "members": { + "COPYING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COPYING" + } + }, + "COPY_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "COPY_FAILED" + } + }, + "VALIDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VALIDATING" + } + }, + "VALIDATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VALIDATION_FAILED" + } + }, + "AVAILABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AVAILABLE" } - ] + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + }, + "DELETED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETED" + } + }, + "DELETE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_FAILED" + } + } } }, "com.amazonaws.elasticsearchservice#PackageType": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "TXT-DICTIONARY", - "name": "TXT_DICTIONARY" + "type": "enum", + "members": { + "TXT_DICTIONARY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "TXT-DICTIONARY" } - ] + } } }, "com.amazonaws.elasticsearchservice#PackageVersion": { @@ -7715,6 +8523,26 @@ "smithy.api#documentation": "

Access policy rules for an Elasticsearch domain service endpoints. For more information, see Configuring Access Policies in the Amazon Elasticsearch Service Developer Guide. The maximum size of a policy document is 100 KB.

" } }, + "com.amazonaws.elasticsearchservice#PrincipalType": { + "type": "enum", + "members": { + "AWS_ACCOUNT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_ACCOUNT" + } + }, + "AWS_SERVICE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_SERVICE" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the type of AWS account permitted to manage VPC endpoints.:\n

    \n
  • AWS_ACCOUNT: Indicates that the account is owned by an AWS user.
  • \n
  • AWS_SERVICE: Indicates the the account is owned by an AWS service.
  • \n
\n

" + } + }, "com.amazonaws.elasticsearchservice#PurchaseReservedElasticsearchInstanceOffering": { "type": "operation", "input": { @@ -8111,22 +8939,26 @@ } }, "com.amazonaws.elasticsearchservice#ReservedElasticsearchInstancePaymentOption": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "ALL_UPFRONT", - "name": "ALL_UPFRONT" - }, - { - "value": "PARTIAL_UPFRONT", - "name": "PARTIAL_UPFRONT" - }, - { - "value": "NO_UPFRONT", - "name": "NO_UPFRONT" + "type": "enum", + "members": { + "ALL_UPFRONT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALL_UPFRONT" + } + }, + "PARTIAL_UPFRONT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PARTIAL_UPFRONT" } - ] + }, + "NO_UPFRONT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NO_UPFRONT" + } + } } }, "com.amazonaws.elasticsearchservice#ResourceAlreadyExistsException": { @@ -8161,6 +8993,70 @@ "smithy.api#httpError": 409 } }, + "com.amazonaws.elasticsearchservice#RevokeVpcEndpointAccess": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticsearchservice#RevokeVpcEndpointAccessRequest" + }, + "output": { + "target": "com.amazonaws.elasticsearchservice#RevokeVpcEndpointAccessResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticsearchservice#BaseException" + }, + { + "target": "com.amazonaws.elasticsearchservice#DisabledOperationException" + }, + { + "target": "com.amazonaws.elasticsearchservice#InternalException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Revokes access to an Amazon OpenSearch Service domain that was provided through an interface\n VPC endpoint.

", + "smithy.api#http": { + "method": "POST", + "uri": "/2015-01-01/es/domain/{DomainName}/revokeVpcEndpointAccess", + "code": 200 + } + } + }, + "com.amazonaws.elasticsearchservice#RevokeVpcEndpointAccessRequest": { + "type": "structure", + "members": { + "DomainName": { + "target": "com.amazonaws.elasticsearchservice#DomainName", + "traits": { + "smithy.api#documentation": "

The name of the OpenSearch Service domain.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Account": { + "target": "com.amazonaws.elasticsearchservice#AWSAccount", + "traits": { + "smithy.api#documentation": "

The account ID to revoke access from.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Revokes access to an Amazon OpenSearch Service domain that was provided through an interface\n VPC endpoint.

" + } + }, + "com.amazonaws.elasticsearchservice#RevokeVpcEndpointAccessResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#documentation": "

Container for response parameters to the RevokeVpcEndpointAccess operation. The response body for this operation is empty.

" + } + }, "com.amazonaws.elasticsearchservice#RoleArn": { "type": "string", "traits": { @@ -8171,19 +9067,23 @@ } }, "com.amazonaws.elasticsearchservice#RollbackOnDisable": { - "type": "string", - "traits": { - "smithy.api#documentation": "

Specifies the rollback state while disabling Auto-Tune for the domain. Valid values are NO_ROLLBACK, DEFAULT_ROLLBACK.

", - "smithy.api#enum": [ - { - "value": "NO_ROLLBACK", - "name": "NO_ROLLBACK" - }, - { - "value": "DEFAULT_ROLLBACK", - "name": "DEFAULT_ROLLBACK" + "type": "enum", + "members": { + "NO_ROLLBACK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NO_ROLLBACK" } - ] + }, + "DEFAULT_ROLLBACK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DEFAULT_ROLLBACK" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the rollback state while disabling Auto-Tune for the domain. Valid values are NO_ROLLBACK, DEFAULT_ROLLBACK.

" } }, "com.amazonaws.elasticsearchservice#S3BucketName": { @@ -8327,19 +9227,23 @@ } }, "com.amazonaws.elasticsearchservice#ScheduledAutoTuneActionType": { - "type": "string", - "traits": { - "smithy.api#documentation": "

Specifies Auto-Tune action type. Valid values are JVM_HEAP_SIZE_TUNING and JVM_YOUNG_GEN_TUNING.

", - "smithy.api#enum": [ - { - "value": "JVM_HEAP_SIZE_TUNING", - "name": "JVM_HEAP_SIZE_TUNING" - }, - { - "value": "JVM_YOUNG_GEN_TUNING", - "name": "JVM_YOUNG_GEN_TUNING" + "type": "enum", + "members": { + "JVM_HEAP_SIZE_TUNING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JVM_HEAP_SIZE_TUNING" } - ] + }, + "JVM_YOUNG_GEN_TUNING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JVM_YOUNG_GEN_TUNING" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies Auto-Tune action type. Valid values are JVM_HEAP_SIZE_TUNING and JVM_YOUNG_GEN_TUNING.

" } }, "com.amazonaws.elasticsearchservice#ScheduledAutoTuneDescription": { @@ -8366,38 +9270,44 @@ "Action": { "target": "com.amazonaws.elasticsearchservice#ScheduledAutoTuneDescription", "traits": { - "smithy.api#documentation": "

Specifies Auto-Tune action description.

" + "smithy.api#documentation": "

Specifies Auto-Tune action description.

" + } + }, + "Severity": { + "target": "com.amazonaws.elasticsearchservice#ScheduledAutoTuneSeverityType", + "traits": { + "smithy.api#documentation": "

Specifies Auto-Tune action severity. Valid values are LOW, MEDIUM and HIGH.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies details of the scheduled Auto-Tune action. See the Developer Guide for more information.

" + } + }, + "com.amazonaws.elasticsearchservice#ScheduledAutoTuneSeverityType": { + "type": "enum", + "members": { + "LOW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LOW" + } + }, + "MEDIUM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MEDIUM" } }, - "Severity": { - "target": "com.amazonaws.elasticsearchservice#ScheduledAutoTuneSeverityType", + "HIGH": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

Specifies Auto-Tune action severity. Valid values are LOW, MEDIUM and HIGH.

" + "smithy.api#enumValue": "HIGH" } } }, "traits": { - "smithy.api#documentation": "

Specifies details of the scheduled Auto-Tune action. See the Developer Guide for more information.

" - } - }, - "com.amazonaws.elasticsearchservice#ScheduledAutoTuneSeverityType": { - "type": "string", - "traits": { - "smithy.api#documentation": "

Specifies Auto-Tune action severity. Valid values are LOW, MEDIUM and HIGH.

", - "smithy.api#enum": [ - { - "value": "LOW", - "name": "LOW" - }, - { - "value": "MEDIUM", - "name": "MEDIUM" - }, - { - "value": "HIGH", - "name": "HIGH" - } - ] + "smithy.api#documentation": "

Specifies Auto-Tune action severity. Valid values are LOW, MEDIUM and HIGH.

" } }, "com.amazonaws.elasticsearchservice#ServiceSoftwareOptions": { @@ -8638,18 +9548,20 @@ } }, "com.amazonaws.elasticsearchservice#TLSSecurityPolicy": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "Policy-Min-TLS-1-0-2019-07", - "name": "POLICY_MIN_TLS_1_0_2019_07" - }, - { - "value": "Policy-Min-TLS-1-2-2019-07", - "name": "POLICY_MIN_TLS_1_2_2019_07" + "type": "enum", + "members": { + "POLICY_MIN_TLS_1_0_2019_07": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Policy-Min-TLS-1-0-2019-07" + } + }, + "POLICY_MIN_TLS_1_2_2019_07": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Policy-Min-TLS-1-2-2019-07" } - ] + } } }, "com.amazonaws.elasticsearchservice#Tag": { @@ -8704,15 +9616,17 @@ } }, "com.amazonaws.elasticsearchservice#TimeUnit": { - "type": "string", - "traits": { - "smithy.api#documentation": "

Specifies the unit of a maintenance schedule duration. Valid value is HOUR. See the Developer Guide for more information.

", - "smithy.api#enum": [ - { - "value": "HOURS", - "name": "HOURS" + "type": "enum", + "members": { + "HOURS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HOURS" } - ] + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the unit of a maintenance schedule duration. Valid value is HOUR. See the Developer Guide for more information.

" } }, "com.amazonaws.elasticsearchservice#TotalNumberOfStages": { @@ -8975,6 +9889,80 @@ "com.amazonaws.elasticsearchservice#UpdateTimestamp": { "type": "timestamp" }, + "com.amazonaws.elasticsearchservice#UpdateVpcEndpoint": { + "type": "operation", + "input": { + "target": "com.amazonaws.elasticsearchservice#UpdateVpcEndpointRequest" + }, + "output": { + "target": "com.amazonaws.elasticsearchservice#UpdateVpcEndpointResponse" + }, + "errors": [ + { + "target": "com.amazonaws.elasticsearchservice#BaseException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ConflictException" + }, + { + "target": "com.amazonaws.elasticsearchservice#DisabledOperationException" + }, + { + "target": "com.amazonaws.elasticsearchservice#InternalException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.elasticsearchservice#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Modifies an Amazon OpenSearch Service-managed interface VPC endpoint.

", + "smithy.api#http": { + "method": "POST", + "uri": "/2015-01-01/es/vpcEndpoints/update", + "code": 200 + } + } + }, + "com.amazonaws.elasticsearchservice#UpdateVpcEndpointRequest": { + "type": "structure", + "members": { + "VpcEndpointId": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointId", + "traits": { + "smithy.api#documentation": "

Unique identifier of the VPC endpoint to be updated.

", + "smithy.api#required": {} + } + }, + "VpcOptions": { + "target": "com.amazonaws.elasticsearchservice#VPCOptions", + "traits": { + "smithy.api#documentation": "

The security groups and/or subnets to add, remove, or modify.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Modifies an Amazon OpenSearch Service-managed interface VPC endpoint.

" + } + }, + "com.amazonaws.elasticsearchservice#UpdateVpcEndpointResponse": { + "type": "structure", + "members": { + "VpcEndpoint": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpoint", + "traits": { + "smithy.api#documentation": "

The endpoint to be updated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration and status of the VPC endpoint being updated.

" + } + }, "com.amazonaws.elasticsearchservice#UpgradeElasticsearchDomain": { "type": "operation", "input": { @@ -9107,45 +10095,55 @@ "type": "string" }, "com.amazonaws.elasticsearchservice#UpgradeStatus": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "IN_PROGRESS", - "name": "IN_PROGRESS" - }, - { - "value": "SUCCEEDED", - "name": "SUCCEEDED" - }, - { - "value": "SUCCEEDED_WITH_ISSUES", - "name": "SUCCEEDED_WITH_ISSUES" - }, - { - "value": "FAILED", - "name": "FAILED" + "type": "enum", + "members": { + "IN_PROGRESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IN_PROGRESS" + } + }, + "SUCCEEDED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SUCCEEDED" } - ] + }, + "SUCCEEDED_WITH_ISSUES": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SUCCEEDED_WITH_ISSUES" + } + }, + "FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAILED" + } + } } }, "com.amazonaws.elasticsearchservice#UpgradeStep": { - "type": "string", - "traits": { - "smithy.api#enum": [ - { - "value": "PRE_UPGRADE_CHECK", - "name": "PRE_UPGRADE_CHECK" - }, - { - "value": "SNAPSHOT", - "name": "SNAPSHOT" - }, - { - "value": "UPGRADE", - "name": "UPGRADE" + "type": "enum", + "members": { + "PRE_UPGRADE_CHECK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PRE_UPGRADE_CHECK" + } + }, + "SNAPSHOT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SNAPSHOT" } - ] + }, + "UPGRADE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPGRADE" + } + } } }, "com.amazonaws.elasticsearchservice#UpgradeStepItem": { @@ -9307,27 +10305,241 @@ } }, "com.amazonaws.elasticsearchservice#VolumeType": { + "type": "enum", + "members": { + "standard": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "standard" + } + }, + "gp2": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "gp2" + } + }, + "io1": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "io1" + } + }, + "gp3": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "gp3" + } + } + }, + "traits": { + "smithy.api#documentation": "

The type of EBS volume, standard, gp2, gp3 or io1. See Configuring EBS-based Storagefor more information.

" + } + }, + "com.amazonaws.elasticsearchservice#VpcEndpoint": { + "type": "structure", + "members": { + "VpcEndpointId": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the endpoint.

" + } + }, + "VpcEndpointOwner": { + "target": "com.amazonaws.elasticsearchservice#AWSAccount", + "traits": { + "smithy.api#documentation": "

The creator of the endpoint.

" + } + }, + "DomainArn": { + "target": "com.amazonaws.elasticsearchservice#DomainArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the domain associated with the endpoint.

" + } + }, + "VpcOptions": { + "target": "com.amazonaws.elasticsearchservice#VPCDerivedInfo", + "traits": { + "smithy.api#documentation": "

Options to specify the subnets and security groups for an Amazon OpenSearch Service VPC\n endpoint.

" + } + }, + "Status": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointStatus", + "traits": { + "smithy.api#documentation": "

The current status of the endpoint.

" + } + }, + "Endpoint": { + "target": "com.amazonaws.elasticsearchservice#Endpoint", + "traits": { + "smithy.api#documentation": "

The connection endpoint ID for connecting to the domain.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The connection endpoint for connecting to an Amazon OpenSearch Service domain through a\n proxy.

" + } + }, + "com.amazonaws.elasticsearchservice#VpcEndpointError": { + "type": "structure", + "members": { + "VpcEndpointId": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the endpoint.

" + } + }, + "ErrorCode": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointErrorCode", + "traits": { + "smithy.api#documentation": "

The code associated with the error.

" + } + }, + "ErrorMessage": { + "target": "com.amazonaws.elasticsearchservice#String", + "traits": { + "smithy.api#documentation": "

A message describing the error.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Error information when attempting to describe an Amazon OpenSearch Service-managed VPC\n endpoint.

" + } + }, + "com.amazonaws.elasticsearchservice#VpcEndpointErrorCode": { + "type": "enum", + "members": { + "ENDPOINT_NOT_FOUND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENDPOINT_NOT_FOUND" + } + }, + "SERVER_ERROR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SERVER_ERROR" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the error code of the failure encountered while describing the VPC endpoint:\n

    \n
  • ENDPOINT_NOT_FOUND: Indicates that the requested VPC endpoint does not exist.
  • \n
  • SERVER_ERROR: Indicates the describe endpoint operation failed due to an internal server error.
  • \n
\n

" + } + }, + "com.amazonaws.elasticsearchservice#VpcEndpointErrorList": { + "type": "list", + "member": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointError" + } + }, + "com.amazonaws.elasticsearchservice#VpcEndpointId": { "type": "string", "traits": { - "smithy.api#documentation": "

The type of EBS volume, standard, gp2, gp3 or io1. See Configuring EBS-based Storagefor more information.

", - "smithy.api#enum": [ - { - "value": "standard", - "name": "standard" - }, - { - "value": "gp2", - "name": "gp2" - }, - { - "value": "io1", - "name": "io1" - }, - { - "value": "gp3", - "name": "gp3" + "smithy.api#length": { + "min": 5, + "max": 256 + }, + "smithy.api#pattern": "^aos-[a-zA-Z0-9]*$" + } + }, + "com.amazonaws.elasticsearchservice#VpcEndpointIdList": { + "type": "list", + "member": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointId" + } + }, + "com.amazonaws.elasticsearchservice#VpcEndpointStatus": { + "type": "enum", + "members": { + "CREATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATING" + } + }, + "CREATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATE_FAILED" + } + }, + "ACTIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ACTIVE" + } + }, + "UPDATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATING" + } + }, + "UPDATE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "UPDATE_FAILED" + } + }, + "DELETING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETING" + } + }, + "DELETE_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DELETE_FAILED" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the current status of the VPC endpoint:\n

    \n
  • CREATING: Indicates that the VPC endpoint is currently being created.
  • \n
  • CREATE_FAILED: Indicates that the VPC endpoint creation failed.
  • \n
  • ACTIVE: Indicates that the VPC endpoint is currently active.
  • \n
  • UPDATING: Indicates that the VPC endpoint is currently being updated.
  • \n
  • UPDATE_FAILED: Indicates that the VPC endpoint update failed.
  • \n
  • DELETING: Indicates that the VPC endpoint is currently being deleted.
  • \n
  • DELETE_FAILED: Indicates that the VPC endpoint deletion failed.
  • \n
\n

" + } + }, + "com.amazonaws.elasticsearchservice#VpcEndpointSummary": { + "type": "structure", + "members": { + "VpcEndpointId": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the endpoint.

" + } + }, + "VpcEndpointOwner": { + "target": "com.amazonaws.elasticsearchservice#String", + "traits": { + "smithy.api#documentation": "

The creator of the endpoint.

" + } + }, + "DomainArn": { + "target": "com.amazonaws.elasticsearchservice#DomainArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the domain associated with the endpoint.

" + } + }, + "Status": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointStatus", + "traits": { + "smithy.api#documentation": "

The current status of the endpoint.

" } - ] + } + }, + "traits": { + "smithy.api#documentation": "

Summary information for an Amazon OpenSearch Service-managed VPC endpoint.

" + } + }, + "com.amazonaws.elasticsearchservice#VpcEndpointSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpointSummary" + } + }, + "com.amazonaws.elasticsearchservice#VpcEndpoints": { + "type": "list", + "member": { + "target": "com.amazonaws.elasticsearchservice#VpcEndpoint" } }, "com.amazonaws.elasticsearchservice#ZoneAwarenessConfig": { @@ -9345,4 +10557,4 @@ } } } -} \ No newline at end of file +}