diff --git a/clients/client-opensearch/README.md b/clients/client-opensearch/README.md
index fbaec85530e5..c57f5c06fb0c 100644
--- a/clients/client-opensearch/README.md
+++ b/clients/client-opensearch/README.md
@@ -219,6 +219,14 @@ AcceptInboundConnection
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/AcceptInboundConnectionCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/AcceptInboundConnectionCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/AcceptInboundConnectionCommandOutput/)
+
+
+
+AddDataSource
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/AddDataSourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/AddDataSourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/AddDataSourceCommandOutput/)
+
@@ -283,6 +291,14 @@ CreateVpcEndpoint
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/CreateVpcEndpointCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/CreateVpcEndpointCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/CreateVpcEndpointCommandOutput/)
+
+
+
+DeleteDataSource
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/DeleteDataSourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/DeleteDataSourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/DeleteDataSourceCommandOutput/)
+
@@ -459,6 +475,14 @@ GetCompatibleVersions
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/GetCompatibleVersionsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/GetCompatibleVersionsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/GetCompatibleVersionsCommandOutput/)
+
+
+
+GetDataSource
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/GetDataSourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/GetDataSourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/GetDataSourceCommandOutput/)
+
@@ -491,6 +515,14 @@ GetUpgradeStatus
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/GetUpgradeStatusCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/GetUpgradeStatusCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/GetUpgradeStatusCommandOutput/)
+
+
+
+ListDataSources
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/ListDataSourcesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/ListDataSourcesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/ListDataSourcesCommandOutput/)
+
@@ -627,6 +659,14 @@ StartServiceSoftwareUpdate
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/StartServiceSoftwareUpdateCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/StartServiceSoftwareUpdateCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/StartServiceSoftwareUpdateCommandOutput/)
+
+
+
+UpdateDataSource
+
+
+[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/opensearch/command/UpdateDataSourceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/UpdateDataSourceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-opensearch/Interface/UpdateDataSourceCommandOutput/)
+
diff --git a/clients/client-opensearch/src/OpenSearch.ts b/clients/client-opensearch/src/OpenSearch.ts
index 61274e5dc177..bb93f5068371 100644
--- a/clients/client-opensearch/src/OpenSearch.ts
+++ b/clients/client-opensearch/src/OpenSearch.ts
@@ -7,6 +7,11 @@ import {
AcceptInboundConnectionCommandInput,
AcceptInboundConnectionCommandOutput,
} from "./commands/AcceptInboundConnectionCommand";
+import {
+ AddDataSourceCommand,
+ AddDataSourceCommandInput,
+ AddDataSourceCommandOutput,
+} from "./commands/AddDataSourceCommand";
import { AddTagsCommand, AddTagsCommandInput, AddTagsCommandOutput } from "./commands/AddTagsCommand";
import {
AssociatePackageCommand,
@@ -43,6 +48,11 @@ import {
CreateVpcEndpointCommandInput,
CreateVpcEndpointCommandOutput,
} from "./commands/CreateVpcEndpointCommand";
+import {
+ DeleteDataSourceCommand,
+ DeleteDataSourceCommandInput,
+ DeleteDataSourceCommandOutput,
+} from "./commands/DeleteDataSourceCommand";
import {
DeleteDomainCommand,
DeleteDomainCommandInput,
@@ -153,6 +163,11 @@ import {
GetCompatibleVersionsCommandInput,
GetCompatibleVersionsCommandOutput,
} from "./commands/GetCompatibleVersionsCommand";
+import {
+ GetDataSourceCommand,
+ GetDataSourceCommandInput,
+ GetDataSourceCommandOutput,
+} from "./commands/GetDataSourceCommand";
import {
GetDomainMaintenanceStatusCommand,
GetDomainMaintenanceStatusCommandInput,
@@ -173,6 +188,11 @@ import {
GetUpgradeStatusCommandInput,
GetUpgradeStatusCommandOutput,
} from "./commands/GetUpgradeStatusCommand";
+import {
+ ListDataSourcesCommand,
+ ListDataSourcesCommandInput,
+ ListDataSourcesCommandOutput,
+} from "./commands/ListDataSourcesCommand";
import {
ListDomainMaintenancesCommand,
ListDomainMaintenancesCommandInput,
@@ -250,6 +270,11 @@ import {
StartServiceSoftwareUpdateCommandInput,
StartServiceSoftwareUpdateCommandOutput,
} from "./commands/StartServiceSoftwareUpdateCommand";
+import {
+ UpdateDataSourceCommand,
+ UpdateDataSourceCommandInput,
+ UpdateDataSourceCommandOutput,
+} from "./commands/UpdateDataSourceCommand";
import {
UpdateDomainConfigCommand,
UpdateDomainConfigCommandInput,
@@ -279,6 +304,7 @@ import { OpenSearchClient, OpenSearchClientConfig } from "./OpenSearchClient";
const commands = {
AcceptInboundConnectionCommand,
+ AddDataSourceCommand,
AddTagsCommand,
AssociatePackageCommand,
AuthorizeVpcEndpointAccessCommand,
@@ -287,6 +313,7 @@ const commands = {
CreateOutboundConnectionCommand,
CreatePackageCommand,
CreateVpcEndpointCommand,
+ DeleteDataSourceCommand,
DeleteDomainCommand,
DeleteInboundConnectionCommand,
DeleteOutboundConnectionCommand,
@@ -309,10 +336,12 @@ const commands = {
DescribeVpcEndpointsCommand,
DissociatePackageCommand,
GetCompatibleVersionsCommand,
+ GetDataSourceCommand,
GetDomainMaintenanceStatusCommand,
GetPackageVersionHistoryCommand,
GetUpgradeHistoryCommand,
GetUpgradeStatusCommand,
+ ListDataSourcesCommand,
ListDomainMaintenancesCommand,
ListDomainNamesCommand,
ListDomainsForPackageCommand,
@@ -330,6 +359,7 @@ const commands = {
RevokeVpcEndpointAccessCommand,
StartDomainMaintenanceCommand,
StartServiceSoftwareUpdateCommand,
+ UpdateDataSourceCommand,
UpdateDomainConfigCommand,
UpdatePackageCommand,
UpdateScheduledActionCommand,
@@ -355,6 +385,17 @@ export interface OpenSearch {
cb: (err: any, data?: AcceptInboundConnectionCommandOutput) => void
): void;
+ /**
+ * @see {@link AddDataSourceCommand}
+ */
+ addDataSource(args: AddDataSourceCommandInput, options?: __HttpHandlerOptions): Promise;
+ addDataSource(args: AddDataSourceCommandInput, cb: (err: any, data?: AddDataSourceCommandOutput) => void): void;
+ addDataSource(
+ args: AddDataSourceCommandInput,
+ options: __HttpHandlerOptions,
+ cb: (err: any, data?: AddDataSourceCommandOutput) => void
+ ): void;
+
/**
* @see {@link AddTagsCommand}
*/
@@ -473,6 +514,23 @@ export interface OpenSearch {
cb: (err: any, data?: CreateVpcEndpointCommandOutput) => void
): void;
+ /**
+ * @see {@link DeleteDataSourceCommand}
+ */
+ deleteDataSource(
+ args: DeleteDataSourceCommandInput,
+ options?: __HttpHandlerOptions
+ ): Promise;
+ deleteDataSource(
+ args: DeleteDataSourceCommandInput,
+ cb: (err: any, data?: DeleteDataSourceCommandOutput) => void
+ ): void;
+ deleteDataSource(
+ args: DeleteDataSourceCommandInput,
+ options: __HttpHandlerOptions,
+ cb: (err: any, data?: DeleteDataSourceCommandOutput) => void
+ ): void;
+
/**
* @see {@link DeleteDomainCommand}
*/
@@ -829,6 +887,17 @@ export interface OpenSearch {
cb: (err: any, data?: GetCompatibleVersionsCommandOutput) => void
): void;
+ /**
+ * @see {@link GetDataSourceCommand}
+ */
+ getDataSource(args: GetDataSourceCommandInput, options?: __HttpHandlerOptions): Promise;
+ getDataSource(args: GetDataSourceCommandInput, cb: (err: any, data?: GetDataSourceCommandOutput) => void): void;
+ getDataSource(
+ args: GetDataSourceCommandInput,
+ options: __HttpHandlerOptions,
+ cb: (err: any, data?: GetDataSourceCommandOutput) => void
+ ): void;
+
/**
* @see {@link GetDomainMaintenanceStatusCommand}
*/
@@ -897,6 +966,20 @@ export interface OpenSearch {
cb: (err: any, data?: GetUpgradeStatusCommandOutput) => void
): void;
+ /**
+ * @see {@link ListDataSourcesCommand}
+ */
+ listDataSources(
+ args: ListDataSourcesCommandInput,
+ options?: __HttpHandlerOptions
+ ): Promise;
+ listDataSources(args: ListDataSourcesCommandInput, cb: (err: any, data?: ListDataSourcesCommandOutput) => void): void;
+ listDataSources(
+ args: ListDataSourcesCommandInput,
+ options: __HttpHandlerOptions,
+ cb: (err: any, data?: ListDataSourcesCommandOutput) => void
+ ): void;
+
/**
* @see {@link ListDomainMaintenancesCommand}
*/
@@ -1165,6 +1248,23 @@ export interface OpenSearch {
cb: (err: any, data?: StartServiceSoftwareUpdateCommandOutput) => void
): void;
+ /**
+ * @see {@link UpdateDataSourceCommand}
+ */
+ updateDataSource(
+ args: UpdateDataSourceCommandInput,
+ options?: __HttpHandlerOptions
+ ): Promise;
+ updateDataSource(
+ args: UpdateDataSourceCommandInput,
+ cb: (err: any, data?: UpdateDataSourceCommandOutput) => void
+ ): void;
+ updateDataSource(
+ args: UpdateDataSourceCommandInput,
+ options: __HttpHandlerOptions,
+ cb: (err: any, data?: UpdateDataSourceCommandOutput) => void
+ ): void;
+
/**
* @see {@link UpdateDomainConfigCommand}
*/
diff --git a/clients/client-opensearch/src/OpenSearchClient.ts b/clients/client-opensearch/src/OpenSearchClient.ts
index 76ce70141573..6d82fae7118c 100644
--- a/clients/client-opensearch/src/OpenSearchClient.ts
+++ b/clients/client-opensearch/src/OpenSearchClient.ts
@@ -54,6 +54,7 @@ import {
AcceptInboundConnectionCommandInput,
AcceptInboundConnectionCommandOutput,
} from "./commands/AcceptInboundConnectionCommand";
+import { AddDataSourceCommandInput, AddDataSourceCommandOutput } from "./commands/AddDataSourceCommand";
import { AddTagsCommandInput, AddTagsCommandOutput } from "./commands/AddTagsCommand";
import { AssociatePackageCommandInput, AssociatePackageCommandOutput } from "./commands/AssociatePackageCommand";
import {
@@ -71,6 +72,7 @@ import {
} from "./commands/CreateOutboundConnectionCommand";
import { CreatePackageCommandInput, CreatePackageCommandOutput } from "./commands/CreatePackageCommand";
import { CreateVpcEndpointCommandInput, CreateVpcEndpointCommandOutput } from "./commands/CreateVpcEndpointCommand";
+import { DeleteDataSourceCommandInput, DeleteDataSourceCommandOutput } from "./commands/DeleteDataSourceCommand";
import { DeleteDomainCommandInput, DeleteDomainCommandOutput } from "./commands/DeleteDomainCommand";
import {
DeleteInboundConnectionCommandInput,
@@ -138,6 +140,7 @@ import {
GetCompatibleVersionsCommandInput,
GetCompatibleVersionsCommandOutput,
} from "./commands/GetCompatibleVersionsCommand";
+import { GetDataSourceCommandInput, GetDataSourceCommandOutput } from "./commands/GetDataSourceCommand";
import {
GetDomainMaintenanceStatusCommandInput,
GetDomainMaintenanceStatusCommandOutput,
@@ -148,6 +151,7 @@ import {
} from "./commands/GetPackageVersionHistoryCommand";
import { GetUpgradeHistoryCommandInput, GetUpgradeHistoryCommandOutput } from "./commands/GetUpgradeHistoryCommand";
import { GetUpgradeStatusCommandInput, GetUpgradeStatusCommandOutput } from "./commands/GetUpgradeStatusCommand";
+import { ListDataSourcesCommandInput, ListDataSourcesCommandOutput } from "./commands/ListDataSourcesCommand";
import {
ListDomainMaintenancesCommandInput,
ListDomainMaintenancesCommandOutput,
@@ -201,6 +205,7 @@ import {
StartServiceSoftwareUpdateCommandInput,
StartServiceSoftwareUpdateCommandOutput,
} from "./commands/StartServiceSoftwareUpdateCommand";
+import { UpdateDataSourceCommandInput, UpdateDataSourceCommandOutput } from "./commands/UpdateDataSourceCommand";
import { UpdateDomainConfigCommandInput, UpdateDomainConfigCommandOutput } from "./commands/UpdateDomainConfigCommand";
import { UpdatePackageCommandInput, UpdatePackageCommandOutput } from "./commands/UpdatePackageCommand";
import {
@@ -225,6 +230,7 @@ export { __Client };
*/
export type ServiceInputTypes =
| AcceptInboundConnectionCommandInput
+ | AddDataSourceCommandInput
| AddTagsCommandInput
| AssociatePackageCommandInput
| AuthorizeVpcEndpointAccessCommandInput
@@ -233,6 +239,7 @@ export type ServiceInputTypes =
| CreateOutboundConnectionCommandInput
| CreatePackageCommandInput
| CreateVpcEndpointCommandInput
+ | DeleteDataSourceCommandInput
| DeleteDomainCommandInput
| DeleteInboundConnectionCommandInput
| DeleteOutboundConnectionCommandInput
@@ -255,10 +262,12 @@ export type ServiceInputTypes =
| DescribeVpcEndpointsCommandInput
| DissociatePackageCommandInput
| GetCompatibleVersionsCommandInput
+ | GetDataSourceCommandInput
| GetDomainMaintenanceStatusCommandInput
| GetPackageVersionHistoryCommandInput
| GetUpgradeHistoryCommandInput
| GetUpgradeStatusCommandInput
+ | ListDataSourcesCommandInput
| ListDomainMaintenancesCommandInput
| ListDomainNamesCommandInput
| ListDomainsForPackageCommandInput
@@ -276,6 +285,7 @@ export type ServiceInputTypes =
| RevokeVpcEndpointAccessCommandInput
| StartDomainMaintenanceCommandInput
| StartServiceSoftwareUpdateCommandInput
+ | UpdateDataSourceCommandInput
| UpdateDomainConfigCommandInput
| UpdatePackageCommandInput
| UpdateScheduledActionCommandInput
@@ -287,6 +297,7 @@ export type ServiceInputTypes =
*/
export type ServiceOutputTypes =
| AcceptInboundConnectionCommandOutput
+ | AddDataSourceCommandOutput
| AddTagsCommandOutput
| AssociatePackageCommandOutput
| AuthorizeVpcEndpointAccessCommandOutput
@@ -295,6 +306,7 @@ export type ServiceOutputTypes =
| CreateOutboundConnectionCommandOutput
| CreatePackageCommandOutput
| CreateVpcEndpointCommandOutput
+ | DeleteDataSourceCommandOutput
| DeleteDomainCommandOutput
| DeleteInboundConnectionCommandOutput
| DeleteOutboundConnectionCommandOutput
@@ -317,10 +329,12 @@ export type ServiceOutputTypes =
| DescribeVpcEndpointsCommandOutput
| DissociatePackageCommandOutput
| GetCompatibleVersionsCommandOutput
+ | GetDataSourceCommandOutput
| GetDomainMaintenanceStatusCommandOutput
| GetPackageVersionHistoryCommandOutput
| GetUpgradeHistoryCommandOutput
| GetUpgradeStatusCommandOutput
+ | ListDataSourcesCommandOutput
| ListDomainMaintenancesCommandOutput
| ListDomainNamesCommandOutput
| ListDomainsForPackageCommandOutput
@@ -338,6 +352,7 @@ export type ServiceOutputTypes =
| RevokeVpcEndpointAccessCommandOutput
| StartDomainMaintenanceCommandOutput
| StartServiceSoftwareUpdateCommandOutput
+ | UpdateDataSourceCommandOutput
| UpdateDomainConfigCommandOutput
| UpdatePackageCommandOutput
| UpdateScheduledActionCommandOutput
diff --git a/clients/client-opensearch/src/commands/AddDataSourceCommand.ts b/clients/client-opensearch/src/commands/AddDataSourceCommand.ts
new file mode 100644
index 000000000000..c2235ad0b758
--- /dev/null
+++ b/clients/client-opensearch/src/commands/AddDataSourceCommand.ts
@@ -0,0 +1,165 @@
+// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint";
+import { getSerdePlugin } from "@smithy/middleware-serde";
+import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
+import { Command as $Command } from "@smithy/smithy-client";
+import {
+ FinalizeHandlerArguments,
+ Handler,
+ HandlerExecutionContext,
+ HttpHandlerOptions as __HttpHandlerOptions,
+ MetadataBearer as __MetadataBearer,
+ MiddlewareStack,
+ SerdeContext as __SerdeContext,
+ SMITHY_CONTEXT_KEY,
+} from "@smithy/types";
+
+import { AddDataSourceRequest, AddDataSourceResponse } from "../models/models_0";
+import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient";
+import { de_AddDataSourceCommand, se_AddDataSourceCommand } from "../protocols/Aws_restJson1";
+
+/**
+ * @public
+ */
+export { __MetadataBearer, $Command };
+/**
+ * @public
+ *
+ * The input for {@link AddDataSourceCommand}.
+ */
+export interface AddDataSourceCommandInput extends AddDataSourceRequest {}
+/**
+ * @public
+ *
+ * The output of {@link AddDataSourceCommand}.
+ */
+export interface AddDataSourceCommandOutput extends AddDataSourceResponse, __MetadataBearer {}
+
+/**
+ * @public
+ * Adds the data source on the domain.
+ * @example
+ * Use a bare-bones client and the command you need to make an API call.
+ * ```javascript
+ * import { OpenSearchClient, AddDataSourceCommand } from "@aws-sdk/client-opensearch"; // ES Modules import
+ * // const { OpenSearchClient, AddDataSourceCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import
+ * const client = new OpenSearchClient(config);
+ * const input = { // AddDataSourceRequest
+ * DomainName: "STRING_VALUE", // required
+ * Name: "STRING_VALUE", // required
+ * DataSourceType: { // DataSourceType Union: only one key present
+ * S3GlueDataCatalog: { // S3GlueDataCatalog
+ * RoleArn: "STRING_VALUE",
+ * },
+ * },
+ * Description: "STRING_VALUE",
+ * };
+ * const command = new AddDataSourceCommand(input);
+ * const response = await client.send(command);
+ * // { // AddDataSourceResponse
+ * // Message: "STRING_VALUE",
+ * // };
+ *
+ * ```
+ *
+ * @param AddDataSourceCommandInput - {@link AddDataSourceCommandInput}
+ * @returns {@link AddDataSourceCommandOutput}
+ * @see {@link AddDataSourceCommandInput} for command's `input` shape.
+ * @see {@link AddDataSourceCommandOutput} 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 DependencyFailureException} (client fault)
+ * An exception for when a failure in one of the dependencies results in the service being unable to fetch details about the resource.
+ *
+ * @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 LimitExceededException} (client fault)
+ * An exception for trying to create more than the allowed number of resources or sub-resources.
+ *
+ * @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.
+ *
+ */
+export class AddDataSourceCommand extends $Command<
+ AddDataSourceCommandInput,
+ AddDataSourceCommandOutput,
+ OpenSearchClientResolvedConfig
+> {
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
+ /**
+ * @public
+ */
+ constructor(readonly input: AddDataSourceCommandInput) {
+ super();
+ }
+
+ /**
+ * @internal
+ */
+ resolveMiddleware(
+ clientStack: MiddlewareStack,
+ configuration: OpenSearchClientResolvedConfig,
+ options?: __HttpHandlerOptions
+ ): Handler {
+ this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(getEndpointPlugin(configuration, AddDataSourceCommand.getEndpointParameterInstructions()));
+
+ const stack = clientStack.concat(this.middlewareStack);
+
+ const { logger } = configuration;
+ const clientName = "OpenSearchClient";
+ const commandName = "AddDataSourceCommand";
+ const handlerExecutionContext: HandlerExecutionContext = {
+ logger,
+ clientName,
+ commandName,
+ inputFilterSensitiveLog: (_: any) => _,
+ outputFilterSensitiveLog: (_: any) => _,
+ [SMITHY_CONTEXT_KEY]: {
+ service: "AmazonOpenSearchService",
+ operation: "AddDataSource",
+ },
+ };
+ const { requestHandler } = configuration;
+ return stack.resolve(
+ (request: FinalizeHandlerArguments) =>
+ requestHandler.handle(request.request as __HttpRequest, options || {}),
+ handlerExecutionContext
+ );
+ }
+
+ /**
+ * @internal
+ */
+ private serialize(input: AddDataSourceCommandInput, context: __SerdeContext): Promise<__HttpRequest> {
+ return se_AddDataSourceCommand(input, context);
+ }
+
+ /**
+ * @internal
+ */
+ private deserialize(output: __HttpResponse, context: __SerdeContext): Promise {
+ return de_AddDataSourceCommand(output, context);
+ }
+}
diff --git a/clients/client-opensearch/src/commands/DeleteDataSourceCommand.ts b/clients/client-opensearch/src/commands/DeleteDataSourceCommand.ts
new file mode 100644
index 000000000000..0b09125a28f4
--- /dev/null
+++ b/clients/client-opensearch/src/commands/DeleteDataSourceCommand.ts
@@ -0,0 +1,158 @@
+// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint";
+import { getSerdePlugin } from "@smithy/middleware-serde";
+import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
+import { Command as $Command } from "@smithy/smithy-client";
+import {
+ FinalizeHandlerArguments,
+ Handler,
+ HandlerExecutionContext,
+ HttpHandlerOptions as __HttpHandlerOptions,
+ MetadataBearer as __MetadataBearer,
+ MiddlewareStack,
+ SerdeContext as __SerdeContext,
+ SMITHY_CONTEXT_KEY,
+} from "@smithy/types";
+
+import { DeleteDataSourceRequest, DeleteDataSourceResponse } from "../models/models_0";
+import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient";
+import { de_DeleteDataSourceCommand, se_DeleteDataSourceCommand } from "../protocols/Aws_restJson1";
+
+/**
+ * @public
+ */
+export { __MetadataBearer, $Command };
+/**
+ * @public
+ *
+ * The input for {@link DeleteDataSourceCommand}.
+ */
+export interface DeleteDataSourceCommandInput extends DeleteDataSourceRequest {}
+/**
+ * @public
+ *
+ * The output of {@link DeleteDataSourceCommand}.
+ */
+export interface DeleteDataSourceCommandOutput extends DeleteDataSourceResponse, __MetadataBearer {}
+
+/**
+ * @public
+ * Deletes the data source.
+ * @example
+ * Use a bare-bones client and the command you need to make an API call.
+ * ```javascript
+ * import { OpenSearchClient, DeleteDataSourceCommand } from "@aws-sdk/client-opensearch"; // ES Modules import
+ * // const { OpenSearchClient, DeleteDataSourceCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import
+ * const client = new OpenSearchClient(config);
+ * const input = { // DeleteDataSourceRequest
+ * DomainName: "STRING_VALUE", // required
+ * Name: "STRING_VALUE", // required
+ * };
+ * const command = new DeleteDataSourceCommand(input);
+ * const response = await client.send(command);
+ * // { // DeleteDataSourceResponse
+ * // Message: "STRING_VALUE",
+ * // };
+ *
+ * ```
+ *
+ * @param DeleteDataSourceCommandInput - {@link DeleteDataSourceCommandInput}
+ * @returns {@link DeleteDataSourceCommandOutput}
+ * @see {@link DeleteDataSourceCommandInput} for command's `input` shape.
+ * @see {@link DeleteDataSourceCommandOutput} 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 DependencyFailureException} (client fault)
+ * An exception for when a failure in one of the dependencies results in the service being unable to fetch details about the resource.
+ *
+ * @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.
+ *
+ */
+export class DeleteDataSourceCommand extends $Command<
+ DeleteDataSourceCommandInput,
+ DeleteDataSourceCommandOutput,
+ OpenSearchClientResolvedConfig
+> {
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
+ /**
+ * @public
+ */
+ constructor(readonly input: DeleteDataSourceCommandInput) {
+ super();
+ }
+
+ /**
+ * @internal
+ */
+ resolveMiddleware(
+ clientStack: MiddlewareStack,
+ configuration: OpenSearchClientResolvedConfig,
+ options?: __HttpHandlerOptions
+ ): Handler {
+ this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, DeleteDataSourceCommand.getEndpointParameterInstructions())
+ );
+
+ const stack = clientStack.concat(this.middlewareStack);
+
+ const { logger } = configuration;
+ const clientName = "OpenSearchClient";
+ const commandName = "DeleteDataSourceCommand";
+ const handlerExecutionContext: HandlerExecutionContext = {
+ logger,
+ clientName,
+ commandName,
+ inputFilterSensitiveLog: (_: any) => _,
+ outputFilterSensitiveLog: (_: any) => _,
+ [SMITHY_CONTEXT_KEY]: {
+ service: "AmazonOpenSearchService",
+ operation: "DeleteDataSource",
+ },
+ };
+ const { requestHandler } = configuration;
+ return stack.resolve(
+ (request: FinalizeHandlerArguments) =>
+ requestHandler.handle(request.request as __HttpRequest, options || {}),
+ handlerExecutionContext
+ );
+ }
+
+ /**
+ * @internal
+ */
+ private serialize(input: DeleteDataSourceCommandInput, context: __SerdeContext): Promise<__HttpRequest> {
+ return se_DeleteDataSourceCommand(input, context);
+ }
+
+ /**
+ * @internal
+ */
+ private deserialize(output: __HttpResponse, context: __SerdeContext): Promise {
+ return de_DeleteDataSourceCommand(output, context);
+ }
+}
diff --git a/clients/client-opensearch/src/commands/GetDataSourceCommand.ts b/clients/client-opensearch/src/commands/GetDataSourceCommand.ts
new file mode 100644
index 000000000000..05b222d4c499
--- /dev/null
+++ b/clients/client-opensearch/src/commands/GetDataSourceCommand.ts
@@ -0,0 +1,162 @@
+// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint";
+import { getSerdePlugin } from "@smithy/middleware-serde";
+import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
+import { Command as $Command } from "@smithy/smithy-client";
+import {
+ FinalizeHandlerArguments,
+ Handler,
+ HandlerExecutionContext,
+ HttpHandlerOptions as __HttpHandlerOptions,
+ MetadataBearer as __MetadataBearer,
+ MiddlewareStack,
+ SerdeContext as __SerdeContext,
+ SMITHY_CONTEXT_KEY,
+} from "@smithy/types";
+
+import { GetDataSourceRequest, GetDataSourceResponse } from "../models/models_0";
+import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient";
+import { de_GetDataSourceCommand, se_GetDataSourceCommand } from "../protocols/Aws_restJson1";
+
+/**
+ * @public
+ */
+export { __MetadataBearer, $Command };
+/**
+ * @public
+ *
+ * The input for {@link GetDataSourceCommand}.
+ */
+export interface GetDataSourceCommandInput extends GetDataSourceRequest {}
+/**
+ * @public
+ *
+ * The output of {@link GetDataSourceCommand}.
+ */
+export interface GetDataSourceCommandOutput extends GetDataSourceResponse, __MetadataBearer {}
+
+/**
+ * @public
+ * Describes the data source details.
+ * @example
+ * Use a bare-bones client and the command you need to make an API call.
+ * ```javascript
+ * import { OpenSearchClient, GetDataSourceCommand } from "@aws-sdk/client-opensearch"; // ES Modules import
+ * // const { OpenSearchClient, GetDataSourceCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import
+ * const client = new OpenSearchClient(config);
+ * const input = { // GetDataSourceRequest
+ * DomainName: "STRING_VALUE", // required
+ * Name: "STRING_VALUE", // required
+ * };
+ * const command = new GetDataSourceCommand(input);
+ * const response = await client.send(command);
+ * // { // GetDataSourceResponse
+ * // DataSourceType: { // DataSourceType Union: only one key present
+ * // S3GlueDataCatalog: { // S3GlueDataCatalog
+ * // RoleArn: "STRING_VALUE",
+ * // },
+ * // },
+ * // Name: "STRING_VALUE",
+ * // Description: "STRING_VALUE",
+ * // };
+ *
+ * ```
+ *
+ * @param GetDataSourceCommandInput - {@link GetDataSourceCommandInput}
+ * @returns {@link GetDataSourceCommandOutput}
+ * @see {@link GetDataSourceCommandInput} for command's `input` shape.
+ * @see {@link GetDataSourceCommandOutput} 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 DependencyFailureException} (client fault)
+ * An exception for when a failure in one of the dependencies results in the service being unable to fetch details about the resource.
+ *
+ * @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.
+ *
+ */
+export class GetDataSourceCommand extends $Command<
+ GetDataSourceCommandInput,
+ GetDataSourceCommandOutput,
+ OpenSearchClientResolvedConfig
+> {
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
+ /**
+ * @public
+ */
+ constructor(readonly input: GetDataSourceCommandInput) {
+ super();
+ }
+
+ /**
+ * @internal
+ */
+ resolveMiddleware(
+ clientStack: MiddlewareStack,
+ configuration: OpenSearchClientResolvedConfig,
+ options?: __HttpHandlerOptions
+ ): Handler {
+ this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(getEndpointPlugin(configuration, GetDataSourceCommand.getEndpointParameterInstructions()));
+
+ const stack = clientStack.concat(this.middlewareStack);
+
+ const { logger } = configuration;
+ const clientName = "OpenSearchClient";
+ const commandName = "GetDataSourceCommand";
+ const handlerExecutionContext: HandlerExecutionContext = {
+ logger,
+ clientName,
+ commandName,
+ inputFilterSensitiveLog: (_: any) => _,
+ outputFilterSensitiveLog: (_: any) => _,
+ [SMITHY_CONTEXT_KEY]: {
+ service: "AmazonOpenSearchService",
+ operation: "GetDataSource",
+ },
+ };
+ const { requestHandler } = configuration;
+ return stack.resolve(
+ (request: FinalizeHandlerArguments) =>
+ requestHandler.handle(request.request as __HttpRequest, options || {}),
+ handlerExecutionContext
+ );
+ }
+
+ /**
+ * @internal
+ */
+ private serialize(input: GetDataSourceCommandInput, context: __SerdeContext): Promise<__HttpRequest> {
+ return se_GetDataSourceCommand(input, context);
+ }
+
+ /**
+ * @internal
+ */
+ private deserialize(output: __HttpResponse, context: __SerdeContext): Promise {
+ return de_GetDataSourceCommand(output, context);
+ }
+}
diff --git a/clients/client-opensearch/src/commands/ListDataSourcesCommand.ts b/clients/client-opensearch/src/commands/ListDataSourcesCommand.ts
new file mode 100644
index 000000000000..fbff0782e305
--- /dev/null
+++ b/clients/client-opensearch/src/commands/ListDataSourcesCommand.ts
@@ -0,0 +1,167 @@
+// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint";
+import { getSerdePlugin } from "@smithy/middleware-serde";
+import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
+import { Command as $Command } from "@smithy/smithy-client";
+import {
+ FinalizeHandlerArguments,
+ Handler,
+ HandlerExecutionContext,
+ HttpHandlerOptions as __HttpHandlerOptions,
+ MetadataBearer as __MetadataBearer,
+ MiddlewareStack,
+ SerdeContext as __SerdeContext,
+ SMITHY_CONTEXT_KEY,
+} from "@smithy/types";
+
+import { ListDataSourcesRequest, ListDataSourcesResponse } from "../models/models_0";
+import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient";
+import { de_ListDataSourcesCommand, se_ListDataSourcesCommand } from "../protocols/Aws_restJson1";
+
+/**
+ * @public
+ */
+export { __MetadataBearer, $Command };
+/**
+ * @public
+ *
+ * The input for {@link ListDataSourcesCommand}.
+ */
+export interface ListDataSourcesCommandInput extends ListDataSourcesRequest {}
+/**
+ * @public
+ *
+ * The output of {@link ListDataSourcesCommand}.
+ */
+export interface ListDataSourcesCommandOutput extends ListDataSourcesResponse, __MetadataBearer {}
+
+/**
+ * @public
+ * A list of the data source details of the domain.
+ * @example
+ * Use a bare-bones client and the command you need to make an API call.
+ * ```javascript
+ * import { OpenSearchClient, ListDataSourcesCommand } from "@aws-sdk/client-opensearch"; // ES Modules import
+ * // const { OpenSearchClient, ListDataSourcesCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import
+ * const client = new OpenSearchClient(config);
+ * const input = { // ListDataSourcesRequest
+ * DomainName: "STRING_VALUE", // required
+ * };
+ * const command = new ListDataSourcesCommand(input);
+ * const response = await client.send(command);
+ * // { // ListDataSourcesResponse
+ * // DataSources: [ // DataSourceList
+ * // { // DataSourceDetails
+ * // DataSourceType: { // DataSourceType Union: only one key present
+ * // S3GlueDataCatalog: { // S3GlueDataCatalog
+ * // RoleArn: "STRING_VALUE",
+ * // },
+ * // },
+ * // Name: "STRING_VALUE",
+ * // Description: "STRING_VALUE",
+ * // },
+ * // ],
+ * // };
+ *
+ * ```
+ *
+ * @param ListDataSourcesCommandInput - {@link ListDataSourcesCommandInput}
+ * @returns {@link ListDataSourcesCommandOutput}
+ * @see {@link ListDataSourcesCommandInput} for command's `input` shape.
+ * @see {@link ListDataSourcesCommandOutput} 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 DependencyFailureException} (client fault)
+ * An exception for when a failure in one of the dependencies results in the service being unable to fetch details about the resource.
+ *
+ * @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.
+ *
+ */
+export class ListDataSourcesCommand extends $Command<
+ ListDataSourcesCommandInput,
+ ListDataSourcesCommandOutput,
+ OpenSearchClientResolvedConfig
+> {
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
+ /**
+ * @public
+ */
+ constructor(readonly input: ListDataSourcesCommandInput) {
+ super();
+ }
+
+ /**
+ * @internal
+ */
+ resolveMiddleware(
+ clientStack: MiddlewareStack,
+ configuration: OpenSearchClientResolvedConfig,
+ options?: __HttpHandlerOptions
+ ): Handler {
+ this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, ListDataSourcesCommand.getEndpointParameterInstructions())
+ );
+
+ const stack = clientStack.concat(this.middlewareStack);
+
+ const { logger } = configuration;
+ const clientName = "OpenSearchClient";
+ const commandName = "ListDataSourcesCommand";
+ const handlerExecutionContext: HandlerExecutionContext = {
+ logger,
+ clientName,
+ commandName,
+ inputFilterSensitiveLog: (_: any) => _,
+ outputFilterSensitiveLog: (_: any) => _,
+ [SMITHY_CONTEXT_KEY]: {
+ service: "AmazonOpenSearchService",
+ operation: "ListDataSources",
+ },
+ };
+ const { requestHandler } = configuration;
+ return stack.resolve(
+ (request: FinalizeHandlerArguments) =>
+ requestHandler.handle(request.request as __HttpRequest, options || {}),
+ handlerExecutionContext
+ );
+ }
+
+ /**
+ * @internal
+ */
+ private serialize(input: ListDataSourcesCommandInput, context: __SerdeContext): Promise<__HttpRequest> {
+ return se_ListDataSourcesCommand(input, context);
+ }
+
+ /**
+ * @internal
+ */
+ private deserialize(output: __HttpResponse, context: __SerdeContext): Promise {
+ return de_ListDataSourcesCommand(output, context);
+ }
+}
diff --git a/clients/client-opensearch/src/commands/UpdateDataSourceCommand.ts b/clients/client-opensearch/src/commands/UpdateDataSourceCommand.ts
new file mode 100644
index 000000000000..8db4383e093f
--- /dev/null
+++ b/clients/client-opensearch/src/commands/UpdateDataSourceCommand.ts
@@ -0,0 +1,164 @@
+// smithy-typescript generated code
+import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint";
+import { getSerdePlugin } from "@smithy/middleware-serde";
+import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
+import { Command as $Command } from "@smithy/smithy-client";
+import {
+ FinalizeHandlerArguments,
+ Handler,
+ HandlerExecutionContext,
+ HttpHandlerOptions as __HttpHandlerOptions,
+ MetadataBearer as __MetadataBearer,
+ MiddlewareStack,
+ SerdeContext as __SerdeContext,
+ SMITHY_CONTEXT_KEY,
+} from "@smithy/types";
+
+import { UpdateDataSourceRequest, UpdateDataSourceResponse } from "../models/models_0";
+import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient";
+import { de_UpdateDataSourceCommand, se_UpdateDataSourceCommand } from "../protocols/Aws_restJson1";
+
+/**
+ * @public
+ */
+export { __MetadataBearer, $Command };
+/**
+ * @public
+ *
+ * The input for {@link UpdateDataSourceCommand}.
+ */
+export interface UpdateDataSourceCommandInput extends UpdateDataSourceRequest {}
+/**
+ * @public
+ *
+ * The output of {@link UpdateDataSourceCommand}.
+ */
+export interface UpdateDataSourceCommandOutput extends UpdateDataSourceResponse, __MetadataBearer {}
+
+/**
+ * @public
+ * Updates the data source on the domain.
+ * @example
+ * Use a bare-bones client and the command you need to make an API call.
+ * ```javascript
+ * import { OpenSearchClient, UpdateDataSourceCommand } from "@aws-sdk/client-opensearch"; // ES Modules import
+ * // const { OpenSearchClient, UpdateDataSourceCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import
+ * const client = new OpenSearchClient(config);
+ * const input = { // UpdateDataSourceRequest
+ * DomainName: "STRING_VALUE", // required
+ * Name: "STRING_VALUE", // required
+ * DataSourceType: { // DataSourceType Union: only one key present
+ * S3GlueDataCatalog: { // S3GlueDataCatalog
+ * RoleArn: "STRING_VALUE",
+ * },
+ * },
+ * Description: "STRING_VALUE",
+ * };
+ * const command = new UpdateDataSourceCommand(input);
+ * const response = await client.send(command);
+ * // { // UpdateDataSourceResponse
+ * // Message: "STRING_VALUE",
+ * // };
+ *
+ * ```
+ *
+ * @param UpdateDataSourceCommandInput - {@link UpdateDataSourceCommandInput}
+ * @returns {@link UpdateDataSourceCommandOutput}
+ * @see {@link UpdateDataSourceCommandInput} for command's `input` shape.
+ * @see {@link UpdateDataSourceCommandOutput} 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 DependencyFailureException} (client fault)
+ * An exception for when a failure in one of the dependencies results in the service being unable to fetch details about the resource.
+ *
+ * @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.
+ *
+ */
+export class UpdateDataSourceCommand extends $Command<
+ UpdateDataSourceCommandInput,
+ UpdateDataSourceCommandOutput,
+ OpenSearchClientResolvedConfig
+> {
+ public static getEndpointParameterInstructions(): EndpointParameterInstructions {
+ return {
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
+ Endpoint: { type: "builtInParams", name: "endpoint" },
+ Region: { type: "builtInParams", name: "region" },
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
+ };
+ }
+
+ /**
+ * @public
+ */
+ constructor(readonly input: UpdateDataSourceCommandInput) {
+ super();
+ }
+
+ /**
+ * @internal
+ */
+ resolveMiddleware(
+ clientStack: MiddlewareStack,
+ configuration: OpenSearchClientResolvedConfig,
+ options?: __HttpHandlerOptions
+ ): Handler {
+ this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
+ this.middlewareStack.use(
+ getEndpointPlugin(configuration, UpdateDataSourceCommand.getEndpointParameterInstructions())
+ );
+
+ const stack = clientStack.concat(this.middlewareStack);
+
+ const { logger } = configuration;
+ const clientName = "OpenSearchClient";
+ const commandName = "UpdateDataSourceCommand";
+ const handlerExecutionContext: HandlerExecutionContext = {
+ logger,
+ clientName,
+ commandName,
+ inputFilterSensitiveLog: (_: any) => _,
+ outputFilterSensitiveLog: (_: any) => _,
+ [SMITHY_CONTEXT_KEY]: {
+ service: "AmazonOpenSearchService",
+ operation: "UpdateDataSource",
+ },
+ };
+ const { requestHandler } = configuration;
+ return stack.resolve(
+ (request: FinalizeHandlerArguments) =>
+ requestHandler.handle(request.request as __HttpRequest, options || {}),
+ handlerExecutionContext
+ );
+ }
+
+ /**
+ * @internal
+ */
+ private serialize(input: UpdateDataSourceCommandInput, context: __SerdeContext): Promise<__HttpRequest> {
+ return se_UpdateDataSourceCommand(input, context);
+ }
+
+ /**
+ * @internal
+ */
+ private deserialize(output: __HttpResponse, context: __SerdeContext): Promise {
+ return de_UpdateDataSourceCommand(output, context);
+ }
+}
diff --git a/clients/client-opensearch/src/commands/index.ts b/clients/client-opensearch/src/commands/index.ts
index 08319f10b98c..2950fe74ac1e 100644
--- a/clients/client-opensearch/src/commands/index.ts
+++ b/clients/client-opensearch/src/commands/index.ts
@@ -1,5 +1,6 @@
// smithy-typescript generated code
export * from "./AcceptInboundConnectionCommand";
+export * from "./AddDataSourceCommand";
export * from "./AddTagsCommand";
export * from "./AssociatePackageCommand";
export * from "./AuthorizeVpcEndpointAccessCommand";
@@ -8,6 +9,7 @@ export * from "./CreateDomainCommand";
export * from "./CreateOutboundConnectionCommand";
export * from "./CreatePackageCommand";
export * from "./CreateVpcEndpointCommand";
+export * from "./DeleteDataSourceCommand";
export * from "./DeleteDomainCommand";
export * from "./DeleteInboundConnectionCommand";
export * from "./DeleteOutboundConnectionCommand";
@@ -30,10 +32,12 @@ export * from "./DescribeReservedInstancesCommand";
export * from "./DescribeVpcEndpointsCommand";
export * from "./DissociatePackageCommand";
export * from "./GetCompatibleVersionsCommand";
+export * from "./GetDataSourceCommand";
export * from "./GetDomainMaintenanceStatusCommand";
export * from "./GetPackageVersionHistoryCommand";
export * from "./GetUpgradeHistoryCommand";
export * from "./GetUpgradeStatusCommand";
+export * from "./ListDataSourcesCommand";
export * from "./ListDomainMaintenancesCommand";
export * from "./ListDomainNamesCommand";
export * from "./ListDomainsForPackageCommand";
@@ -51,6 +55,7 @@ export * from "./RemoveTagsCommand";
export * from "./RevokeVpcEndpointAccessCommand";
export * from "./StartDomainMaintenanceCommand";
export * from "./StartServiceSoftwareUpdateCommand";
+export * from "./UpdateDataSourceCommand";
export * from "./UpdateDomainConfigCommand";
export * from "./UpdatePackageCommand";
export * from "./UpdateScheduledActionCommand";
diff --git a/clients/client-opensearch/src/models/models_0.ts b/clients/client-opensearch/src/models/models_0.ts
index 6db0a217ebd9..ab3ec9f0da7e 100644
--- a/clients/client-opensearch/src/models/models_0.ts
+++ b/clients/client-opensearch/src/models/models_0.ts
@@ -396,74 +396,95 @@ export type ActionType = (typeof ActionType)[keyof typeof ActionType];
/**
* @public
- * List of limits that are specific to a given instance type.
+ * Information about the AWS S3 Glue Data Catalog.
*/
-export interface AdditionalLimit {
- /**
- * @public
- *
- * -
- *
- * MaximumNumberOfDataNodesSupported
- This attribute only applies to master
- * nodes and specifies the maximum number of data nodes of a given instance type a master node can
- * support.
- *
- * -
- *
- * MaximumNumberOfDataNodesWithoutMasterNode
- This attribute only applies to
- * data nodes and specifies the maximum number of data nodes of a given instance type can exist
- * without a master node governing them.
- *
- *
- */
- LimitName?: string;
-
+export interface S3GlueDataCatalog {
/**
* @public
- * The values of the additional instance type limits.
+ * The role ARN for the AWS S3 Glue Data Catalog.
*/
- LimitValues?: string[];
+ RoleArn?: string;
}
/**
* @public
- * A tag (key-value pair) for an Amazon OpenSearch Service resource.
+ * Information about the data source.
*/
-export interface Tag {
+export type DataSourceType = DataSourceType.S3GlueDataCatalogMember | DataSourceType.$UnknownMember;
+
+/**
+ * @public
+ */
+export namespace DataSourceType {
/**
* @public
- * The tag key. Tag keys must be unique for the domain to which they are attached.
+ * The data source for the AWS S3 Glue Data Catalog.
*/
- Key: string | undefined;
+ export interface S3GlueDataCatalogMember {
+ S3GlueDataCatalog: S3GlueDataCatalog;
+ $unknown?: never;
+ }
/**
* @public
- * The value assigned to the corresponding tag key. Tag values can be null and don't have to be
- * unique in a tag set. For example, you can have a key value pair in a tag set of project :
- * Trinity
and cost-center : Trinity
- *
*/
- Value: string | undefined;
+ export interface $UnknownMember {
+ S3GlueDataCatalog?: never;
+ $unknown: [string, any];
+ }
+
+ export interface Visitor {
+ S3GlueDataCatalog: (value: S3GlueDataCatalog) => T;
+ _: (name: string, value: any) => T;
+ }
+
+ export const visit = (value: DataSourceType, visitor: Visitor): T => {
+ if (value.S3GlueDataCatalog !== undefined) return visitor.S3GlueDataCatalog(value.S3GlueDataCatalog);
+ return visitor._(value.$unknown[0], value.$unknown[1]);
+ };
}
/**
* @public
- * Container for the parameters to the AddTags
operation. Specifies the tags to
- * attach to the domain.
+ * Container for the parameters to the AddDataSource
+ * operation.
*/
-export interface AddTagsRequest {
+export interface AddDataSourceRequest {
/**
* @public
- * Amazon Resource Name (ARN) for the OpenSearch Service domain to which you want to attach
- * resource tags.
+ * The name of the domain.
*/
- ARN: string | undefined;
+ DomainName: string | undefined;
/**
* @public
- * List of resource tags.
+ * The name of the data source.
*/
- TagList: Tag[] | undefined;
+ Name: string | undefined;
+
+ /**
+ * @public
+ * The type of data source.
+ */
+ DataSourceType: DataSourceType | undefined;
+
+ /**
+ * @public
+ * A description of the data source.
+ */
+ Description?: string;
+}
+
+/**
+ * @public
+ * The result of an AddDataSource
operation.
+ */
+export interface AddDataSourceResponse {
+ /**
+ * @public
+ * A message associated with the data source.
+ */
+ Message?: string;
}
/**
@@ -486,6 +507,26 @@ export class BaseException extends __BaseException {
}
}
+/**
+ * @public
+ * An exception for when a failure in one of the dependencies results in the service being unable to fetch details about the resource.
+ */
+export class DependencyFailureException extends __BaseException {
+ readonly name: "DependencyFailureException" = "DependencyFailureException";
+ readonly $fault: "client" = "client";
+ /**
+ * @internal
+ */
+ constructor(opts: __ExceptionOptionType) {
+ super({
+ name: "DependencyFailureException",
+ $fault: "client",
+ ...opts,
+ });
+ Object.setPrototypeOf(this, DependencyFailureException.prototype);
+ }
+}
+
/**
* @public
* Request processing failed because of an unknown error, exception, or internal failure.
@@ -526,6 +567,78 @@ export class ValidationException extends __BaseException {
}
}
+/**
+ * @public
+ * List of limits that are specific to a given instance type.
+ */
+export interface AdditionalLimit {
+ /**
+ * @public
+ *
+ * -
+ *
+ * MaximumNumberOfDataNodesSupported
- This attribute only applies to master
+ * nodes and specifies the maximum number of data nodes of a given instance type a master node can
+ * support.
+ *
+ * -
+ *
+ * MaximumNumberOfDataNodesWithoutMasterNode
- This attribute only applies to
+ * data nodes and specifies the maximum number of data nodes of a given instance type can exist
+ * without a master node governing them.
+ *
+ *
+ */
+ LimitName?: string;
+
+ /**
+ * @public
+ * The values of the additional instance type limits.
+ */
+ LimitValues?: string[];
+}
+
+/**
+ * @public
+ * A tag (key-value pair) for an Amazon OpenSearch Service resource.
+ */
+export interface Tag {
+ /**
+ * @public
+ * The tag key. Tag keys must be unique for the domain to which they are attached.
+ */
+ Key: string | undefined;
+
+ /**
+ * @public
+ * The value assigned to the corresponding tag key. Tag values can be null and don't have to be
+ * unique in a tag set. For example, you can have a key value pair in a tag set of project :
+ * Trinity
and cost-center : Trinity
+ *
+ */
+ Value: string | undefined;
+}
+
+/**
+ * @public
+ * Container for the parameters to the AddTags
operation. Specifies the tags to
+ * attach to the domain.
+ */
+export interface AddTagsRequest {
+ /**
+ * @public
+ * Amazon Resource Name (ARN) for the OpenSearch Service domain to which you want to attach
+ * resource tags.
+ */
+ ARN: string | undefined;
+
+ /**
+ * @public
+ * List of resource tags.
+ */
+ TagList: Tag[] | undefined;
+}
+
/**
* @public
* Status of the advanced options for the specified domain. The following options are
@@ -1533,18 +1646,28 @@ export interface DomainEndpointOptions {
/**
* @public
- *
Specify the TLS security policy to apply to the HTTPS endpoint of the domain.
- * Can be one of the following values:
+ * Specify the TLS security policy to apply to the HTTPS endpoint of the domain. The policy can
+ * be one of the following values:
*
+ *
+ *
+ *
+ * Policy-Min-TLS-1-2-2019-07: TLS security policy which
+ * supports only TLS version 1.2
+ *
+ *
+ *
+ * Policy-Min-TLS-1-0-2023-10: TLS security policy which
+ * supports TLS version 1.0 to TLS version 1.3
*
*
*
- * Policy-Min-TLS-1-2-2019-07: TLS security policy which supports
- * only TLS version 1.2
+ * Policy-Min-TLS-1-2-2023-10: TLS security policy which
+ * supports TLS version 1.2 to TLS version 1.3 with perfect forward secrecy cipher suites
*
*
*/
@@ -2846,6 +2969,37 @@ export interface CreateVpcEndpointResponse {
VpcEndpoint: VpcEndpoint | undefined;
}
+/**
+ * @public
+ * Container for the parameters to the DeleteDataSource
+ * operation.
+ */
+export interface DeleteDataSourceRequest {
+ /**
+ * @public
+ * The name of the domain.
+ */
+ DomainName: string | undefined;
+
+ /**
+ * @public
+ * The name of the data source.
+ */
+ Name: string | undefined;
+}
+
+/**
+ * @public
+ * The result of a GetDataSource
operation.
+ */
+export interface DeleteDataSourceResponse {
+ /**
+ * @public
+ * A message associated with the initiated request.
+ */
+ Message?: string;
+}
+
/**
* @public
* Container for the parameters to the DeleteDomain
operation.
@@ -4105,26 +4259,6 @@ export interface DescribeDomainHealthResponse {
EnvironmentInformation?: EnvironmentInfo[];
}
-/**
- * @public
- * An exception for when a failure in one of the dependencies results in the service being unable to fetch details about the resource.
- */
-export class DependencyFailureException extends __BaseException {
- readonly name: "DependencyFailureException" = "DependencyFailureException";
- readonly $fault: "client" = "client";
- /**
- * @internal
- */
- constructor(opts: __ExceptionOptionType) {
- super({
- name: "DependencyFailureException",
- $fault: "client",
- ...opts,
- });
- Object.setPrototypeOf(this, DependencyFailureException.prototype);
- }
-}
-
/**
* @public
* Container for the parameters to the DescribeDomainNodes
@@ -5219,6 +5353,49 @@ export interface GetCompatibleVersionsResponse {
CompatibleVersions?: CompatibleVersionsMap[];
}
+/**
+ * @public
+ *
Container for the parameters to the GetDataSource
+ * operation.
+ */
+export interface GetDataSourceRequest {
+ /**
+ * @public
+ * The name of the domain.
+ */
+ DomainName: string | undefined;
+
+ /**
+ * @public
+ * The name of the data source.
+ */
+ Name: string | undefined;
+}
+
+/**
+ * @public
+ * The result of a GetDataSource
operation.
+ */
+export interface GetDataSourceResponse {
+ /**
+ * @public
+ * The type of data source.
+ */
+ DataSourceType?: DataSourceType;
+
+ /**
+ * @public
+ * The name of the data source.
+ */
+ Name?: string;
+
+ /**
+ * @public
+ * A description of the data source.
+ */
+ Description?: string;
+}
+
/**
* @public
* Container for the parameters to the GetDomainMaintenanceStatus
@@ -5612,6 +5789,55 @@ export interface GetUpgradeStatusResponse {
UpgradeName?: string;
}
+/**
+ * @public
+ *
Container for the parameters to the ListDataSources
+ * operation.
+ */
+export interface ListDataSourcesRequest {
+ /**
+ * @public
+ * The name of the domain.
+ */
+ DomainName: string | undefined;
+}
+
+/**
+ * @public
+ * Details about the data sources.
+ */
+export interface DataSourceDetails {
+ /**
+ * @public
+ * The type of data source.
+ */
+ DataSourceType?: DataSourceType;
+
+ /**
+ * @public
+ * The name of the data source.
+ */
+ Name?: string;
+
+ /**
+ * @public
+ * A description of the data source.
+ */
+ Description?: string;
+}
+
+/**
+ * @public
+ * The result of a ListDataSources
operation.
+ */
+export interface ListDataSourcesResponse {
+ /**
+ * @public
+ * A list of the data sources.
+ */
+ DataSources?: DataSourceDetails[];
+}
+
/**
* @public
* Container for the parameters to the ListDomainMaintenances
@@ -6518,6 +6744,49 @@ export interface StartServiceSoftwareUpdateResponse {
ServiceSoftwareOptions?: ServiceSoftwareOptions;
}
+/**
+ * @public
+ *
Container for the parameters to the UpdateDataSource
+ * operation.
+ */
+export interface UpdateDataSourceRequest {
+ /**
+ * @public
+ * The name of the domain.
+ */
+ DomainName: string | undefined;
+
+ /**
+ * @public
+ * The name of the data source.
+ */
+ Name: string | undefined;
+
+ /**
+ * @public
+ * The type of data source.
+ */
+ DataSourceType: DataSourceType | undefined;
+
+ /**
+ * @public
+ * A description of the data source.
+ */
+ Description?: string;
+}
+
+/**
+ * @public
+ * The result of an UpdateDataSource
operation.
+ */
+export interface UpdateDataSourceResponse {
+ /**
+ * @public
+ * A message associated with the data source.
+ */
+ Message?: string;
+}
+
/**
* @public
* @enum
diff --git a/clients/client-opensearch/src/protocols/Aws_restJson1.ts b/clients/client-opensearch/src/protocols/Aws_restJson1.ts
index 52749355f872..4570142cfee4 100644
--- a/clients/client-opensearch/src/protocols/Aws_restJson1.ts
+++ b/clients/client-opensearch/src/protocols/Aws_restJson1.ts
@@ -1,4 +1,5 @@
// smithy-typescript generated code
+import { awsExpectUnion as __expectUnion } from "@aws-sdk/core";
import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http";
import {
_json,
@@ -29,6 +30,7 @@ import {
AcceptInboundConnectionCommandInput,
AcceptInboundConnectionCommandOutput,
} from "../commands/AcceptInboundConnectionCommand";
+import { AddDataSourceCommandInput, AddDataSourceCommandOutput } from "../commands/AddDataSourceCommand";
import { AddTagsCommandInput, AddTagsCommandOutput } from "../commands/AddTagsCommand";
import { AssociatePackageCommandInput, AssociatePackageCommandOutput } from "../commands/AssociatePackageCommand";
import {
@@ -46,6 +48,7 @@ import {
} from "../commands/CreateOutboundConnectionCommand";
import { CreatePackageCommandInput, CreatePackageCommandOutput } from "../commands/CreatePackageCommand";
import { CreateVpcEndpointCommandInput, CreateVpcEndpointCommandOutput } from "../commands/CreateVpcEndpointCommand";
+import { DeleteDataSourceCommandInput, DeleteDataSourceCommandOutput } from "../commands/DeleteDataSourceCommand";
import { DeleteDomainCommandInput, DeleteDomainCommandOutput } from "../commands/DeleteDomainCommand";
import {
DeleteInboundConnectionCommandInput,
@@ -113,6 +116,7 @@ import {
GetCompatibleVersionsCommandInput,
GetCompatibleVersionsCommandOutput,
} from "../commands/GetCompatibleVersionsCommand";
+import { GetDataSourceCommandInput, GetDataSourceCommandOutput } from "../commands/GetDataSourceCommand";
import {
GetDomainMaintenanceStatusCommandInput,
GetDomainMaintenanceStatusCommandOutput,
@@ -123,6 +127,7 @@ import {
} from "../commands/GetPackageVersionHistoryCommand";
import { GetUpgradeHistoryCommandInput, GetUpgradeHistoryCommandOutput } from "../commands/GetUpgradeHistoryCommand";
import { GetUpgradeStatusCommandInput, GetUpgradeStatusCommandOutput } from "../commands/GetUpgradeStatusCommand";
+import { ListDataSourcesCommandInput, ListDataSourcesCommandOutput } from "../commands/ListDataSourcesCommand";
import {
ListDomainMaintenancesCommandInput,
ListDomainMaintenancesCommandOutput,
@@ -176,6 +181,7 @@ import {
StartServiceSoftwareUpdateCommandInput,
StartServiceSoftwareUpdateCommandOutput,
} from "../commands/StartServiceSoftwareUpdateCommand";
+import { UpdateDataSourceCommandInput, UpdateDataSourceCommandOutput } from "../commands/UpdateDataSourceCommand";
import { UpdateDomainConfigCommandInput, UpdateDomainConfigCommandOutput } from "../commands/UpdateDomainConfigCommand";
import { UpdatePackageCommandInput, UpdatePackageCommandOutput } from "../commands/UpdatePackageCommand";
import {
@@ -210,6 +216,7 @@ import {
ConflictException,
ConnectionProperties,
CrossClusterSearchConnectionProperties,
+ DataSourceType,
DependencyFailureException,
DescribePackagesFilter,
DisabledOperationException,
@@ -249,6 +256,7 @@ import {
ReservedInstanceOffering,
ResourceAlreadyExistsException,
ResourceNotFoundException,
+ S3GlueDataCatalog,
SAMLIdp,
SAMLOptionsInput,
ScheduledAutoTuneDetails,
@@ -302,6 +310,40 @@ export const se_AcceptInboundConnectionCommand = async (
});
};
+/**
+ * serializeAws_restJson1AddDataSourceCommand
+ */
+export const se_AddDataSourceCommand = async (
+ input: AddDataSourceCommandInput,
+ context: __SerdeContext
+): Promise<__HttpRequest> => {
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+ const headers: any = {
+ "content-type": "application/json",
+ };
+ let resolvedPath =
+ `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
+ "/2021-01-01/opensearch/domain/{DomainName}/dataSource";
+ resolvedPath = __resolvedPath(resolvedPath, input, "DomainName", () => input.DomainName!, "{DomainName}", false);
+ let body: any;
+ body = JSON.stringify(
+ take(input, {
+ DataSourceType: (_) => _json(_),
+ Description: [],
+ Name: [],
+ })
+ );
+ return new __HttpRequest({
+ protocol,
+ hostname,
+ port,
+ method: "POST",
+ headers,
+ path: resolvedPath,
+ body,
+ });
+};
+
/**
* serializeAws_restJson1AddTagsCommand
*/
@@ -568,6 +610,32 @@ export const se_CreateVpcEndpointCommand = async (
});
};
+/**
+ * serializeAws_restJson1DeleteDataSourceCommand
+ */
+export const se_DeleteDataSourceCommand = async (
+ input: DeleteDataSourceCommandInput,
+ context: __SerdeContext
+): Promise<__HttpRequest> => {
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+ const headers: any = {};
+ let resolvedPath =
+ `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
+ "/2021-01-01/opensearch/domain/{DomainName}/dataSource/{Name}";
+ resolvedPath = __resolvedPath(resolvedPath, input, "DomainName", () => input.DomainName!, "{DomainName}", false);
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name!, "{Name}", false);
+ let body: any;
+ return new __HttpRequest({
+ protocol,
+ hostname,
+ port,
+ method: "DELETE",
+ headers,
+ path: resolvedPath,
+ body,
+ });
+};
+
/**
* serializeAws_restJson1DeleteDomainCommand
*/
@@ -1220,6 +1288,32 @@ export const se_GetCompatibleVersionsCommand = async (
});
};
+/**
+ * serializeAws_restJson1GetDataSourceCommand
+ */
+export const se_GetDataSourceCommand = async (
+ input: GetDataSourceCommandInput,
+ context: __SerdeContext
+): Promise<__HttpRequest> => {
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+ const headers: any = {};
+ let resolvedPath =
+ `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
+ "/2021-01-01/opensearch/domain/{DomainName}/dataSource/{Name}";
+ resolvedPath = __resolvedPath(resolvedPath, input, "DomainName", () => input.DomainName!, "{DomainName}", false);
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name!, "{Name}", false);
+ let body: any;
+ return new __HttpRequest({
+ protocol,
+ hostname,
+ port,
+ method: "GET",
+ headers,
+ path: resolvedPath,
+ body,
+ });
+};
+
/**
* serializeAws_restJson1GetDomainMaintenanceStatusCommand
*/
@@ -1333,6 +1427,31 @@ export const se_GetUpgradeStatusCommand = async (
});
};
+/**
+ * serializeAws_restJson1ListDataSourcesCommand
+ */
+export const se_ListDataSourcesCommand = async (
+ input: ListDataSourcesCommandInput,
+ context: __SerdeContext
+): Promise<__HttpRequest> => {
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+ const headers: any = {};
+ let resolvedPath =
+ `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
+ "/2021-01-01/opensearch/domain/{DomainName}/dataSource";
+ resolvedPath = __resolvedPath(resolvedPath, input, "DomainName", () => input.DomainName!, "{DomainName}", false);
+ let body: any;
+ return new __HttpRequest({
+ protocol,
+ hostname,
+ port,
+ method: "GET",
+ headers,
+ path: resolvedPath,
+ body,
+ });
+};
+
/**
* serializeAws_restJson1ListDomainMaintenancesCommand
*/
@@ -1852,6 +1971,40 @@ export const se_StartServiceSoftwareUpdateCommand = async (
});
};
+/**
+ * serializeAws_restJson1UpdateDataSourceCommand
+ */
+export const se_UpdateDataSourceCommand = async (
+ input: UpdateDataSourceCommandInput,
+ context: __SerdeContext
+): Promise<__HttpRequest> => {
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
+ const headers: any = {
+ "content-type": "application/json",
+ };
+ let resolvedPath =
+ `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` +
+ "/2021-01-01/opensearch/domain/{DomainName}/dataSource/{Name}";
+ resolvedPath = __resolvedPath(resolvedPath, input, "DomainName", () => input.DomainName!, "{DomainName}", false);
+ resolvedPath = __resolvedPath(resolvedPath, input, "Name", () => input.Name!, "{Name}", false);
+ let body: any;
+ body = JSON.stringify(
+ take(input, {
+ DataSourceType: (_) => _json(_),
+ Description: [],
+ })
+ );
+ return new __HttpRequest({
+ protocol,
+ hostname,
+ port,
+ method: "PUT",
+ headers,
+ path: resolvedPath,
+ body,
+ });
+};
+
/**
* serializeAws_restJson1UpdateDomainConfigCommand
*/
@@ -2087,6 +2240,71 @@ const de_AcceptInboundConnectionCommandError = async (
}
};
+/**
+ * deserializeAws_restJson1AddDataSourceCommand
+ */
+export const de_AddDataSourceCommand = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
+ return de_AddDataSourceCommandError(output, context);
+ }
+ const contents: any = map({
+ $metadata: deserializeMetadata(output),
+ });
+ const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
+ const doc = take(data, {
+ Message: __expectString,
+ });
+ Object.assign(contents, doc);
+ return contents;
+};
+
+/**
+ * deserializeAws_restJson1AddDataSourceCommandError
+ */
+const de_AddDataSourceCommandError = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ const parsedOutput: any = {
+ ...output,
+ body: await parseErrorBody(output.body, context),
+ };
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
+ switch (errorCode) {
+ case "BaseException":
+ case "com.amazonaws.opensearch#BaseException":
+ throw await de_BaseExceptionRes(parsedOutput, context);
+ case "DependencyFailureException":
+ case "com.amazonaws.opensearch#DependencyFailureException":
+ throw await de_DependencyFailureExceptionRes(parsedOutput, context);
+ case "DisabledOperationException":
+ case "com.amazonaws.opensearch#DisabledOperationException":
+ throw await de_DisabledOperationExceptionRes(parsedOutput, context);
+ case "InternalException":
+ case "com.amazonaws.opensearch#InternalException":
+ throw await de_InternalExceptionRes(parsedOutput, context);
+ case "LimitExceededException":
+ case "com.amazonaws.opensearch#LimitExceededException":
+ throw await de_LimitExceededExceptionRes(parsedOutput, context);
+ case "ResourceNotFoundException":
+ case "com.amazonaws.opensearch#ResourceNotFoundException":
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
+ case "ValidationException":
+ case "com.amazonaws.opensearch#ValidationException":
+ throw await de_ValidationExceptionRes(parsedOutput, context);
+ default:
+ const parsedBody = parsedOutput.body;
+ return throwDefaultError({
+ output,
+ parsedBody,
+ errorCode,
+ });
+ }
+};
+
/**
* deserializeAws_restJson1AddTagsCommand
*/
@@ -2573,6 +2791,68 @@ const de_CreateVpcEndpointCommandError = async (
}
};
+/**
+ * deserializeAws_restJson1DeleteDataSourceCommand
+ */
+export const de_DeleteDataSourceCommand = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
+ return de_DeleteDataSourceCommandError(output, context);
+ }
+ const contents: any = map({
+ $metadata: deserializeMetadata(output),
+ });
+ const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
+ const doc = take(data, {
+ Message: __expectString,
+ });
+ Object.assign(contents, doc);
+ return contents;
+};
+
+/**
+ * deserializeAws_restJson1DeleteDataSourceCommandError
+ */
+const de_DeleteDataSourceCommandError = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ const parsedOutput: any = {
+ ...output,
+ body: await parseErrorBody(output.body, context),
+ };
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
+ switch (errorCode) {
+ case "BaseException":
+ case "com.amazonaws.opensearch#BaseException":
+ throw await de_BaseExceptionRes(parsedOutput, context);
+ case "DependencyFailureException":
+ case "com.amazonaws.opensearch#DependencyFailureException":
+ throw await de_DependencyFailureExceptionRes(parsedOutput, context);
+ case "DisabledOperationException":
+ case "com.amazonaws.opensearch#DisabledOperationException":
+ throw await de_DisabledOperationExceptionRes(parsedOutput, context);
+ case "InternalException":
+ case "com.amazonaws.opensearch#InternalException":
+ throw await de_InternalExceptionRes(parsedOutput, context);
+ case "ResourceNotFoundException":
+ case "com.amazonaws.opensearch#ResourceNotFoundException":
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
+ case "ValidationException":
+ case "com.amazonaws.opensearch#ValidationException":
+ throw await de_ValidationExceptionRes(parsedOutput, context);
+ default:
+ const parsedBody = parsedOutput.body;
+ return throwDefaultError({
+ output,
+ parsedBody,
+ errorCode,
+ });
+ }
+};
+
/**
* deserializeAws_restJson1DeleteDomainCommand
*/
@@ -3835,6 +4115,70 @@ const de_GetCompatibleVersionsCommandError = async (
}
};
+/**
+ * deserializeAws_restJson1GetDataSourceCommand
+ */
+export const de_GetDataSourceCommand = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
+ return de_GetDataSourceCommandError(output, context);
+ }
+ const contents: any = map({
+ $metadata: deserializeMetadata(output),
+ });
+ const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
+ const doc = take(data, {
+ DataSourceType: (_) => _json(__expectUnion(_)),
+ Description: __expectString,
+ Name: __expectString,
+ });
+ Object.assign(contents, doc);
+ return contents;
+};
+
+/**
+ * deserializeAws_restJson1GetDataSourceCommandError
+ */
+const de_GetDataSourceCommandError = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ const parsedOutput: any = {
+ ...output,
+ body: await parseErrorBody(output.body, context),
+ };
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
+ switch (errorCode) {
+ case "BaseException":
+ case "com.amazonaws.opensearch#BaseException":
+ throw await de_BaseExceptionRes(parsedOutput, context);
+ case "DependencyFailureException":
+ case "com.amazonaws.opensearch#DependencyFailureException":
+ throw await de_DependencyFailureExceptionRes(parsedOutput, context);
+ case "DisabledOperationException":
+ case "com.amazonaws.opensearch#DisabledOperationException":
+ throw await de_DisabledOperationExceptionRes(parsedOutput, context);
+ case "InternalException":
+ case "com.amazonaws.opensearch#InternalException":
+ throw await de_InternalExceptionRes(parsedOutput, context);
+ case "ResourceNotFoundException":
+ case "com.amazonaws.opensearch#ResourceNotFoundException":
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
+ case "ValidationException":
+ case "com.amazonaws.opensearch#ValidationException":
+ throw await de_ValidationExceptionRes(parsedOutput, context);
+ default:
+ const parsedBody = parsedOutput.body;
+ return throwDefaultError({
+ output,
+ parsedBody,
+ errorCode,
+ });
+ }
+};
+
/**
* deserializeAws_restJson1GetDomainMaintenanceStatusCommand
*/
@@ -4081,6 +4425,68 @@ const de_GetUpgradeStatusCommandError = async (
}
};
+/**
+ * deserializeAws_restJson1ListDataSourcesCommand
+ */
+export const de_ListDataSourcesCommand = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
+ return de_ListDataSourcesCommandError(output, context);
+ }
+ const contents: any = map({
+ $metadata: deserializeMetadata(output),
+ });
+ const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
+ const doc = take(data, {
+ DataSources: _json,
+ });
+ Object.assign(contents, doc);
+ return contents;
+};
+
+/**
+ * deserializeAws_restJson1ListDataSourcesCommandError
+ */
+const de_ListDataSourcesCommandError = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ const parsedOutput: any = {
+ ...output,
+ body: await parseErrorBody(output.body, context),
+ };
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
+ switch (errorCode) {
+ case "BaseException":
+ case "com.amazonaws.opensearch#BaseException":
+ throw await de_BaseExceptionRes(parsedOutput, context);
+ case "DependencyFailureException":
+ case "com.amazonaws.opensearch#DependencyFailureException":
+ throw await de_DependencyFailureExceptionRes(parsedOutput, context);
+ case "DisabledOperationException":
+ case "com.amazonaws.opensearch#DisabledOperationException":
+ throw await de_DisabledOperationExceptionRes(parsedOutput, context);
+ case "InternalException":
+ case "com.amazonaws.opensearch#InternalException":
+ throw await de_InternalExceptionRes(parsedOutput, context);
+ case "ResourceNotFoundException":
+ case "com.amazonaws.opensearch#ResourceNotFoundException":
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
+ case "ValidationException":
+ case "com.amazonaws.opensearch#ValidationException":
+ throw await de_ValidationExceptionRes(parsedOutput, context);
+ default:
+ const parsedBody = parsedOutput.body;
+ return throwDefaultError({
+ output,
+ parsedBody,
+ errorCode,
+ });
+ }
+};
+
/**
* deserializeAws_restJson1ListDomainMaintenancesCommand
*/
@@ -5041,6 +5447,68 @@ const de_StartServiceSoftwareUpdateCommandError = async (
}
};
+/**
+ * deserializeAws_restJson1UpdateDataSourceCommand
+ */
+export const de_UpdateDataSourceCommand = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
+ return de_UpdateDataSourceCommandError(output, context);
+ }
+ const contents: any = map({
+ $metadata: deserializeMetadata(output),
+ });
+ const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
+ const doc = take(data, {
+ Message: __expectString,
+ });
+ Object.assign(contents, doc);
+ return contents;
+};
+
+/**
+ * deserializeAws_restJson1UpdateDataSourceCommandError
+ */
+const de_UpdateDataSourceCommandError = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise => {
+ const parsedOutput: any = {
+ ...output,
+ body: await parseErrorBody(output.body, context),
+ };
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
+ switch (errorCode) {
+ case "BaseException":
+ case "com.amazonaws.opensearch#BaseException":
+ throw await de_BaseExceptionRes(parsedOutput, context);
+ case "DependencyFailureException":
+ case "com.amazonaws.opensearch#DependencyFailureException":
+ throw await de_DependencyFailureExceptionRes(parsedOutput, context);
+ case "DisabledOperationException":
+ case "com.amazonaws.opensearch#DisabledOperationException":
+ throw await de_DisabledOperationExceptionRes(parsedOutput, context);
+ case "InternalException":
+ case "com.amazonaws.opensearch#InternalException":
+ throw await de_InternalExceptionRes(parsedOutput, context);
+ case "ResourceNotFoundException":
+ case "com.amazonaws.opensearch#ResourceNotFoundException":
+ throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);
+ case "ValidationException":
+ case "com.amazonaws.opensearch#ValidationException":
+ throw await de_ValidationExceptionRes(parsedOutput, context);
+ default:
+ const parsedBody = parsedOutput.body;
+ return throwDefaultError({
+ output,
+ parsedBody,
+ errorCode,
+ });
+ }
+};
+
/**
* deserializeAws_restJson1UpdateDomainConfigCommand
*/
@@ -5672,6 +6140,8 @@ const se_AutoTuneOptionsInput = (input: AutoTuneOptionsInput, context: __SerdeCo
// se_CrossClusterSearchConnectionProperties omitted.
+// se_DataSourceType omitted.
+
// se_DescribePackagesFilter omitted.
// se_DescribePackagesFilterList omitted.
@@ -5708,6 +6178,8 @@ const se_AutoTuneOptionsInput = (input: AutoTuneOptionsInput, context: __SerdeCo
// se_PackageSource omitted.
+// se_S3GlueDataCatalog omitted.
+
// se_SAMLIdp omitted.
// se_SAMLOptionsInput omitted.
@@ -5960,6 +6432,12 @@ const de_CognitoOptionsStatus = (output: any, context: __SerdeContext): CognitoO
// de_CrossClusterSearchConnectionProperties omitted.
+// de_DataSourceDetails omitted.
+
+// de_DataSourceList omitted.
+
+// de_DataSourceType omitted.
+
/**
* deserializeAws_restJson1DomainConfig
*/
@@ -6389,6 +6867,8 @@ const de_ReservedInstanceOfferingList = (output: any, context: __SerdeContext):
return retVal;
};
+// de_S3GlueDataCatalog omitted.
+
// de_SAMLIdp omitted.
// de_SAMLOptionsOutput omitted.
diff --git a/codegen/sdk-codegen/aws-models/opensearch.json b/codegen/sdk-codegen/aws-models/opensearch.json
index 85883e3a0a0a..ece186a12c44 100644
--- a/codegen/sdk-codegen/aws-models/opensearch.json
+++ b/codegen/sdk-codegen/aws-models/opensearch.json
@@ -258,6 +258,98 @@
}
}
},
+ "com.amazonaws.opensearch#AddDataSource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.opensearch#AddDataSourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.opensearch#AddDataSourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.opensearch#BaseException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#DependencyFailureException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#DisabledOperationException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#InternalException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#LimitExceededException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Adds the data source on the domain.
",
+ "smithy.api#http": {
+ "method": "POST",
+ "uri": "/2021-01-01/opensearch/domain/{DomainName}/dataSource",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.opensearch#AddDataSourceRequest": {
+ "type": "structure",
+ "members": {
+ "DomainName": {
+ "target": "com.amazonaws.opensearch#DomainName",
+ "traits": {
+ "smithy.api#documentation": "The name of the domain.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.opensearch#DataSourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the data source.
",
+ "smithy.api#required": {}
+ }
+ },
+ "DataSourceType": {
+ "target": "com.amazonaws.opensearch#DataSourceType",
+ "traits": {
+ "smithy.api#documentation": "The type of data source.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.opensearch#DataSourceDescription",
+ "traits": {
+ "smithy.api#documentation": "A description of the data source.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Container for the parameters to the AddDataSource
\n operation.
",
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.opensearch#AddDataSourceResponse": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.opensearch#String",
+ "traits": {
+ "smithy.api#documentation": "A message associated with the data source.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The result of an AddDataSource
operation.
",
+ "smithy.api#output": {}
+ }
+ },
"com.amazonaws.opensearch#AddTags": {
"type": "operation",
"input": {
@@ -477,6 +569,9 @@
{
"target": "com.amazonaws.opensearch#AcceptInboundConnection"
},
+ {
+ "target": "com.amazonaws.opensearch#AddDataSource"
+ },
{
"target": "com.amazonaws.opensearch#AddTags"
},
@@ -501,6 +596,9 @@
{
"target": "com.amazonaws.opensearch#CreateVpcEndpoint"
},
+ {
+ "target": "com.amazonaws.opensearch#DeleteDataSource"
+ },
{
"target": "com.amazonaws.opensearch#DeleteDomain"
},
@@ -567,6 +665,9 @@
{
"target": "com.amazonaws.opensearch#GetCompatibleVersions"
},
+ {
+ "target": "com.amazonaws.opensearch#GetDataSource"
+ },
{
"target": "com.amazonaws.opensearch#GetDomainMaintenanceStatus"
},
@@ -579,6 +680,9 @@
{
"target": "com.amazonaws.opensearch#GetUpgradeStatus"
},
+ {
+ "target": "com.amazonaws.opensearch#ListDataSources"
+ },
{
"target": "com.amazonaws.opensearch#ListDomainMaintenances"
},
@@ -630,6 +734,9 @@
{
"target": "com.amazonaws.opensearch#StartServiceSoftwareUpdate"
},
+ {
+ "target": "com.amazonaws.opensearch#UpdateDataSource"
+ },
{
"target": "com.amazonaws.opensearch#UpdateDomainConfig"
},
@@ -3321,6 +3428,149 @@
"smithy.api#documentation": "Cross-cluster search specific connection properties.
"
}
},
+ "com.amazonaws.opensearch#DataSourceDescription": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 0,
+ "max": 1000
+ },
+ "smithy.api#pattern": "^([a-zA-Z0-9_])*[\\\\a-zA-Z0-9_@#%*+=:?./!\\s-]*$"
+ }
+ },
+ "com.amazonaws.opensearch#DataSourceDetails": {
+ "type": "structure",
+ "members": {
+ "DataSourceType": {
+ "target": "com.amazonaws.opensearch#DataSourceType",
+ "traits": {
+ "smithy.api#documentation": "The type of data source.
"
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.opensearch#DataSourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the data source.
"
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.opensearch#DataSourceDescription",
+ "traits": {
+ "smithy.api#documentation": "A description of the data source.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Details about the data sources.
"
+ }
+ },
+ "com.amazonaws.opensearch#DataSourceList": {
+ "type": "list",
+ "member": {
+ "target": "com.amazonaws.opensearch#DataSourceDetails"
+ }
+ },
+ "com.amazonaws.opensearch#DataSourceName": {
+ "type": "string",
+ "traits": {
+ "smithy.api#length": {
+ "min": 3,
+ "max": 80
+ },
+ "smithy.api#pattern": "^[a-z][a-z0-9_]+$"
+ }
+ },
+ "com.amazonaws.opensearch#DataSourceType": {
+ "type": "union",
+ "members": {
+ "S3GlueDataCatalog": {
+ "target": "com.amazonaws.opensearch#S3GlueDataCatalog",
+ "traits": {
+ "smithy.api#documentation": "The data source for the AWS S3 Glue Data Catalog.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Information about the data source.
"
+ }
+ },
+ "com.amazonaws.opensearch#DeleteDataSource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.opensearch#DeleteDataSourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.opensearch#DeleteDataSourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.opensearch#BaseException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#DependencyFailureException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#DisabledOperationException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#InternalException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Deletes the data source.
",
+ "smithy.api#http": {
+ "method": "DELETE",
+ "uri": "/2021-01-01/opensearch/domain/{DomainName}/dataSource/{Name}",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.opensearch#DeleteDataSourceRequest": {
+ "type": "structure",
+ "members": {
+ "DomainName": {
+ "target": "com.amazonaws.opensearch#DomainName",
+ "traits": {
+ "smithy.api#documentation": "The name of the domain.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.opensearch#DataSourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the data source.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Container for the parameters to the DeleteDataSource
\n operation.
",
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.opensearch#DeleteDataSourceResponse": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.opensearch#String",
+ "traits": {
+ "smithy.api#documentation": "A message associated with the initiated request.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The result of a GetDataSource
operation.
",
+ "smithy.api#output": {}
+ }
+ },
"com.amazonaws.opensearch#DeleteDomain": {
"type": "operation",
"input": {
@@ -5226,7 +5476,7 @@
"TLSSecurityPolicy": {
"target": "com.amazonaws.opensearch#TLSSecurityPolicy",
"traits": {
- "smithy.api#documentation": "Specify the TLS security policy to apply to the HTTPS endpoint of the domain.
\n Can be one of the following values:
\n "
+ "smithy.api#documentation": "Specify the TLS security policy to apply to the HTTPS endpoint of the domain. The policy can\n be one of the following values:
\n \n - \n
\n Policy-Min-TLS-1-0-2019-07: TLS security policy which\n supports TLS version 1.0 to TLS version 1.2
\n \n - \n
\n Policy-Min-TLS-1-2-2019-07: TLS security policy which\n supports only TLS version 1.2
\n \n - \n
\n Policy-Min-TLS-1-0-2023-10: TLS security policy which\n supports TLS version 1.0 to TLS version 1.3
\n \n - \n
\n Policy-Min-TLS-1-2-2023-10: TLS security policy which\n supports TLS version 1.2 to TLS version 1.3 with perfect forward secrecy cipher suites
\n \n
"
}
},
"CustomEndpointEnabled": {
@@ -6233,6 +6483,95 @@
"smithy.api#output": {}
}
},
+ "com.amazonaws.opensearch#GetDataSource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.opensearch#GetDataSourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.opensearch#GetDataSourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.opensearch#BaseException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#DependencyFailureException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#DisabledOperationException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#InternalException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "Describes the data source details.
",
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/2021-01-01/opensearch/domain/{DomainName}/dataSource/{Name}",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.opensearch#GetDataSourceRequest": {
+ "type": "structure",
+ "members": {
+ "DomainName": {
+ "target": "com.amazonaws.opensearch#DomainName",
+ "traits": {
+ "smithy.api#documentation": "The name of the domain.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.opensearch#DataSourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the data source.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Container for the parameters to the GetDataSource
\n operation.
",
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.opensearch#GetDataSourceResponse": {
+ "type": "structure",
+ "members": {
+ "DataSourceType": {
+ "target": "com.amazonaws.opensearch#DataSourceType",
+ "traits": {
+ "smithy.api#documentation": "The type of data source.
"
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.opensearch#DataSourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the data source.
"
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.opensearch#DataSourceDescription",
+ "traits": {
+ "smithy.api#documentation": "A description of the data source.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The result of a GetDataSource
operation.
",
+ "smithy.api#output": {}
+ }
+ },
"com.amazonaws.opensearch#GetDomainMaintenanceStatus": {
"type": "operation",
"input": {
@@ -7041,6 +7380,75 @@
"smithy.api#documentation": " The role of a given instance and all applicable limits. The role performed by a given OpenSearch instance can\n be one of the following:
\n "
}
},
+ "com.amazonaws.opensearch#ListDataSources": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.opensearch#ListDataSourcesRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.opensearch#ListDataSourcesResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.opensearch#BaseException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#DependencyFailureException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#DisabledOperationException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#InternalException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#ResourceNotFoundException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#ValidationException"
+ }
+ ],
+ "traits": {
+ "smithy.api#documentation": "A list of the data source details of the domain.
",
+ "smithy.api#http": {
+ "method": "GET",
+ "uri": "/2021-01-01/opensearch/domain/{DomainName}/dataSource",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.opensearch#ListDataSourcesRequest": {
+ "type": "structure",
+ "members": {
+ "DomainName": {
+ "target": "com.amazonaws.opensearch#DomainName",
+ "traits": {
+ "smithy.api#documentation": "The name of the domain.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Container for the parameters to the ListDataSources
\n operation.
",
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.opensearch#ListDataSourcesResponse": {
+ "type": "structure",
+ "members": {
+ "DataSources": {
+ "target": "com.amazonaws.opensearch#DataSourceList",
+ "traits": {
+ "smithy.api#documentation": "A list of the data sources.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The result of a ListDataSources
operation.
",
+ "smithy.api#output": {}
+ }
+ },
"com.amazonaws.opensearch#ListDomainMaintenances": {
"type": "operation",
"input": {
@@ -10132,6 +10540,20 @@
}
}
},
+ "com.amazonaws.opensearch#S3GlueDataCatalog": {
+ "type": "structure",
+ "members": {
+ "RoleArn": {
+ "target": "com.amazonaws.opensearch#RoleArn",
+ "traits": {
+ "smithy.api#documentation": "The role ARN for the AWS S3 Glue Data Catalog.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Information about the AWS S3 Glue Data Catalog.
"
+ }
+ },
"com.amazonaws.opensearch#S3Key": {
"type": "string",
"traits": {
@@ -11005,6 +11427,96 @@
"com.amazonaws.opensearch#UncompressedPluginSizeInBytes": {
"type": "long"
},
+ "com.amazonaws.opensearch#UpdateDataSource": {
+ "type": "operation",
+ "input": {
+ "target": "com.amazonaws.opensearch#UpdateDataSourceRequest"
+ },
+ "output": {
+ "target": "com.amazonaws.opensearch#UpdateDataSourceResponse"
+ },
+ "errors": [
+ {
+ "target": "com.amazonaws.opensearch#BaseException"
+ },
+ {
+ "target": "com.amazonaws.opensearch#DependencyFailureException"
+ },
+ {
+ "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 data source on the domain.
",
+ "smithy.api#http": {
+ "method": "PUT",
+ "uri": "/2021-01-01/opensearch/domain/{DomainName}/dataSource/{Name}",
+ "code": 200
+ }
+ }
+ },
+ "com.amazonaws.opensearch#UpdateDataSourceRequest": {
+ "type": "structure",
+ "members": {
+ "DomainName": {
+ "target": "com.amazonaws.opensearch#DomainName",
+ "traits": {
+ "smithy.api#documentation": "The name of the domain.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "Name": {
+ "target": "com.amazonaws.opensearch#DataSourceName",
+ "traits": {
+ "smithy.api#documentation": "The name of the data source.
",
+ "smithy.api#httpLabel": {},
+ "smithy.api#required": {}
+ }
+ },
+ "DataSourceType": {
+ "target": "com.amazonaws.opensearch#DataSourceType",
+ "traits": {
+ "smithy.api#documentation": "The type of data source.
",
+ "smithy.api#required": {}
+ }
+ },
+ "Description": {
+ "target": "com.amazonaws.opensearch#DataSourceDescription",
+ "traits": {
+ "smithy.api#documentation": "A description of the data source.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "Container for the parameters to the UpdateDataSource
\n operation.
",
+ "smithy.api#input": {}
+ }
+ },
+ "com.amazonaws.opensearch#UpdateDataSourceResponse": {
+ "type": "structure",
+ "members": {
+ "Message": {
+ "target": "com.amazonaws.opensearch#String",
+ "traits": {
+ "smithy.api#documentation": "A message associated with the data source.
"
+ }
+ }
+ },
+ "traits": {
+ "smithy.api#documentation": "The result of an UpdateDataSource
operation.
",
+ "smithy.api#output": {}
+ }
+ },
"com.amazonaws.opensearch#UpdateDomainConfig": {
"type": "operation",
"input": {