From aad1fc8654154b07f4fc86739e0bdf13d46789f0 Mon Sep 17 00:00:00 2001 From: awstools Date: Mon, 11 Nov 2024 19:12:22 +0000 Subject: [PATCH] feat(client-opensearch): Adds Support for new AssociatePackages and DissociatePackages API in Amazon OpenSearch Service that allows association and dissociation operations to be carried out on multiple packages at the same time. --- clients/client-opensearch/README.md | 24 + clients/client-opensearch/src/OpenSearch.ts | 69 +++ .../client-opensearch/src/OpenSearchClient.ts | 9 + .../src/commands/AssociatePackageCommand.ts | 20 +- .../src/commands/AssociatePackagesCommand.ts | 148 +++++ .../src/commands/CreatePackageCommand.ts | 35 +- .../src/commands/DeletePackageCommand.ts | 19 +- .../src/commands/DescribePackagesCommand.ts | 21 +- .../src/commands/DissociatePackageCommand.ts | 11 +- .../src/commands/DissociatePackagesCommand.ts | 137 ++++ .../GetPackageVersionHistoryCommand.ts | 6 + .../commands/ListDomainsForPackageCommand.ts | 11 +- .../commands/ListPackagesForDomainCommand.ts | 11 +- .../src/commands/ListVersionsCommand.ts | 2 +- .../commands/ListVpcEndpointAccessCommand.ts | 2 +- .../src/commands/ListVpcEndpointsCommand.ts | 2 +- .../ListVpcEndpointsForDomainCommand.ts | 2 +- ...PurchaseReservedInstanceOfferingCommand.ts | 2 +- .../RejectInboundConnectionCommand.ts | 3 +- .../src/commands/UpdatePackageCommand.ts | 29 +- .../src/commands/UpdatePackageScopeCommand.ts | 115 ++++ .../client-opensearch/src/commands/index.ts | 3 + .../client-opensearch/src/models/models_0.ts | 484 ++++++++------- .../client-opensearch/src/models/models_1.ts | 284 +++++++++ .../src/protocols/Aws_restJson1.ts | 200 +++++- .../sdk-codegen/aws-models/opensearch.json | 583 +++++++++++++++++- 26 files changed, 2006 insertions(+), 226 deletions(-) create mode 100644 clients/client-opensearch/src/commands/AssociatePackagesCommand.ts create mode 100644 clients/client-opensearch/src/commands/DissociatePackagesCommand.ts create mode 100644 clients/client-opensearch/src/commands/UpdatePackageScopeCommand.ts diff --git a/clients/client-opensearch/README.md b/clients/client-opensearch/README.md index 526894d3a683..193b4d241292 100644 --- a/clients/client-opensearch/README.md +++ b/clients/client-opensearch/README.md @@ -238,6 +238,14 @@ AssociatePackage [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/AssociatePackageCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/AssociatePackageCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/AssociatePackageCommandOutput/) + +
+ +AssociatePackages + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/AssociatePackagesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/AssociatePackagesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/AssociatePackagesCommandOutput/) +
@@ -486,6 +494,14 @@ DissociatePackage [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/DissociatePackageCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/DissociatePackageCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/DissociatePackageCommandOutput/) +
+
+ +DissociatePackages + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/DissociatePackagesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/DissociatePackagesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/DissociatePackagesCommandOutput/) +
@@ -726,6 +742,14 @@ UpdatePackage [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/UpdatePackageCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/UpdatePackageCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/UpdatePackageCommandOutput/) +
+
+ +UpdatePackageScope + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/UpdatePackageScopeCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/UpdatePackageScopeCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/UpdatePackageScopeCommandOutput/) +
diff --git a/clients/client-opensearch/src/OpenSearch.ts b/clients/client-opensearch/src/OpenSearch.ts index e0f36a5c1ed4..39b5ec727364 100644 --- a/clients/client-opensearch/src/OpenSearch.ts +++ b/clients/client-opensearch/src/OpenSearch.ts @@ -18,6 +18,11 @@ import { AssociatePackageCommandInput, AssociatePackageCommandOutput, } from "./commands/AssociatePackageCommand"; +import { + AssociatePackagesCommand, + AssociatePackagesCommandInput, + AssociatePackagesCommandOutput, +} from "./commands/AssociatePackagesCommand"; import { AuthorizeVpcEndpointAccessCommand, AuthorizeVpcEndpointAccessCommandInput, @@ -173,6 +178,11 @@ import { DissociatePackageCommandInput, DissociatePackageCommandOutput, } from "./commands/DissociatePackageCommand"; +import { + DissociatePackagesCommand, + DissociatePackagesCommandInput, + DissociatePackagesCommandOutput, +} from "./commands/DissociatePackagesCommand"; import { GetApplicationCommand, GetApplicationCommandInput, @@ -315,6 +325,11 @@ import { UpdatePackageCommandInput, UpdatePackageCommandOutput, } from "./commands/UpdatePackageCommand"; +import { + UpdatePackageScopeCommand, + UpdatePackageScopeCommandInput, + UpdatePackageScopeCommandOutput, +} from "./commands/UpdatePackageScopeCommand"; import { UpdateScheduledActionCommand, UpdateScheduledActionCommandInput, @@ -337,6 +352,7 @@ const commands = { AddDataSourceCommand, AddTagsCommand, AssociatePackageCommand, + AssociatePackagesCommand, AuthorizeVpcEndpointAccessCommand, CancelDomainConfigChangeCommand, CancelServiceSoftwareUpdateCommand, @@ -368,6 +384,7 @@ const commands = { DescribeReservedInstancesCommand, DescribeVpcEndpointsCommand, DissociatePackageCommand, + DissociatePackagesCommand, GetApplicationCommand, GetCompatibleVersionsCommand, GetDataSourceCommand, @@ -398,6 +415,7 @@ const commands = { UpdateDataSourceCommand, UpdateDomainConfigCommand, UpdatePackageCommand, + UpdatePackageScopeCommand, UpdateScheduledActionCommand, UpdateVpcEndpointCommand, UpgradeDomainCommand, @@ -460,6 +478,23 @@ export interface OpenSearch { cb: (err: any, data?: AssociatePackageCommandOutput) => void ): void; + /** + * @see {@link AssociatePackagesCommand} + */ + associatePackages( + args: AssociatePackagesCommandInput, + options?: __HttpHandlerOptions + ): Promise; + associatePackages( + args: AssociatePackagesCommandInput, + cb: (err: any, data?: AssociatePackagesCommandOutput) => void + ): void; + associatePackages( + args: AssociatePackagesCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: AssociatePackagesCommandOutput) => void + ): void; + /** * @see {@link AuthorizeVpcEndpointAccessCommand} */ @@ -962,6 +997,23 @@ export interface OpenSearch { cb: (err: any, data?: DissociatePackageCommandOutput) => void ): void; + /** + * @see {@link DissociatePackagesCommand} + */ + dissociatePackages( + args: DissociatePackagesCommandInput, + options?: __HttpHandlerOptions + ): Promise; + dissociatePackages( + args: DissociatePackagesCommandInput, + cb: (err: any, data?: DissociatePackagesCommandOutput) => void + ): void; + dissociatePackages( + args: DissociatePackagesCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DissociatePackagesCommandOutput) => void + ): void; + /** * @see {@link GetApplicationCommand} */ @@ -1438,6 +1490,23 @@ export interface OpenSearch { cb: (err: any, data?: UpdatePackageCommandOutput) => void ): void; + /** + * @see {@link UpdatePackageScopeCommand} + */ + updatePackageScope( + args: UpdatePackageScopeCommandInput, + options?: __HttpHandlerOptions + ): Promise; + updatePackageScope( + args: UpdatePackageScopeCommandInput, + cb: (err: any, data?: UpdatePackageScopeCommandOutput) => void + ): void; + updatePackageScope( + args: UpdatePackageScopeCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdatePackageScopeCommandOutput) => void + ): void; + /** * @see {@link UpdateScheduledActionCommand} */ diff --git a/clients/client-opensearch/src/OpenSearchClient.ts b/clients/client-opensearch/src/OpenSearchClient.ts index e153223aa6cb..fa1b3885bc2b 100644 --- a/clients/client-opensearch/src/OpenSearchClient.ts +++ b/clients/client-opensearch/src/OpenSearchClient.ts @@ -60,6 +60,7 @@ import { import { AddDataSourceCommandInput, AddDataSourceCommandOutput } from "./commands/AddDataSourceCommand"; import { AddTagsCommandInput, AddTagsCommandOutput } from "./commands/AddTagsCommand"; import { AssociatePackageCommandInput, AssociatePackageCommandOutput } from "./commands/AssociatePackageCommand"; +import { AssociatePackagesCommandInput, AssociatePackagesCommandOutput } from "./commands/AssociatePackagesCommand"; import { AuthorizeVpcEndpointAccessCommandInput, AuthorizeVpcEndpointAccessCommandOutput, @@ -145,6 +146,7 @@ import { DescribeVpcEndpointsCommandOutput, } from "./commands/DescribeVpcEndpointsCommand"; import { DissociatePackageCommandInput, DissociatePackageCommandOutput } from "./commands/DissociatePackageCommand"; +import { DissociatePackagesCommandInput, DissociatePackagesCommandOutput } from "./commands/DissociatePackagesCommand"; import { GetApplicationCommandInput, GetApplicationCommandOutput } from "./commands/GetApplicationCommand"; import { GetCompatibleVersionsCommandInput, @@ -220,6 +222,7 @@ import { UpdateApplicationCommandInput, UpdateApplicationCommandOutput } from ". import { UpdateDataSourceCommandInput, UpdateDataSourceCommandOutput } from "./commands/UpdateDataSourceCommand"; import { UpdateDomainConfigCommandInput, UpdateDomainConfigCommandOutput } from "./commands/UpdateDomainConfigCommand"; import { UpdatePackageCommandInput, UpdatePackageCommandOutput } from "./commands/UpdatePackageCommand"; +import { UpdatePackageScopeCommandInput, UpdatePackageScopeCommandOutput } from "./commands/UpdatePackageScopeCommand"; import { UpdateScheduledActionCommandInput, UpdateScheduledActionCommandOutput, @@ -245,6 +248,7 @@ export type ServiceInputTypes = | AddDataSourceCommandInput | AddTagsCommandInput | AssociatePackageCommandInput + | AssociatePackagesCommandInput | AuthorizeVpcEndpointAccessCommandInput | CancelDomainConfigChangeCommandInput | CancelServiceSoftwareUpdateCommandInput @@ -276,6 +280,7 @@ export type ServiceInputTypes = | DescribeReservedInstancesCommandInput | DescribeVpcEndpointsCommandInput | DissociatePackageCommandInput + | DissociatePackagesCommandInput | GetApplicationCommandInput | GetCompatibleVersionsCommandInput | GetDataSourceCommandInput @@ -306,6 +311,7 @@ export type ServiceInputTypes = | UpdateDataSourceCommandInput | UpdateDomainConfigCommandInput | UpdatePackageCommandInput + | UpdatePackageScopeCommandInput | UpdateScheduledActionCommandInput | UpdateVpcEndpointCommandInput | UpgradeDomainCommandInput; @@ -318,6 +324,7 @@ export type ServiceOutputTypes = | AddDataSourceCommandOutput | AddTagsCommandOutput | AssociatePackageCommandOutput + | AssociatePackagesCommandOutput | AuthorizeVpcEndpointAccessCommandOutput | CancelDomainConfigChangeCommandOutput | CancelServiceSoftwareUpdateCommandOutput @@ -349,6 +356,7 @@ export type ServiceOutputTypes = | DescribeReservedInstancesCommandOutput | DescribeVpcEndpointsCommandOutput | DissociatePackageCommandOutput + | DissociatePackagesCommandOutput | GetApplicationCommandOutput | GetCompatibleVersionsCommandOutput | GetDataSourceCommandOutput @@ -379,6 +387,7 @@ export type ServiceOutputTypes = | UpdateDataSourceCommandOutput | UpdateDomainConfigCommandOutput | UpdatePackageCommandOutput + | UpdatePackageScopeCommandOutput | UpdateScheduledActionCommandOutput | UpdateVpcEndpointCommandOutput | UpgradeDomainCommandOutput; diff --git a/clients/client-opensearch/src/commands/AssociatePackageCommand.ts b/clients/client-opensearch/src/commands/AssociatePackageCommand.ts index 95c54be32fa3..252ee4db4503 100644 --- a/clients/client-opensearch/src/commands/AssociatePackageCommand.ts +++ b/clients/client-opensearch/src/commands/AssociatePackageCommand.ts @@ -40,6 +40,15 @@ export interface AssociatePackageCommandOutput extends AssociatePackageResponse, * const input = { // AssociatePackageRequest * PackageID: "STRING_VALUE", // required * DomainName: "STRING_VALUE", // required + * PrerequisitePackageIDList: [ // PackageIDList + * "STRING_VALUE", + * ], + * AssociationConfiguration: { // PackageAssociationConfiguration + * KeyStoreAccessOption: { // KeyStoreAccessOption + * KeyAccessRoleArn: "STRING_VALUE", + * KeyStoreAccessEnabled: true || false, // required + * }, + * }, * }; * const command = new AssociatePackageCommand(input); * const response = await client.send(command); @@ -47,16 +56,25 @@ export interface AssociatePackageCommandOutput extends AssociatePackageResponse, * // DomainPackageDetails: { // DomainPackageDetails * // PackageID: "STRING_VALUE", * // PackageName: "STRING_VALUE", - * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN", + * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", * // LastUpdated: new Date("TIMESTAMP"), * // DomainName: "STRING_VALUE", * // DomainPackageStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ACTIVE" || "DISSOCIATING" || "DISSOCIATION_FAILED", * // PackageVersion: "STRING_VALUE", + * // PrerequisitePackageIDList: [ // PackageIDList + * // "STRING_VALUE", + * // ], * // ReferencePath: "STRING_VALUE", * // ErrorDetails: { // ErrorDetails * // ErrorType: "STRING_VALUE", * // ErrorMessage: "STRING_VALUE", * // }, + * // AssociationConfiguration: { // PackageAssociationConfiguration + * // KeyStoreAccessOption: { // KeyStoreAccessOption + * // KeyAccessRoleArn: "STRING_VALUE", + * // KeyStoreAccessEnabled: true || false, // required + * // }, + * // }, * // }, * // }; * diff --git a/clients/client-opensearch/src/commands/AssociatePackagesCommand.ts b/clients/client-opensearch/src/commands/AssociatePackagesCommand.ts new file mode 100644 index 000000000000..fd6f387b89de --- /dev/null +++ b/clients/client-opensearch/src/commands/AssociatePackagesCommand.ts @@ -0,0 +1,148 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { AssociatePackagesRequest, AssociatePackagesResponse } from "../models/models_0"; +import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; +import { de_AssociatePackagesCommand, se_AssociatePackagesCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link AssociatePackagesCommand}. + */ +export interface AssociatePackagesCommandInput extends AssociatePackagesRequest {} +/** + * @public + * + * The output of {@link AssociatePackagesCommand}. + */ +export interface AssociatePackagesCommandOutput extends AssociatePackagesResponse, __MetadataBearer {} + +/** + *

Operation in the Amazon OpenSearch Service API for associating multiple packages with a domain simultaneously.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, AssociatePackagesCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, AssociatePackagesCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const input = { // AssociatePackagesRequest + * PackageList: [ // PackageDetailsForAssociationList // required + * { // PackageDetailsForAssociation + * PackageID: "STRING_VALUE", // required + * PrerequisitePackageIDList: [ // PackageIDList + * "STRING_VALUE", + * ], + * AssociationConfiguration: { // PackageAssociationConfiguration + * KeyStoreAccessOption: { // KeyStoreAccessOption + * KeyAccessRoleArn: "STRING_VALUE", + * KeyStoreAccessEnabled: true || false, // required + * }, + * }, + * }, + * ], + * DomainName: "STRING_VALUE", // required + * }; + * const command = new AssociatePackagesCommand(input); + * const response = await client.send(command); + * // { // AssociatePackagesResponse + * // DomainPackageDetailsList: [ // DomainPackageDetailsList + * // { // DomainPackageDetails + * // PackageID: "STRING_VALUE", + * // PackageName: "STRING_VALUE", + * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", + * // LastUpdated: new Date("TIMESTAMP"), + * // DomainName: "STRING_VALUE", + * // DomainPackageStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ACTIVE" || "DISSOCIATING" || "DISSOCIATION_FAILED", + * // PackageVersion: "STRING_VALUE", + * // PrerequisitePackageIDList: [ // PackageIDList + * // "STRING_VALUE", + * // ], + * // ReferencePath: "STRING_VALUE", + * // ErrorDetails: { // ErrorDetails + * // ErrorType: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // AssociationConfiguration: { // PackageAssociationConfiguration + * // KeyStoreAccessOption: { // KeyStoreAccessOption + * // KeyAccessRoleArn: "STRING_VALUE", + * // KeyStoreAccessEnabled: true || false, // required + * // }, + * // }, + * // }, + * // ], + * // }; + * + * ``` + * + * @param AssociatePackagesCommandInput - {@link AssociatePackagesCommandInput} + * @returns {@link AssociatePackagesCommandOutput} + * @see {@link AssociatePackagesCommandInput} for command's `input` shape. + * @see {@link AssociatePackagesCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for OpenSearchClient's `config` shape. + * + * @throws {@link BaseException} (client fault) + *

An error occurred while processing the request.

+ * + * @throws {@link ConflictException} (client fault) + *

An error occurred because the client attempts to remove a resource that is currently in use.

+ * + * @throws {@link DisabledOperationException} (client fault) + *

An error occured because the client wanted to access an unsupported operation.

+ * + * @throws {@link InternalException} (server fault) + *

Request processing failed because of an unknown error, exception, or internal failure.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

An exception for accessing or deleting a resource that doesn't exist.

+ * + * @throws {@link ValidationException} (client fault) + *

An exception for accessing or deleting a resource that doesn't exist.

+ * + * @throws {@link OpenSearchServiceException} + *

Base exception class for all service exceptions from OpenSearch service.

+ * + * @public + */ +export class AssociatePackagesCommand extends $Command + .classBuilder< + AssociatePackagesCommandInput, + AssociatePackagesCommandOutput, + OpenSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: OpenSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonOpenSearchService", "AssociatePackages", {}) + .n("OpenSearchClient", "AssociatePackagesCommand") + .f(void 0, void 0) + .ser(se_AssociatePackagesCommand) + .de(de_AssociatePackagesCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: AssociatePackagesRequest; + output: AssociatePackagesResponse; + }; + sdk: { + input: AssociatePackagesCommandInput; + output: AssociatePackagesCommandOutput; + }; + }; +} diff --git a/clients/client-opensearch/src/commands/CreatePackageCommand.ts b/clients/client-opensearch/src/commands/CreatePackageCommand.ts index 7475d9813555..9129fff63a12 100644 --- a/clients/client-opensearch/src/commands/CreatePackageCommand.ts +++ b/clients/client-opensearch/src/commands/CreatePackageCommand.ts @@ -38,12 +38,26 @@ export interface CreatePackageCommandOutput extends CreatePackageResponse, __Met * const client = new OpenSearchClient(config); * const input = { // CreatePackageRequest * PackageName: "STRING_VALUE", // required - * PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN", // required + * PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", // required * PackageDescription: "STRING_VALUE", * PackageSource: { // PackageSource * S3BucketName: "STRING_VALUE", * S3Key: "STRING_VALUE", * }, + * PackageConfiguration: { // PackageConfiguration + * LicenseRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * LicenseFilepath: "STRING_VALUE", + * ConfigurationRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * RequiresRestartForConfigurationUpdate: true || false, + * }, + * EngineVersion: "STRING_VALUE", + * PackageVendingOptions: { // PackageVendingOptions + * VendingEnabled: true || false, // required + * }, + * PackageEncryptionOptions: { // PackageEncryptionOptions + * KmsKeyIdentifier: "STRING_VALUE", + * EncryptionEnabled: true || false, // required + * }, * }; * const command = new CreatePackageCommand(input); * const response = await client.send(command); @@ -51,7 +65,7 @@ export interface CreatePackageCommandOutput extends CreatePackageResponse, __Met * // PackageDetails: { // PackageDetails * // PackageID: "STRING_VALUE", * // PackageName: "STRING_VALUE", - * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN", + * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", * // PackageDescription: "STRING_VALUE", * // PackageStatus: "COPYING" || "COPY_FAILED" || "VALIDATING" || "VALIDATION_FAILED" || "AVAILABLE" || "DELETING" || "DELETED" || "DELETE_FAILED", * // CreatedAt: new Date("TIMESTAMP"), @@ -69,6 +83,23 @@ export interface CreatePackageCommandOutput extends CreatePackageResponse, __Met * // ClassName: "STRING_VALUE", * // UncompressedSizeInBytes: Number("long"), * // }, + * // AvailablePackageConfiguration: { // PackageConfiguration + * // LicenseRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * // LicenseFilepath: "STRING_VALUE", + * // ConfigurationRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * // RequiresRestartForConfigurationUpdate: true || false, + * // }, + * // AllowListedUserList: [ // PackageUserList + * // "STRING_VALUE", + * // ], + * // PackageOwner: "STRING_VALUE", + * // PackageVendingOptions: { // PackageVendingOptions + * // VendingEnabled: true || false, // required + * // }, + * // PackageEncryptionOptions: { // PackageEncryptionOptions + * // KmsKeyIdentifier: "STRING_VALUE", + * // EncryptionEnabled: true || false, // required + * // }, * // }, * // }; * diff --git a/clients/client-opensearch/src/commands/DeletePackageCommand.ts b/clients/client-opensearch/src/commands/DeletePackageCommand.ts index ae75bc0a02fe..01d49f210313 100644 --- a/clients/client-opensearch/src/commands/DeletePackageCommand.ts +++ b/clients/client-opensearch/src/commands/DeletePackageCommand.ts @@ -45,7 +45,7 @@ export interface DeletePackageCommandOutput extends DeletePackageResponse, __Met * // PackageDetails: { // PackageDetails * // PackageID: "STRING_VALUE", * // PackageName: "STRING_VALUE", - * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN", + * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", * // PackageDescription: "STRING_VALUE", * // PackageStatus: "COPYING" || "COPY_FAILED" || "VALIDATING" || "VALIDATION_FAILED" || "AVAILABLE" || "DELETING" || "DELETED" || "DELETE_FAILED", * // CreatedAt: new Date("TIMESTAMP"), @@ -63,6 +63,23 @@ export interface DeletePackageCommandOutput extends DeletePackageResponse, __Met * // ClassName: "STRING_VALUE", * // UncompressedSizeInBytes: Number("long"), * // }, + * // AvailablePackageConfiguration: { // PackageConfiguration + * // LicenseRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * // LicenseFilepath: "STRING_VALUE", + * // ConfigurationRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * // RequiresRestartForConfigurationUpdate: true || false, + * // }, + * // AllowListedUserList: [ // PackageUserList + * // "STRING_VALUE", + * // ], + * // PackageOwner: "STRING_VALUE", + * // PackageVendingOptions: { // PackageVendingOptions + * // VendingEnabled: true || false, // required + * // }, + * // PackageEncryptionOptions: { // PackageEncryptionOptions + * // KmsKeyIdentifier: "STRING_VALUE", + * // EncryptionEnabled: true || false, // required + * // }, * // }, * // }; * diff --git a/clients/client-opensearch/src/commands/DescribePackagesCommand.ts b/clients/client-opensearch/src/commands/DescribePackagesCommand.ts index 17311a62d423..a087f2d0152b 100644 --- a/clients/client-opensearch/src/commands/DescribePackagesCommand.ts +++ b/clients/client-opensearch/src/commands/DescribePackagesCommand.ts @@ -39,7 +39,7 @@ export interface DescribePackagesCommandOutput extends DescribePackagesResponse, * const input = { // DescribePackagesRequest * Filters: [ // DescribePackagesFilterList * { // DescribePackagesFilter - * Name: "PackageID" || "PackageName" || "PackageStatus" || "PackageType" || "EngineVersion", + * Name: "PackageID" || "PackageName" || "PackageStatus" || "PackageType" || "EngineVersion" || "PackageOwner", * Value: [ // DescribePackagesFilterValues * "STRING_VALUE", * ], @@ -55,7 +55,7 @@ export interface DescribePackagesCommandOutput extends DescribePackagesResponse, * // { // PackageDetails * // PackageID: "STRING_VALUE", * // PackageName: "STRING_VALUE", - * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN", + * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", * // PackageDescription: "STRING_VALUE", * // PackageStatus: "COPYING" || "COPY_FAILED" || "VALIDATING" || "VALIDATION_FAILED" || "AVAILABLE" || "DELETING" || "DELETED" || "DELETE_FAILED", * // CreatedAt: new Date("TIMESTAMP"), @@ -73,6 +73,23 @@ export interface DescribePackagesCommandOutput extends DescribePackagesResponse, * // ClassName: "STRING_VALUE", * // UncompressedSizeInBytes: Number("long"), * // }, + * // AvailablePackageConfiguration: { // PackageConfiguration + * // LicenseRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * // LicenseFilepath: "STRING_VALUE", + * // ConfigurationRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * // RequiresRestartForConfigurationUpdate: true || false, + * // }, + * // AllowListedUserList: [ // PackageUserList + * // "STRING_VALUE", + * // ], + * // PackageOwner: "STRING_VALUE", + * // PackageVendingOptions: { // PackageVendingOptions + * // VendingEnabled: true || false, // required + * // }, + * // PackageEncryptionOptions: { // PackageEncryptionOptions + * // KmsKeyIdentifier: "STRING_VALUE", + * // EncryptionEnabled: true || false, // required + * // }, * // }, * // ], * // NextToken: "STRING_VALUE", diff --git a/clients/client-opensearch/src/commands/DissociatePackageCommand.ts b/clients/client-opensearch/src/commands/DissociatePackageCommand.ts index 4bc9638f6b4f..6594b1bd5a0f 100644 --- a/clients/client-opensearch/src/commands/DissociatePackageCommand.ts +++ b/clients/client-opensearch/src/commands/DissociatePackageCommand.ts @@ -48,16 +48,25 @@ export interface DissociatePackageCommandOutput extends DissociatePackageRespons * // DomainPackageDetails: { // DomainPackageDetails * // PackageID: "STRING_VALUE", * // PackageName: "STRING_VALUE", - * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN", + * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", * // LastUpdated: new Date("TIMESTAMP"), * // DomainName: "STRING_VALUE", * // DomainPackageStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ACTIVE" || "DISSOCIATING" || "DISSOCIATION_FAILED", * // PackageVersion: "STRING_VALUE", + * // PrerequisitePackageIDList: [ // PackageIDList + * // "STRING_VALUE", + * // ], * // ReferencePath: "STRING_VALUE", * // ErrorDetails: { // ErrorDetails * // ErrorType: "STRING_VALUE", * // ErrorMessage: "STRING_VALUE", * // }, + * // AssociationConfiguration: { // PackageAssociationConfiguration + * // KeyStoreAccessOption: { // KeyStoreAccessOption + * // KeyAccessRoleArn: "STRING_VALUE", + * // KeyStoreAccessEnabled: true || false, // required + * // }, + * // }, * // }, * // }; * diff --git a/clients/client-opensearch/src/commands/DissociatePackagesCommand.ts b/clients/client-opensearch/src/commands/DissociatePackagesCommand.ts new file mode 100644 index 000000000000..3fb17adf440d --- /dev/null +++ b/clients/client-opensearch/src/commands/DissociatePackagesCommand.ts @@ -0,0 +1,137 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { DissociatePackagesRequest, DissociatePackagesResponse } from "../models/models_0"; +import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; +import { de_DissociatePackagesCommand, se_DissociatePackagesCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DissociatePackagesCommand}. + */ +export interface DissociatePackagesCommandInput extends DissociatePackagesRequest {} +/** + * @public + * + * The output of {@link DissociatePackagesCommand}. + */ +export interface DissociatePackagesCommandOutput extends DissociatePackagesResponse, __MetadataBearer {} + +/** + *

Dissociates multiple packages from a domain simulatneously.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DissociatePackagesCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DissociatePackagesCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const input = { // DissociatePackagesRequest + * PackageList: [ // PackageIDList // required + * "STRING_VALUE", + * ], + * DomainName: "STRING_VALUE", // required + * }; + * const command = new DissociatePackagesCommand(input); + * const response = await client.send(command); + * // { // DissociatePackagesResponse + * // DomainPackageDetailsList: [ // DomainPackageDetailsList + * // { // DomainPackageDetails + * // PackageID: "STRING_VALUE", + * // PackageName: "STRING_VALUE", + * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", + * // LastUpdated: new Date("TIMESTAMP"), + * // DomainName: "STRING_VALUE", + * // DomainPackageStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ACTIVE" || "DISSOCIATING" || "DISSOCIATION_FAILED", + * // PackageVersion: "STRING_VALUE", + * // PrerequisitePackageIDList: [ // PackageIDList + * // "STRING_VALUE", + * // ], + * // ReferencePath: "STRING_VALUE", + * // ErrorDetails: { // ErrorDetails + * // ErrorType: "STRING_VALUE", + * // ErrorMessage: "STRING_VALUE", + * // }, + * // AssociationConfiguration: { // PackageAssociationConfiguration + * // KeyStoreAccessOption: { // KeyStoreAccessOption + * // KeyAccessRoleArn: "STRING_VALUE", + * // KeyStoreAccessEnabled: true || false, // required + * // }, + * // }, + * // }, + * // ], + * // }; + * + * ``` + * + * @param DissociatePackagesCommandInput - {@link DissociatePackagesCommandInput} + * @returns {@link DissociatePackagesCommandOutput} + * @see {@link DissociatePackagesCommandInput} for command's `input` shape. + * @see {@link DissociatePackagesCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for OpenSearchClient's `config` shape. + * + * @throws {@link BaseException} (client fault) + *

An error occurred while processing the request.

+ * + * @throws {@link ConflictException} (client fault) + *

An error occurred because the client attempts to remove a resource that is currently in use.

+ * + * @throws {@link DisabledOperationException} (client fault) + *

An error occured because the client wanted to access an unsupported operation.

+ * + * @throws {@link InternalException} (server fault) + *

Request processing failed because of an unknown error, exception, or internal failure.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

An exception for accessing or deleting a resource that doesn't exist.

+ * + * @throws {@link ValidationException} (client fault) + *

An exception for accessing or deleting a resource that doesn't exist.

+ * + * @throws {@link OpenSearchServiceException} + *

Base exception class for all service exceptions from OpenSearch service.

+ * + * @public + */ +export class DissociatePackagesCommand extends $Command + .classBuilder< + DissociatePackagesCommandInput, + DissociatePackagesCommandOutput, + OpenSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: OpenSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonOpenSearchService", "DissociatePackages", {}) + .n("OpenSearchClient", "DissociatePackagesCommand") + .f(void 0, void 0) + .ser(se_DissociatePackagesCommand) + .de(de_DissociatePackagesCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: DissociatePackagesRequest; + output: DissociatePackagesResponse; + }; + sdk: { + input: DissociatePackagesCommandInput; + output: DissociatePackagesCommandOutput; + }; + }; +} diff --git a/clients/client-opensearch/src/commands/GetPackageVersionHistoryCommand.ts b/clients/client-opensearch/src/commands/GetPackageVersionHistoryCommand.ts index af0390cad9fc..ca3db434d350 100644 --- a/clients/client-opensearch/src/commands/GetPackageVersionHistoryCommand.ts +++ b/clients/client-opensearch/src/commands/GetPackageVersionHistoryCommand.ts @@ -58,6 +58,12 @@ export interface GetPackageVersionHistoryCommandOutput extends GetPackageVersion * // ClassName: "STRING_VALUE", * // UncompressedSizeInBytes: Number("long"), * // }, + * // PackageConfiguration: { // PackageConfiguration + * // LicenseRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * // LicenseFilepath: "STRING_VALUE", + * // ConfigurationRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * // RequiresRestartForConfigurationUpdate: true || false, + * // }, * // }, * // ], * // NextToken: "STRING_VALUE", diff --git a/clients/client-opensearch/src/commands/ListDomainsForPackageCommand.ts b/clients/client-opensearch/src/commands/ListDomainsForPackageCommand.ts index fa209f686362..c374bfcff654 100644 --- a/clients/client-opensearch/src/commands/ListDomainsForPackageCommand.ts +++ b/clients/client-opensearch/src/commands/ListDomainsForPackageCommand.ts @@ -49,16 +49,25 @@ export interface ListDomainsForPackageCommandOutput extends ListDomainsForPackag * // { // DomainPackageDetails * // PackageID: "STRING_VALUE", * // PackageName: "STRING_VALUE", - * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN", + * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", * // LastUpdated: new Date("TIMESTAMP"), * // DomainName: "STRING_VALUE", * // DomainPackageStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ACTIVE" || "DISSOCIATING" || "DISSOCIATION_FAILED", * // PackageVersion: "STRING_VALUE", + * // PrerequisitePackageIDList: [ // PackageIDList + * // "STRING_VALUE", + * // ], * // ReferencePath: "STRING_VALUE", * // ErrorDetails: { // ErrorDetails * // ErrorType: "STRING_VALUE", * // ErrorMessage: "STRING_VALUE", * // }, + * // AssociationConfiguration: { // PackageAssociationConfiguration + * // KeyStoreAccessOption: { // KeyStoreAccessOption + * // KeyAccessRoleArn: "STRING_VALUE", + * // KeyStoreAccessEnabled: true || false, // required + * // }, + * // }, * // }, * // ], * // NextToken: "STRING_VALUE", diff --git a/clients/client-opensearch/src/commands/ListPackagesForDomainCommand.ts b/clients/client-opensearch/src/commands/ListPackagesForDomainCommand.ts index fc576b3ec587..7c4310ec35e4 100644 --- a/clients/client-opensearch/src/commands/ListPackagesForDomainCommand.ts +++ b/clients/client-opensearch/src/commands/ListPackagesForDomainCommand.ts @@ -49,16 +49,25 @@ export interface ListPackagesForDomainCommandOutput extends ListPackagesForDomai * // { // DomainPackageDetails * // PackageID: "STRING_VALUE", * // PackageName: "STRING_VALUE", - * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN", + * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", * // LastUpdated: new Date("TIMESTAMP"), * // DomainName: "STRING_VALUE", * // DomainPackageStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ACTIVE" || "DISSOCIATING" || "DISSOCIATION_FAILED", * // PackageVersion: "STRING_VALUE", + * // PrerequisitePackageIDList: [ // PackageIDList + * // "STRING_VALUE", + * // ], * // ReferencePath: "STRING_VALUE", * // ErrorDetails: { // ErrorDetails * // ErrorType: "STRING_VALUE", * // ErrorMessage: "STRING_VALUE", * // }, + * // AssociationConfiguration: { // PackageAssociationConfiguration + * // KeyStoreAccessOption: { // KeyStoreAccessOption + * // KeyAccessRoleArn: "STRING_VALUE", + * // KeyStoreAccessEnabled: true || false, // required + * // }, + * // }, * // }, * // ], * // NextToken: "STRING_VALUE", diff --git a/clients/client-opensearch/src/commands/ListVersionsCommand.ts b/clients/client-opensearch/src/commands/ListVersionsCommand.ts index 5a7d15b71dfb..bca321107461 100644 --- a/clients/client-opensearch/src/commands/ListVersionsCommand.ts +++ b/clients/client-opensearch/src/commands/ListVersionsCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListVersionsRequest, ListVersionsResponse } from "../models/models_0"; +import { ListVersionsRequest, ListVersionsResponse } from "../models/models_1"; import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; import { de_ListVersionsCommand, se_ListVersionsCommand } from "../protocols/Aws_restJson1"; diff --git a/clients/client-opensearch/src/commands/ListVpcEndpointAccessCommand.ts b/clients/client-opensearch/src/commands/ListVpcEndpointAccessCommand.ts index 08075eda31eb..a716d43e1d64 100644 --- a/clients/client-opensearch/src/commands/ListVpcEndpointAccessCommand.ts +++ b/clients/client-opensearch/src/commands/ListVpcEndpointAccessCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListVpcEndpointAccessRequest, ListVpcEndpointAccessResponse } from "../models/models_0"; +import { ListVpcEndpointAccessRequest, ListVpcEndpointAccessResponse } from "../models/models_1"; import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; import { de_ListVpcEndpointAccessCommand, se_ListVpcEndpointAccessCommand } from "../protocols/Aws_restJson1"; diff --git a/clients/client-opensearch/src/commands/ListVpcEndpointsCommand.ts b/clients/client-opensearch/src/commands/ListVpcEndpointsCommand.ts index d7f6c8b45edc..51110fbfe4df 100644 --- a/clients/client-opensearch/src/commands/ListVpcEndpointsCommand.ts +++ b/clients/client-opensearch/src/commands/ListVpcEndpointsCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListVpcEndpointsRequest, ListVpcEndpointsResponse } from "../models/models_0"; +import { ListVpcEndpointsRequest, ListVpcEndpointsResponse } from "../models/models_1"; import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; import { de_ListVpcEndpointsCommand, se_ListVpcEndpointsCommand } from "../protocols/Aws_restJson1"; diff --git a/clients/client-opensearch/src/commands/ListVpcEndpointsForDomainCommand.ts b/clients/client-opensearch/src/commands/ListVpcEndpointsForDomainCommand.ts index eebe38ff2d4e..41353c0d0005 100644 --- a/clients/client-opensearch/src/commands/ListVpcEndpointsForDomainCommand.ts +++ b/clients/client-opensearch/src/commands/ListVpcEndpointsForDomainCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListVpcEndpointsForDomainRequest, ListVpcEndpointsForDomainResponse } from "../models/models_0"; +import { ListVpcEndpointsForDomainRequest, ListVpcEndpointsForDomainResponse } from "../models/models_1"; import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; import { de_ListVpcEndpointsForDomainCommand, se_ListVpcEndpointsForDomainCommand } from "../protocols/Aws_restJson1"; diff --git a/clients/client-opensearch/src/commands/PurchaseReservedInstanceOfferingCommand.ts b/clients/client-opensearch/src/commands/PurchaseReservedInstanceOfferingCommand.ts index be97e5c966df..cb04a457f13a 100644 --- a/clients/client-opensearch/src/commands/PurchaseReservedInstanceOfferingCommand.ts +++ b/clients/client-opensearch/src/commands/PurchaseReservedInstanceOfferingCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { PurchaseReservedInstanceOfferingRequest, PurchaseReservedInstanceOfferingResponse } from "../models/models_0"; +import { PurchaseReservedInstanceOfferingRequest, PurchaseReservedInstanceOfferingResponse } from "../models/models_1"; import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; import { de_PurchaseReservedInstanceOfferingCommand, diff --git a/clients/client-opensearch/src/commands/RejectInboundConnectionCommand.ts b/clients/client-opensearch/src/commands/RejectInboundConnectionCommand.ts index 23d068b81f8d..0adbdd4032fc 100644 --- a/clients/client-opensearch/src/commands/RejectInboundConnectionCommand.ts +++ b/clients/client-opensearch/src/commands/RejectInboundConnectionCommand.ts @@ -5,8 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { RejectInboundConnectionRequest } from "../models/models_0"; -import { RejectInboundConnectionResponse } from "../models/models_1"; +import { RejectInboundConnectionRequest, RejectInboundConnectionResponse } from "../models/models_1"; import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; import { de_RejectInboundConnectionCommand, se_RejectInboundConnectionCommand } from "../protocols/Aws_restJson1"; diff --git a/clients/client-opensearch/src/commands/UpdatePackageCommand.ts b/clients/client-opensearch/src/commands/UpdatePackageCommand.ts index 3cd81a9e3745..f06a0f38c692 100644 --- a/clients/client-opensearch/src/commands/UpdatePackageCommand.ts +++ b/clients/client-opensearch/src/commands/UpdatePackageCommand.ts @@ -44,6 +44,16 @@ export interface UpdatePackageCommandOutput extends UpdatePackageResponse, __Met * }, * PackageDescription: "STRING_VALUE", * CommitMessage: "STRING_VALUE", + * PackageConfiguration: { // PackageConfiguration + * LicenseRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * LicenseFilepath: "STRING_VALUE", + * ConfigurationRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * RequiresRestartForConfigurationUpdate: true || false, + * }, + * PackageEncryptionOptions: { // PackageEncryptionOptions + * KmsKeyIdentifier: "STRING_VALUE", + * EncryptionEnabled: true || false, // required + * }, * }; * const command = new UpdatePackageCommand(input); * const response = await client.send(command); @@ -51,7 +61,7 @@ export interface UpdatePackageCommandOutput extends UpdatePackageResponse, __Met * // PackageDetails: { // PackageDetails * // PackageID: "STRING_VALUE", * // PackageName: "STRING_VALUE", - * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN", + * // PackageType: "TXT-DICTIONARY" || "ZIP-PLUGIN" || "PACKAGE-LICENSE" || "PACKAGE-CONFIG", * // PackageDescription: "STRING_VALUE", * // PackageStatus: "COPYING" || "COPY_FAILED" || "VALIDATING" || "VALIDATION_FAILED" || "AVAILABLE" || "DELETING" || "DELETED" || "DELETE_FAILED", * // CreatedAt: new Date("TIMESTAMP"), @@ -69,6 +79,23 @@ export interface UpdatePackageCommandOutput extends UpdatePackageResponse, __Met * // ClassName: "STRING_VALUE", * // UncompressedSizeInBytes: Number("long"), * // }, + * // AvailablePackageConfiguration: { // PackageConfiguration + * // LicenseRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * // LicenseFilepath: "STRING_VALUE", + * // ConfigurationRequirement: "REQUIRED" || "OPTIONAL" || "NONE", // required + * // RequiresRestartForConfigurationUpdate: true || false, + * // }, + * // AllowListedUserList: [ // PackageUserList + * // "STRING_VALUE", + * // ], + * // PackageOwner: "STRING_VALUE", + * // PackageVendingOptions: { // PackageVendingOptions + * // VendingEnabled: true || false, // required + * // }, + * // PackageEncryptionOptions: { // PackageEncryptionOptions + * // KmsKeyIdentifier: "STRING_VALUE", + * // EncryptionEnabled: true || false, // required + * // }, * // }, * // }; * diff --git a/clients/client-opensearch/src/commands/UpdatePackageScopeCommand.ts b/clients/client-opensearch/src/commands/UpdatePackageScopeCommand.ts new file mode 100644 index 000000000000..c8eaf7bd8023 --- /dev/null +++ b/clients/client-opensearch/src/commands/UpdatePackageScopeCommand.ts @@ -0,0 +1,115 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { UpdatePackageScopeRequest, UpdatePackageScopeResponse } from "../models/models_1"; +import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; +import { de_UpdatePackageScopeCommand, se_UpdatePackageScopeCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UpdatePackageScopeCommand}. + */ +export interface UpdatePackageScopeCommandInput extends UpdatePackageScopeRequest {} +/** + * @public + * + * The output of {@link UpdatePackageScopeCommand}. + */ +export interface UpdatePackageScopeCommandOutput extends UpdatePackageScopeResponse, __MetadataBearer {} + +/** + *

Updates the scope of a package. Scope of the package defines users who can view and associate a package.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, UpdatePackageScopeCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, UpdatePackageScopeCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const input = { // UpdatePackageScopeRequest + * PackageID: "STRING_VALUE", // required + * Operation: "ADD" || "OVERRIDE" || "REMOVE", // required + * PackageUserList: [ // PackageUserList // required + * "STRING_VALUE", + * ], + * }; + * const command = new UpdatePackageScopeCommand(input); + * const response = await client.send(command); + * // { // UpdatePackageScopeResponse + * // PackageID: "STRING_VALUE", + * // Operation: "ADD" || "OVERRIDE" || "REMOVE", + * // PackageUserList: [ // PackageUserList + * // "STRING_VALUE", + * // ], + * // }; + * + * ``` + * + * @param UpdatePackageScopeCommandInput - {@link UpdatePackageScopeCommandInput} + * @returns {@link UpdatePackageScopeCommandOutput} + * @see {@link UpdatePackageScopeCommandInput} for command's `input` shape. + * @see {@link UpdatePackageScopeCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for OpenSearchClient's `config` shape. + * + * @throws {@link BaseException} (client fault) + *

An error occurred while processing the request.

+ * + * @throws {@link DisabledOperationException} (client fault) + *

An error occured because the client wanted to access an unsupported operation.

+ * + * @throws {@link InternalException} (server fault) + *

Request processing failed because of an unknown error, exception, or internal failure.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

An exception for accessing or deleting a resource that doesn't exist.

+ * + * @throws {@link ValidationException} (client fault) + *

An exception for accessing or deleting a resource that doesn't exist.

+ * + * @throws {@link OpenSearchServiceException} + *

Base exception class for all service exceptions from OpenSearch service.

+ * + * @public + */ +export class UpdatePackageScopeCommand extends $Command + .classBuilder< + UpdatePackageScopeCommandInput, + UpdatePackageScopeCommandOutput, + OpenSearchClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: OpenSearchClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AmazonOpenSearchService", "UpdatePackageScope", {}) + .n("OpenSearchClient", "UpdatePackageScopeCommand") + .f(void 0, void 0) + .ser(se_UpdatePackageScopeCommand) + .de(de_UpdatePackageScopeCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: UpdatePackageScopeRequest; + output: UpdatePackageScopeResponse; + }; + sdk: { + input: UpdatePackageScopeCommandInput; + output: UpdatePackageScopeCommandOutput; + }; + }; +} diff --git a/clients/client-opensearch/src/commands/index.ts b/clients/client-opensearch/src/commands/index.ts index 46cc53395482..ce11dfec06c7 100644 --- a/clients/client-opensearch/src/commands/index.ts +++ b/clients/client-opensearch/src/commands/index.ts @@ -3,6 +3,7 @@ export * from "./AcceptInboundConnectionCommand"; export * from "./AddDataSourceCommand"; export * from "./AddTagsCommand"; export * from "./AssociatePackageCommand"; +export * from "./AssociatePackagesCommand"; export * from "./AuthorizeVpcEndpointAccessCommand"; export * from "./CancelDomainConfigChangeCommand"; export * from "./CancelServiceSoftwareUpdateCommand"; @@ -34,6 +35,7 @@ export * from "./DescribeReservedInstanceOfferingsCommand"; export * from "./DescribeReservedInstancesCommand"; export * from "./DescribeVpcEndpointsCommand"; export * from "./DissociatePackageCommand"; +export * from "./DissociatePackagesCommand"; export * from "./GetApplicationCommand"; export * from "./GetCompatibleVersionsCommand"; export * from "./GetDataSourceCommand"; @@ -64,6 +66,7 @@ export * from "./UpdateApplicationCommand"; export * from "./UpdateDataSourceCommand"; export * from "./UpdateDomainConfigCommand"; export * from "./UpdatePackageCommand"; +export * from "./UpdatePackageScopeCommand"; export * from "./UpdateScheduledActionCommand"; export * from "./UpdateVpcEndpointCommand"; export * from "./UpgradeDomainCommand"; diff --git a/clients/client-opensearch/src/models/models_0.ts b/clients/client-opensearch/src/models/models_0.ts index 79c25a2f51f2..ae27fd71536f 100644 --- a/clients/client-opensearch/src/models/models_0.ts +++ b/clients/client-opensearch/src/models/models_0.ts @@ -1096,6 +1096,36 @@ export interface AIMLOptionsStatus { Status?: OptionStatus; } +/** + *

The configuration parameters to enable access to the key store required by the package.

+ * @public + */ +export interface KeyStoreAccessOption { + /** + *

Role ARN to access the KeyStore Key

+ * @public + */ + KeyAccessRoleArn?: string; + + /** + *

This indicates whether Key Store access is enabled

+ * @public + */ + KeyStoreAccessEnabled: boolean | undefined; +} + +/** + *

The configuration for associating a package with a domain.

+ * @public + */ +export interface PackageAssociationConfiguration { + /** + *

The configuration parameters to enable accessing the key store required by the package.

+ * @public + */ + KeyStoreAccessOption?: KeyStoreAccessOption; +} + /** *

Container for the request parameters to the AssociatePackage operation.

* @public @@ -1113,6 +1143,18 @@ export interface AssociatePackageRequest { * @public */ DomainName: string | undefined; + + /** + *

A list of package IDs that must be associated with the domain before the package specified in the request can be associated.

+ * @public + */ + PrerequisitePackageIDList?: string[]; + + /** + *

The configuration for associating a package with an Amazon OpenSearch Service domain.

+ * @public + */ + AssociationConfiguration?: PackageAssociationConfiguration; } /** @@ -1155,6 +1197,8 @@ export interface ErrorDetails { * @enum */ export const PackageType = { + PACKAGE_CONFIG: "PACKAGE-CONFIG", + PACKAGE_LICENSE: "PACKAGE-LICENSE", TXT_DICTIONARY: "TXT-DICTIONARY", ZIP_PLUGIN: "ZIP-PLUGIN", } as const; @@ -1212,6 +1256,12 @@ export interface DomainPackageDetails { */ PackageVersion?: string; + /** + *

A list of package IDs that must be associated with the domain before or with the package can be associated.

+ * @public + */ + PrerequisitePackageIDList?: string[]; + /** *

The relative path of the package on the OpenSearch Service cluster nodes. This is synonym_path * when the package is for synonym files.

@@ -1224,6 +1274,12 @@ export interface DomainPackageDetails { * @public */ ErrorDetails?: ErrorDetails; + + /** + *

The configuration for associating a package with an Amazon OpenSearch Service domain.

+ * @public + */ + AssociationConfiguration?: PackageAssociationConfiguration; } /** @@ -1258,6 +1314,59 @@ export class ConflictException extends __BaseException { } } +/** + *

Details of a package that is associated with a domain.

+ * @public + */ +export interface PackageDetailsForAssociation { + /** + *

Internal ID of the package that you want to associate with a domain.

+ * @public + */ + PackageID: string | undefined; + + /** + *

List of package IDs that must be associated with the domain with or before the package can be associated.

+ * @public + */ + PrerequisitePackageIDList?: string[]; + + /** + *

The configuration parameters for associating the package with a domain.

+ * @public + */ + AssociationConfiguration?: PackageAssociationConfiguration; +} + +/** + * @public + */ +export interface AssociatePackagesRequest { + /** + *

A list of packages and their prerequisites to be associated with a domain.

+ * @public + */ + PackageList: PackageDetailsForAssociation[] | undefined; + + /** + *

The name of an OpenSearch Service domain. Domain names are unique across the domains owned + * by an account within an Amazon Web Services Region.

+ * @public + */ + DomainName: string | undefined; +} + +/** + * @public + */ +export interface AssociatePackagesResponse { + /** + *

List of information about packages that are associated with a domain.

+ * @public + */ + DomainPackageDetailsList?: DomainPackageDetails[]; +} + /** * @public * @enum @@ -3510,6 +3619,69 @@ export interface CreateOutboundConnectionResponse { ConnectionProperties?: ConnectionProperties; } +/** + * @public + * @enum + */ +export const RequirementLevel = { + NONE: "NONE", + OPTIONAL: "OPTIONAL", + REQUIRED: "REQUIRED", +} as const; + +/** + * @public + */ +export type RequirementLevel = (typeof RequirementLevel)[keyof typeof RequirementLevel]; + +/** + *

The configuration parameters for a package.

+ * @public + */ +export interface PackageConfiguration { + /** + *

The license requirements for the package.

+ * @public + */ + LicenseRequirement: RequirementLevel | undefined; + + /** + *

The relative file path for the license associated with the package.

+ * @public + */ + LicenseFilepath?: string; + + /** + *

The configuration requirements for the package.

+ * @public + */ + ConfigurationRequirement: RequirementLevel | undefined; + + /** + *

This indicates whether a B/G deployment is required for updating the configuration that the plugin is prerequisite for.

+ * @public + */ + RequiresRestartForConfigurationUpdate?: boolean; +} + +/** + *

Encryption options for a package.

+ * @public + */ +export interface PackageEncryptionOptions { + /** + *

KMS key ID for encrypting the package.

+ * @public + */ + KmsKeyIdentifier?: string; + + /** + *

This indicates whether encryption is enabled for the package.

+ * @public + */ + EncryptionEnabled: boolean | undefined; +} + /** *

The Amazon S3 location to import the package from.

* @public @@ -3528,6 +3700,20 @@ export interface PackageSource { S3Key?: string; } +/** + *

The vending options for a package to determine if the package can be used by other users. + *

+ * @public + */ +export interface PackageVendingOptions { + /** + *

This indicates whether vending is enabled for the package to determine if package can be used by other users. + *

+ * @public + */ + VendingEnabled: boolean | undefined; +} + /** *

Container for request parameters to the CreatePackage operation.

* @public @@ -3556,6 +3742,31 @@ export interface CreatePackageRequest { * @public */ PackageSource: PackageSource | undefined; + + /** + *

The configuration parameters for the package being created.

+ * @public + */ + PackageConfiguration?: PackageConfiguration; + + /** + *

The version of the Amazon OpenSearch Service engine for which is compatible with the package. This can only be specified for package type ZIP-PLUGIN + *

+ * @public + */ + EngineVersion?: string; + + /** + *

The vending options for the package being created. They determine if the package can be vended to other users.

+ * @public + */ + PackageVendingOptions?: PackageVendingOptions; + + /** + *

The encryption parameters for the package being created.

+ * @public + */ + PackageEncryptionOptions?: PackageEncryptionOptions; } /** @@ -3685,6 +3896,36 @@ export interface PackageDetails { * @public */ AvailablePluginProperties?: PluginProperties; + + /** + *

This represents the available configuration parameters for the package.

+ * @public + */ + AvailablePackageConfiguration?: PackageConfiguration; + + /** + *

A list of users who are allowed to view and associate the package. This field is only visible to the owner of a package.

+ * @public + */ + AllowListedUserList?: string[]; + + /** + *

The owner of the package who is allowed to create/update a package and add users to the package scope.

+ * @public + */ + PackageOwner?: string; + + /** + *

Package Vending Options for a package.

+ * @public + */ + PackageVendingOptions?: PackageVendingOptions; + + /** + *

Package Encryption Options for a package.

+ * @public + */ + PackageEncryptionOptions?: PackageEncryptionOptions; } /** @@ -5751,6 +5992,7 @@ export const DescribePackagesFilterName = { EngineVersion: "EngineVersion", PackageID: "PackageID", PackageName: "PackageName", + PackageOwner: "PackageOwner", PackageStatus: "PackageStatus", PackageType: "PackageType", } as const; @@ -6207,6 +6449,35 @@ export interface DissociatePackageResponse { DomainPackageDetails?: DomainPackageDetails; } +/** + * @public + */ +export interface DissociatePackagesRequest { + /** + *

A list of package IDs to be dissociated from a domain.

+ * @public + */ + PackageList: string[] | undefined; + + /** + *

The name of an OpenSearch Service domain. Domain names are unique across the domains owned + * by an account within an Amazon Web Services Region.

+ * @public + */ + DomainName: string | undefined; +} + +/** + * @public + */ +export interface DissociatePackagesResponse { + /** + *

A list of package details for the packages that were dissociated from the domain.

+ * @public + */ + DomainPackageDetailsList?: DomainPackageDetails[]; +} + /** * @public */ @@ -6559,6 +6830,12 @@ export interface PackageVersionHistory { * @public */ PluginProperties?: PluginProperties; + + /** + *

The configuration details for a specific version of a package.

+ * @public + */ + PackageConfiguration?: PackageConfiguration; } /** @@ -7488,213 +7765,6 @@ export interface ListTagsResponse { TagList?: Tag[]; } -/** - *

Container for the request parameters to the ListVersions operation.

- * @public - */ -export interface ListVersionsRequest { - /** - *

An optional parameter that specifies the maximum number of results to return. You can use - * nextToken to get the next page of results.

- * @public - */ - MaxResults?: number; - - /** - *

If your initial ListVersions operation returns a nextToken, you - * can include the returned nextToken in subsequent ListVersions - * operations, which returns results in the next page.

- * @public - */ - NextToken?: string; -} - -/** - *

Container for the parameters for response received from the ListVersions - * operation.

- * @public - */ -export interface ListVersionsResponse { - /** - *

A list of all versions of OpenSearch and Elasticsearch that Amazon OpenSearch Service - * supports.

- * @public - */ - Versions?: string[]; - - /** - *

When nextToken is returned, there are more results available. The value of - * nextToken is a unique pagination token for each page. Send the request again using the - * returned token to retrieve the next page.

- * @public - */ - NextToken?: string; -} - -/** - * @public - */ -export interface ListVpcEndpointAccessRequest { - /** - *

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

- * @public - */ - DomainName: string | undefined; - - /** - *

If your initial ListVpcEndpointAccess operation returns a - * nextToken, you can include the returned nextToken in subsequent - * ListVpcEndpointAccess operations, which returns results in the next page.

- * @public - */ - NextToken?: string; -} - -/** - * @public - */ -export interface ListVpcEndpointAccessResponse { - /** - *

A list of IAM principals - * that can currently access the domain.

- * @public - */ - AuthorizedPrincipalList: AuthorizedPrincipal[] | undefined; - - /** - *

When nextToken is returned, there are more results available. The value of - * nextToken is a unique pagination token for each page. Send the request again using the - * returned token to retrieve the next page.

- * @public - */ - NextToken: string | undefined; -} - -/** - * @public - */ -export interface ListVpcEndpointsRequest { - /** - *

If your initial ListVpcEndpoints operation returns a nextToken, - * you can include the returned nextToken in subsequent ListVpcEndpoints - * operations, which returns results in the next page.

- * @public - */ - NextToken?: string; -} - -/** - * @public - */ -export interface ListVpcEndpointsResponse { - /** - *

Information about each endpoint.

- * @public - */ - VpcEndpointSummaryList: VpcEndpointSummary[] | undefined; - - /** - *

When nextToken is returned, there are more results available. The value of - * nextToken is a unique pagination token for each page. Send the request again using the - * returned token to retrieve the next page.

- * @public - */ - NextToken: string | undefined; -} - -/** - * @public - */ -export interface ListVpcEndpointsForDomainRequest { - /** - *

The name of the domain to list associated VPC endpoints for.

- * @public - */ - DomainName: string | undefined; - - /** - *

If your initial ListEndpointsForDomain operation returns a - * nextToken, you can include the returned nextToken in subsequent - * ListEndpointsForDomain operations, which returns results in the next page.

- * @public - */ - NextToken?: string; -} - -/** - * @public - */ -export interface ListVpcEndpointsForDomainResponse { - /** - *

Information about each endpoint associated with the domain.

- * @public - */ - VpcEndpointSummaryList: VpcEndpointSummary[] | undefined; - - /** - *

When nextToken is returned, there are more results available. The value of - * nextToken is a unique pagination token for each page. Send the request again using the - * returned token to retrieve the next page.

- * @public - */ - NextToken: string | undefined; -} - -/** - *

Container for request parameters to the PurchaseReservedInstanceOffering - * operation.

- * @public - */ -export interface PurchaseReservedInstanceOfferingRequest { - /** - *

The ID of the Reserved Instance offering to purchase.

- * @public - */ - ReservedInstanceOfferingId: string | undefined; - - /** - *

A customer-specified identifier to track this reservation.

- * @public - */ - ReservationName: string | undefined; - - /** - *

The number of OpenSearch instances to reserve.

- * @public - */ - InstanceCount?: number; -} - -/** - *

Represents the output of a PurchaseReservedInstanceOffering operation.

- * @public - */ -export interface PurchaseReservedInstanceOfferingResponse { - /** - *

The ID of the Reserved Instance offering that was purchased.

- * @public - */ - ReservedInstanceId?: string; - - /** - *

The customer-specified identifier used to track this reservation.

- * @public - */ - ReservationName?: string; -} - -/** - *

Container for the request parameters to the RejectInboundConnection operation.

- * @public - */ -export interface RejectInboundConnectionRequest { - /** - *

The unique identifier of the inbound connection to reject.

- * @public - */ - ConnectionId: string | undefined; -} - /** * @internal */ diff --git a/clients/client-opensearch/src/models/models_1.ts b/clients/client-opensearch/src/models/models_1.ts index e8874c38be4c..3087f145df1a 100644 --- a/clients/client-opensearch/src/models/models_1.ts +++ b/clients/client-opensearch/src/models/models_1.ts @@ -7,6 +7,7 @@ import { AdvancedSecurityOptionsInputFilterSensitiveLog, AIMLOptionsInput, AppConfig, + AuthorizedPrincipal, AutoTuneOptions, AWSServicePrincipal, ChangeProgressDetails, @@ -30,18 +31,228 @@ import { MaintenanceType, NodeToNodeEncryptionOptions, OffPeakWindowOptions, + PackageConfiguration, PackageDetails, + PackageEncryptionOptions, PackageSource, ScheduledAction, ServiceSoftwareOptions, SnapshotOptions, SoftwareUpdateOptions, VpcEndpoint, + VpcEndpointSummary, VPCOptions, } from "./models_0"; import { OpenSearchServiceException as __BaseException } from "./OpenSearchServiceException"; +/** + *

Container for the request parameters to the ListVersions operation.

+ * @public + */ +export interface ListVersionsRequest { + /** + *

An optional parameter that specifies the maximum number of results to return. You can use + * nextToken to get the next page of results.

+ * @public + */ + MaxResults?: number; + + /** + *

If your initial ListVersions operation returns a nextToken, you + * can include the returned nextToken in subsequent ListVersions + * operations, which returns results in the next page.

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

Container for the parameters for response received from the ListVersions + * operation.

+ * @public + */ +export interface ListVersionsResponse { + /** + *

A list of all versions of OpenSearch and Elasticsearch that Amazon OpenSearch Service + * supports.

+ * @public + */ + Versions?: string[]; + + /** + *

When nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Send the request again using the + * returned token to retrieve the next page.

+ * @public + */ + NextToken?: string; +} + +/** + * @public + */ +export interface ListVpcEndpointAccessRequest { + /** + *

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

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

If your initial ListVpcEndpointAccess operation returns a + * nextToken, you can include the returned nextToken in subsequent + * ListVpcEndpointAccess operations, which returns results in the next page.

+ * @public + */ + NextToken?: string; +} + +/** + * @public + */ +export interface ListVpcEndpointAccessResponse { + /** + *

A list of IAM principals + * that can currently access the domain.

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

When nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Send the request again using the + * returned token to retrieve the next page.

+ * @public + */ + NextToken: string | undefined; +} + +/** + * @public + */ +export interface ListVpcEndpointsRequest { + /** + *

If your initial ListVpcEndpoints operation returns a nextToken, + * you can include the returned nextToken in subsequent ListVpcEndpoints + * operations, which returns results in the next page.

+ * @public + */ + NextToken?: string; +} + +/** + * @public + */ +export interface ListVpcEndpointsResponse { + /** + *

Information about each endpoint.

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

When nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Send the request again using the + * returned token to retrieve the next page.

+ * @public + */ + NextToken: string | undefined; +} + +/** + * @public + */ +export interface ListVpcEndpointsForDomainRequest { + /** + *

The name of the domain to list associated VPC endpoints for.

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

If your initial ListEndpointsForDomain operation returns a + * nextToken, you can include the returned nextToken in subsequent + * ListEndpointsForDomain operations, which returns results in the next page.

+ * @public + */ + NextToken?: string; +} + +/** + * @public + */ +export interface ListVpcEndpointsForDomainResponse { + /** + *

Information about each endpoint associated with the domain.

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

When nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Send the request again using the + * returned token to retrieve the next page.

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

Container for request parameters to the PurchaseReservedInstanceOffering + * operation.

+ * @public + */ +export interface PurchaseReservedInstanceOfferingRequest { + /** + *

The ID of the Reserved Instance offering to purchase.

+ * @public + */ + ReservedInstanceOfferingId: string | undefined; + + /** + *

A customer-specified identifier to track this reservation.

+ * @public + */ + ReservationName: string | undefined; + + /** + *

The number of OpenSearch instances to reserve.

+ * @public + */ + InstanceCount?: number; +} + +/** + *

Represents the output of a PurchaseReservedInstanceOffering operation.

+ * @public + */ +export interface PurchaseReservedInstanceOfferingResponse { + /** + *

The ID of the Reserved Instance offering that was purchased.

+ * @public + */ + ReservedInstanceId?: string; + + /** + *

The customer-specified identifier used to track this reservation.

+ * @public + */ + ReservationName?: string; +} + +/** + *

Container for the request parameters to the RejectInboundConnection operation.

+ * @public + */ +export interface RejectInboundConnectionRequest { + /** + *

The unique identifier of the inbound connection to reject.

+ * @public + */ + ConnectionId: string | undefined; +} + /** *

Represents the output of a RejectInboundConnection operation.

* @public @@ -586,6 +797,18 @@ export interface UpdatePackageRequest { * @public */ CommitMessage?: string; + + /** + *

The updated configuration details for a package.

+ * @public + */ + PackageConfiguration?: PackageConfiguration; + + /** + *

Encryption options for a package.

+ * @public + */ + PackageEncryptionOptions?: PackageEncryptionOptions; } /** @@ -600,6 +823,67 @@ export interface UpdatePackageResponse { PackageDetails?: PackageDetails; } +/** + * @public + * @enum + */ +export const PackageScopeOperationEnum = { + ADD: "ADD", + OVERRIDE: "OVERRIDE", + REMOVE: "REMOVE", +} as const; + +/** + * @public + */ +export type PackageScopeOperationEnum = (typeof PackageScopeOperationEnum)[keyof typeof PackageScopeOperationEnum]; + +/** + * @public + */ +export interface UpdatePackageScopeRequest { + /** + *

ID of the package whose scope is being updated.

+ * @public + */ + PackageID: string | undefined; + + /** + *

The operation to perform on the package scope (e.g., add/remove/override users).

+ * @public + */ + Operation: PackageScopeOperationEnum | undefined; + + /** + *

List of users to be added or removed from the package scope.

+ * @public + */ + PackageUserList: string[] | undefined; +} + +/** + * @public + */ +export interface UpdatePackageScopeResponse { + /** + *

ID of the package whose scope was updated.

+ * @public + */ + PackageID?: string; + + /** + *

The operation that was performed on the package scope.

+ * @public + */ + Operation?: PackageScopeOperationEnum; + + /** + *

List of users who have access to the package after the scope update.

+ * @public + */ + PackageUserList?: string[]; +} + /** *

An exception for attempting to schedule a domain action during an unavailable time slot.

* @public diff --git a/clients/client-opensearch/src/protocols/Aws_restJson1.ts b/clients/client-opensearch/src/protocols/Aws_restJson1.ts index 594f22107c83..1ea3263799f6 100644 --- a/clients/client-opensearch/src/protocols/Aws_restJson1.ts +++ b/clients/client-opensearch/src/protocols/Aws_restJson1.ts @@ -40,6 +40,7 @@ import { import { AddDataSourceCommandInput, AddDataSourceCommandOutput } from "../commands/AddDataSourceCommand"; import { AddTagsCommandInput, AddTagsCommandOutput } from "../commands/AddTagsCommand"; import { AssociatePackageCommandInput, AssociatePackageCommandOutput } from "../commands/AssociatePackageCommand"; +import { AssociatePackagesCommandInput, AssociatePackagesCommandOutput } from "../commands/AssociatePackagesCommand"; import { AuthorizeVpcEndpointAccessCommandInput, AuthorizeVpcEndpointAccessCommandOutput, @@ -125,6 +126,7 @@ import { DescribeVpcEndpointsCommandOutput, } from "../commands/DescribeVpcEndpointsCommand"; import { DissociatePackageCommandInput, DissociatePackageCommandOutput } from "../commands/DissociatePackageCommand"; +import { DissociatePackagesCommandInput, DissociatePackagesCommandOutput } from "../commands/DissociatePackagesCommand"; import { GetApplicationCommandInput, GetApplicationCommandOutput } from "../commands/GetApplicationCommand"; import { GetCompatibleVersionsCommandInput, @@ -200,6 +202,7 @@ import { UpdateApplicationCommandInput, UpdateApplicationCommandOutput } from ". import { UpdateDataSourceCommandInput, UpdateDataSourceCommandOutput } from "../commands/UpdateDataSourceCommand"; import { UpdateDomainConfigCommandInput, UpdateDomainConfigCommandOutput } from "../commands/UpdateDomainConfigCommand"; import { UpdatePackageCommandInput, UpdatePackageCommandOutput } from "../commands/UpdatePackageCommand"; +import { UpdatePackageScopeCommandInput, UpdatePackageScopeCommandOutput } from "../commands/UpdatePackageScopeCommand"; import { UpdateScheduledActionCommandInput, UpdateScheduledActionCommandOutput, @@ -263,6 +266,7 @@ import { InvalidTypeException, IPAddressTypeStatus, JWTOptionsInput, + KeyStoreAccessOption, LimitExceededException, LogPublishingOption, LogPublishingOptionsStatus, @@ -277,8 +281,13 @@ import { OffPeakWindowOptions, OffPeakWindowOptionsStatus, OptionStatus, + PackageAssociationConfiguration, + PackageConfiguration, PackageDetails, + PackageDetailsForAssociation, + PackageEncryptionOptions, PackageSource, + PackageVendingOptions, PackageVersionHistory, RecurringCharge, ReservedInstance, @@ -379,11 +388,42 @@ export const se_AssociatePackageCommand = async ( context: __SerdeContext ): Promise<__HttpRequest> => { const b = rb(input, context); - const headers: any = {}; + const headers: any = { + "content-type": "application/json", + }; b.bp("/2021-01-01/packages/associate/{PackageID}/{DomainName}"); b.p("PackageID", () => input.PackageID!, "{PackageID}", false); b.p("DomainName", () => input.DomainName!, "{DomainName}", false); let body: any; + body = JSON.stringify( + take(input, { + AssociationConfiguration: (_) => _json(_), + PrerequisitePackageIDList: (_) => _json(_), + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1AssociatePackagesCommand + */ +export const se_AssociatePackagesCommand = async ( + input: AssociatePackagesCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/2021-01-01/packages/associateMultiple"); + let body: any; + body = JSON.stringify( + take(input, { + DomainName: [], + PackageList: (_) => _json(_), + }) + ); b.m("POST").h(headers).b(body); return b.build(); }; @@ -567,10 +607,14 @@ export const se_CreatePackageCommand = async ( let body: any; body = JSON.stringify( take(input, { + EngineVersion: [], + PackageConfiguration: (_) => _json(_), PackageDescription: [], + PackageEncryptionOptions: (_) => _json(_), PackageName: [], PackageSource: (_) => _json(_), PackageType: [], + PackageVendingOptions: (_) => _json(_), }) ); b.m("POST").h(headers).b(body); @@ -1034,6 +1078,29 @@ export const se_DissociatePackageCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1DissociatePackagesCommand + */ +export const se_DissociatePackagesCommand = async ( + input: DissociatePackagesCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/2021-01-01/packages/dissociateMultiple"); + let body: any; + body = JSON.stringify( + take(input, { + DomainName: [], + PackageList: (_) => _json(_), + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1GetApplicationCommand */ @@ -1655,7 +1722,9 @@ export const se_UpdatePackageCommand = async ( body = JSON.stringify( take(input, { CommitMessage: [], + PackageConfiguration: (_) => _json(_), PackageDescription: [], + PackageEncryptionOptions: (_) => _json(_), PackageID: [], PackageSource: (_) => _json(_), }) @@ -1664,6 +1733,30 @@ export const se_UpdatePackageCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1UpdatePackageScopeCommand + */ +export const se_UpdatePackageScopeCommand = async ( + input: UpdatePackageScopeCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/2021-01-01/packages/updateScope"); + let body: any; + body = JSON.stringify( + take(input, { + Operation: [], + PackageID: [], + PackageUserList: (_) => _json(_), + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1UpdateScheduledActionCommand */ @@ -1818,6 +1911,27 @@ export const de_AssociatePackageCommand = async ( return contents; }; +/** + * deserializeAws_restJson1AssociatePackagesCommand + */ +export const de_AssociatePackagesCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + DomainPackageDetailsList: (_) => de_DomainPackageDetailsList(_, context), + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1AuthorizeVpcEndpointAccessCommand */ @@ -2501,6 +2615,27 @@ export const de_DissociatePackageCommand = async ( return contents; }; +/** + * deserializeAws_restJson1DissociatePackagesCommand + */ +export const de_DissociatePackagesCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + DomainPackageDetailsList: (_) => de_DomainPackageDetailsList(_, context), + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1GetApplicationCommand */ @@ -3165,6 +3300,29 @@ export const de_UpdatePackageCommand = async ( return contents; }; +/** + * deserializeAws_restJson1UpdatePackageScopeCommand + */ +export const de_UpdatePackageScopeCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + Operation: __expectString, + PackageID: __expectString, + PackageUserList: _json, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1UpdateScheduledActionCommand */ @@ -3643,6 +3801,8 @@ const se_AutoTuneOptionsInput = (input: AutoTuneOptionsInput, context: __SerdeCo // se_JWTOptionsInput omitted. +// se_KeyStoreAccessOption omitted. + // se_LogPublishingOption omitted. // se_LogPublishingOptions omitted. @@ -3663,8 +3823,24 @@ const se_AutoTuneOptionsInput = (input: AutoTuneOptionsInput, context: __SerdeCo // se_OffPeakWindowOptions omitted. +// se_PackageAssociationConfiguration omitted. + +// se_PackageConfiguration omitted. + +// se_PackageDetailsForAssociation omitted. + +// se_PackageDetailsForAssociationList omitted. + +// se_PackageEncryptionOptions omitted. + +// se_PackageIDList omitted. + // se_PackageSource omitted. +// se_PackageUserList omitted. + +// se_PackageVendingOptions omitted. + // se_S3GlueDataCatalog omitted. // se_SAMLIdp omitted. @@ -4076,6 +4252,7 @@ const de_DomainMaintenanceList = (output: any, context: __SerdeContext): DomainM */ const de_DomainPackageDetails = (output: any, context: __SerdeContext): DomainPackageDetails => { return take(output, { + AssociationConfiguration: _json, DomainName: __expectString, DomainPackageStatus: __expectString, ErrorDetails: _json, @@ -4084,6 +4261,7 @@ const de_DomainPackageDetails = (output: any, context: __SerdeContext): DomainPa PackageName: __expectString, PackageType: __expectString, PackageVersion: __expectString, + PrerequisitePackageIDList: _json, ReferencePath: __expectString, }) as any; }; @@ -4238,6 +4416,8 @@ const de_IPAddressTypeStatus = (output: any, context: __SerdeContext): IPAddress // de_JWTOptionsOutput omitted. +// de_KeyStoreAccessOption omitted. + // de_Limits omitted. // de_LimitsByRole omitted. @@ -4318,11 +4498,17 @@ const de_OptionStatus = (output: any, context: __SerdeContext): OptionStatus => // de_OutboundConnectionStatus omitted. +// de_PackageAssociationConfiguration omitted. + +// de_PackageConfiguration omitted. + /** * deserializeAws_restJson1PackageDetails */ const de_PackageDetails = (output: any, context: __SerdeContext): PackageDetails => { return take(output, { + AllowListedUserList: _json, + AvailablePackageConfiguration: _json, AvailablePackageVersion: __expectString, AvailablePluginProperties: _json, CreatedAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), @@ -4330,10 +4516,13 @@ const de_PackageDetails = (output: any, context: __SerdeContext): PackageDetails ErrorDetails: _json, LastUpdatedAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), PackageDescription: __expectString, + PackageEncryptionOptions: _json, PackageID: __expectString, PackageName: __expectString, + PackageOwner: __expectString, PackageStatus: __expectString, PackageType: __expectString, + PackageVendingOptions: _json, }) as any; }; @@ -4349,6 +4538,14 @@ const de_PackageDetailsList = (output: any, context: __SerdeContext): PackageDet return retVal; }; +// de_PackageEncryptionOptions omitted. + +// de_PackageIDList omitted. + +// de_PackageUserList omitted. + +// de_PackageVendingOptions omitted. + /** * deserializeAws_restJson1PackageVersionHistory */ @@ -4356,6 +4553,7 @@ const de_PackageVersionHistory = (output: any, context: __SerdeContext): Package return take(output, { CommitMessage: __expectString, CreatedAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + PackageConfiguration: _json, PackageVersion: __expectString, PluginProperties: _json, }) as any; diff --git a/codegen/sdk-codegen/aws-models/opensearch.json b/codegen/sdk-codegen/aws-models/opensearch.json index beea374c6315..828770ebdbfa 100644 --- a/codegen/sdk-codegen/aws-models/opensearch.json +++ b/codegen/sdk-codegen/aws-models/opensearch.json @@ -646,6 +646,9 @@ { "target": "com.amazonaws.opensearch#AssociatePackage" }, + { + "target": "com.amazonaws.opensearch#AssociatePackages" + }, { "target": "com.amazonaws.opensearch#AuthorizeVpcEndpointAccess" }, @@ -739,6 +742,9 @@ { "target": "com.amazonaws.opensearch#DissociatePackage" }, + { + "target": "com.amazonaws.opensearch#DissociatePackages" + }, { "target": "com.amazonaws.opensearch#GetApplication" }, @@ -829,6 +835,9 @@ { "target": "com.amazonaws.opensearch#UpdatePackage" }, + { + "target": "com.amazonaws.opensearch#UpdatePackageScope" + }, { "target": "com.amazonaws.opensearch#UpdateScheduledAction" }, @@ -2142,6 +2151,18 @@ "smithy.api#httpLabel": {}, "smithy.api#required": {} } + }, + "PrerequisitePackageIDList": { + "target": "com.amazonaws.opensearch#PackageIDList", + "traits": { + "smithy.api#documentation": "

A list of package IDs that must be associated with the domain before the package specified in the request can be associated.

" + } + }, + "AssociationConfiguration": { + "target": "com.amazonaws.opensearch#PackageAssociationConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for associating a package with an Amazon OpenSearch Service domain.

" + } } }, "traits": { @@ -2164,6 +2185,78 @@ "smithy.api#output": {} } }, + "com.amazonaws.opensearch#AssociatePackages": { + "type": "operation", + "input": { + "target": "com.amazonaws.opensearch#AssociatePackagesRequest" + }, + "output": { + "target": "com.amazonaws.opensearch#AssociatePackagesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.opensearch#BaseException" + }, + { + "target": "com.amazonaws.opensearch#ConflictException" + }, + { + "target": "com.amazonaws.opensearch#DisabledOperationException" + }, + { + "target": "com.amazonaws.opensearch#InternalException" + }, + { + "target": "com.amazonaws.opensearch#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.opensearch#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Operation in the Amazon OpenSearch Service API for associating multiple packages with a domain simultaneously.

", + "smithy.api#http": { + "method": "POST", + "uri": "/2021-01-01/packages/associateMultiple", + "code": 200 + } + } + }, + "com.amazonaws.opensearch#AssociatePackagesRequest": { + "type": "structure", + "members": { + "PackageList": { + "target": "com.amazonaws.opensearch#PackageDetailsForAssociationList", + "traits": { + "smithy.api#documentation": "

A list of packages and their prerequisites to be associated with a domain.

", + "smithy.api#required": {} + } + }, + "DomainName": { + "target": "com.amazonaws.opensearch#DomainName", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.opensearch#AssociatePackagesResponse": { + "type": "structure", + "members": { + "DomainPackageDetailsList": { + "target": "com.amazonaws.opensearch#DomainPackageDetailsList", + "traits": { + "smithy.api#documentation": "

List of information about packages that are associated with a domain.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.opensearch#AuthorizeVpcEndpointAccess": { "type": "operation", "input": { @@ -3918,6 +4011,30 @@ "smithy.api#documentation": "

The Amazon S3 location from which to import the package.

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

The configuration parameters for the package being created.

" + } + }, + "EngineVersion": { + "target": "com.amazonaws.opensearch#EngineVersion", + "traits": { + "smithy.api#documentation": "

The version of the Amazon OpenSearch Service engine for which is compatible with the package. This can only be specified for package type ZIP-PLUGIN\n

" + } + }, + "PackageVendingOptions": { + "target": "com.amazonaws.opensearch#PackageVendingOptions", + "traits": { + "smithy.api#documentation": "

The vending options for the package being created. They determine if the package can be vended to other users.

" + } + }, + "PackageEncryptionOptions": { + "target": "com.amazonaws.opensearch#PackageEncryptionOptions", + "traits": { + "smithy.api#documentation": "

The encryption parameters for the package being created.

" + } } }, "traits": { @@ -5644,6 +5761,12 @@ "traits": { "smithy.api#enumValue": "EngineVersion" } + }, + "PackageOwner": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PackageOwner" + } } } }, @@ -6056,6 +6179,78 @@ "smithy.api#output": {} } }, + "com.amazonaws.opensearch#DissociatePackages": { + "type": "operation", + "input": { + "target": "com.amazonaws.opensearch#DissociatePackagesRequest" + }, + "output": { + "target": "com.amazonaws.opensearch#DissociatePackagesResponse" + }, + "errors": [ + { + "target": "com.amazonaws.opensearch#BaseException" + }, + { + "target": "com.amazonaws.opensearch#ConflictException" + }, + { + "target": "com.amazonaws.opensearch#DisabledOperationException" + }, + { + "target": "com.amazonaws.opensearch#InternalException" + }, + { + "target": "com.amazonaws.opensearch#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.opensearch#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Dissociates multiple packages from a domain simulatneously.

", + "smithy.api#http": { + "method": "POST", + "uri": "/2021-01-01/packages/dissociateMultiple", + "code": 200 + } + } + }, + "com.amazonaws.opensearch#DissociatePackagesRequest": { + "type": "structure", + "members": { + "PackageList": { + "target": "com.amazonaws.opensearch#PackageIDList", + "traits": { + "smithy.api#documentation": "

A list of package IDs to be dissociated from a domain.

", + "smithy.api#required": {} + } + }, + "DomainName": { + "target": "com.amazonaws.opensearch#DomainName", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.opensearch#DissociatePackagesResponse": { + "type": "structure", + "members": { + "DomainPackageDetailsList": { + "target": "com.amazonaws.opensearch#DomainPackageDetailsList", + "traits": { + "smithy.api#documentation": "

A list of package details for the packages that were dissociated from the domain.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.opensearch#DomainArn": { "type": "string", "traits": { @@ -6544,6 +6739,12 @@ "smithy.api#documentation": "

The current version of the package.

" } }, + "PrerequisitePackageIDList": { + "target": "com.amazonaws.opensearch#PackageIDList", + "traits": { + "smithy.api#documentation": "

A list of package IDs that must be associated with the domain before or with the package can be associated.

" + } + }, "ReferencePath": { "target": "com.amazonaws.opensearch#ReferencePath", "traits": { @@ -6555,6 +6756,12 @@ "traits": { "smithy.api#documentation": "

Additional information if the package is in an error state. Null otherwise.

" } + }, + "AssociationConfiguration": { + "target": "com.amazonaws.opensearch#PackageAssociationConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration for associating a package with an Amazon OpenSearch Service domain.

" + } } }, "traits": { @@ -8514,6 +8721,27 @@ "smithy.api#documentation": "

Describes the JWT options configured for the domain.

" } }, + "com.amazonaws.opensearch#KeyStoreAccessOption": { + "type": "structure", + "members": { + "KeyAccessRoleArn": { + "target": "com.amazonaws.opensearch#RoleArn", + "traits": { + "smithy.api#documentation": "

Role ARN to access the KeyStore Key

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

This indicates whether Key Store access is enabled

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

The configuration parameters to enable access to the key store required by the package.

" + } + }, "com.amazonaws.opensearch#KmsKeyId": { "type": "string", "traits": { @@ -8527,6 +8755,16 @@ "com.amazonaws.opensearch#LastUpdated": { "type": "timestamp" }, + "com.amazonaws.opensearch#LicenseFilepath": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 256 + }, + "smithy.api#pattern": "^(?!.*\\/\\.{2,})(?!.*\\.\\.)[a-zA-Z0-9_.-]+(?:\\/[a-zA-Z0-9_.-]+)*$" + } + }, "com.amazonaws.opensearch#LimitExceededException": { "type": "structure", "members": { @@ -11158,6 +11396,54 @@ "smithy.api#pattern": "^[0-9]+$" } }, + "com.amazonaws.opensearch#PackageAssociationConfiguration": { + "type": "structure", + "members": { + "KeyStoreAccessOption": { + "target": "com.amazonaws.opensearch#KeyStoreAccessOption", + "traits": { + "smithy.api#documentation": "

The configuration parameters to enable accessing the key store required by the package.

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

The configuration for associating a package with a domain.

" + } + }, + "com.amazonaws.opensearch#PackageConfiguration": { + "type": "structure", + "members": { + "LicenseRequirement": { + "target": "com.amazonaws.opensearch#RequirementLevel", + "traits": { + "smithy.api#documentation": "

The license requirements for the package.

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

The relative file path for the license associated with the package.

" + } + }, + "ConfigurationRequirement": { + "target": "com.amazonaws.opensearch#RequirementLevel", + "traits": { + "smithy.api#documentation": "

The configuration requirements for the package.

", + "smithy.api#required": {} + } + }, + "RequiresRestartForConfigurationUpdate": { + "target": "com.amazonaws.opensearch#Boolean", + "traits": { + "smithy.api#documentation": "

This indicates whether a B/G deployment is required for updating the configuration that the plugin is prerequisite for.

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

The configuration parameters for a package.

" + } + }, "com.amazonaws.opensearch#PackageDescription": { "type": "string", "traits": { @@ -11235,22 +11521,112 @@ "traits": { "smithy.api#documentation": "

If the package is a ZIP-PLUGIN package, additional information about plugin properties.

" } + }, + "AvailablePackageConfiguration": { + "target": "com.amazonaws.opensearch#PackageConfiguration", + "traits": { + "smithy.api#documentation": "

This represents the available configuration parameters for the package.

" + } + }, + "AllowListedUserList": { + "target": "com.amazonaws.opensearch#PackageUserList", + "traits": { + "smithy.api#documentation": "

A list of users who are allowed to view and associate the package. This field is only visible to the owner of a package.

" + } + }, + "PackageOwner": { + "target": "com.amazonaws.opensearch#PackageOwner", + "traits": { + "smithy.api#documentation": "

The owner of the package who is allowed to create/update a package and add users to the package scope.

" + } + }, + "PackageVendingOptions": { + "target": "com.amazonaws.opensearch#PackageVendingOptions", + "traits": { + "smithy.api#documentation": "

Package Vending Options for a package.

" + } + }, + "PackageEncryptionOptions": { + "target": "com.amazonaws.opensearch#PackageEncryptionOptions", + "traits": { + "smithy.api#documentation": "

Package Encryption Options for a package.

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

Basic information about a package.

" } }, + "com.amazonaws.opensearch#PackageDetailsForAssociation": { + "type": "structure", + "members": { + "PackageID": { + "target": "com.amazonaws.opensearch#PackageID", + "traits": { + "smithy.api#documentation": "

Internal ID of the package that you want to associate with a domain.

", + "smithy.api#required": {} + } + }, + "PrerequisitePackageIDList": { + "target": "com.amazonaws.opensearch#PackageIDList", + "traits": { + "smithy.api#documentation": "

List of package IDs that must be associated with the domain with or before the package can be associated.

" + } + }, + "AssociationConfiguration": { + "target": "com.amazonaws.opensearch#PackageAssociationConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration parameters for associating the package with a domain.

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

Details of a package that is associated with a domain.

" + } + }, + "com.amazonaws.opensearch#PackageDetailsForAssociationList": { + "type": "list", + "member": { + "target": "com.amazonaws.opensearch#PackageDetailsForAssociation" + } + }, "com.amazonaws.opensearch#PackageDetailsList": { "type": "list", "member": { "target": "com.amazonaws.opensearch#PackageDetails" } }, + "com.amazonaws.opensearch#PackageEncryptionOptions": { + "type": "structure", + "members": { + "KmsKeyIdentifier": { + "target": "com.amazonaws.opensearch#KmsKeyId", + "traits": { + "smithy.api#documentation": "

KMS key ID for encrypting the package.

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

This indicates whether encryption is enabled for the package.

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

Encryption options for a package.

" + } + }, "com.amazonaws.opensearch#PackageID": { "type": "string", "traits": { - "smithy.api#pattern": "^([FG][0-9]+)$" + "smithy.api#pattern": "^([FG][0-9]+)$|^(pkg-[a-f0-9]+)$" + } + }, + "com.amazonaws.opensearch#PackageIDList": { + "type": "list", + "member": { + "target": "com.amazonaws.opensearch#PackageID" } }, "com.amazonaws.opensearch#PackageName": { @@ -11263,6 +11639,38 @@ "smithy.api#pattern": "^[a-z][a-z0-9\\-]+$" } }, + "com.amazonaws.opensearch#PackageOwner": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1024 + } + } + }, + "com.amazonaws.opensearch#PackageScopeOperationEnum": { + "type": "enum", + "members": { + "ADD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ADD" + } + }, + "OVERRIDE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OVERRIDE" + } + }, + "REMOVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REMOVE" + } + } + } + }, "com.amazonaws.opensearch#PackageSource": { "type": "structure", "members": { @@ -11350,9 +11758,52 @@ "traits": { "smithy.api#enumValue": "ZIP-PLUGIN" } + }, + "PACKAGE_LICENSE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PACKAGE-LICENSE" + } + }, + "PACKAGE_CONFIG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PACKAGE-CONFIG" + } } } }, + "com.amazonaws.opensearch#PackageUser": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 6, + "max": 12 + }, + "smithy.api#pattern": "^[0-9]{12}$|^GLOBAL$" + } + }, + "com.amazonaws.opensearch#PackageUserList": { + "type": "list", + "member": { + "target": "com.amazonaws.opensearch#PackageUser" + } + }, + "com.amazonaws.opensearch#PackageVendingOptions": { + "type": "structure", + "members": { + "VendingEnabled": { + "target": "com.amazonaws.opensearch#Boolean", + "traits": { + "smithy.api#documentation": "

This indicates whether vending is enabled for the package to determine if package can be used by other users.\n

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

The vending options for a package to determine if the package can be used by other users.\n

" + } + }, "com.amazonaws.opensearch#PackageVersion": { "type": "string" }, @@ -11382,6 +11833,12 @@ "traits": { "smithy.api#documentation": "

Additional information about plugin properties if the package is a ZIP-PLUGIN package.

" } + }, + "PackageConfiguration": { + "target": "com.amazonaws.opensearch#PackageConfiguration", + "traits": { + "smithy.api#documentation": "

The configuration details for a specific version of a package.

" + } } }, "traits": { @@ -11771,6 +12228,29 @@ "smithy.api#pattern": "^([\\s\\S]*)$" } }, + "com.amazonaws.opensearch#RequirementLevel": { + "type": "enum", + "members": { + "REQUIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "REQUIRED" + } + }, + "OPTIONAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "OPTIONAL" + } + }, + "NONE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NONE" + } + } + } + }, "com.amazonaws.opensearch#ReservationToken": { "type": "string", "traits": { @@ -13545,6 +14025,18 @@ "traits": { "smithy.api#documentation": "

Commit message for the updated file, which is shown as part of\n GetPackageVersionHistoryResponse.

" } + }, + "PackageConfiguration": { + "target": "com.amazonaws.opensearch#PackageConfiguration", + "traits": { + "smithy.api#documentation": "

The updated configuration details for a package.

" + } + }, + "PackageEncryptionOptions": { + "target": "com.amazonaws.opensearch#PackageEncryptionOptions", + "traits": { + "smithy.api#documentation": "

Encryption options for a package.

" + } } }, "traits": { @@ -13567,6 +14059,95 @@ "smithy.api#output": {} } }, + "com.amazonaws.opensearch#UpdatePackageScope": { + "type": "operation", + "input": { + "target": "com.amazonaws.opensearch#UpdatePackageScopeRequest" + }, + "output": { + "target": "com.amazonaws.opensearch#UpdatePackageScopeResponse" + }, + "errors": [ + { + "target": "com.amazonaws.opensearch#BaseException" + }, + { + "target": "com.amazonaws.opensearch#DisabledOperationException" + }, + { + "target": "com.amazonaws.opensearch#InternalException" + }, + { + "target": "com.amazonaws.opensearch#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.opensearch#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the scope of a package. Scope of the package defines users who can view and associate a package.

", + "smithy.api#http": { + "method": "POST", + "uri": "/2021-01-01/packages/updateScope", + "code": 200 + } + } + }, + "com.amazonaws.opensearch#UpdatePackageScopeRequest": { + "type": "structure", + "members": { + "PackageID": { + "target": "com.amazonaws.opensearch#PackageID", + "traits": { + "smithy.api#documentation": "

ID of the package whose scope is being updated.

", + "smithy.api#required": {} + } + }, + "Operation": { + "target": "com.amazonaws.opensearch#PackageScopeOperationEnum", + "traits": { + "smithy.api#documentation": "

The operation to perform on the package scope (e.g., add/remove/override users).

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

List of users to be added or removed from the package scope.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.opensearch#UpdatePackageScopeResponse": { + "type": "structure", + "members": { + "PackageID": { + "target": "com.amazonaws.opensearch#PackageID", + "traits": { + "smithy.api#documentation": "

ID of the package whose scope was updated.

" + } + }, + "Operation": { + "target": "com.amazonaws.opensearch#PackageScopeOperationEnum", + "traits": { + "smithy.api#documentation": "

The operation that was performed on the package scope.

" + } + }, + "PackageUserList": { + "target": "com.amazonaws.opensearch#PackageUserList", + "traits": { + "smithy.api#documentation": "

List of users who have access to the package after the scope update.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.opensearch#UpdateScheduledAction": { "type": "operation", "input": {