diff --git a/clients/client-amp/Amp.ts b/clients/client-amp/Amp.ts
index 491a0e82c1c5..3d92e95ceaca 100644
--- a/clients/client-amp/Amp.ts
+++ b/clients/client-amp/Amp.ts
@@ -14,11 +14,22 @@ import {
DescribeWorkspaceCommandInput,
DescribeWorkspaceCommandOutput,
} from "./commands/DescribeWorkspaceCommand";
+import {
+ ListTagsForResourceCommand,
+ ListTagsForResourceCommandInput,
+ ListTagsForResourceCommandOutput,
+} from "./commands/ListTagsForResourceCommand";
import {
ListWorkspacesCommand,
ListWorkspacesCommandInput,
ListWorkspacesCommandOutput,
} from "./commands/ListWorkspacesCommand";
+import { TagResourceCommand, TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand";
+import {
+ UntagResourceCommand,
+ UntagResourceCommandInput,
+ UntagResourceCommandOutput,
+} from "./commands/UntagResourceCommand";
import {
UpdateWorkspaceAliasCommand,
UpdateWorkspaceAliasCommandInput,
@@ -126,6 +137,38 @@ export class Amp extends AmpClient {
}
}
+ /**
+ * Lists the tags you have assigned to the resource.
+ */
+ public listTagsForResource(
+ args: ListTagsForResourceCommandInput,
+ options?: __HttpHandlerOptions
+ ): Promise The Amazon Chime SDK Identity APIs in this section allow software developers to create
* and manage unique instances of their messaging applications. These APIs provide the
* overarching framework for creating and sending messages. For more information about the
- * identity APIs, refer to .
The Amazon Chime SDK Identity APIs in this section allow software developers to create * and manage unique instances of their messaging applications. These APIs provide the * overarching framework for creating and sending messages. For more information about the - * identity APIs, refer to .
+ * identity APIs, refer to Amazon Chime SDK identity. */ export class ChimeSDKIdentityClient extends __Client< __HttpHandlerOptions, diff --git a/clients/client-chime-sdk-identity/README.md b/clients/client-chime-sdk-identity/README.md index 577321635ce6..0092893e56b8 100644 --- a/clients/client-chime-sdk-identity/README.md +++ b/clients/client-chime-sdk-identity/README.md @@ -10,7 +10,7 @@ AWS SDK for JavaScript ChimeSDKIdentity Client for Node.js, Browser and React NaThe Amazon Chime SDK Identity APIs in this section allow software developers to create and manage unique instances of their messaging applications. These APIs provide the overarching framework for creating and sending messages. For more information about the -identity APIs, refer to .
+identity APIs, refer to Amazon Chime SDK identity. ## Installing diff --git a/clients/client-chime-sdk-messaging/ChimeSDKMessaging.ts b/clients/client-chime-sdk-messaging/ChimeSDKMessaging.ts index 950aa0b3abe2..f2b449b61ac8 100644 --- a/clients/client-chime-sdk-messaging/ChimeSDKMessaging.ts +++ b/clients/client-chime-sdk-messaging/ChimeSDKMessaging.ts @@ -155,7 +155,8 @@ import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types"; *The Amazon Chime SDK Messaging APIs in this section allow software developers to send * and receive messages in custom messaging applications. These APIs depend on the frameworks * provided by the Amazon Chime SDK Identity APIs. For more information about the messaging - * APIs, see .
+ * APIs, see Amazon Chime SDK messaging + * */ export class ChimeSDKMessaging extends ChimeSDKMessagingClient { /** diff --git a/clients/client-chime-sdk-messaging/ChimeSDKMessagingClient.ts b/clients/client-chime-sdk-messaging/ChimeSDKMessagingClient.ts index 5e91ed4b5e5d..46d5e5115c3f 100644 --- a/clients/client-chime-sdk-messaging/ChimeSDKMessagingClient.ts +++ b/clients/client-chime-sdk-messaging/ChimeSDKMessagingClient.ts @@ -343,7 +343,8 @@ export interface ChimeSDKMessagingClientResolvedConfig extends ChimeSDKMessaging *The Amazon Chime SDK Messaging APIs in this section allow software developers to send * and receive messages in custom messaging applications. These APIs depend on the frameworks * provided by the Amazon Chime SDK Identity APIs. For more information about the messaging - * APIs, see .
+ * APIs, see Amazon Chime SDK messaging + * */ export class ChimeSDKMessagingClient extends __Client< __HttpHandlerOptions, diff --git a/clients/client-chime-sdk-messaging/README.md b/clients/client-chime-sdk-messaging/README.md index c7d931a0845c..5cba951a5408 100644 --- a/clients/client-chime-sdk-messaging/README.md +++ b/clients/client-chime-sdk-messaging/README.md @@ -10,7 +10,8 @@ AWS SDK for JavaScript ChimeSDKMessaging Client for Node.js, Browser and React NThe Amazon Chime SDK Messaging APIs in this section allow software developers to send and receive messages in custom messaging applications. These APIs depend on the frameworks provided by the Amazon Chime SDK Identity APIs. For more information about the messaging -APIs, see .
+APIs, see Amazon Chime SDK messaging + ## Installing diff --git a/clients/client-cloudformation/CloudFormation.ts b/clients/client-cloudformation/CloudFormation.ts index 1c72531e2587..19fb8097e44a 100644 --- a/clients/client-cloudformation/CloudFormation.ts +++ b/clients/client-cloudformation/CloudFormation.ts @@ -1081,10 +1081,9 @@ export class CloudFormation extends CloudFormationClient { * specified stack. This includes actual and expected configuration values for resources where * CloudFormation detects configuration drift. *For a given stack, there will be one StackResourceDrift
for each stack
- * resource that has been checked for drift. Resources that have not yet been checked for
- * drift are not included. Resources that do not currently support drift detection are not
- * checked, and so not included. For a list of resources that support drift detection, see
- * Resources that Support Drift Detection.
Use DetectStackResourceDrift to detect drift on individual * resources, or DetectStackDrift to detect drift on all supported resources * for a given stack.
@@ -1173,7 +1172,7 @@ export class CloudFormation extends CloudFormationClient { *Returns the description for the specified stack; if no stack name was specified, then * it returns the description for all the stacks created.
*If the stack does not exist, an AmazonCloudFormationException
is
+ *
If the stack does not exist, an ValidationError
is
* returned.
For a given stack, there will be one StackResourceDrift
for each stack
- * resource that has been checked for drift. Resources that have not yet been checked for
- * drift are not included. Resources that do not currently support drift detection are not
- * checked, and so not included. For a list of resources that support drift detection, see
- * Resources that Support Drift Detection.
Use DetectStackResourceDrift to detect drift on individual * resources, or DetectStackDrift to detect drift on all supported resources * for a given stack.
diff --git a/clients/client-cloudformation/commands/DescribeStacksCommand.ts b/clients/client-cloudformation/commands/DescribeStacksCommand.ts index 6022df9a5514..db023920e4d1 100644 --- a/clients/client-cloudformation/commands/DescribeStacksCommand.ts +++ b/clients/client-cloudformation/commands/DescribeStacksCommand.ts @@ -24,7 +24,7 @@ export interface DescribeStacksCommandOutput extends DescribeStacksOutput, __Met *Returns the description for the specified stack; if no stack name was specified, then * it returns the description for all the stacks created.
*If the stack does not exist, an AmazonCloudFormationException
is
+ *
If the stack does not exist, an ValidationError
is
* returned.
Structure that contains the results of the account gate function which - * CloudFormation invokes, if present, before proceeding with a stack set operation in an + *
Structure that contains the results of the account gate function which CloudFormation invokes, if present, before proceeding with a stack set operation in an * account and Region.
- *For each account and Region, CloudFormation lets you specify a Lamdba function
- * that encapsulates any requirements that must be met before CloudFormation can proceed with
- * a stack set operation in that account and Region. CloudFormation invokes the function each
- * time a stack set operation is requested for that account and Region; if the function
- * returns FAILED
, CloudFormation cancels the operation in that account and
- * Region, and sets the stack set operation result status for that account and Region to
- * FAILED
.
For each account and Region, CloudFormation lets you specify a Lambda
+ * function that encapsulates any requirements that must be met before CloudFormation
+ * can proceed with a stack set operation in that account and Region. CloudFormation
+ * invokes the function each time a stack set operation is requested for that account and
+ * Region; if the function returns FAILED
, CloudFormation cancels the
+ * operation in that account and Region, and sets the stack set operation result status for
+ * that account and Region to FAILED
.
For more information, see Configuring a * target account gate.
*/ @@ -6372,9 +6371,9 @@ export interface GetTemplateSummaryOutput { /** *The capabilities found within the template. If your template contains IAM resources,
- * you must specify the CAPABILITY_IAM or CAPABILITY_NAMED_IAM value for this parameter when
+ * you must specify the CAPABILITY_IAM
or CAPABILITY_NAMED_IAM
value for this parameter when
* you use the CreateStack or UpdateStack actions with
- * your template; otherwise, those actions return an InsufficientCapabilities error.
InsufficientCapabilities
error.
* For more information, see Acknowledging IAM Resources in CloudFormation Templates.
*/ Capabilities?: (Capability | string)[]; diff --git a/clients/client-codeguru-reviewer/CodeGuruReviewer.ts b/clients/client-codeguru-reviewer/CodeGuruReviewer.ts index d13c45b54d91..8ab0ee3ce5aa 100644 --- a/clients/client-codeguru-reviewer/CodeGuruReviewer.ts +++ b/clients/client-codeguru-reviewer/CodeGuruReviewer.ts @@ -82,14 +82,14 @@ import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types"; * To improve the security of your CodeGuru Reviewer API calls, you can establish a private connection between your VPC and CodeGuru Reviewer by * creating an interface VPC endpoint. For more information, see * CodeGuru Reviewer and interface - * VPC endpoints (AWS PrivateLink) in the Amazon CodeGuru Reviewer User Guide. + * VPC endpoints (Amazon Web Services PrivateLink) in the Amazon CodeGuru Reviewer User Guide. * */ export class CodeGuruReviewer extends CodeGuruReviewerClient { /** *- * Use to associate an AWS CodeCommit repository or a repostory managed by - * AWS CodeStar Connections with Amazon CodeGuru Reviewer. When you associate a + * Use to associate an Amazon Web Services CodeCommit repository or a repostory managed by + * Amazon Web Services CodeStar Connections with Amazon CodeGuru Reviewer. When you associate a * repository, CodeGuru Reviewer reviews source code changes in the repository's pull requests and provides * automatic recommendations. You can view recommendations using the CodeGuru Reviewer console. For more information, see * Recommendations in @@ -97,16 +97,16 @@ export class CodeGuruReviewer extends CodeGuruReviewerClient { *
* *If you associate a CodeCommit or S3 repository, it must be in the same - * AWS Region and AWS account where its CodeGuru Reviewer code reviews are configured.
+ * Amazon Web Services Region and Amazon Web Services account where its CodeGuru Reviewer code reviews are configured. * - *Bitbucket and GitHub Enterprise Server repositories are managed by AWS CodeStar + *
Bitbucket and GitHub Enterprise Server repositories are managed by Amazon Web Services CodeStar * Connections to connect to CodeGuru Reviewer. For more information, see Associate a repository in * the Amazon CodeGuru Reviewer User Guide. *
* *- * You cannot use the CodeGuru Reviewer SDK or the AWS CLI to associate a GitHub repository with Amazon CodeGuru Reviewer. To associate + * You cannot use the CodeGuru Reviewer SDK or the Amazon Web Services CLI to associate a GitHub repository with Amazon CodeGuru Reviewer. To associate * a GitHub repository, use the console. For more information, see * Getting * started with CodeGuru Reviewer in the CodeGuru Reviewer User Guide. diff --git a/clients/client-codeguru-reviewer/CodeGuruReviewerClient.ts b/clients/client-codeguru-reviewer/CodeGuruReviewerClient.ts index eefcd71a71e4..225b3e136a83 100644 --- a/clients/client-codeguru-reviewer/CodeGuruReviewerClient.ts +++ b/clients/client-codeguru-reviewer/CodeGuruReviewerClient.ts @@ -276,7 +276,7 @@ export interface CodeGuruReviewerClientResolvedConfig extends CodeGuruReviewerCl * To improve the security of your CodeGuru Reviewer API calls, you can establish a private connection between your VPC and CodeGuru Reviewer by * creating an interface VPC endpoint. For more information, see * CodeGuru Reviewer and interface - * VPC endpoints (AWS PrivateLink) in the Amazon CodeGuru Reviewer User Guide. + * VPC endpoints (Amazon Web Services PrivateLink) in the Amazon CodeGuru Reviewer User Guide. *
*/ export class CodeGuruReviewerClient extends __Client< diff --git a/clients/client-codeguru-reviewer/README.md b/clients/client-codeguru-reviewer/README.md index 5cf72c2ca3cb..0d1acec14347 100644 --- a/clients/client-codeguru-reviewer/README.md +++ b/clients/client-codeguru-reviewer/README.md @@ -21,7 +21,7 @@ improves the overall quality and maintainability of your code base during the co To improve the security of your CodeGuru Reviewer API calls, you can establish a private connection between your VPC and CodeGuru Reviewer by creating an interface VPC endpoint. For more information, see CodeGuru Reviewer and interface -VPC endpoints (AWS PrivateLink) in the Amazon CodeGuru Reviewer User Guide. +VPC endpoints (Amazon Web Services PrivateLink) in the Amazon CodeGuru Reviewer User Guide. ## Installing diff --git a/clients/client-codeguru-reviewer/commands/AssociateRepositoryCommand.ts b/clients/client-codeguru-reviewer/commands/AssociateRepositoryCommand.ts index c3f2ee56a8d9..72472aeef949 100644 --- a/clients/client-codeguru-reviewer/commands/AssociateRepositoryCommand.ts +++ b/clients/client-codeguru-reviewer/commands/AssociateRepositoryCommand.ts @@ -22,8 +22,8 @@ export interface AssociateRepositoryCommandOutput extends AssociateRepositoryRes /** *- * Use to associate an AWS CodeCommit repository or a repostory managed by - * AWS CodeStar Connections with Amazon CodeGuru Reviewer. When you associate a + * Use to associate an Amazon Web Services CodeCommit repository or a repostory managed by + * Amazon Web Services CodeStar Connections with Amazon CodeGuru Reviewer. When you associate a * repository, CodeGuru Reviewer reviews source code changes in the repository's pull requests and provides * automatic recommendations. You can view recommendations using the CodeGuru Reviewer console. For more information, see * Recommendations in @@ -31,16 +31,16 @@ export interface AssociateRepositoryCommandOutput extends AssociateRepositoryRes *
* *If you associate a CodeCommit or S3 repository, it must be in the same - * AWS Region and AWS account where its CodeGuru Reviewer code reviews are configured.
+ * Amazon Web Services Region and Amazon Web Services account where its CodeGuru Reviewer code reviews are configured. * - *Bitbucket and GitHub Enterprise Server repositories are managed by AWS CodeStar + *
Bitbucket and GitHub Enterprise Server repositories are managed by Amazon Web Services CodeStar * Connections to connect to CodeGuru Reviewer. For more information, see Associate a repository in * the Amazon CodeGuru Reviewer User Guide. *
* *- * You cannot use the CodeGuru Reviewer SDK or the AWS CLI to associate a GitHub repository with Amazon CodeGuru Reviewer. To associate + * You cannot use the CodeGuru Reviewer SDK or the Amazon Web Services CLI to associate a GitHub repository with Amazon CodeGuru Reviewer. To associate * a GitHub repository, use the console. For more information, see * Getting * started with CodeGuru Reviewer in the CodeGuru Reviewer User Guide. diff --git a/clients/client-codeguru-reviewer/models/models_0.ts b/clients/client-codeguru-reviewer/models/models_0.ts index 891768d56d81..3a415045318f 100644 --- a/clients/client-codeguru-reviewer/models/models_0.ts +++ b/clients/client-codeguru-reviewer/models/models_0.ts @@ -32,23 +32,23 @@ export enum EncryptionOption { *
An object that contains:
*The encryption option for a repository association. It is either owned by AWS + *
The encryption option for a repository association. It is either owned by Amazon Web Services
* Key Management Service (KMS) (AWS_OWNED_CMK
) or customer managed (CUSTOMER_MANAGED_CMK
).
The ID of the AWS KMS key that + *
The ID of the Amazon Web Services KMS key that * is associated with a respository association.
*The ID of the AWS KMS key that is associated with a respository association.
+ *The ID of the Amazon Web Services KMS key that is associated with a respository association.
*/ KMSKeyId?: string; /** - *The encryption option for a repository association. It is either owned by AWS + *
The encryption option for a repository association. It is either owned by Amazon Web Services
* Key Management Service (KMS) (AWS_OWNED_CMK
) or customer managed (CUSTOMER_MANAGED_CMK
).
- * The Amazon Resource Name (ARN) of an AWS CodeStar Connections connection. Its format is
+ * The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar Connections connection. Its format is
* arn:aws:codestar-connections:region-id:aws-account_id:connection/connection-id
. For more information, see
*
* Connection
* in
- * the AWS CodeStar Connections API Reference.
+ * the Amazon Web Services CodeStar Connections API Reference.
*
* The owner of the repository. For a GitHub, GitHub Enterprise, or Bitbucket repository, * this is the username for the account that owns the repository. For an S3 repository, - * this can be the username or AWS account ID. + * this can be the username or Amazon Web Services account ID. *
*/ Owner: string | undefined; @@ -108,14 +108,14 @@ export namespace ThirdPartySourceRepository { } /** - *Information about an AWS CodeCommit repository. The CodeCommit repository must be in the same - * AWS Region and AWS account where its CodeGuru Reviewer code reviews are configured.
+ *Information about an Amazon Web Services CodeCommit repository. The CodeCommit repository must be in the same + * Amazon Web Services Region and Amazon Web Services account where its CodeGuru Reviewer code reviews are configured.
*/ export interface CodeCommitRepository { /** - *The name of the AWS CodeCommit repository. For more information, see + *
The name of the Amazon Web Services CodeCommit repository. For more information, see * repositoryName - * in the AWS CodeCommit API Reference.
+ * in the Amazon Web Services CodeCommit API Reference. */ Name: string | undefined; } @@ -158,14 +158,14 @@ export namespace S3Repository { /** *
- * Information about an associated AWS CodeCommit repository or an associated repository that is managed
- * by AWS CodeStar Connections (for example, Bitbucket). This Repository
object
+ * Information about an associated Amazon Web Services CodeCommit repository or an associated repository that is managed
+ * by Amazon Web Services CodeStar Connections (for example, Bitbucket). This Repository
object
* is not used if your source code is in an associated GitHub repository.
*
Information about an AWS CodeCommit repository.
+ *Information about an Amazon Web Services CodeCommit repository.
*/ CodeCommit?: CodeCommitRepository; @@ -236,11 +236,11 @@ export interface AssociateRepositoryRequest { *A KMSKeyDetails
object that contains:
The encryption option for this repository association. It is either owned by AWS + *
The encryption option for this repository association. It is either owned by Amazon Web Services
* Key Management Service (KMS) (AWS_OWNED_CMK
) or customer managed (CUSTOMER_MANAGED_CMK
).
The ID of the AWS KMS key that + *
The ID of the Amazon Web Services KMS key that * is associated with this respository association.
*
- * The Amazon Resource Name (ARN) of an AWS CodeStar Connections connection. Its format is
+ * The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar Connections connection. Its format is
* arn:aws:codestar-connections:region-id:aws-account_id:connection/connection-id
. For more information, see
*
* Connection
* in
- * the AWS CodeStar Connections API Reference.
+ * the Amazon Web Services CodeStar Connections API Reference.
*
The owner of the repository. For an AWS CodeCommit repository, this is the AWS account ID of the + *
The owner of the repository. For an Amazon Web Services CodeCommit repository, this is the Amazon Web Services account ID of the * account that owns the repository. For a GitHub, GitHub Enterprise Server, or Bitbucket repository, this is the username for the account that owns the repository. - * For an S3 repository, it can be the username or AWS account ID.
+ * For an S3 repository, it can be the username or Amazon Web Services account ID. */ Owner?: string; @@ -465,11 +465,11 @@ export interface RepositoryAssociation { *A KMSKeyDetails
object that contains:
The encryption option for this repository association. It is either owned by AWS + *
The encryption option for this repository association. It is either owned by Amazon Web Services
* Key Management Service (KMS) (AWS_OWNED_CMK
) or customer managed (CUSTOMER_MANAGED_CMK
).
The ID of the AWS KMS key that + *
The ID of the Amazon Web Services KMS key that * is associated with this respository association.
*- * The name of the code review. The name of each code review in your AWS account must be unique. + * The name of the code review. The name of each code review in your Amazon Web Services account must be unique. *
*/ Name: string | undefined; @@ -1010,13 +1010,8 @@ export namespace CreateCodeReviewRequest { export interface Metrics { /** *
- * Lines of code metered in the code review. For the initial code review pull request and all subsequent revisions,
- * this includes all lines of code in the files added to the pull request. In subsequent revisions, for files that already
- * existed in the pull request, this includes only the changed lines of code. In both cases, this does not include non-code lines such as comments
- * and import statements. For example, if you submit a pull request containing 5 files, each with 500 lines of code, and in
- * a subsequent revision you added a new file with 200 lines of code, and also modified a total of 25 lines across the initial 5 files,
- * MeteredLinesOfCodeCount
includes the first 5 files (5 * 500 = 2,500 lines), the new file (200 lines) and the 25 changed lines of
- * code for a total of 2,725 lines of code.
+ * MeteredLinesOfCode
is the number of lines of code in the repository where the code review happened.
+ * This does not include non-code lines such as comments and blank lines.
*
The owner of the repository. For an AWS CodeCommit repository, this is the AWS account ID of the + *
The owner of the repository. For an Amazon Web Services CodeCommit repository, this is the Amazon Web Services account ID of the * account that owns the repository. For a GitHub, GitHub Enterprise Server, or Bitbucket repository, this is the username for the account that owns the repository. - * For an S3 repository, it can be the username or AWS account ID.
+ * For an S3 repository, it can be the username or Amazon Web Services account ID. */ Owner?: string; @@ -1294,9 +1289,9 @@ export interface DescribeRecommendationFeedbackRequest { * Optional parameter to describe the feedback for a given user. If this is not supplied, it defaults to the user making the request. * *
- * The UserId
is an IAM principal that can be specified as an AWS account ID or an Amazon Resource Name (ARN). For
+ * The UserId
is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For
* more information, see
- * Specifying a Principal in the AWS Identity and Access Management User Guide.
+ * Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.
*
- * The UserId
is an IAM principal that can be specified as an AWS account ID or an Amazon Resource Name (ARN). For
+ * The UserId
is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For
* more information, see
- * Specifying a Principal in the AWS Identity and Access Management User Guide.
+ * Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.
*
The owner of the repository. For an AWS CodeCommit repository, this is the AWS account ID of the + *
The owner of the repository. For an Amazon Web Services CodeCommit repository, this is the Amazon Web Services account ID of the * account that owns the repository. For a GitHub, GitHub Enterprise Server, or Bitbucket repository, this is the username for the account that owns the repository. - * For an S3 repository, it can be the username or AWS account ID.
+ * For an S3 repository, it can be the username or Amazon Web Services account ID. */ Owner?: string; @@ -1826,12 +1821,12 @@ export interface ListRecommendationFeedbackRequest { /** *- * An AWS user's account ID or Amazon Resource Name (ARN). Use this ID to query the recommendation feedback for a code review from that user. + * An Amazon Web Services user's account ID or Amazon Resource Name (ARN). Use this ID to query the recommendation feedback for a code review from that user. *
*
- * The UserId
is an IAM principal that can be specified as an AWS account ID or an Amazon Resource Name (ARN). For
+ * The UserId
is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For
* more information, see
- * Specifying a Principal in the AWS Identity and Access Management User Guide.
+ * Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.
*
- * The UserId
is an IAM principal that can be specified as an AWS account ID or an Amazon Resource Name (ARN). For
+ * The UserId
is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For
* more information, see
- * Specifying a Principal in the AWS Identity and Access Management User Guide.
+ * Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.
*
Metadata about a rule. Rule metadata includes an ID, a name, a list of tags, and a + * short and long description. CodeGuru Reviewer uses rules to analyze code. A rule's recommendation is + * included in analysis results if code is detected that violates the rule.
+ */ +export interface RuleMetadata { + /** + *The ID of the rule.
+ */ + RuleId?: string; + + /** + *The name of the rule.
+ */ + RuleName?: string; + + /** + *A short description of the rule.
+ */ + ShortDescription?: string; + + /** + *A long description of the rule.
+ */ + LongDescription?: string; + + /** + *Tags that are associated with the rule.
+ */ + RuleTags?: string[]; +} + +export namespace RuleMetadata { + /** + * @internal + */ + export const filterSensitiveLog = (obj: RuleMetadata): any => ({ + ...obj, + }); +} + +export enum Severity { + CRITICAL = "Critical", + HIGH = "High", + INFO = "Info", + LOW = "Low", + MEDIUM = "Medium", +} + /** ** Information about recommendations. @@ -2008,6 +2053,18 @@ export interface RecommendationSummary { *
The type of a recommendation.
*/ RecommendationCategory?: RecommendationCategory | string; + + /** + *Metadata about a rule. Rule metadata includes an ID, a name, a list of tags, and a + * short and long description. CodeGuru Reviewer uses rules to analyze code. A rule's recommendation is + * included in analysis results if code is detected that violates the rule.
+ */ + RuleMetadata?: RuleMetadata; + + /** + *The severity of the issue in the code that generated this recommendation.
+ */ + Severity?: Severity | string; } export namespace RecommendationSummary { @@ -2116,7 +2173,7 @@ export interface ListRepositoryAssociationsRequest { /** *List of owners to use as a filter. - * For AWS CodeCommit, it is the name of the CodeCommit account that was + * For Amazon Web Services CodeCommit, it is the name of the CodeCommit account that was * used to associate the repository. For other repository source providers, such as Bitbucket and GitHub Enterprise Server, this is name of the account * that was used to associate the repository.
*/ @@ -2181,12 +2238,12 @@ export interface RepositoryAssociationSummary { /** *
- * The Amazon Resource Name (ARN) of an AWS CodeStar Connections connection. Its format is
+ * The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar Connections connection. Its format is
* arn:aws:codestar-connections:region-id:aws-account_id:connection/connection-id
. For more information, see
*
* Connection
* in
- * the AWS CodeStar Connections API Reference.
+ * the Amazon Web Services CodeStar Connections API Reference.
*
The owner of the repository. For an AWS CodeCommit repository, this is the AWS account ID of the + *
The owner of the repository. For an Amazon Web Services CodeCommit repository, this is the Amazon Web Services account ID of the * account that owns the repository. For a GitHub, GitHub Enterprise Server, or Bitbucket repository, this is the username for the account that owns the repository. - * For an S3 repository, it can be the username or AWS account ID.
+ * For an S3 repository, it can be the username or Amazon Web Services account ID. */ Owner?: string; diff --git a/clients/client-codeguru-reviewer/protocols/Aws_restJson1.ts b/clients/client-codeguru-reviewer/protocols/Aws_restJson1.ts index 9f31ba138c0f..9c7ca8c9ff67 100644 --- a/clients/client-codeguru-reviewer/protocols/Aws_restJson1.ts +++ b/clients/client-codeguru-reviewer/protocols/Aws_restJson1.ts @@ -67,6 +67,7 @@ import { RepositoryHeadSourceCodeType, RequestMetadata, ResourceNotFoundException, + RuleMetadata, S3BucketRepository, S3Repository, S3RepositoryDetails, @@ -2283,6 +2284,11 @@ const deserializeAws_restJson1RecommendationSummary = (output: any, context: __S FilePath: __expectString(output.FilePath), RecommendationCategory: __expectString(output.RecommendationCategory), RecommendationId: __expectString(output.RecommendationId), + RuleMetadata: + output.RuleMetadata !== undefined && output.RuleMetadata !== null + ? deserializeAws_restJson1RuleMetadata(output.RuleMetadata, context) + : undefined, + Severity: __expectString(output.Severity), StartLine: __expectInt32(output.StartLine), } as any; }; @@ -2370,6 +2376,30 @@ const deserializeAws_restJson1RequestMetadata = (output: any, context: __SerdeCo } as any; }; +const deserializeAws_restJson1RuleMetadata = (output: any, context: __SerdeContext): RuleMetadata => { + return { + LongDescription: __expectString(output.LongDescription), + RuleId: __expectString(output.RuleId), + RuleName: __expectString(output.RuleName), + RuleTags: + output.RuleTags !== undefined && output.RuleTags !== null + ? deserializeAws_restJson1RuleTags(output.RuleTags, context) + : undefined, + ShortDescription: __expectString(output.ShortDescription), + } as any; +}; + +const deserializeAws_restJson1RuleTags = (output: any, context: __SerdeContext): string[] => { + return (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + if (entry === null) { + return null as any; + } + return __expectString(entry) as any; + }); +}; + const deserializeAws_restJson1S3BucketRepository = (output: any, context: __SerdeContext): S3BucketRepository => { return { Details: diff --git a/clients/client-ecr/ECR.ts b/clients/client-ecr/ECR.ts index 4bf0ea48f104..c84aef2c8dcf 100644 --- a/clients/client-ecr/ECR.ts +++ b/clients/client-ecr/ECR.ts @@ -167,6 +167,8 @@ import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types"; * Initiative (OCI) images. Amazon ECR supports private repositories with resource-based * permissions using IAM so that specific users or Amazon EC2 instances can access * repositories and images. + *Amazon ECR has service endpoints in each supported Region. For more information, see Amazon ECR endpoints in the + * Amazon Web Services General Reference.
*/ export class ECR extends ECRClient { /** @@ -321,7 +323,7 @@ export class ECR extends ECRClient { } /** - *Creates a repository. For more information, see Amazon ECR Repositories in the + *
Creates a repository. For more information, see Amazon ECR repositories in the * Amazon Elastic Container Registry User Guide.
*/ public createRepository( @@ -625,9 +627,9 @@ export class ECR extends ECRClient { * principal has access to. The authorization token is valid for 12 hours. *The authorizationToken
returned is a base64 encoded string that can be
* decoded and used in a docker login
command to authenticate to a registry.
- * The AWS CLI offers an get-login-password
command that simplifies the login
+ * The CLI offers an get-login-password
command that simplifies the login
* process. For more information, see Registry
- * Authentication in the Amazon Elastic Container Registry User Guide.
Retrieves the pre-signed Amazon S3 download URL corresponding to an image layer. You - * can only get URLs for image layers that are referenced in an image.
+ *Retrieves the pre-signed Amazon S3 download URL corresponding to an image layer. You can + * only get URLs for image layers that are referenced in an image.
*When an image is pulled, the GetDownloadUrlForLayer API is called once per image layer * that is not already cached.
*Updates the image tag mutability settings for the specified repository. For more - * information, see Image Tag - * Mutability in the Amazon Elastic Container Registry User Guide.
+ * information, see Image tag + * mutability in the Amazon Elastic Container Registry User Guide. */ public putImageTagMutability( args: PutImageTagMutabilityCommandInput, @@ -1031,8 +1033,8 @@ export class ECR extends ECRClient { /** *Creates or updates the lifecycle policy for the specified repository. For more - * information, see Lifecycle Policy - * Template.
+ * information, see Lifecycle policy + * template. */ public putLifecyclePolicy( args: PutLifecyclePolicyCommandInput, @@ -1065,7 +1067,7 @@ export class ECR extends ECRClient { /** *Creates or updates the permissions policy for your registry.
- *A registry policy is used to specify permissions for another AWS account and is used + *
A registry policy is used to specify permissions for another Amazon Web Services account and is used * when configuring cross-account replication. For more information, see Registry permissions in the Amazon Elastic Container Registry User Guide.
*/ public putRegistryPolicy( @@ -1102,7 +1104,7 @@ export class ECR extends ECRClient { * replication configuration for a repository can be retrieved with the DescribeRegistry API action. The first time the * PutReplicationConfiguration API is called, a service-linked IAM role is created in * your account for the replication process. For more information, see Using - * Service-Linked Roles for Amazon ECR in the + * service-linked roles for Amazon ECR in the * Amazon Elastic Container Registry User Guide. *When configuring cross-account replication, the destination account must grant the @@ -1142,7 +1144,7 @@ export class ECR extends ECRClient { /** *
Applies a repository policy to the specified repository to control access permissions. * For more information, see Amazon ECR Repository - * Policies in the Amazon Elastic Container Registry User Guide.
+ * policies in the Amazon Elastic Container Registry User Guide. */ public setRepositoryPolicy( args: SetRepositoryPolicyCommandInput, @@ -1174,9 +1176,9 @@ export class ECR extends ECRClient { } /** - *Starts an image vulnerability scan. An image scan can only be started once per day on - * an individual image. This limit includes if an image was scanned on initial push. For - * more information, see Image Scanning in the + *
Starts an image vulnerability scan. An image scan can only be started once per 24 + * hours on an individual image. This limit includes if an image was scanned on initial + * push. For more information, see Image scanning in the * Amazon Elastic Container Registry User Guide.
*/ public startImageScan( diff --git a/clients/client-ecr/ECRClient.ts b/clients/client-ecr/ECRClient.ts index 0e513aea9e7f..b968c9bd4811 100644 --- a/clients/client-ecr/ECRClient.ts +++ b/clients/client-ecr/ECRClient.ts @@ -356,6 +356,8 @@ export interface ECRClientResolvedConfig extends ECRClientResolvedConfigType {} * Initiative (OCI) images. Amazon ECR supports private repositories with resource-based * permissions using IAM so that specific users or Amazon EC2 instances can access * repositories and images. + *Amazon ECR has service endpoints in each supported Region. For more information, see Amazon ECR endpoints in the + * Amazon Web Services General Reference.
*/ export class ECRClient extends __Client< __HttpHandlerOptions, diff --git a/clients/client-ecr/README.md b/clients/client-ecr/README.md index 7b0ea865cf80..63902adeabea 100644 --- a/clients/client-ecr/README.md +++ b/clients/client-ecr/README.md @@ -15,6 +15,8 @@ provides a secure, scalable, and reliable registry for your Docker or Open Conta Initiative (OCI) images. Amazon ECR supports private repositories with resource-based permissions using IAM so that specific users or Amazon EC2 instances can access repositories and images. +Amazon ECR has service endpoints in each supported Region. For more information, see Amazon ECR endpoints in the +Amazon Web Services General Reference.
## Installing diff --git a/clients/client-ecr/commands/CreateRepositoryCommand.ts b/clients/client-ecr/commands/CreateRepositoryCommand.ts index 8aa297c5860b..c6405411346d 100644 --- a/clients/client-ecr/commands/CreateRepositoryCommand.ts +++ b/clients/client-ecr/commands/CreateRepositoryCommand.ts @@ -21,7 +21,7 @@ export interface CreateRepositoryCommandInput extends CreateRepositoryRequest {} export interface CreateRepositoryCommandOutput extends CreateRepositoryResponse, __MetadataBearer {} /** - *Creates a repository. For more information, see Amazon ECR Repositories in the + *
Creates a repository. For more information, see Amazon ECR repositories in the * Amazon Elastic Container Registry User Guide.
* @example * Use a bare-bones client and the command you need to make an API call. diff --git a/clients/client-ecr/commands/GetAuthorizationTokenCommand.ts b/clients/client-ecr/commands/GetAuthorizationTokenCommand.ts index 65a22326013c..d4f654aa943b 100644 --- a/clients/client-ecr/commands/GetAuthorizationTokenCommand.ts +++ b/clients/client-ecr/commands/GetAuthorizationTokenCommand.ts @@ -26,9 +26,9 @@ export interface GetAuthorizationTokenCommandOutput extends GetAuthorizationToke * principal has access to. The authorization token is valid for 12 hours. *The authorizationToken
returned is a base64 encoded string that can be
* decoded and used in a docker login
command to authenticate to a registry.
- * The AWS CLI offers an get-login-password
command that simplifies the login
+ * The CLI offers an get-login-password
command that simplifies the login
* process. For more information, see Registry
- * Authentication in the Amazon Elastic Container Registry User Guide.
Retrieves the pre-signed Amazon S3 download URL corresponding to an image layer. You - * can only get URLs for image layers that are referenced in an image.
+ *Retrieves the pre-signed Amazon S3 download URL corresponding to an image layer. You can + * only get URLs for image layers that are referenced in an image.
*When an image is pulled, the GetDownloadUrlForLayer API is called once per image layer * that is not already cached.
*Updates the image tag mutability settings for the specified repository. For more - * information, see Image Tag - * Mutability in the Amazon Elastic Container Registry User Guide.
+ * information, see Image tag + * mutability in the Amazon Elastic Container Registry User Guide. * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-ecr/commands/PutLifecyclePolicyCommand.ts b/clients/client-ecr/commands/PutLifecyclePolicyCommand.ts index e3a6d0598d98..0d3bb45567b1 100644 --- a/clients/client-ecr/commands/PutLifecyclePolicyCommand.ts +++ b/clients/client-ecr/commands/PutLifecyclePolicyCommand.ts @@ -22,8 +22,8 @@ export interface PutLifecyclePolicyCommandOutput extends PutLifecyclePolicyRespo /** *Creates or updates the lifecycle policy for the specified repository. For more - * information, see Lifecycle Policy - * Template.
+ * information, see Lifecycle policy + * template. * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-ecr/commands/PutRegistryPolicyCommand.ts b/clients/client-ecr/commands/PutRegistryPolicyCommand.ts index 1a466a80e6cd..039d5ed3bd75 100644 --- a/clients/client-ecr/commands/PutRegistryPolicyCommand.ts +++ b/clients/client-ecr/commands/PutRegistryPolicyCommand.ts @@ -22,7 +22,7 @@ export interface PutRegistryPolicyCommandOutput extends PutRegistryPolicyRespons /** *Creates or updates the permissions policy for your registry.
- *A registry policy is used to specify permissions for another AWS account and is used + *
A registry policy is used to specify permissions for another Amazon Web Services account and is used * when configuring cross-account replication. For more information, see Registry permissions in the Amazon Elastic Container Registry User Guide.
* @example * Use a bare-bones client and the command you need to make an API call. diff --git a/clients/client-ecr/commands/PutReplicationConfigurationCommand.ts b/clients/client-ecr/commands/PutReplicationConfigurationCommand.ts index bbb3bb9c7237..572c7d5a9697 100644 --- a/clients/client-ecr/commands/PutReplicationConfigurationCommand.ts +++ b/clients/client-ecr/commands/PutReplicationConfigurationCommand.ts @@ -27,7 +27,7 @@ export interface PutReplicationConfigurationCommandOutput * replication configuration for a repository can be retrieved with the DescribeRegistry API action. The first time the * PutReplicationConfiguration API is called, a service-linked IAM role is created in * your account for the replication process. For more information, see Using - * Service-Linked Roles for Amazon ECR in the + * service-linked roles for Amazon ECR in the * Amazon Elastic Container Registry User Guide. *When configuring cross-account replication, the destination account must grant the diff --git a/clients/client-ecr/commands/SetRepositoryPolicyCommand.ts b/clients/client-ecr/commands/SetRepositoryPolicyCommand.ts index 0a88855b4a1e..fae8395d838d 100644 --- a/clients/client-ecr/commands/SetRepositoryPolicyCommand.ts +++ b/clients/client-ecr/commands/SetRepositoryPolicyCommand.ts @@ -23,7 +23,7 @@ export interface SetRepositoryPolicyCommandOutput extends SetRepositoryPolicyRes /** *
Applies a repository policy to the specified repository to control access permissions. * For more information, see Amazon ECR Repository - * Policies in the Amazon Elastic Container Registry User Guide.
+ * policies in the Amazon Elastic Container Registry User Guide. * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-ecr/commands/StartImageScanCommand.ts b/clients/client-ecr/commands/StartImageScanCommand.ts index a75c74aaec0b..89c00b743493 100644 --- a/clients/client-ecr/commands/StartImageScanCommand.ts +++ b/clients/client-ecr/commands/StartImageScanCommand.ts @@ -21,9 +21,9 @@ export interface StartImageScanCommandInput extends StartImageScanRequest {} export interface StartImageScanCommandOutput extends StartImageScanResponse, __MetadataBearer {} /** - *Starts an image vulnerability scan. An image scan can only be started once per day on - * an individual image. This limit includes if an image was scanned on initial push. For - * more information, see Image Scanning in the + *
Starts an image vulnerability scan. An image scan can only be started once per 24 + * hours on an individual image. This limit includes if an image was scanned on initial + * push. For more information, see Image scanning in the * Amazon Elastic Container Registry User Guide.
* @example * Use a bare-bones client and the command you need to make an API call. diff --git a/clients/client-ecr/models/models_0.ts b/clients/client-ecr/models/models_0.ts index 18f1db6ee003..df20257c276f 100644 --- a/clients/client-ecr/models/models_0.ts +++ b/clients/client-ecr/models/models_0.ts @@ -2,7 +2,7 @@ import { MetadataBearer as $MetadataBearer, SmithyException as __SmithyException export interface BatchCheckLayerAvailabilityRequest { /** - *The AWS account ID associated with the registry that contains the image layers to + *
The Amazon Web Services account ID associated with the registry that contains the image layers to * check. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -219,7 +219,7 @@ export namespace ImageIdentifier { */ export interface BatchDeleteImageRequest { /** - *The AWS account ID associated with the registry that contains the image to delete. + *
The Amazon Web Services account ID associated with the registry that contains the image to delete. * If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -308,8 +308,8 @@ export namespace BatchDeleteImageResponse { export interface BatchGetImageRequest { /** - *The AWS account ID associated with the registry that contains the images to describe. - * If you do not specify a registry, the default registry is assumed.
+ *The Amazon Web Services account ID associated with the registry that contains the images to + * describe. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -349,7 +349,7 @@ export namespace BatchGetImageRequest { */ export interface Image { /** - *The AWS account ID associated with the registry containing the image.
+ *The Amazon Web Services account ID associated with the registry containing the image.
*/ registryId?: string; @@ -406,7 +406,7 @@ export namespace BatchGetImageResponse { export interface CompleteLayerUploadRequest { /** - *The AWS account ID associated with the registry to which to upload layers. + *
The Amazon Web Services account ID associated with the registry to which to upload layers. * If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -519,7 +519,7 @@ export interface KmsException extends __SmithyException, $MetadataBearer { $fault: "client"; message?: string; /** - *The error code returned by AWS KMS.
+ *The error code returned by KMS.
*/ kmsError?: string; } @@ -610,33 +610,33 @@ export enum EncryptionType { * keys which encrypts your data at rest using an AES-256 encryption algorithm. This does * not require any action on your part. *For more control over the encryption of the contents of your repository, you can use - * server-side encryption with customer master keys (CMKs) stored in AWS Key Management Service (AWS KMS) to - * encrypt your images. For more information, see Amazon ECR encryption at + * server-side encryption with Key Management Service key stored in Key Management Service (KMS) to encrypt your + * images. For more information, see Amazon ECR encryption at * rest in the Amazon Elastic Container Registry User Guide.
*/ export interface EncryptionConfiguration { /** *The encryption type to use.
*If you use the KMS
encryption type, the contents of the repository will
- * be encrypted using server-side encryption with customer master keys (CMKs) stored in
- * AWS KMS. When you use AWS KMS to encrypt your data, you can either use the default AWS
- * managed CMK for Amazon ECR, or specify your own CMK, which you already created. For more
- * information, see Protecting Data Using Server-Side
- * Encryption with CMKs Stored in AWS Key Management Service (SSE-KMS) in the
+ * be encrypted using server-side encryption with Key Management Service key stored in KMS. When you
+ * use KMS to encrypt your data, you can either use the default Amazon Web Services managed KMS key
+ * for Amazon ECR, or specify your own KMS key, which you already created. For more
+ * information, see Protecting data using server-side
+ * encryption with an KMS key stored in Key Management Service (SSE-KMS) in the
* Amazon Simple Storage Service Console Developer Guide..
If you use the AES256
encryption type, Amazon ECR uses server-side encryption
* with Amazon S3-managed encryption keys which encrypts the images in the repository using an
- * AES-256 encryption algorithm. For more information, see Protecting Data Using
- * Server-Side Encryption with Amazon S3-Managed Encryption Keys (SSE-S3) in
- * the Amazon Simple Storage Service Console Developer Guide..
If you use the KMS
encryption type, specify the CMK to use for
- * encryption. The alias, key ID, or full ARN of the CMK can be specified. The key must
- * exist in the same Region as the repository. If no key is specified, the default AWS
- * managed CMK for Amazon ECR will be used.
If you use the KMS
encryption type, specify the KMS key to use for
+ * encryption. The alias, key ID, or full ARN of the KMS key can be specified. The key
+ * must exist in the same Region as the repository. If no key is specified, the default
+ * Amazon Web Services managed KMS key for Amazon ECR will be used.
The setting that determines whether images are scanned after being pushed to a
* repository. If set to true
, images will be scanned after being pushed. If
* this parameter is not specified, it will default to false
and images will
- * not be scanned unless a scan is manually started with the StartImageScan API.
The Amazon Resource Name (ARN) that identifies the repository. The ARN contains the arn:aws:ecr
namespace, followed by the region of the
- * repository, AWS account ID of the repository owner, repository namespace, and repository name.
+ * repository, Amazon Web Services account ID of the repository owner, repository namespace, and repository name.
* For example, arn:aws:ecr:region:012345678910:repository/test
.
The AWS account ID associated with the registry that contains the repository.
+ *The Amazon Web Services account ID associated with the registry that contains the repository.
*/ registryId?: string; @@ -847,7 +847,7 @@ export namespace InvalidTagParameterException { /** *The operation did not succeed because it would have exceeded a service limit for your - * account. For more information, see Amazon ECR Service Quotas in + * account. For more information, see Amazon ECR service quotas in * the Amazon Elastic Container Registry User Guide.
*/ export interface LimitExceededException extends __SmithyException, $MetadataBearer { @@ -910,7 +910,7 @@ export namespace TooManyTagsException { export interface DeleteLifecyclePolicyRequest { /** - *The AWS account ID associated with the registry that contains the repository. + *
The Amazon Web Services account ID associated with the registry that contains the repository. * If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -1032,7 +1032,7 @@ export namespace RegistryPolicyNotFoundException { export interface DeleteRepositoryRequest { /** - *The AWS account ID associated with the registry that contains the repository to + *
The Amazon Web Services account ID associated with the registry that contains the repository to * delete. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -1097,8 +1097,8 @@ export namespace RepositoryNotEmptyException { export interface DeleteRepositoryPolicyRequest { /** - *The AWS account ID associated with the registry that contains the repository policy to - * delete. If you do not specify a registry, the default registry is assumed.
+ *The Amazon Web Services account ID associated with the registry that contains the repository policy + * to delete. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -1196,8 +1196,8 @@ export namespace DescribeImagesFilter { export interface DescribeImagesRequest { /** - *The AWS account ID associated with the registry that contains the repository in which - * to describe images. If you do not specify a registry, the default registry is assumed.
+ *The Amazon Web Services account ID associated with the registry that contains the repository in + * which to describe images. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -1324,7 +1324,7 @@ export namespace ImageScanStatus { */ export interface ImageDetail { /** - *The AWS account ID associated with the registry to which this image belongs.
+ *The Amazon Web Services account ID associated with the registry to which this image belongs.
*/ registryId?: string; @@ -1438,9 +1438,8 @@ export namespace ImageNotFoundException { export interface DescribeImageScanFindingsRequest { /** - *The AWS account ID associated with the registry that contains the repository in - * which to describe the image scan findings for. If you do not specify a registry, the - * default registry is assumed.
+ *The Amazon Web Services account ID associated with the registry that contains the repository in + * which to describe the image scan findings for. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -1765,7 +1764,7 @@ export namespace ValidationException { export interface DescribeRepositoriesRequest { /** - *The AWS account ID associated with the registry that contains the repositories to be + *
The Amazon Web Services account ID associated with the registry that contains the repositories to be * described. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -1843,7 +1842,7 @@ export interface GetAuthorizationTokenRequest { /** * @deprecated * - *A list of AWS account IDs that are associated with the registries for which to get + *
A list of Amazon Web Services account IDs that are associated with the registries for which to get * AuthorizationData objects. If you do not specify a registry, the default registry is assumed.
*/ registryIds?: string[]; @@ -1913,7 +1912,7 @@ export namespace GetAuthorizationTokenResponse { export interface GetDownloadUrlForLayerRequest { /** - *The AWS account ID associated with the registry that contains the image layer to + *
The Amazon Web Services account ID associated with the registry that contains the image layer to * download. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -2005,7 +2004,7 @@ export namespace LayersNotFoundException { export interface GetLifecyclePolicyRequest { /** - *The AWS account ID associated with the registry that contains the repository. + *
The Amazon Web Services account ID associated with the registry that contains the repository. * If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -2077,7 +2076,7 @@ export namespace LifecyclePolicyPreviewFilter { export interface GetLifecyclePolicyPreviewRequest { /** - *The AWS account ID associated with the registry that contains the repository. + *
The Amazon Web Services account ID associated with the registry that contains the repository. * If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -2324,7 +2323,7 @@ export namespace GetRegistryPolicyResponse { export interface GetRepositoryPolicyRequest { /** - *The AWS account ID associated with the registry that contains the repository. + *
The Amazon Web Services account ID associated with the registry that contains the repository. * If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -2372,8 +2371,8 @@ export namespace GetRepositoryPolicyResponse { export interface InitiateLayerUploadRequest { /** - *The AWS account ID associated with the registry to which you intend to upload layers. - * If you do not specify a registry, the default registry is assumed.
+ *The Amazon Web Services account ID associated with the registry to which you intend to upload + * layers. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -2437,8 +2436,8 @@ export namespace ListImagesFilter { export interface ListImagesRequest { /** - *The AWS account ID associated with the registry that contains the repository in which - * to list images. If you do not specify a registry, the default registry is assumed.
+ *The Amazon Web Services account ID associated with the registry that contains the repository in + * which to list images. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -2608,8 +2607,8 @@ export namespace ImageTagAlreadyExistsException { export interface PutImageRequest { /** - *The AWS account ID associated with the registry that contains the repository in which - * to put the image. If you do not specify a registry, the default registry is assumed.
+ *The Amazon Web Services account ID associated with the registry that contains the repository in + * which to put the image. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -2687,7 +2686,7 @@ export namespace ReferencedImagesNotFoundException { export interface PutImageScanningConfigurationRequest { /** - *The AWS account ID associated with the registry that contains the repository in + *
The Amazon Web Services account ID associated with the registry that contains the repository in * which to update the image scanning configuration setting. * If you do not specify a registry, the default registry is assumed.
*/ @@ -2744,8 +2743,8 @@ export namespace PutImageScanningConfigurationResponse { export interface PutImageTagMutabilityRequest { /** - *The AWS account ID associated with the registry that contains the repository in which - * to update the image tag mutability settings. If you do not specify a registry, the default registry is assumed.
+ *The Amazon Web Services account ID associated with the registry that contains the repository in + * which to update the image tag mutability settings. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -2801,7 +2800,7 @@ export namespace PutImageTagMutabilityResponse { export interface PutLifecyclePolicyRequest { /** - *The AWS account ID associated with the registry that contains the repository. If you + *
The Amazon Web Services account ID associated with the registry that contains the repository. If you * do
 not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -2925,7 +2924,7 @@ export namespace PutReplicationConfigurationResponse { export interface SetRepositoryPolicyRequest { /** - *The AWS account ID associated with the registry that contains the repository. + *
The Amazon Web Services account ID associated with the registry that contains the repository. * If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -2937,8 +2936,8 @@ export interface SetRepositoryPolicyRequest { /** *The JSON repository policy text to apply to the repository. For more information, see - * Amazon ECR Repository - * Policies in the Amazon Elastic Container Registry User Guide.
+ * Amazon ECR repository + * policies in the Amazon Elastic Container Registry User Guide. */ policyText: string | undefined; @@ -2987,7 +2986,7 @@ export namespace SetRepositoryPolicyResponse { export interface StartImageScanRequest { /** - *The AWS account ID associated with the registry that contains the repository in + *
The Amazon Web Services account ID associated with the registry that contains the repository in * which to start an image scan request. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -3082,7 +3081,7 @@ export namespace LifecyclePolicyPreviewInProgressException { export interface StartLifecyclePolicyPreviewRequest { /** - *The AWS account ID associated with the registry that contains the repository. + *
The Amazon Web Services account ID associated with the registry that contains the repository. * If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; @@ -3252,7 +3251,7 @@ export namespace InvalidLayerPartException { export interface UploadLayerPartRequest { /** - *The AWS account ID associated with the registry to which you are uploading layer + *
The Amazon Web Services account ID associated with the registry to which you are uploading layer * parts. If you do not specify a registry, the default registry is assumed.
*/ registryId?: string; diff --git a/clients/client-eks/EKS.ts b/clients/client-eks/EKS.ts index 82986bee0ded..3017c64165f0 100644 --- a/clients/client-eks/EKS.ts +++ b/clients/client-eks/EKS.ts @@ -41,6 +41,11 @@ import { DeleteNodegroupCommandInput, DeleteNodegroupCommandOutput, } from "./commands/DeleteNodegroupCommand"; +import { + DeregisterClusterCommand, + DeregisterClusterCommandInput, + DeregisterClusterCommandOutput, +} from "./commands/DeregisterClusterCommand"; import { DescribeAddonCommand, DescribeAddonCommandInput, @@ -108,6 +113,11 @@ import { ListTagsForResourceCommandOutput, } from "./commands/ListTagsForResourceCommand"; import { ListUpdatesCommand, ListUpdatesCommandInput, ListUpdatesCommandOutput } from "./commands/ListUpdatesCommand"; +import { + RegisterClusterCommand, + RegisterClusterCommandInput, + RegisterClusterCommandOutput, +} from "./commands/RegisterClusterCommand"; import { TagResourceCommand, TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand"; import { UntagResourceCommand, @@ -539,6 +549,38 @@ export class EKS extends EKSClient { } } + /** + *Deregisters a connected cluster to remove it from the Amazon EKS control plane.
+ */ + public deregisterCluster( + args: DeregisterClusterCommandInput, + options?: __HttpHandlerOptions + ): PromiseDescribes an Amazon EKS add-on.
*/ @@ -1022,6 +1064,47 @@ export class EKS extends EKSClient { } } + /** + *Connects a Kubernetes cluster to the Amazon EKS control plane.
+ *Any Kubernetes cluster can be connected to the Amazon EKS control plane to view current information about the cluster and its nodes. + *
+ *Cluster connection requires two steps. First, send a
+ * RegisterClusterRequest
+ *
to add it to the Amazon EKS control plane.
Second, a Manifest containing the activationID
and activationCode
must be applied to the Kubernetes cluster through it's native provider to provide visibility.
After the Manifest is updated and applied, then the connected cluster is visible to the Amazon EKS control plane. If the Manifest is not applied within a set amount of time, + * then the connected cluster will no longer be visible and must be deregistered. See DeregisterCluster.
+ */ + public registerCluster( + args: RegisterClusterCommandInput, + options?: __HttpHandlerOptions + ): PromiseAssociates the specified tags to a resource with the specified
* resourceArn
. If existing tags on a resource are not specified in the
diff --git a/clients/client-eks/EKSClient.ts b/clients/client-eks/EKSClient.ts
index fd0b3cd534d9..88d2d26a819d 100644
--- a/clients/client-eks/EKSClient.ts
+++ b/clients/client-eks/EKSClient.ts
@@ -20,6 +20,7 @@ import {
DeleteFargateProfileCommandOutput,
} from "./commands/DeleteFargateProfileCommand";
import { DeleteNodegroupCommandInput, DeleteNodegroupCommandOutput } from "./commands/DeleteNodegroupCommand";
+import { DeregisterClusterCommandInput, DeregisterClusterCommandOutput } from "./commands/DeregisterClusterCommand";
import { DescribeAddonCommandInput, DescribeAddonCommandOutput } from "./commands/DescribeAddonCommand";
import {
DescribeAddonVersionsCommandInput,
@@ -56,6 +57,7 @@ import {
ListTagsForResourceCommandOutput,
} from "./commands/ListTagsForResourceCommand";
import { ListUpdatesCommandInput, ListUpdatesCommandOutput } from "./commands/ListUpdatesCommand";
+import { RegisterClusterCommandInput, RegisterClusterCommandOutput } from "./commands/RegisterClusterCommand";
import { TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand";
import { UntagResourceCommandInput, UntagResourceCommandOutput } from "./commands/UntagResourceCommand";
import { UpdateAddonCommandInput, UpdateAddonCommandOutput } from "./commands/UpdateAddonCommand";
@@ -138,6 +140,7 @@ export type ServiceInputTypes =
| DeleteClusterCommandInput
| DeleteFargateProfileCommandInput
| DeleteNodegroupCommandInput
+ | DeregisterClusterCommandInput
| DescribeAddonCommandInput
| DescribeAddonVersionsCommandInput
| DescribeClusterCommandInput
@@ -153,6 +156,7 @@ export type ServiceInputTypes =
| ListNodegroupsCommandInput
| ListTagsForResourceCommandInput
| ListUpdatesCommandInput
+ | RegisterClusterCommandInput
| TagResourceCommandInput
| UntagResourceCommandInput
| UpdateAddonCommandInput
@@ -172,6 +176,7 @@ export type ServiceOutputTypes =
| DeleteClusterCommandOutput
| DeleteFargateProfileCommandOutput
| DeleteNodegroupCommandOutput
+ | DeregisterClusterCommandOutput
| DescribeAddonCommandOutput
| DescribeAddonVersionsCommandOutput
| DescribeClusterCommandOutput
@@ -187,6 +192,7 @@ export type ServiceOutputTypes =
| ListNodegroupsCommandOutput
| ListTagsForResourceCommandOutput
| ListUpdatesCommandOutput
+ | RegisterClusterCommandOutput
| TagResourceCommandOutput
| UntagResourceCommandOutput
| UpdateAddonCommandOutput
diff --git a/clients/client-eks/commands/DeregisterClusterCommand.ts b/clients/client-eks/commands/DeregisterClusterCommand.ts
new file mode 100644
index 000000000000..8b2c9ad2bfd2
--- /dev/null
+++ b/clients/client-eks/commands/DeregisterClusterCommand.ts
@@ -0,0 +1,94 @@
+import { EKSClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EKSClient";
+import { DeregisterClusterRequest, DeregisterClusterResponse } from "../models/models_0";
+import {
+ deserializeAws_restJson1DeregisterClusterCommand,
+ serializeAws_restJson1DeregisterClusterCommand,
+} from "../protocols/Aws_restJson1";
+import { getSerdePlugin } from "@aws-sdk/middleware-serde";
+import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
+import { Command as $Command } from "@aws-sdk/smithy-client";
+import {
+ FinalizeHandlerArguments,
+ Handler,
+ HandlerExecutionContext,
+ MiddlewareStack,
+ HttpHandlerOptions as __HttpHandlerOptions,
+ MetadataBearer as __MetadataBearer,
+ SerdeContext as __SerdeContext,
+} from "@aws-sdk/types";
+
+export interface DeregisterClusterCommandInput extends DeregisterClusterRequest {}
+export interface DeregisterClusterCommandOutput extends DeregisterClusterResponse, __MetadataBearer {}
+
+/**
+ *
Deregisters a connected cluster to remove it from the Amazon EKS control plane.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EKSClient, DeregisterClusterCommand } from "@aws-sdk/client-eks"; // ES Modules import + * // const { EKSClient, DeregisterClusterCommand } = require("@aws-sdk/client-eks"); // CommonJS import + * const client = new EKSClient(config); + * const command = new DeregisterClusterCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeregisterClusterCommandInput} for command's `input` shape. + * @see {@link DeregisterClusterCommandOutput} for command's `response` shape. + * @see {@link EKSClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DeregisterClusterCommand extends $Command< + DeregisterClusterCommandInput, + DeregisterClusterCommandOutput, + EKSClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeregisterClusterCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackConnects a Kubernetes cluster to the Amazon EKS control plane.
+ *Any Kubernetes cluster can be connected to the Amazon EKS control plane to view current information about the cluster and its nodes. + *
+ *Cluster connection requires two steps. First, send a
+ * RegisterClusterRequest
+ *
to add it to the Amazon EKS control plane.
Second, a Manifest containing the activationID
and activationCode
must be applied to the Kubernetes cluster through it's native provider to provide visibility.
After the Manifest is updated and applied, then the connected cluster is visible to the Amazon EKS control plane. If the Manifest is not applied within a set amount of time, + * then the connected cluster will no longer be visible and must be deregistered. See DeregisterCluster.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EKSClient, RegisterClusterCommand } from "@aws-sdk/client-eks"; // ES Modules import + * // const { EKSClient, RegisterClusterCommand } = require("@aws-sdk/client-eks"); // CommonJS import + * const client = new EKSClient(config); + * const command = new RegisterClusterCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link RegisterClusterCommandInput} for command's `input` shape. + * @see {@link RegisterClusterCommandOutput} for command's `response` shape. + * @see {@link EKSClientResolvedConfig | config} for command's `input` shape. + * + */ +export class RegisterClusterCommand extends $Command< + RegisterClusterCommandInput, + RegisterClusterCommandOutput, + EKSClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: RegisterClusterCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackThe full description of your connected cluster.
+ */ +export interface ConnectorConfigResponse { + /** + *A unique ID associated with the cluster for registration purposes.
+ */ + activationId?: string; + + /** + *A unique code associated with the cluster for registration purposes.
+ */ + activationCode?: string; + + /** + *The expiration time of the connected cluster. The cluster's YAML file must be applied through the native + * provider.
+ */ + activationExpiry?: Date; + + /** + *The cluster's cloud service provider.
+ */ + provider?: string; + + /** + *The Amazon Resource Name (ARN) of the role that is used by the EKS connector to communicate with AWS services from the connected Kubernetes cluster.
+ */ + roleArn?: string; +} + +export namespace ConnectorConfigResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ConnectorConfigResponse): any => ({ + ...obj, + }); +} + /** *An object representing the OpenID * Connect (OIDC) identity provider information for the cluster.
@@ -1340,7 +1380,7 @@ export namespace VpcConfigResponse { }); } -export type ClusterStatus = "ACTIVE" | "CREATING" | "DELETING" | "FAILED" | "UPDATING"; +export type ClusterStatus = "ACTIVE" | "CREATING" | "DELETING" | "FAILED" | "PENDING" | "UPDATING"; /** *An object representing an Amazon EKS cluster.
@@ -1428,7 +1468,7 @@ export interface Cluster { *The metadata that you apply to the cluster to assist with categorization and * organization. Each tag consists of a key and an optional value, both of which you * define. Cluster tags do not propagate to any other resources associated with the - * cluster.
+ * cluster. */ tags?: { [key: string]: string }; @@ -1436,6 +1476,11 @@ export interface Cluster { *The encryption configuration for the cluster.
*/ encryptionConfig?: EncryptionConfig[]; + + /** + *The configuration used to connect to a cluster for registration.
+ */ + connectorConfig?: ConnectorConfigResponse; } export namespace Cluster { @@ -2562,6 +2607,38 @@ export namespace DeleteNodegroupResponse { }); } +export interface DeregisterClusterRequest { + /** + *The name of the connected cluster to deregister.
+ */ + name: string | undefined; +} + +export namespace DeregisterClusterRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DeregisterClusterRequest): any => ({ + ...obj, + }); +} + +export interface DeregisterClusterResponse { + /** + *An object representing an Amazon EKS cluster.
+ */ + cluster?: Cluster; +} + +export namespace DeregisterClusterResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DeregisterClusterResponse): any => ({ + ...obj, + }); +} + export interface DescribeAddonRequest { /** *The name of the cluster.
@@ -2876,7 +2953,7 @@ export namespace OidcIdentityProviderConfig { } /** - *An object that represents an identity configuration.
+ *The full description of your identity configuration.
*/ export interface IdentityProviderConfigResponse { /** @@ -3134,6 +3211,11 @@ export interface ListClustersRequest { *Indicates whether connected clusters are included in the returned list. Default value is 'ALL'.
+ */ + include?: string[]; } export namespace ListClustersRequest { @@ -3497,6 +3579,84 @@ export namespace ListUpdatesResponse { }); } +export enum ConnectorConfigProvider { + AKS = "AKS", + ANTHOS = "ANTHOS", + EC2 = "EC2", + EKS_ANYWHERE = "EKS_ANYWHERE", + GKE = "GKE", + OPENSHIFT = "OPENSHIFT", + OTHER = "OTHER", + RANCHER = "RANCHER", + TANZU = "TANZU", +} + +/** + *The configuration sent to a cluster for configuration.
+ */ +export interface ConnectorConfigRequest { + /** + *The Amazon Resource Name (ARN) of the role that is authorized to request the connector configuration.
+ */ + roleArn: string | undefined; + + /** + *The cloud provider for the target cluster to connect.
+ */ + provider: ConnectorConfigProvider | string | undefined; +} + +export namespace ConnectorConfigRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ConnectorConfigRequest): any => ({ + ...obj, + }); +} + +export interface RegisterClusterRequest { + /** + *Define a unique name for this cluster within your AWS account.
+ */ + name: string | undefined; + + /** + *The configuration settings required to connect the Kubernetes cluster to the Amazon EKS control plane.
+ */ + connectorConfig: ConnectorConfigRequest | undefined; + + /** + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
+ */ + clientRequestToken?: string; +} + +export namespace RegisterClusterRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: RegisterClusterRequest): any => ({ + ...obj, + }); +} + +export interface RegisterClusterResponse { + /** + *An object representing an Amazon EKS cluster.
+ */ + cluster?: Cluster; +} + +export namespace RegisterClusterResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: RegisterClusterResponse): any => ({ + ...obj, + }); +} + export interface TagResourceRequest { /** *The Amazon Resource Name (ARN) of the resource to which to add tags. Currently, the supported resources
diff --git a/clients/client-eks/protocols/Aws_restJson1.ts b/clients/client-eks/protocols/Aws_restJson1.ts
index 20e613613957..56ee2e3e104b 100644
--- a/clients/client-eks/protocols/Aws_restJson1.ts
+++ b/clients/client-eks/protocols/Aws_restJson1.ts
@@ -20,6 +20,7 @@ import {
DeleteFargateProfileCommandOutput,
} from "../commands/DeleteFargateProfileCommand";
import { DeleteNodegroupCommandInput, DeleteNodegroupCommandOutput } from "../commands/DeleteNodegroupCommand";
+import { DeregisterClusterCommandInput, DeregisterClusterCommandOutput } from "../commands/DeregisterClusterCommand";
import { DescribeAddonCommandInput, DescribeAddonCommandOutput } from "../commands/DescribeAddonCommand";
import {
DescribeAddonVersionsCommandInput,
@@ -56,6 +57,7 @@ import {
ListTagsForResourceCommandOutput,
} from "../commands/ListTagsForResourceCommand";
import { ListUpdatesCommandInput, ListUpdatesCommandOutput } from "../commands/ListUpdatesCommand";
+import { RegisterClusterCommandInput, RegisterClusterCommandOutput } from "../commands/RegisterClusterCommand";
import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand";
import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand";
import { UpdateAddonCommandInput, UpdateAddonCommandOutput } from "../commands/UpdateAddonCommand";
@@ -87,6 +89,8 @@ import {
ClientException,
Cluster,
Compatibility,
+ ConnectorConfigRequest,
+ ConnectorConfigResponse,
EncryptionConfig,
ErrorDetail,
FargateProfile,
@@ -574,6 +578,35 @@ export const serializeAws_restJson1DeleteNodegroupCommand = async (
});
};
+export const serializeAws_restJson1DeregisterClusterCommand = async (
+ input: DeregisterClusterCommandInput,
+ 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 || ""}` + "/cluster-registrations/{name}";
+ if (input.name !== undefined) {
+ const labelValue: string = input.name;
+ if (labelValue.length <= 0) {
+ throw new Error("Empty value provided for input HTTP label: name.");
+ }
+ resolvedPath = resolvedPath.replace("{name}", __extendedEncodeURIComponent(labelValue));
+ } else {
+ throw new Error("No value provided for input HTTP label: name.");
+ }
+ let body: any;
+ return new __HttpRequest({
+ protocol,
+ hostname,
+ port,
+ method: "DELETE",
+ headers,
+ path: resolvedPath,
+ body,
+ });
+};
+
export const serializeAws_restJson1DescribeAddonCommand = async (
input: DescribeAddonCommandInput,
context: __SerdeContext
@@ -910,6 +943,7 @@ export const serializeAws_restJson1ListClustersCommand = async (
const query: any = {
...(input.maxResults !== undefined && { maxResults: input.maxResults.toString() }),
...(input.nextToken !== undefined && { nextToken: input.nextToken }),
+ ...(input.include !== undefined && { include: (input.include || []).map((_entry) => _entry as any) }),
};
let body: any;
return new __HttpRequest({
@@ -1090,6 +1124,35 @@ export const serializeAws_restJson1ListUpdatesCommand = async (
});
};
+export const serializeAws_restJson1RegisterClusterCommand = async (
+ input: RegisterClusterCommandInput,
+ 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 || ""}` + "/cluster-registrations";
+ let body: any;
+ body = JSON.stringify({
+ clientRequestToken: input.clientRequestToken ?? generateIdempotencyToken(),
+ ...(input.connectorConfig !== undefined &&
+ input.connectorConfig !== null && {
+ connectorConfig: serializeAws_restJson1ConnectorConfigRequest(input.connectorConfig, context),
+ }),
+ ...(input.name !== undefined && input.name !== null && { name: input.name }),
+ });
+ return new __HttpRequest({
+ protocol,
+ hostname,
+ port,
+ method: "POST",
+ headers,
+ path: resolvedPath,
+ body,
+ });
+};
+
export const serializeAws_restJson1TagResourceCommand = async (
input: TagResourceCommandInput,
context: __SerdeContext
@@ -2324,6 +2387,93 @@ const deserializeAws_restJson1DeleteNodegroupCommandError = async (
return Promise.reject(Object.assign(new Error(message), response));
};
+export const deserializeAws_restJson1DeregisterClusterCommand = async (
+ output: __HttpResponse,
+ context: __SerdeContext
+): Promise The list of user group IDs to add. The ID of the user group to add. The list of user group IDs to remove. The ID of the user group to remove. The user groups being modified. The user group being modified. The list of user group IDs that have access to the replication group. The ID of the user group associated to the replication group. A list of updates being applied to the user groups. A list of updates being applied to the user group. The default user assigned to the user group. The user group you are associating with the replication group. The ID of the user group you are associating with the replication group. The user group to remove, meaning the users in the group no longer can access the replication group. The ID of the user group to disassociate from the replication group, meaning the users in the group no longer can access the replication group. Removes the user groups that can access this replication group. Removes the user group associated with this replication group. Adds tags to an Amazon EMR resource. Tags make it easier to associate clusters in
+ * Adds tags to an Amazon EMR resource, such as a cluster or an Amazon EMR Studio. Tags make it easier to associate resources in
* various ways, such as grouping clusters to track your Amazon EMR resource allocation costs.
* For more information, see Tag Clusters. Maps a user or group to the Amazon EMR Studio specified by StudioId
, and
- * applies a session policy to refine Studio permissions for that user or group.CreateStudioSessionMapping
to assign users to a Studio when you use Amazon Web Services SSO authentication. For instructions on how to assign users to a Studio when you use IAM authentication, see Assign a user or group to your EMR Studio.
Removes tags from an Amazon EMR resource. Tags make it easier to associate clusters in + *
Removes tags from an Amazon EMR resource, such as a cluster or Amazon EMR Studio. Tags make it easier to associate resources in * various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. * For more information, see Tag Clusters.
*The following example removes the stack tag with value Prod from a cluster:
diff --git a/clients/client-emr/commands/AddTagsCommand.ts b/clients/client-emr/commands/AddTagsCommand.ts index 3db6e05ce8e0..f6a319d9e042 100644 --- a/clients/client-emr/commands/AddTagsCommand.ts +++ b/clients/client-emr/commands/AddTagsCommand.ts @@ -18,7 +18,7 @@ export interface AddTagsCommandInput extends AddTagsInput {} export interface AddTagsCommandOutput extends AddTagsOutput, __MetadataBearer {} /** - *Adds tags to an Amazon EMR resource. Tags make it easier to associate clusters in + *
Adds tags to an Amazon EMR resource, such as a cluster or an Amazon EMR Studio. Tags make it easier to associate resources in * various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. * For more information, see Tag Clusters.
* @example diff --git a/clients/client-emr/commands/CreateStudioSessionMappingCommand.ts b/clients/client-emr/commands/CreateStudioSessionMappingCommand.ts index 561fbfd26183..7df83a84809f 100644 --- a/clients/client-emr/commands/CreateStudioSessionMappingCommand.ts +++ b/clients/client-emr/commands/CreateStudioSessionMappingCommand.ts @@ -22,7 +22,7 @@ export interface CreateStudioSessionMappingCommandOutput extends __MetadataBeare /** *Maps a user or group to the Amazon EMR Studio specified by StudioId
, and
- * applies a session policy to refine Studio permissions for that user or group.
CreateStudioSessionMapping
to assign users to a Studio when you use Amazon Web Services SSO authentication. For instructions on how to assign users to a Studio when you use IAM authentication, see Assign a user or group to your EMR Studio.
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
diff --git a/clients/client-emr/commands/RemoveTagsCommand.ts b/clients/client-emr/commands/RemoveTagsCommand.ts
index cd6c3171da09..938c32433773 100644
--- a/clients/client-emr/commands/RemoveTagsCommand.ts
+++ b/clients/client-emr/commands/RemoveTagsCommand.ts
@@ -21,7 +21,7 @@ export interface RemoveTagsCommandInput extends RemoveTagsInput {}
export interface RemoveTagsCommandOutput extends RemoveTagsOutput, __MetadataBearer {}
/**
- * Removes tags from an Amazon EMR resource. Tags make it easier to associate clusters in + *
Removes tags from an Amazon EMR resource, such as a cluster or Amazon EMR Studio. Tags make it easier to associate resources in * various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. * For more information, see Tag Clusters.
*The following example removes the stack tag with value Prod from a cluster:
diff --git a/clients/client-emr/models/models_0.ts b/clients/client-emr/models/models_0.ts index f75e15e1ca6f..644479666111 100644 --- a/clients/client-emr/models/models_0.ts +++ b/clients/client-emr/models/models_0.ts @@ -935,17 +935,17 @@ export namespace Tag { } /** - *This input identifies a cluster and a list of tags to attach.
+ *This input identifies an Amazon EMR resource and a list of tags to attach.
*/ export interface AddTagsInput { /** - *The Amazon EMR resource identifier to which tags will be added. This value must be a - * cluster identifier.
+ *The Amazon EMR resource identifier to which tags will be added. For example, a + * cluster identifier or an Amazon EMR Studio ID.
*/ ResourceId: string | undefined; /** - *A list of tags to associate with a cluster and propagate to EC2 instances. Tags are + *
A list of tags to associate with a resource. Tags are * user-defined key-value pairs that consist of a required key string with a maximum of 128 * characters, and an optional value string with a maximum of 256 characters.
*/ @@ -1839,8 +1839,7 @@ export interface CreateStudioInput { Description?: string; /** - *Specifies whether the Studio authenticates users using single sign-on (SSO) or IAM. - * Amazon EMR Studio currently only supports SSO authentication.
+ *Specifies whether the Studio authenticates users using IAM or Amazon Web Services SSO.
*/ AuthMode: AuthMode | string | undefined; @@ -1858,17 +1857,17 @@ export interface CreateStudioInput { SubnetIds: string[] | undefined; /** - *The IAM role that will be assumed by the Amazon EMR Studio. The service role provides a + *
The IAM role that the Amazon EMR Studio assumes. The service role provides a * way for Amazon EMR Studio to interoperate with other Amazon Web Services services.
*/ ServiceRole: string | undefined; /** - *The IAM user role that will be assumed by users and groups logged in to an Amazon EMR Studio. The - * permissions attached to this IAM role can be scoped down for each user or group using + *
The IAM user role that users and groups assume when logged in to an Amazon EMR Studio. Only specify a UserRole
when you use Amazon Web Services SSO authentication. The
+ * permissions attached to the UserRole
can be scoped down for each user or group using
* session policies.
The ID of the Amazon EMR Studio Workspace security group. The Workspace security group @@ -1889,6 +1888,16 @@ export interface CreateStudioInput { */ DefaultS3Location: string | undefined; + /** + *
The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials.
+ */ + IdpAuthUrl?: string; + + /** + *The name that your identity provider (IdP) uses for its RelayState
parameter. For example, RelayState
or TargetSource
. Specify this value when you use IAM authentication and want to let federated users log in to a Studio using the Studio URL. The RelayState
parameter differs by IdP.
A list of tags to associate with the Amazon EMR Studio. Tags are user-defined key-value pairs that * consist of a required key string with a maximum of 128 characters, and an optional value @@ -3230,8 +3239,7 @@ export interface Studio { Description?: string; /** - *
Specifies whether the Amazon EMR Studio authenticates users using single sign-on (SSO) or - * IAM.
+ *Specifies whether the Amazon EMR Studio authenticates users using IAM or Amazon Web Services SSO.
*/ AuthMode?: AuthMode | string; @@ -3251,7 +3259,7 @@ export interface Studio { ServiceRole?: string; /** - *The name of the IAM role assumed by users logged in to the Amazon EMR Studio.
+ *The name of the IAM role assumed by users logged in to the Amazon EMR Studio. A Studio only requires a UserRole
when you use IAM authentication.
Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL.
+ */ + IdpAuthUrl?: string; + + /** + *The name of your identity provider's RelayState
parameter.
A list of tags associated with the Amazon EMR Studio.
*/ @@ -4760,6 +4778,11 @@ export interface StudioSummary { */ Url?: string; + /** + *Specifies whether the Studio authenticates users using IAM or Amazon Web Services SSO.
+ */ + AuthMode?: AuthMode | string; + /** *The time when the Amazon EMR Studio was created.
*/ @@ -5210,17 +5233,17 @@ export namespace RemoveManagedScalingPolicyOutput { } /** - *This input identifies a cluster and a list of tags to remove.
+ *This input identifies an Amazon EMR resource and a list of tags to remove.
*/ export interface RemoveTagsInput { /** - *The Amazon EMR resource identifier from which tags will be removed. This value must be a - * cluster identifier.
+ *The Amazon EMR resource identifier from which tags will be removed. For example, a + * cluster identifier or an Amazon EMR Studio ID.
*/ ResourceId: string | undefined; /** - *A list of tag keys to remove from a resource.
+ *A list of tag keys to remove from the resource.
*/ TagKeys: string[] | undefined; } @@ -5235,7 +5258,7 @@ export namespace RemoveTagsInput { } /** - *This output indicates the result of removing tags from a resource.
+ *This output indicates the result of removing tags from the resource.
*/ export interface RemoveTagsOutput {} @@ -5732,7 +5755,7 @@ export interface Cluster { Tags?: Tag[]; /** - *The IAM role that will be assumed by the Amazon EMR service to access Amazon Web Services resources on + *
The IAM role that Amazon EMR assumes in order to access Amazon Web Services resources on * your behalf.
*/ ServiceRole?: string; @@ -6873,7 +6896,7 @@ export interface RunJobFlowInput { JobFlowRole?: string; /** - *The IAM role that will be assumed by the Amazon EMR service to access Amazon Web Services resources on + *
The IAM role that Amazon EMR assumes in order to access Amazon Web Services resources on * your behalf.
*/ ServiceRole?: string; diff --git a/clients/client-emr/protocols/Aws_json1_1.ts b/clients/client-emr/protocols/Aws_json1_1.ts index b624e4c7b17e..d7b9c77ca737 100644 --- a/clients/client-emr/protocols/Aws_json1_1.ts +++ b/clients/client-emr/protocols/Aws_json1_1.ts @@ -4299,6 +4299,9 @@ const serializeAws_json1_1CreateStudioInput = (input: CreateStudioInput, context ...(input.Description !== undefined && input.Description !== null && { Description: input.Description }), ...(input.EngineSecurityGroupId !== undefined && input.EngineSecurityGroupId !== null && { EngineSecurityGroupId: input.EngineSecurityGroupId }), + ...(input.IdpAuthUrl !== undefined && input.IdpAuthUrl !== null && { IdpAuthUrl: input.IdpAuthUrl }), + ...(input.IdpRelayStateParameterName !== undefined && + input.IdpRelayStateParameterName !== null && { IdpRelayStateParameterName: input.IdpRelayStateParameterName }), ...(input.Name !== undefined && input.Name !== null && { Name: input.Name }), ...(input.ServiceRole !== undefined && input.ServiceRole !== null && { ServiceRole: input.ServiceRole }), ...(input.SubnetIds !== undefined && @@ -7598,6 +7601,8 @@ const deserializeAws_json1_1Studio = (output: any, context: __SerdeContext): Stu DefaultS3Location: __expectString(output.DefaultS3Location), Description: __expectString(output.Description), EngineSecurityGroupId: __expectString(output.EngineSecurityGroupId), + IdpAuthUrl: __expectString(output.IdpAuthUrl), + IdpRelayStateParameterName: __expectString(output.IdpRelayStateParameterName), Name: __expectString(output.Name), ServiceRole: __expectString(output.ServiceRole), StudioArn: __expectString(output.StudioArn), @@ -7619,6 +7624,7 @@ const deserializeAws_json1_1Studio = (output: any, context: __SerdeContext): Stu const deserializeAws_json1_1StudioSummary = (output: any, context: __SerdeContext): StudioSummary => { return { + AuthMode: __expectString(output.AuthMode), CreationTime: output.CreationTime !== undefined && output.CreationTime !== null ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.CreationTime))) diff --git a/clients/client-forecast/Forecast.ts b/clients/client-forecast/Forecast.ts index fb0b544a24ae..0b978ff066cf 100644 --- a/clients/client-forecast/Forecast.ts +++ b/clients/client-forecast/Forecast.ts @@ -1300,21 +1300,19 @@ export class Forecast extends ForecastClient { * to decide whether to use the predictor to generate a forecast. For more information, see * Predictor * Metrics. - *This operation generates metrics for each backtest window that was evaluated. The number of backtest windows
- * (NumberOfBacktestWindows
) is specified using the
- * EvaluationParameters object, which is optionally
- * included in the CreatePredictor
request. If
- * NumberOfBacktestWindows
isn't specified, the number defaults to one.
The parameters of the filling
method determine which items contribute to
- * the metrics. If you want all items to contribute, specify zero
.
- * If you want only those items that have complete data in the range being evaluated to
- * contribute, specify nan
.
- * For more information, see FeaturizationMethod.
This operation generates metrics for each backtest window that was evaluated. The number
+ * of backtest windows (NumberOfBacktestWindows
) is specified using the EvaluationParameters object, which is optionally included in the
+ * CreatePredictor
request. If NumberOfBacktestWindows
isn't
+ * specified, the number defaults to one.
The parameters of the filling
method determine which items contribute to the
+ * metrics. If you want all items to contribute, specify zero
. If you want only
+ * those items that have complete data in the range being evaluated to contribute, specify
+ * nan
. For more information, see FeaturizationMethod.
Before you can get accuracy metrics, the Status
of the predictor must be
- * ACTIVE
, signifying that training has completed.
- * To get the status, use the DescribePredictor operation.
ACTIVE
, signifying that training has completed. To get the status, use the
+ * DescribePredictor operation.
* This operation generates metrics for each backtest window that was evaluated. The number of backtest windows
- * (NumberOfBacktestWindows
) is specified using the
- * EvaluationParameters object, which is optionally
- * included in the CreatePredictor
request. If
- * NumberOfBacktestWindows
isn't specified, the number defaults to one.
The parameters of the filling
method determine which items contribute to
- * the metrics. If you want all items to contribute, specify zero
.
- * If you want only those items that have complete data in the range being evaluated to
- * contribute, specify nan
.
- * For more information, see FeaturizationMethod.
This operation generates metrics for each backtest window that was evaluated. The number
+ * of backtest windows (NumberOfBacktestWindows
) is specified using the EvaluationParameters object, which is optionally included in the
+ * CreatePredictor
request. If NumberOfBacktestWindows
isn't
+ * specified, the number defaults to one.
The parameters of the filling
method determine which items contribute to the
+ * metrics. If you want all items to contribute, specify zero
. If you want only
+ * those items that have complete data in the range being evaluated to contribute, specify
+ * nan
. For more information, see FeaturizationMethod.
Before you can get accuracy metrics, the Status
of the predictor must be
- * ACTIVE
, signifying that training has completed.
- * To get the status, use the DescribePredictor operation.
ACTIVE
, signifying that training has completed. To get the status, use the
+ * DescribePredictor operation.
* A name for the predictor.
@@ -1588,7 +1596,12 @@ export interface CreatePredictorRequest { PerformAutoML?: boolean; /** - *Used to overide the default AutoML strategy, which is to optimize predictor accuracy.
+ * The LatencyOptimized
AutoML override strategy is only available in private beta.
+ * Contact AWS Support or your account manager to learn more about access privileges.
+ *
Used to overide the default AutoML strategy, which is to optimize predictor accuracy.
* To apply an AutoML strategy that minimizes training time, use
* LatencyOptimized
.
This parameter is only valid for predictors trained using AutoML.
@@ -1685,6 +1698,11 @@ export interface CreatePredictorRequest { * */ Tags?: Tag[]; + + /** + *The accuracy metric used to optimize the predictor.
+ */ + OptimizationMetric?: OptimizationMetric | string; } export namespace CreatePredictorRequest { @@ -2785,7 +2803,12 @@ export interface DescribePredictorResponse { PerformAutoML?: boolean; /** - *The AutoML strategy used to train the predictor. Unless The LatencyOptimized
+ * LatencyOptimized
AutoML override strategy is only available in private beta.
+ * Contact AWS Support or your account manager to learn more about access privileges.
+ *
The AutoML strategy used to train the predictor. Unless LatencyOptimized
* is specified, the AutoML strategy optimizes predictor accuracy.
This parameter is only valid for predictors trained using AutoML.
*/ @@ -2923,6 +2946,11 @@ export interface DescribePredictorResponse { * */ LastModificationTime?: Date; + + /** + *The accuracy metric used to optimize the predictor.
+ */ + OptimizationMetric?: OptimizationMetric | string; } export namespace DescribePredictorResponse { @@ -3071,32 +3099,34 @@ export enum EvaluationType { } /** - *- * Provides detailed error metrics to evaluate the performance of a predictor. This object is - * part of the Metrics object. - *
+ *Provides detailed error metrics to evaluate the performance of a predictor. This object + * is part of the Metrics object.
*/ export interface ErrorMetric { /** - *- * The Forecast type used to compute WAPE and RMSE. - *
+ *The Forecast type used to compute WAPE, MAPE, MASE, and RMSE.
*/ ForecastType?: string; /** - *- * The weighted absolute percentage error (WAPE). - *
+ *The weighted absolute percentage error (WAPE).
*/ WAPE?: number; /** - *- * The root-mean-square error (RMSE). - *
+ *The root-mean-square error (RMSE).
*/ RMSE?: number; + + /** + *The Mean Absolute Scaled Error (MASE)
+ */ + MASE?: number; + + /** + *The Mean Absolute Percentage Error (MAPE)
+ */ + MAPE?: number; } export namespace ErrorMetric { @@ -3109,14 +3139,13 @@ export namespace ErrorMetric { } /** - *The weighted loss value for a quantile. This object is part of the - * Metrics object.
+ *The weighted loss value for a quantile. This object is part of the Metrics object.
*/ export interface WeightedQuantileLoss { /** *The quantile. Quantiles divide a probability distribution into regions of equal - * probability. For example, if the distribution was divided into 5 regions of equal - * probability, the quantiles would be 0.2, 0.4, 0.6, and 0.8.
+ * probability. For example, if the distribution was divided into 5 regions of equal probability, + * the quantiles would be 0.2, 0.4, 0.6, and 0.8. */ Quantile?: number; @@ -3137,8 +3166,8 @@ export namespace WeightedQuantileLoss { } /** - *Provides metrics that are used to evaluate the performance of a predictor. This object - * is part of the WindowSummary object.
+ *Provides metrics that are used to evaluate the performance of a predictor. This object is + * part of the WindowSummary object.
*/ export interface Metrics { /** @@ -3155,12 +3184,16 @@ export interface Metrics { WeightedQuantileLosses?: WeightedQuantileLoss[]; /** - *- * Provides detailed error metrics on forecast type, root-mean square-error (RMSE), and weighted - * average percentage error (WAPE). - *
+ *Provides detailed error metrics for each forecast type. Metrics include root-mean + * square-error (RMSE), mean absolute percentage error (MAPE), mean absolute scaled error (MASE), + * and weighted average percentage error (WAPE).
*/ ErrorMetrics?: ErrorMetric[]; + + /** + *The average value of all weighted quantile losses.
+ */ + AverageWeightedQuantileLoss?: number; } export namespace Metrics { @@ -3173,11 +3206,10 @@ export namespace Metrics { } /** - *The metrics for a time range within the evaluation portion of a dataset. This object - * is part of the EvaluationResult object.
- *The TestWindowStart
and TestWindowEnd
parameters are
- * determined by the BackTestWindowOffset
parameter of the
- * EvaluationParameters object.
The metrics for a time range within the evaluation portion of a dataset. This object is + * part of the EvaluationResult object.
+ *The TestWindowStart
and TestWindowEnd
parameters are determined
+ * by the BackTestWindowOffset
parameter of the EvaluationParameters object.
The results of evaluating an algorithm. Returned as part of the - * GetAccuracyMetrics response.
+ *The results of evaluating an algorithm. Returned as part of the GetAccuracyMetrics response.
*/ export interface EvaluationResult { /** @@ -3237,8 +3268,8 @@ export interface EvaluationResult { /** *The array of test windows used for evaluating the algorithm. The
- * NumberOfBacktestWindows
from the EvaluationParameters
- * object determines the number of windows in the array.
NumberOfBacktestWindows
from the EvaluationParameters object
+ * determines the number of windows in the array.
*/
TestWindows?: WindowSummary[];
}
@@ -3259,11 +3290,21 @@ export interface GetAccuracyMetricsResponse {
PredictorEvaluationResults?: EvaluationResult[];
/**
- * The AutoML strategy used to train the predictor. Unless The LatencyOptimized
+ * LatencyOptimized
AutoML override strategy is only available in private beta.
+ * Contact AWS Support or your account manager to learn more about access privileges.
+ *
The AutoML strategy used to train the predictor. Unless LatencyOptimized
* is specified, the AutoML strategy optimizes predictor accuracy.
This parameter is only valid for predictors trained using AutoML.
*/ AutoMLOverrideStrategy?: AutoMLOverrideStrategy | string; + + /** + *The accuracy metric used to optimize the predictor.
+ */ + OptimizationMetric?: OptimizationMetric | string; } export namespace GetAccuracyMetricsResponse { diff --git a/clients/client-forecast/protocols/Aws_json1_1.ts b/clients/client-forecast/protocols/Aws_json1_1.ts index b7b20a47ee9c..249b0f056ed1 100644 --- a/clients/client-forecast/protocols/Aws_json1_1.ts +++ b/clients/client-forecast/protocols/Aws_json1_1.ts @@ -3306,6 +3306,8 @@ const serializeAws_json1_1CreatePredictorRequest = (input: CreatePredictorReques input.InputDataConfig !== null && { InputDataConfig: serializeAws_json1_1InputDataConfig(input.InputDataConfig, context), }), + ...(input.OptimizationMetric !== undefined && + input.OptimizationMetric !== null && { OptimizationMetric: input.OptimizationMetric }), ...(input.PerformAutoML !== undefined && input.PerformAutoML !== null && { PerformAutoML: input.PerformAutoML }), ...(input.PerformHPO !== undefined && input.PerformHPO !== null && { PerformHPO: input.PerformHPO }), ...(input.PredictorName !== undefined && input.PredictorName !== null && { PredictorName: input.PredictorName }), @@ -4331,6 +4333,7 @@ const deserializeAws_json1_1DescribePredictorResponse = ( ? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.LastModificationTime))) : undefined, Message: __expectString(output.Message), + OptimizationMetric: __expectString(output.OptimizationMetric), PerformAutoML: __expectBoolean(output.PerformAutoML), PerformHPO: __expectBoolean(output.PerformHPO), PredictorArn: __expectString(output.PredictorArn), @@ -4357,6 +4360,8 @@ const deserializeAws_json1_1EncryptionConfig = (output: any, context: __SerdeCon const deserializeAws_json1_1ErrorMetric = (output: any, context: __SerdeContext): ErrorMetric => { return { ForecastType: __expectString(output.ForecastType), + MAPE: __limitedParseDouble(output.MAPE), + MASE: __limitedParseDouble(output.MASE), RMSE: __limitedParseDouble(output.RMSE), WAPE: __limitedParseDouble(output.WAPE), } as any; @@ -4566,6 +4571,7 @@ const deserializeAws_json1_1GetAccuracyMetricsResponse = ( ): GetAccuracyMetricsResponse => { return { AutoMLOverrideStrategy: __expectString(output.AutoMLOverrideStrategy), + OptimizationMetric: __expectString(output.OptimizationMetric), PredictorEvaluationResults: output.PredictorEvaluationResults !== undefined && output.PredictorEvaluationResults !== null ? deserializeAws_json1_1PredictorEvaluationResults(output.PredictorEvaluationResults, context) @@ -4733,6 +4739,7 @@ const deserializeAws_json1_1ListTagsForResourceResponse = ( const deserializeAws_json1_1Metrics = (output: any, context: __SerdeContext): Metrics => { return { + AverageWeightedQuantileLoss: __limitedParseDouble(output.AverageWeightedQuantileLoss), ErrorMetrics: output.ErrorMetrics !== undefined && output.ErrorMetrics !== null ? deserializeAws_json1_1ErrorMetrics(output.ErrorMetrics, context) diff --git a/clients/client-frauddetector/models/models_0.ts b/clients/client-frauddetector/models/models_0.ts index f117ec9a9752..265e33bee79b 100644 --- a/clients/client-frauddetector/models/models_0.ts +++ b/clients/client-frauddetector/models/models_0.ts @@ -2318,6 +2318,58 @@ export namespace GetEventPredictionRequest { }); } +export enum ModelSource { + SAGEMAKER = "SAGEMAKER", +} + +/** + *The Amazon SageMaker model.
+ */ +export interface ExternalModelSummary { + /** + *The endpoint of the Amazon SageMaker model.
+ */ + modelEndpoint?: string; + + /** + *The source of the model.
+ */ + modelSource?: ModelSource | string; +} + +export namespace ExternalModelSummary { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ExternalModelSummary): any => ({ + ...obj, + }); +} + +/** + *The fraud prediction scores from Amazon SageMaker model.
+ */ +export interface ExternalModelOutputs { + /** + *The Amazon SageMaker model.
+ */ + externalModel?: ExternalModelSummary; + + /** + *The fraud prediction scores from Amazon SageMaker model.
+ */ + outputs?: { [key: string]: string }; +} + +export namespace ExternalModelOutputs { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ExternalModelOutputs): any => ({ + ...obj, + }); +} + /** *The fraud prediction scores.
*/ @@ -2376,6 +2428,11 @@ export interface GetEventPredictionResult { *The results from the rules.
*/ ruleResults?: RuleResult[]; + + /** + *The model scores for Amazon SageMaker models.
+ */ + externalModelOutputs?: ExternalModelOutputs[]; } export namespace GetEventPredictionResult { @@ -2589,10 +2646,6 @@ export enum ModelEndpointStatus { DISSOCIATED = "DISSOCIATED", } -export enum ModelSource { - SAGEMAKER = "SAGEMAKER", -} - export enum ModelOutputDataFormat { CSV = "TEXT_CSV", JSONLINES = "APPLICATION_JSONLINES", diff --git a/clients/client-frauddetector/protocols/Aws_json1_1.ts b/clients/client-frauddetector/protocols/Aws_json1_1.ts index 563090c53717..0a50fe7425bf 100644 --- a/clients/client-frauddetector/protocols/Aws_json1_1.ts +++ b/clients/client-frauddetector/protocols/Aws_json1_1.ts @@ -165,6 +165,8 @@ import { EventType, ExternalEventsDetail, ExternalModel, + ExternalModelOutputs, + ExternalModelSummary, FieldValidationMessage, FileValidationMessage, GetBatchPredictionJobsRequest, @@ -7330,6 +7332,41 @@ const deserializeAws_json1_1ExternalModelList = (output: any, context: __SerdeCo }); }; +const deserializeAws_json1_1ExternalModelOutputs = (output: any, context: __SerdeContext): ExternalModelOutputs => { + return { + externalModel: + output.externalModel !== undefined && output.externalModel !== null + ? deserializeAws_json1_1ExternalModelSummary(output.externalModel, context) + : undefined, + outputs: + output.outputs !== undefined && output.outputs !== null + ? deserializeAws_json1_1ExternalModelPredictionMap(output.outputs, context) + : undefined, + } as any; +}; + +const deserializeAws_json1_1ExternalModelPredictionMap = ( + output: any, + context: __SerdeContext +): { [key: string]: string } => { + return Object.entries(output).reduce((acc: { [key: string]: string }, [key, value]: [string, any]) => { + if (value === null) { + return acc; + } + return { + ...acc, + [key]: __expectString(value) as any, + }; + }, {}); +}; + +const deserializeAws_json1_1ExternalModelSummary = (output: any, context: __SerdeContext): ExternalModelSummary => { + return { + modelEndpoint: __expectString(output.modelEndpoint), + modelSource: __expectString(output.modelSource), + } as any; +}; + const deserializeAws_json1_1FieldValidationMessage = (output: any, context: __SerdeContext): FieldValidationMessage => { return { content: __expectString(output.content), @@ -7442,6 +7479,10 @@ const deserializeAws_json1_1GetEventPredictionResult = ( context: __SerdeContext ): GetEventPredictionResult => { return { + externalModelOutputs: + output.externalModelOutputs !== undefined && output.externalModelOutputs !== null + ? deserializeAws_json1_1ListOfExternalModelOutputs(output.externalModelOutputs, context) + : undefined, modelScores: output.modelScores !== undefined && output.modelScores !== null ? deserializeAws_json1_1ListOfModelScores(output.modelScores, context) @@ -7629,6 +7670,20 @@ const deserializeAws_json1_1LabelSchema = (output: any, context: __SerdeContext) } as any; }; +const deserializeAws_json1_1ListOfExternalModelOutputs = ( + output: any, + context: __SerdeContext +): ExternalModelOutputs[] => { + return (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + if (entry === null) { + return null as any; + } + return deserializeAws_json1_1ExternalModelOutputs(entry, context); + }); +}; + const deserializeAws_json1_1ListOfLogOddsMetrics = (output: any, context: __SerdeContext): LogOddsMetric[] => { return (output || []) .filter((e: any) => e != null) diff --git a/clients/client-iot-jobs-data-plane/endpoints.ts b/clients/client-iot-jobs-data-plane/endpoints.ts index b49b063d9e57..9ab6ba53e440 100644 --- a/clients/client-iot-jobs-data-plane/endpoints.ts +++ b/clients/client-iot-jobs-data-plane/endpoints.ts @@ -1,7 +1,36 @@ import { PartitionHash, RegionHash, getRegionInfo } from "@aws-sdk/config-resolver"; import { RegionInfoProvider } from "@aws-sdk/types"; -const regionHash: RegionHash = {}; +const regionHash: RegionHash = { + "fips-ca-central-1": { + hostname: "data.jobs.iot-fips.ca-central-1.amazonaws.com", + signingRegion: "ca-central-1", + }, + "fips-us-east-1": { + hostname: "data.jobs.iot-fips.us-east-1.amazonaws.com", + signingRegion: "us-east-1", + }, + "fips-us-east-2": { + hostname: "data.jobs.iot-fips.us-east-2.amazonaws.com", + signingRegion: "us-east-2", + }, + "fips-us-gov-east-1": { + hostname: "data.jobs.iot-fips.us-gov-east-1.amazonaws.com", + signingRegion: "us-gov-east-1", + }, + "fips-us-gov-west-1": { + hostname: "data.jobs.iot-fips.us-gov-west-1.amazonaws.com", + signingRegion: "us-gov-west-1", + }, + "fips-us-west-1": { + hostname: "data.jobs.iot-fips.us-west-1.amazonaws.com", + signingRegion: "us-west-1", + }, + "fips-us-west-2": { + hostname: "data.jobs.iot-fips.us-west-2.amazonaws.com", + signingRegion: "us-west-2", + }, +}; const partitionHash: PartitionHash = { aws: { @@ -21,6 +50,11 @@ const partitionHash: PartitionHash = { "eu-west-1", "eu-west-2", "eu-west-3", + "fips-ca-central-1", + "fips-us-east-1", + "fips-us-east-2", + "fips-us-west-1", + "fips-us-west-2", "me-south-1", "sa-east-1", "us-east-1", @@ -43,7 +77,7 @@ const partitionHash: PartitionHash = { hostname: "data.jobs.iot.{region}.sc2s.sgov.gov", }, "aws-us-gov": { - regions: ["us-gov-east-1", "us-gov-west-1"], + regions: ["fips-us-gov-east-1", "fips-us-gov-west-1", "us-gov-east-1", "us-gov-west-1"], hostname: "data.jobs.iot.{region}.amazonaws.com", }, }; diff --git a/clients/client-kafka/Kafka.ts b/clients/client-kafka/Kafka.ts index ed1ec577dd07..4c1a31f7169c 100644 --- a/clients/client-kafka/Kafka.ts +++ b/clients/client-kafka/Kafka.ts @@ -141,6 +141,11 @@ import { UpdateMonitoringCommandInput, UpdateMonitoringCommandOutput, } from "./commands/UpdateMonitoringCommand"; +import { + UpdateSecurityCommand, + UpdateSecurityCommandInput, + UpdateSecurityCommandOutput, +} from "./commands/UpdateSecurityCommand"; import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types"; /** @@ -1088,4 +1093,36 @@ export class Kafka extends KafkaClient { return this.send(command, optionsOrCb); } } + + /** + *Updates the security settings for the cluster. You can use this operation to specify encryption and authentication on existing clusters.
+ */ + public updateSecurity( + args: UpdateSecurityCommandInput, + options?: __HttpHandlerOptions + ): PromiseUpdates the security settings for the cluster. You can use this operation to specify encryption and authentication on existing clusters.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { KafkaClient, UpdateSecurityCommand } from "@aws-sdk/client-kafka"; // ES Modules import + * // const { KafkaClient, UpdateSecurityCommand } = require("@aws-sdk/client-kafka"); // CommonJS import + * const client = new KafkaClient(config); + * const command = new UpdateSecurityCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link UpdateSecurityCommandInput} for command's `input` shape. + * @see {@link UpdateSecurityCommandOutput} for command's `response` shape. + * @see {@link KafkaClientResolvedConfig | config} for command's `input` shape. + * + */ +export class UpdateSecurityCommand extends $Command< + UpdateSecurityCommandInput, + UpdateSecurityCommandOutput, + KafkaClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: UpdateSecurityCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackList of ACM Certificate Authority ARNs.
*/ CertificateAuthorityArnList?: string[]; + + /** + *Specifies whether you want to enable or disable TLS authentication.
+ */ + Enabled?: boolean; } export namespace Tls { @@ -188,6 +193,22 @@ export namespace Tls { }); } +export interface Unauthenticated { + /** + *Specifies whether you want to enable or disable unauthenticated traffic to your cluster.
+ */ + Enabled?: boolean; +} + +export namespace Unauthenticated { + /** + * @internal + */ + export const filterSensitiveLog = (obj: Unauthenticated): any => ({ + ...obj, + }); +} + /** *Includes all client authentication information.
*/ @@ -201,6 +222,11 @@ export interface ClientAuthentication { *Details for ClientAuthentication using TLS.
*/ Tls?: Tls; + + /** + *Contains information about unauthenticated traffic to the cluster.
+ */ + Unauthenticated?: Unauthenticated; } export namespace ClientAuthentication { @@ -727,11 +753,25 @@ export interface MutableClusterInfo { */ KafkaVersion?: string; + /** + *You can configure your MSK cluster to send broker logs to different destination types. This is a container for the configuration details related to broker logs.
+ */ LoggingInfo?: LoggingInfo; + /** *Information about the Amazon MSK broker type.
*/ InstanceType?: string; + + /** + *Includes all client authentication information.
+ */ + ClientAuthentication?: ClientAuthentication; + + /** + *Includes all encryption-related information.
+ */ + EncryptionInfo?: EncryptionInfo; } export namespace MutableClusterInfo { @@ -2778,3 +2818,55 @@ export namespace UpdateMonitoringResponse { ...obj, }); } + +export interface UpdateSecurityRequest { + /** + *Includes all client authentication related information.
+ */ + ClientAuthentication?: ClientAuthentication; + + /** + *The Amazon Resource Name (ARN) that uniquely identifies the cluster.
+ */ + ClusterArn: string | undefined; + + /** + *The version of the MSK cluster to update. Cluster versions aren't simple numbers. You can describe an MSK cluster to find its version. When this update operation is successful, it generates a new cluster version.
+ */ + CurrentVersion: string | undefined; + + /** + *Includes all encryption-related information.
+ */ + EncryptionInfo?: EncryptionInfo; +} + +export namespace UpdateSecurityRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UpdateSecurityRequest): any => ({ + ...obj, + }); +} + +export interface UpdateSecurityResponse { + /** + *The Amazon Resource Name (ARN) of the cluster.
+ */ + ClusterArn?: string; + + /** + *The Amazon Resource Name (ARN) of the cluster operation.
+ */ + ClusterOperationArn?: string; +} + +export namespace UpdateSecurityResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UpdateSecurityResponse): any => ({ + ...obj, + }); +} diff --git a/clients/client-kafka/protocols/Aws_restJson1.ts b/clients/client-kafka/protocols/Aws_restJson1.ts index e28f92b96345..06c705270cd1 100644 --- a/clients/client-kafka/protocols/Aws_restJson1.ts +++ b/clients/client-kafka/protocols/Aws_restJson1.ts @@ -76,6 +76,7 @@ import { UpdateConfigurationCommandOutput, } from "../commands/UpdateConfigurationCommand"; import { UpdateMonitoringCommandInput, UpdateMonitoringCommandOutput } from "../commands/UpdateMonitoringCommand"; +import { UpdateSecurityCommandInput, UpdateSecurityCommandOutput } from "../commands/UpdateSecurityCommand"; import { BadRequestException, BrokerEBSVolumeInfo, @@ -124,6 +125,7 @@ import { StorageInfo, Tls, TooManyRequestsException, + Unauthenticated, UnauthorizedException, UnprocessedScramSecret, ZookeeperNodeInfo, @@ -1158,6 +1160,49 @@ export const serializeAws_restJson1UpdateMonitoringCommand = async ( }); }; +export const serializeAws_restJson1UpdateSecurityCommand = async ( + input: UpdateSecurityCommandInput, + 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 || ""}` + "/v1/clusters/{ClusterArn}/security"; + if (input.ClusterArn !== undefined) { + const labelValue: string = input.ClusterArn; + if (labelValue.length <= 0) { + throw new Error("Empty value provided for input HTTP label: ClusterArn."); + } + resolvedPath = resolvedPath.replace("{ClusterArn}", __extendedEncodeURIComponent(labelValue)); + } else { + throw new Error("No value provided for input HTTP label: ClusterArn."); + } + let body: any; + body = JSON.stringify({ + ...(input.ClientAuthentication !== undefined && + input.ClientAuthentication !== null && { + clientAuthentication: serializeAws_restJson1ClientAuthentication(input.ClientAuthentication, context), + }), + ...(input.CurrentVersion !== undefined && + input.CurrentVersion !== null && { currentVersion: input.CurrentVersion }), + ...(input.EncryptionInfo !== undefined && + input.EncryptionInfo !== null && { + encryptionInfo: serializeAws_restJson1EncryptionInfo(input.EncryptionInfo, context), + }), + }); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "PATCH", + headers, + path: resolvedPath, + body, + }); +}; + export const deserializeAws_restJson1BatchAssociateScramSecretCommand = async ( output: __HttpResponse, context: __SerdeContext @@ -4012,6 +4057,113 @@ const deserializeAws_restJson1UpdateMonitoringCommandError = async ( return Promise.reject(Object.assign(new Error(message), response)); }; +export const deserializeAws_restJson1UpdateSecurityCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): PromiseProvides information on a specified dataset such as the schema location, status, and so - * on.
+ *Provides a JSON description of the data that is in each time series dataset, including names, column names, and data types.
*/ public describeDataset( args: DescribeDatasetCommandInput, @@ -401,7 +400,7 @@ export class LookoutEquipment extends LookoutEquipmentClient { } /** - *Provides overall information about a specific ML model, including model name and ARN, + *
Provides a JSON containing the overall information about a specific ML model, including model name and ARN, * dataset, training and evaluation information, status, and so on.
*/ public describeModel( diff --git a/clients/client-lookoutequipment/commands/DescribeDatasetCommand.ts b/clients/client-lookoutequipment/commands/DescribeDatasetCommand.ts index 94afaa91789d..73db901d2f67 100644 --- a/clients/client-lookoutequipment/commands/DescribeDatasetCommand.ts +++ b/clients/client-lookoutequipment/commands/DescribeDatasetCommand.ts @@ -21,8 +21,7 @@ export interface DescribeDatasetCommandInput extends DescribeDatasetRequest {} export interface DescribeDatasetCommandOutput extends DescribeDatasetResponse, __MetadataBearer {} /** - *Provides information on a specified dataset such as the schema location, status, and so - * on.
+ *Provides a JSON description of the data that is in each time series dataset, including names, column names, and data types.
* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-lookoutequipment/commands/DescribeModelCommand.ts b/clients/client-lookoutequipment/commands/DescribeModelCommand.ts index 45efbb130c88..0a890a37ed52 100644 --- a/clients/client-lookoutequipment/commands/DescribeModelCommand.ts +++ b/clients/client-lookoutequipment/commands/DescribeModelCommand.ts @@ -21,7 +21,7 @@ export interface DescribeModelCommandInput extends DescribeModelRequest {} export interface DescribeModelCommandOutput extends DescribeModelResponse, __MetadataBearer {} /** - *Provides overall information about a specific ML model, including model name and ARN, + *
Provides a JSON containing the overall information about a specific ML model, including model name and ARN, * dataset, training and evaluation information, status, and so on.
* @example * Use a bare-bones client and the command you need to make an API call. diff --git a/clients/client-lookoutequipment/models/models_0.ts b/clients/client-lookoutequipment/models/models_0.ts index 8862f3d7f85a..e2951eae3d72 100644 --- a/clients/client-lookoutequipment/models/models_0.ts +++ b/clients/client-lookoutequipment/models/models_0.ts @@ -96,7 +96,7 @@ export interface CreateDatasetRequest { DatasetSchema: DatasetSchema | undefined; /** - *Provides the identifier of the AWS KMS customer master key (CMK) used to encrypt dataset data by Amazon Lookout for Equipment.
+ *Provides the identifier of the KMS key used to encrypt dataset data by Amazon Lookout for Equipment.
*/ ServerSideKmsKeyId?: string; @@ -228,7 +228,7 @@ export namespace ValidationException { } /** - *>> Specifies configuration information for the input data for the inference, including + *
Specifies configuration information for the input data for the inference, including * timestamp format and delimiter.
*/ export interface InferenceInputNameConfiguration { @@ -279,7 +279,7 @@ export namespace InferenceS3InputConfiguration { } /** - *> Specifies configuration information for the input data for the inference, including S3 + *
Specifies configuration information for the input data for the inference, including S3 * location of input data..
*/ export interface InferenceInputConfiguration { @@ -295,7 +295,7 @@ export interface InferenceInputConfiguration { InputTimeZoneOffset?: string; /** - *> Specifies configuration information for the input data for the inference, including + *
Specifies configuration information for the input data for the inference, including * timestamp format and delimiter.
*/ InferenceInputNameConfiguration?: InferenceInputNameConfiguration; @@ -382,7 +382,7 @@ export interface CreateInferenceSchedulerRequest { InferenceSchedulerName: string | undefined; /** - *A period of time (in minutes) by which inference on the data is delayed after the data + *
A period of time (in minutes) by which inference on the data is delayed after the data * starts. For instance, if you select an offset delay time of five minutes, inference will * not begin on the data until the first data measurement after the five minute mark. For example, if * five minutes is selected, the inference scheduler will wake up at the configured frequency with the @@ -419,7 +419,7 @@ export interface CreateInferenceSchedulerRequest { RoleArn: string | undefined; /** - *
Provides the identifier of the AWS KMS customer master key (CMK) used to encrypt inference scheduler data by Amazon Lookout for Equipment.
+ *Provides the identifier of the KMS key used to encrypt inference scheduler data by Amazon Lookout for Equipment.
*/ ServerSideKmsKeyId?: string; @@ -667,7 +667,7 @@ export interface CreateModelRequest { DataPreProcessingConfiguration?: DataPreProcessingConfiguration; /** - *Provides the identifier of the AWS KMS customer master key (CMK) used to encrypt model data by Amazon Lookout for Equipment.
+ *Provides the identifier of the KMS key used to encrypt model data by Amazon Lookout for Equipment.
*/ ServerSideKmsKeyId?: string; @@ -675,6 +675,11 @@ export interface CreateModelRequest { *Any tags associated with the ML model being created.
*/ Tags?: Tag[]; + + /** + *Indicates that the asset associated with this sensor has been shut off. As long as this condition is met, Lookout for Equipment will not use data from this asset for training, evaluation, or inference.
+ */ + OffCondition?: string; } export namespace CreateModelRequest { @@ -928,7 +933,7 @@ export interface DescribeDatasetResponse { Schema?: __LazyJsonString | string; /** - *Provides the identifier of the AWS KMS customer master key (CMK) used to encrypt dataset data by Amazon Lookout for Equipment.
+ *Provides the identifier of the KMS key used to encrypt dataset data by Amazon Lookout for Equipment.
*/ ServerSideKmsKeyId?: string; @@ -1038,7 +1043,7 @@ export interface DescribeInferenceSchedulerResponse { RoleArn?: string; /** - *Provides the identifier of the AWS KMS customer master key (CMK) used to encrypt inference scheduler data by Amazon Lookout for Equipment.
+ *Provides the identifier of the KMS key used to encrypt inference scheduler data by Amazon Lookout for Equipment.
*/ ServerSideKmsKeyId?: string; } @@ -1187,9 +1192,14 @@ export interface DescribeModelResponse { CreatedAt?: Date; /** - *Provides the identifier of the AWS KMS customer master key (CMK) used to encrypt model data by Amazon Lookout for Equipment.
+ *Provides the identifier of the KMS key used to encrypt model data by Amazon Lookout for Equipment.
*/ ServerSideKmsKeyId?: string; + + /** + *Indicates that the asset associated with this sensor has been shut off. As long as this condition is met, Lookout for Equipment will not use data from this asset for training, evaluation, or inference.
+ */ + OffCondition?: string; } export namespace DescribeModelResponse { @@ -1626,7 +1636,7 @@ export interface InferenceSchedulerSummary { Status?: InferenceSchedulerStatus | string; /** - *> A period of time (in minutes) by which inference on the data is delayed after the data + *
A period of time (in minutes) by which inference on the data is delayed after the data * starts. For instance, if an offset delay time of five minutes was selected, inference will * not begin on the data until the first data measurement after the five minute mark. For example, if * five minutes is selected, the inference scheduler will wake up at the configured frequency with the @@ -2051,7 +2061,7 @@ export interface UpdateInferenceSchedulerRequest { InferenceSchedulerName: string | undefined; /** - *
> A period of time (in minutes) by which inference on the data is delayed after the data + *
A period of time (in minutes) by which inference on the data is delayed after the data
* starts. For instance, if you select an offset delay time of five minutes, inference will
* not begin on the data until the first data measurement after the five minute mark. For example, if
* five minutes is selected, the inference scheduler will wake up at the configured frequency with the
diff --git a/clients/client-lookoutequipment/protocols/Aws_json1_0.ts b/clients/client-lookoutequipment/protocols/Aws_json1_0.ts
index 32b66893b130..756218a9235c 100644
--- a/clients/client-lookoutequipment/protocols/Aws_json1_0.ts
+++ b/clients/client-lookoutequipment/protocols/Aws_json1_0.ts
@@ -2550,6 +2550,7 @@ const serializeAws_json1_0CreateModelRequest = (input: CreateModelRequest, conte
LabelsInputConfiguration: serializeAws_json1_0LabelsInputConfiguration(input.LabelsInputConfiguration, context),
}),
...(input.ModelName !== undefined && input.ModelName !== null && { ModelName: input.ModelName }),
+ ...(input.OffCondition !== undefined && input.OffCondition !== null && { OffCondition: input.OffCondition }),
...(input.RoleArn !== undefined && input.RoleArn !== null && { RoleArn: input.RoleArn }),
...(input.ServerSideKmsKeyId !== undefined &&
input.ServerSideKmsKeyId !== null && { ServerSideKmsKeyId: input.ServerSideKmsKeyId }),
@@ -3143,6 +3144,7 @@ const deserializeAws_json1_0DescribeModelResponse = (output: any, context: __Ser
? new __LazyJsonString(output.ModelMetrics)
: undefined,
ModelName: __expectString(output.ModelName),
+ OffCondition: __expectString(output.OffCondition),
RoleArn: __expectString(output.RoleArn),
Schema: output.Schema !== undefined && output.Schema !== null ? new __LazyJsonString(output.Schema) : undefined,
ServerSideKmsKeyId: __expectString(output.ServerSideKmsKeyId),
diff --git a/clients/client-mediapackage/models/models_0.ts b/clients/client-mediapackage/models/models_0.ts
index 19dc218db955..a9779925c9ce 100644
--- a/clients/client-mediapackage/models/models_0.ts
+++ b/clients/client-mediapackage/models/models_0.ts
@@ -468,7 +468,7 @@ export enum PresetSpeke20Video {
* The encryption contract defines which content keys are used to encrypt the audio and video tracks in your stream.
* To configure the encryption contract, specify which audio and video encryption presets to use.
* Note the following considerations when using encryptionContractConfiguration:
- * encryptionContractConfiguration can be used for DASH endpoints that use SPEKE 2.0. SPEKE 2.0 relies on the CPIX 2.3 specification.
+ * encryptionContractConfiguration can be used for DASH or CMAF endpoints that use SPEKE 2.0. SPEKE 2.0 relies on the CPIX 2.3 specification.
* You must disable key rotation for this endpoint by setting keyRotationIntervalSeconds to 0.
*/
export interface EncryptionContractConfiguration {
@@ -508,7 +508,7 @@ export interface SpekeKeyProvider {
* The encryption contract defines which content keys are used to encrypt the audio and video tracks in your stream.
* To configure the encryption contract, specify which audio and video encryption presets to use.
* Note the following considerations when using encryptionContractConfiguration:
- * encryptionContractConfiguration can be used for DASH endpoints that use SPEKE 2.0. SPEKE 2.0 relies on the CPIX 2.3 specification.
+ * encryptionContractConfiguration can be used for DASH or CMAF endpoints that use SPEKE 2.0. SPEKE 2.0 relies on the CPIX 2.3 specification.
* You must disable key rotation for this endpoint by setting keyRotationIntervalSeconds to 0.
*/
EncryptionContractConfiguration?: EncryptionContractConfiguration;
diff --git a/clients/client-network-firewall/endpoints.ts b/clients/client-network-firewall/endpoints.ts
index d578cf6d7525..c9698cdc8de7 100644
--- a/clients/client-network-firewall/endpoints.ts
+++ b/clients/client-network-firewall/endpoints.ts
@@ -1,7 +1,36 @@
import { PartitionHash, RegionHash, getRegionInfo } from "@aws-sdk/config-resolver";
import { RegionInfoProvider } from "@aws-sdk/types";
-const regionHash: RegionHash = {};
+const regionHash: RegionHash = {
+ "fips-ca-central-1": {
+ hostname: "network-firewall-fips.ca-central-1.amazonaws.com",
+ signingRegion: "ca-central-1",
+ },
+ "fips-us-east-1": {
+ hostname: "network-firewall-fips.us-east-1.amazonaws.com",
+ signingRegion: "us-east-1",
+ },
+ "fips-us-east-2": {
+ hostname: "network-firewall-fips.us-east-2.amazonaws.com",
+ signingRegion: "us-east-2",
+ },
+ "fips-us-gov-east-1": {
+ hostname: "network-firewall-fips.us-gov-east-1.amazonaws.com",
+ signingRegion: "us-gov-east-1",
+ },
+ "fips-us-gov-west-1": {
+ hostname: "network-firewall-fips.us-gov-west-1.amazonaws.com",
+ signingRegion: "us-gov-west-1",
+ },
+ "fips-us-west-1": {
+ hostname: "network-firewall-fips.us-west-1.amazonaws.com",
+ signingRegion: "us-west-1",
+ },
+ "fips-us-west-2": {
+ hostname: "network-firewall-fips.us-west-2.amazonaws.com",
+ signingRegion: "us-west-2",
+ },
+};
const partitionHash: PartitionHash = {
aws: {
@@ -21,6 +50,11 @@ const partitionHash: PartitionHash = {
"eu-west-1",
"eu-west-2",
"eu-west-3",
+ "fips-ca-central-1",
+ "fips-us-east-1",
+ "fips-us-east-2",
+ "fips-us-west-1",
+ "fips-us-west-2",
"me-south-1",
"sa-east-1",
"us-east-1",
@@ -43,7 +77,7 @@ const partitionHash: PartitionHash = {
hostname: "network-firewall.{region}.sc2s.sgov.gov",
},
"aws-us-gov": {
- regions: ["us-gov-east-1", "us-gov-west-1"],
+ regions: ["fips-us-gov-east-1", "fips-us-gov-west-1", "us-gov-east-1", "us-gov-west-1"],
hostname: "network-firewall.{region}.amazonaws.com",
},
};
diff --git a/clients/client-opensearch/.gitignore b/clients/client-opensearch/.gitignore
new file mode 100644
index 000000000000..5f8b6ab5eab2
--- /dev/null
+++ b/clients/client-opensearch/.gitignore
@@ -0,0 +1,9 @@
+/node_modules/
+/build/
+/coverage/
+/docs/
+/dist/
+*.tsbuildinfo
+*.tgz
+*.log
+package-lock.json
diff --git a/clients/client-opensearch/.npmignore b/clients/client-opensearch/.npmignore
new file mode 100644
index 000000000000..b7ff81137c4a
--- /dev/null
+++ b/clients/client-opensearch/.npmignore
@@ -0,0 +1,4 @@
+/coverage/
+/docs/
+tsconfig.test.json
+*.tsbuildinfo
diff --git a/clients/client-opensearch/LICENSE b/clients/client-opensearch/LICENSE
new file mode 100644
index 000000000000..f9e0c8672bca
--- /dev/null
+++ b/clients/client-opensearch/LICENSE
@@ -0,0 +1,201 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "{}"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright 2018-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/clients/client-opensearch/OpenSearch.ts b/clients/client-opensearch/OpenSearch.ts
new file mode 100644
index 000000000000..f3efaadc8a7b
--- /dev/null
+++ b/clients/client-opensearch/OpenSearch.ts
@@ -0,0 +1,1458 @@
+import { OpenSearchClient } from "./OpenSearchClient";
+import {
+ AcceptInboundConnectionCommand,
+ AcceptInboundConnectionCommandInput,
+ AcceptInboundConnectionCommandOutput,
+} from "./commands/AcceptInboundConnectionCommand";
+import { AddTagsCommand, AddTagsCommandInput, AddTagsCommandOutput } from "./commands/AddTagsCommand";
+import {
+ AssociatePackageCommand,
+ AssociatePackageCommandInput,
+ AssociatePackageCommandOutput,
+} from "./commands/AssociatePackageCommand";
+import {
+ CancelServiceSoftwareUpdateCommand,
+ CancelServiceSoftwareUpdateCommandInput,
+ CancelServiceSoftwareUpdateCommandOutput,
+} from "./commands/CancelServiceSoftwareUpdateCommand";
+import {
+ CreateDomainCommand,
+ CreateDomainCommandInput,
+ CreateDomainCommandOutput,
+} from "./commands/CreateDomainCommand";
+import {
+ CreateOutboundConnectionCommand,
+ CreateOutboundConnectionCommandInput,
+ CreateOutboundConnectionCommandOutput,
+} from "./commands/CreateOutboundConnectionCommand";
+import {
+ CreatePackageCommand,
+ CreatePackageCommandInput,
+ CreatePackageCommandOutput,
+} from "./commands/CreatePackageCommand";
+import {
+ DeleteDomainCommand,
+ DeleteDomainCommandInput,
+ DeleteDomainCommandOutput,
+} from "./commands/DeleteDomainCommand";
+import {
+ DeleteInboundConnectionCommand,
+ DeleteInboundConnectionCommandInput,
+ DeleteInboundConnectionCommandOutput,
+} from "./commands/DeleteInboundConnectionCommand";
+import {
+ DeleteOutboundConnectionCommand,
+ DeleteOutboundConnectionCommandInput,
+ DeleteOutboundConnectionCommandOutput,
+} from "./commands/DeleteOutboundConnectionCommand";
+import {
+ DeletePackageCommand,
+ DeletePackageCommandInput,
+ DeletePackageCommandOutput,
+} from "./commands/DeletePackageCommand";
+import {
+ DescribeDomainAutoTunesCommand,
+ DescribeDomainAutoTunesCommandInput,
+ DescribeDomainAutoTunesCommandOutput,
+} from "./commands/DescribeDomainAutoTunesCommand";
+import {
+ DescribeDomainCommand,
+ DescribeDomainCommandInput,
+ DescribeDomainCommandOutput,
+} from "./commands/DescribeDomainCommand";
+import {
+ DescribeDomainConfigCommand,
+ DescribeDomainConfigCommandInput,
+ DescribeDomainConfigCommandOutput,
+} from "./commands/DescribeDomainConfigCommand";
+import {
+ DescribeDomainsCommand,
+ DescribeDomainsCommandInput,
+ DescribeDomainsCommandOutput,
+} from "./commands/DescribeDomainsCommand";
+import {
+ DescribeInboundConnectionsCommand,
+ DescribeInboundConnectionsCommandInput,
+ DescribeInboundConnectionsCommandOutput,
+} from "./commands/DescribeInboundConnectionsCommand";
+import {
+ DescribeInstanceTypeLimitsCommand,
+ DescribeInstanceTypeLimitsCommandInput,
+ DescribeInstanceTypeLimitsCommandOutput,
+} from "./commands/DescribeInstanceTypeLimitsCommand";
+import {
+ DescribeOutboundConnectionsCommand,
+ DescribeOutboundConnectionsCommandInput,
+ DescribeOutboundConnectionsCommandOutput,
+} from "./commands/DescribeOutboundConnectionsCommand";
+import {
+ DescribePackagesCommand,
+ DescribePackagesCommandInput,
+ DescribePackagesCommandOutput,
+} from "./commands/DescribePackagesCommand";
+import {
+ DescribeReservedInstanceOfferingsCommand,
+ DescribeReservedInstanceOfferingsCommandInput,
+ DescribeReservedInstanceOfferingsCommandOutput,
+} from "./commands/DescribeReservedInstanceOfferingsCommand";
+import {
+ DescribeReservedInstancesCommand,
+ DescribeReservedInstancesCommandInput,
+ DescribeReservedInstancesCommandOutput,
+} from "./commands/DescribeReservedInstancesCommand";
+import {
+ DissociatePackageCommand,
+ DissociatePackageCommandInput,
+ DissociatePackageCommandOutput,
+} from "./commands/DissociatePackageCommand";
+import {
+ GetCompatibleVersionsCommand,
+ GetCompatibleVersionsCommandInput,
+ GetCompatibleVersionsCommandOutput,
+} from "./commands/GetCompatibleVersionsCommand";
+import {
+ GetPackageVersionHistoryCommand,
+ GetPackageVersionHistoryCommandInput,
+ GetPackageVersionHistoryCommandOutput,
+} from "./commands/GetPackageVersionHistoryCommand";
+import {
+ GetUpgradeHistoryCommand,
+ GetUpgradeHistoryCommandInput,
+ GetUpgradeHistoryCommandOutput,
+} from "./commands/GetUpgradeHistoryCommand";
+import {
+ GetUpgradeStatusCommand,
+ GetUpgradeStatusCommandInput,
+ GetUpgradeStatusCommandOutput,
+} from "./commands/GetUpgradeStatusCommand";
+import {
+ ListDomainNamesCommand,
+ ListDomainNamesCommandInput,
+ ListDomainNamesCommandOutput,
+} from "./commands/ListDomainNamesCommand";
+import {
+ ListDomainsForPackageCommand,
+ ListDomainsForPackageCommandInput,
+ ListDomainsForPackageCommandOutput,
+} from "./commands/ListDomainsForPackageCommand";
+import {
+ ListInstanceTypeDetailsCommand,
+ ListInstanceTypeDetailsCommandInput,
+ ListInstanceTypeDetailsCommandOutput,
+} from "./commands/ListInstanceTypeDetailsCommand";
+import {
+ ListPackagesForDomainCommand,
+ ListPackagesForDomainCommandInput,
+ ListPackagesForDomainCommandOutput,
+} from "./commands/ListPackagesForDomainCommand";
+import { ListTagsCommand, ListTagsCommandInput, ListTagsCommandOutput } from "./commands/ListTagsCommand";
+import {
+ ListVersionsCommand,
+ ListVersionsCommandInput,
+ ListVersionsCommandOutput,
+} from "./commands/ListVersionsCommand";
+import {
+ PurchaseReservedInstanceOfferingCommand,
+ PurchaseReservedInstanceOfferingCommandInput,
+ PurchaseReservedInstanceOfferingCommandOutput,
+} from "./commands/PurchaseReservedInstanceOfferingCommand";
+import {
+ RejectInboundConnectionCommand,
+ RejectInboundConnectionCommandInput,
+ RejectInboundConnectionCommandOutput,
+} from "./commands/RejectInboundConnectionCommand";
+import { RemoveTagsCommand, RemoveTagsCommandInput, RemoveTagsCommandOutput } from "./commands/RemoveTagsCommand";
+import {
+ StartServiceSoftwareUpdateCommand,
+ StartServiceSoftwareUpdateCommandInput,
+ StartServiceSoftwareUpdateCommandOutput,
+} from "./commands/StartServiceSoftwareUpdateCommand";
+import {
+ UpdateDomainConfigCommand,
+ UpdateDomainConfigCommandInput,
+ UpdateDomainConfigCommandOutput,
+} from "./commands/UpdateDomainConfigCommand";
+import {
+ UpdatePackageCommand,
+ UpdatePackageCommandInput,
+ UpdatePackageCommandOutput,
+} from "./commands/UpdatePackageCommand";
+import {
+ UpgradeDomainCommand,
+ UpgradeDomainCommandInput,
+ UpgradeDomainCommandOutput,
+} from "./commands/UpgradeDomainCommand";
+import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types";
+
+/**
+ *
Use the Amazon OpenSearch configuration API to create, configure, and manage Amazon OpenSearch Service domains.
+ *For sample code that uses the configuration API, see the + * Amazon OpenSearch Service Developer Guide. + * The guide also contains + * sample + * code for sending signed HTTP requests to the OpenSearch APIs. + *
+ *The endpoint for configuration service requests is region-specific: es.region.amazonaws.com. + * For example, es.us-east-1.amazonaws.com. For a current list of supported regions and endpoints, + * see Regions and Endpoints. + *
+ */ +export class OpenSearch extends OpenSearchClient { + /** + *Allows the remote domain owner to accept an inbound cross-cluster connection request.
+ */ + public acceptInboundConnection( + args: AcceptInboundConnectionCommandInput, + options?: __HttpHandlerOptions + ): PromiseAttaches tags to an existing domain. Tags are a set of case-sensitive key value pairs. An + * domain can have up to 10 tags. See + * + * Tagging Amazon OpenSearch Service domains for more information. + *
+ */ + public addTags(args: AddTagsCommandInput, options?: __HttpHandlerOptions): PromiseAssociates a package with an Amazon OpenSearch Service domain.
+ */ + public associatePackage( + args: AssociatePackageCommandInput, + options?: __HttpHandlerOptions + ): PromiseCancels a scheduled service software update for an Amazon OpenSearch Service domain. You can only perform this operation before
+ * the AutomatedUpdateDate
and when the UpdateStatus
is in the PENDING_UPDATE
state.
+ *
Creates a new Amazon OpenSearch Service domain. For more information, + * see Creating and managing Amazon OpenSearch Service domains + * in the Amazon OpenSearch Service Developer Guide. + *
+ */ + public createDomain( + args: CreateDomainCommandInput, + options?: __HttpHandlerOptions + ): PromiseCreates a new cross-cluster connection from a local OpenSearch domain to a remote OpenSearch domain.
+ */ + public createOutboundConnection( + args: CreateOutboundConnectionCommandInput, + options?: __HttpHandlerOptions + ): PromiseCreate a package for use with Amazon OpenSearch Service domains.
+ */ + public createPackage( + args: CreatePackageCommandInput, + options?: __HttpHandlerOptions + ): PromisePermanently deletes the specified domain and all of its data. Once a domain is deleted, it cannot + * be recovered. + *
+ */ + public deleteDomain( + args: DeleteDomainCommandInput, + options?: __HttpHandlerOptions + ): PromiseAllows the remote domain owner to delete an existing inbound cross-cluster connection.
+ */ + public deleteInboundConnection( + args: DeleteInboundConnectionCommandInput, + options?: __HttpHandlerOptions + ): PromiseAllows the local domain owner to delete an existing outbound cross-cluster connection.
+ */ + public deleteOutboundConnection( + args: DeleteOutboundConnectionCommandInput, + options?: __HttpHandlerOptions + ): PromiseDeletes the package.
+ */ + public deletePackage( + args: DeletePackageCommandInput, + options?: __HttpHandlerOptions + ): PromiseReturns domain configuration information about the specified domain, including the domain ID, + * domain endpoint, and domain ARN. + *
+ */ + public describeDomain( + args: DescribeDomainCommandInput, + options?: __HttpHandlerOptions + ): PromiseProvides scheduled Auto-Tune action details for the domain, such as Auto-Tune action type, + * description, severity, and scheduled date. + *
+ */ + public describeDomainAutoTunes( + args: DescribeDomainAutoTunesCommandInput, + options?: __HttpHandlerOptions + ): PromiseProvides cluster configuration information about the specified domain, such as the state, creation + * date, update version, and update date for cluster options. + *
+ */ + public describeDomainConfig( + args: DescribeDomainConfigCommandInput, + options?: __HttpHandlerOptions + ): PromiseReturns domain configuration information about the specified domains, including the domain ID, + * domain endpoint, and domain ARN. + *
+ */ + public describeDomains( + args: DescribeDomainsCommandInput, + options?: __HttpHandlerOptions + ): PromiseLists all the inbound cross-cluster connections for a remote domain.
+ */ + public describeInboundConnections( + args: DescribeInboundConnectionsCommandInput, + options?: __HttpHandlerOptions + ): Promise
+ * Describe the limits for a given instance type and OpenSearch or Elasticsearch version.
+ * When modifying an existing domain, specify the
+ *
+ * DomainName
+ *
+ * to see which limits you can modify.
+ *
Lists all the outbound cross-cluster connections for a local domain.
+ */ + public describeOutboundConnections( + args: DescribeOutboundConnectionsCommandInput, + options?: __HttpHandlerOptions + ): PromiseDescribes all packages available to Amazon OpenSearch Service domains. Includes options for filtering, limiting the number of results, + * and pagination. + *
+ */ + public describePackages( + args: DescribePackagesCommandInput, + options?: __HttpHandlerOptions + ): PromiseLists available reserved OpenSearch instance offerings.
+ */ + public describeReservedInstanceOfferings( + args: DescribeReservedInstanceOfferingsCommandInput, + options?: __HttpHandlerOptions + ): PromiseReturns information about reserved OpenSearch instances for this account.
+ */ + public describeReservedInstances( + args: DescribeReservedInstancesCommandInput, + options?: __HttpHandlerOptions + ): PromiseDissociates a package from the Amazon OpenSearch Service domain.
+ */ + public dissociatePackage( + args: DissociatePackageCommandInput, + options?: __HttpHandlerOptions + ): Promise
+ * Returns a list of upgrade-compatible versions of OpenSearch/Elasticsearch.
+ * You can optionally pass a
+ *
+ * DomainName
+ *
+ * to get all upgrade-compatible versions of OpenSearch/Elasticsearch for that specific domain.
+ *
Returns a list of package versions, along with their creation time and commit message.
+ */ + public getPackageVersionHistory( + args: GetPackageVersionHistoryCommandInput, + options?: __HttpHandlerOptions + ): PromiseRetrieves the complete history of the last 10 upgrades performed on the domain.
+ */ + public getUpgradeHistory( + args: GetUpgradeHistoryCommandInput, + options?: __HttpHandlerOptions + ): PromiseRetrieves the latest status of the last upgrade or upgrade eligibility check performed on the domain. + *
+ */ + public getUpgradeStatus( + args: GetUpgradeStatusCommandInput, + options?: __HttpHandlerOptions + ): PromiseReturns the names of all domains owned by the current user's account.
+ */ + public listDomainNames( + args: ListDomainNamesCommandInput, + options?: __HttpHandlerOptions + ): PromiseLists all Amazon OpenSearch Service domains associated with the package.
+ */ + public listDomainsForPackage( + args: ListDomainsForPackageCommandInput, + options?: __HttpHandlerOptions + ): PromiseLists all packages associated with the Amazon OpenSearch Service domain.
+ */ + public listPackagesForDomain( + args: ListPackagesForDomainCommandInput, + options?: __HttpHandlerOptions + ): PromiseReturns all tags for the given domain.
+ */ + public listTags(args: ListTagsCommandInput, options?: __HttpHandlerOptions): PromiseList all supported versions of OpenSearch and Elasticsearch.
+ */ + public listVersions( + args: ListVersionsCommandInput, + options?: __HttpHandlerOptions + ): PromiseAllows you to purchase reserved OpenSearch instances.
+ */ + public purchaseReservedInstanceOffering( + args: PurchaseReservedInstanceOfferingCommandInput, + options?: __HttpHandlerOptions + ): PromiseAllows the remote domain owner to reject an inbound cross-cluster connection request.
+ */ + public rejectInboundConnection( + args: RejectInboundConnectionCommandInput, + options?: __HttpHandlerOptions + ): PromiseRemoves the specified set of tags from the given domain.
+ */ + public removeTags(args: RemoveTagsCommandInput, options?: __HttpHandlerOptions): PromiseSchedules a service software update for an Amazon OpenSearch Service domain.
+ */ + public startServiceSoftwareUpdate( + args: StartServiceSoftwareUpdateCommandInput, + options?: __HttpHandlerOptions + ): PromiseModifies the cluster configuration of the specified domain, such as setting the instance type + * and the number of instances. + *
+ */ + public updateDomainConfig( + args: UpdateDomainConfigCommandInput, + options?: __HttpHandlerOptions + ): PromiseUpdates a package for use with Amazon OpenSearch Service domains.
+ */ + public updatePackage( + args: UpdatePackageCommandInput, + options?: __HttpHandlerOptions + ): PromiseAllows you to either upgrade your domain or perform an upgrade eligibility check to a compatible version of OpenSearch or Elasticsearch. + *
+ */ + public upgradeDomain( + args: UpgradeDomainCommandInput, + options?: __HttpHandlerOptions + ): PromiseUse the Amazon OpenSearch configuration API to create, configure, and manage Amazon OpenSearch Service domains.
+ *For sample code that uses the configuration API, see the + * Amazon OpenSearch Service Developer Guide. + * The guide also contains + * sample + * code for sending signed HTTP requests to the OpenSearch APIs. + *
+ *The endpoint for configuration service requests is region-specific: es.region.amazonaws.com. + * For example, es.us-east-1.amazonaws.com. For a current list of supported regions and endpoints, + * see Regions and Endpoints. + *
+ */ +export class OpenSearchClient extends __Client< + __HttpHandlerOptions, + ServiceInputTypes, + ServiceOutputTypes, + OpenSearchClientResolvedConfig +> { + /** + * The resolved configuration of OpenSearchClient class. This is resolved and normalized from the {@link OpenSearchClientConfig | constructor configuration interface}. + */ + readonly config: OpenSearchClientResolvedConfig; + + constructor(configuration: OpenSearchClientConfig) { + let _config_0 = __getRuntimeConfig(configuration); + let _config_1 = resolveRegionConfig(_config_0); + let _config_2 = resolveEndpointsConfig(_config_1); + let _config_3 = resolveRetryConfig(_config_2); + let _config_4 = resolveHostHeaderConfig(_config_3); + let _config_5 = resolveAwsAuthConfig(_config_4); + let _config_6 = resolveUserAgentConfig(_config_5); + super(_config_6); + this.config = _config_6; + this.middlewareStack.use(getRetryPlugin(this.config)); + this.middlewareStack.use(getContentLengthPlugin(this.config)); + this.middlewareStack.use(getHostHeaderPlugin(this.config)); + this.middlewareStack.use(getLoggerPlugin(this.config)); + this.middlewareStack.use(getAwsAuthPlugin(this.config)); + this.middlewareStack.use(getUserAgentPlugin(this.config)); + } + + /** + * Destroy underlying resources, like sockets. It's usually not necessary to do this. + * However in Node.js, it's best to explicitly shut down the client's agent when it is no longer needed. + * Otherwise, sockets might stay open for quite a long time before the server terminates them. + */ + destroy(): void { + super.destroy(); + } +} diff --git a/clients/client-opensearch/README.md b/clients/client-opensearch/README.md new file mode 100644 index 000000000000..2bdc581f7408 --- /dev/null +++ b/clients/client-opensearch/README.md @@ -0,0 +1,215 @@ +# @aws-sdk/client-opensearch + +[![NPM version](https://img.shields.io/npm/v/@aws-sdk/client-opensearch/latest.svg)](https://www.npmjs.com/package/@aws-sdk/client-opensearch) +[![NPM downloads](https://img.shields.io/npm/dm/@aws-sdk/client-opensearch.svg)](https://www.npmjs.com/package/@aws-sdk/client-opensearch) + +## Description + +AWS SDK for JavaScript OpenSearch Client for Node.js, Browser and React Native. + +Use the Amazon OpenSearch configuration API to create, configure, and manage Amazon OpenSearch Service domains.
+For sample code that uses the configuration API, see the +Amazon OpenSearch Service Developer Guide. +The guide also contains +sample +code for sending signed HTTP requests to the OpenSearch APIs. +
+The endpoint for configuration service requests is region-specific: es.region.amazonaws.com. +For example, es.us-east-1.amazonaws.com. For a current list of supported regions and endpoints, +see Regions and Endpoints. +
+ +## Installing + +To install the this package, simply type add or install @aws-sdk/client-opensearch +using your favorite package manager: + +- `npm install @aws-sdk/client-opensearch` +- `yarn add @aws-sdk/client-opensearch` +- `pnpm add @aws-sdk/client-opensearch` + +## Getting Started + +### Import + +The AWS SDK is modulized by clients and commands. +To send a request, you only need to import the `OpenSearchClient` and +the commands you need, for example `AcceptInboundConnectionCommand`: + +```js +// ES5 example +const { OpenSearchClient, AcceptInboundConnectionCommand } = require("@aws-sdk/client-opensearch"); +``` + +```ts +// ES6+ example +import { OpenSearchClient, AcceptInboundConnectionCommand } from "@aws-sdk/client-opensearch"; +``` + +### Usage + +To send a request, you: + +- Initiate client with configuration (e.g. credentials, region). +- Initiate command with input parameters. +- Call `send` operation on client with command object as input. +- If you are using a custom http handler, you may call `destroy()` to close open connections. + +```js +// a client can be shared by different commands. +const client = new OpenSearchClient({ region: "REGION" }); + +const params = { + /** input parameters */ +}; +const command = new AcceptInboundConnectionCommand(params); +``` + +#### Async/await + +We recommend using [await](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/await) +operator to wait for the promise returned by send operation as follows: + +```js +// async/await. +try { + const data = await client.send(command); + // process data. +} catch (error) { + // error handling. +} finally { + // finally. +} +``` + +Async-await is clean, concise, intuitive, easy to debug and has better error handling +as compared to using Promise chains or callbacks. + +#### Promises + +You can also use [Promise chaining](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises#chaining) +to execute send operation. + +```js +client.send(command).then( + (data) => { + // process data. + }, + (error) => { + // error handling. + } +); +``` + +Promises can also be called using `.catch()` and `.finally()` as follows: + +```js +client + .send(command) + .then((data) => { + // process data. + }) + .catch((error) => { + // error handling. + }) + .finally(() => { + // finally. + }); +``` + +#### Callbacks + +We do not recommend using callbacks because of [callback hell](http://callbackhell.com/), +but they are supported by the send operation. + +```js +// callbacks. +client.send(command, (err, data) => { + // proccess err and data. +}); +``` + +#### v2 compatible style + +The client can also send requests using v2 compatible style. +However, it results in a bigger bundle size and may be dropped in next major version. More details in the blog post +on [modular packages in AWS SDK for JavaScript](https://aws.amazon.com/blogs/developer/modular-packages-in-aws-sdk-for-javascript/) + +```ts +import * as AWS from "@aws-sdk/client-opensearch"; +const client = new AWS.OpenSearch({ region: "REGION" }); + +// async/await. +try { + const data = await client.acceptInboundConnection(params); + // process data. +} catch (error) { + // error handling. +} + +// Promises. +client + .acceptInboundConnection(params) + .then((data) => { + // process data. + }) + .catch((error) => { + // error handling. + }); + +// callbacks. +client.acceptInboundConnection(params, (err, data) => { + // proccess err and data. +}); +``` + +### Troubleshooting + +When the service returns an exception, the error will include the exception information, +as well as response metadata (e.g. request id). + +```js +try { + const data = await client.send(command); + // process data. +} catch (error) { + const { requestId, cfId, extendedRequestId } = error.$metadata; + console.log({ requestId, cfId, extendedRequestId }); + /** + * The keys within exceptions are also parsed. + * You can access them by specifying exception names: + * if (error.name === 'SomeServiceException') { + * const value = error.specialKeyInException; + * } + */ +} +``` + +## Getting Help + +Please use these community resources for getting help. +We use the GitHub issues for tracking bugs and feature requests, but have limited bandwidth to address them. + +- Visit [Developer Guide](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/welcome.html) + or [API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/index.html). +- Check out the blog posts tagged with [`aws-sdk-js`](https://aws.amazon.com/blogs/developer/tag/aws-sdk-js/) + on AWS Developer Blog. +- Ask a question on [StackOverflow](https://stackoverflow.com/questions/tagged/aws-sdk-js) and tag it with `aws-sdk-js`. +- Join the AWS JavaScript community on [gitter](https://gitter.im/aws/aws-sdk-js-v3). +- If it turns out that you may have found a bug, please [open an issue](https://github.com/aws/aws-sdk-js-v3/issues/new/choose). + +To test your universal JavaScript code in Node.js, browser and react-native environments, +visit our [code samples repo](https://github.com/aws-samples/aws-sdk-js-tests). + +## Contributing + +This client code is generated automatically. Any modifications will be overwritten the next time the `@aws-sdk/client-opensearch` package is updated. +To contribute to client you can check our [generate clients scripts](https://github.com/aws/aws-sdk-js-v3/tree/main/scripts/generate-clients). + +## License + +This SDK is distributed under the +[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0), +see LICENSE for more information. diff --git a/clients/client-opensearch/commands/AcceptInboundConnectionCommand.ts b/clients/client-opensearch/commands/AcceptInboundConnectionCommand.ts new file mode 100644 index 000000000000..7ce6c7ea7e7d --- /dev/null +++ b/clients/client-opensearch/commands/AcceptInboundConnectionCommand.ts @@ -0,0 +1,94 @@ +import { OpenSearchClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../OpenSearchClient"; +import { AcceptInboundConnectionRequest, AcceptInboundConnectionResponse } from "../models/models_0"; +import { + deserializeAws_restJson1AcceptInboundConnectionCommand, + serializeAws_restJson1AcceptInboundConnectionCommand, +} from "../protocols/Aws_restJson1"; +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + MiddlewareStack, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +export interface AcceptInboundConnectionCommandInput extends AcceptInboundConnectionRequest {} +export interface AcceptInboundConnectionCommandOutput extends AcceptInboundConnectionResponse, __MetadataBearer {} + +/** + *Allows the remote domain owner to accept an inbound cross-cluster connection request.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, AcceptInboundConnectionCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, AcceptInboundConnectionCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new AcceptInboundConnectionCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link AcceptInboundConnectionCommandInput} for command's `input` shape. + * @see {@link AcceptInboundConnectionCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class AcceptInboundConnectionCommand extends $Command< + AcceptInboundConnectionCommandInput, + AcceptInboundConnectionCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: AcceptInboundConnectionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackAttaches tags to an existing domain. Tags are a set of case-sensitive key value pairs. An + * domain can have up to 10 tags. See + * + * Tagging Amazon OpenSearch Service domains for more information. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, AddTagsCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, AddTagsCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new AddTagsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link AddTagsCommandInput} for command's `input` shape. + * @see {@link AddTagsCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class AddTagsCommand extends $Command< + AddTagsCommandInput, + AddTagsCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: AddTagsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackAssociates a package with an Amazon OpenSearch Service domain.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, AssociatePackageCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, AssociatePackageCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new AssociatePackageCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link AssociatePackageCommandInput} for command's `input` shape. + * @see {@link AssociatePackageCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class AssociatePackageCommand extends $Command< + AssociatePackageCommandInput, + AssociatePackageCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: AssociatePackageCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackCancels a scheduled service software update for an Amazon OpenSearch Service domain. You can only perform this operation before
+ * the AutomatedUpdateDate
and when the UpdateStatus
is in the PENDING_UPDATE
state.
+ *
Creates a new Amazon OpenSearch Service domain. For more information, + * see Creating and managing Amazon OpenSearch Service domains + * in the Amazon OpenSearch Service Developer Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, CreateDomainCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, CreateDomainCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new CreateDomainCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link CreateDomainCommandInput} for command's `input` shape. + * @see {@link CreateDomainCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class CreateDomainCommand extends $Command< + CreateDomainCommandInput, + CreateDomainCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: CreateDomainCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackCreates a new cross-cluster connection from a local OpenSearch domain to a remote OpenSearch domain.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, CreateOutboundConnectionCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, CreateOutboundConnectionCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new CreateOutboundConnectionCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link CreateOutboundConnectionCommandInput} for command's `input` shape. + * @see {@link CreateOutboundConnectionCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class CreateOutboundConnectionCommand extends $Command< + CreateOutboundConnectionCommandInput, + CreateOutboundConnectionCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: CreateOutboundConnectionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackCreate a package for use with Amazon OpenSearch Service domains.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, CreatePackageCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, CreatePackageCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new CreatePackageCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link CreatePackageCommandInput} for command's `input` shape. + * @see {@link CreatePackageCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class CreatePackageCommand extends $Command< + CreatePackageCommandInput, + CreatePackageCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: CreatePackageCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackPermanently deletes the specified domain and all of its data. Once a domain is deleted, it cannot + * be recovered. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DeleteDomainCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DeleteDomainCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DeleteDomainCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeleteDomainCommandInput} for command's `input` shape. + * @see {@link DeleteDomainCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DeleteDomainCommand extends $Command< + DeleteDomainCommandInput, + DeleteDomainCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeleteDomainCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackAllows the remote domain owner to delete an existing inbound cross-cluster connection.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DeleteInboundConnectionCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DeleteInboundConnectionCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DeleteInboundConnectionCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeleteInboundConnectionCommandInput} for command's `input` shape. + * @see {@link DeleteInboundConnectionCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DeleteInboundConnectionCommand extends $Command< + DeleteInboundConnectionCommandInput, + DeleteInboundConnectionCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeleteInboundConnectionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackAllows the local domain owner to delete an existing outbound cross-cluster connection.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DeleteOutboundConnectionCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DeleteOutboundConnectionCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DeleteOutboundConnectionCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeleteOutboundConnectionCommandInput} for command's `input` shape. + * @see {@link DeleteOutboundConnectionCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DeleteOutboundConnectionCommand extends $Command< + DeleteOutboundConnectionCommandInput, + DeleteOutboundConnectionCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeleteOutboundConnectionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDeletes the package.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DeletePackageCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DeletePackageCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DeletePackageCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeletePackageCommandInput} for command's `input` shape. + * @see {@link DeletePackageCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DeletePackageCommand extends $Command< + DeletePackageCommandInput, + DeletePackageCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeletePackageCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackProvides scheduled Auto-Tune action details for the domain, such as Auto-Tune action type, + * description, severity, and scheduled date. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DescribeDomainAutoTunesCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DescribeDomainAutoTunesCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DescribeDomainAutoTunesCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeDomainAutoTunesCommandInput} for command's `input` shape. + * @see {@link DescribeDomainAutoTunesCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DescribeDomainAutoTunesCommand extends $Command< + DescribeDomainAutoTunesCommandInput, + DescribeDomainAutoTunesCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeDomainAutoTunesCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackReturns domain configuration information about the specified domain, including the domain ID, + * domain endpoint, and domain ARN. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DescribeDomainCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DescribeDomainCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DescribeDomainCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeDomainCommandInput} for command's `input` shape. + * @see {@link DescribeDomainCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DescribeDomainCommand extends $Command< + DescribeDomainCommandInput, + DescribeDomainCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeDomainCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackProvides cluster configuration information about the specified domain, such as the state, creation + * date, update version, and update date for cluster options. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DescribeDomainConfigCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DescribeDomainConfigCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DescribeDomainConfigCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeDomainConfigCommandInput} for command's `input` shape. + * @see {@link DescribeDomainConfigCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DescribeDomainConfigCommand extends $Command< + DescribeDomainConfigCommandInput, + DescribeDomainConfigCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeDomainConfigCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackReturns domain configuration information about the specified domains, including the domain ID, + * domain endpoint, and domain ARN. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DescribeDomainsCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DescribeDomainsCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DescribeDomainsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeDomainsCommandInput} for command's `input` shape. + * @see {@link DescribeDomainsCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DescribeDomainsCommand extends $Command< + DescribeDomainsCommandInput, + DescribeDomainsCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeDomainsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackLists all the inbound cross-cluster connections for a remote domain.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DescribeInboundConnectionsCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DescribeInboundConnectionsCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DescribeInboundConnectionsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeInboundConnectionsCommandInput} for command's `input` shape. + * @see {@link DescribeInboundConnectionsCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DescribeInboundConnectionsCommand extends $Command< + DescribeInboundConnectionsCommandInput, + DescribeInboundConnectionsCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeInboundConnectionsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack
+ * Describe the limits for a given instance type and OpenSearch or Elasticsearch version.
+ * When modifying an existing domain, specify the
+ *
+ * DomainName
+ *
+ * to see which limits you can modify.
+ *
Lists all the outbound cross-cluster connections for a local domain.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DescribeOutboundConnectionsCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DescribeOutboundConnectionsCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DescribeOutboundConnectionsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeOutboundConnectionsCommandInput} for command's `input` shape. + * @see {@link DescribeOutboundConnectionsCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DescribeOutboundConnectionsCommand extends $Command< + DescribeOutboundConnectionsCommandInput, + DescribeOutboundConnectionsCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeOutboundConnectionsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDescribes all packages available to Amazon OpenSearch Service domains. Includes options for filtering, limiting the number of results, + * and pagination. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DescribePackagesCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DescribePackagesCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DescribePackagesCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribePackagesCommandInput} for command's `input` shape. + * @see {@link DescribePackagesCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DescribePackagesCommand extends $Command< + DescribePackagesCommandInput, + DescribePackagesCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribePackagesCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackLists available reserved OpenSearch instance offerings.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DescribeReservedInstanceOfferingsCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DescribeReservedInstanceOfferingsCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DescribeReservedInstanceOfferingsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeReservedInstanceOfferingsCommandInput} for command's `input` shape. + * @see {@link DescribeReservedInstanceOfferingsCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DescribeReservedInstanceOfferingsCommand extends $Command< + DescribeReservedInstanceOfferingsCommandInput, + DescribeReservedInstanceOfferingsCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeReservedInstanceOfferingsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackReturns information about reserved OpenSearch instances for this account.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DescribeReservedInstancesCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DescribeReservedInstancesCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DescribeReservedInstancesCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeReservedInstancesCommandInput} for command's `input` shape. + * @see {@link DescribeReservedInstancesCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DescribeReservedInstancesCommand extends $Command< + DescribeReservedInstancesCommandInput, + DescribeReservedInstancesCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeReservedInstancesCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDissociates a package from the Amazon OpenSearch Service domain.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, DissociatePackageCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, DissociatePackageCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new DissociatePackageCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DissociatePackageCommandInput} for command's `input` shape. + * @see {@link DissociatePackageCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class DissociatePackageCommand extends $Command< + DissociatePackageCommandInput, + DissociatePackageCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DissociatePackageCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack
+ * Returns a list of upgrade-compatible versions of OpenSearch/Elasticsearch.
+ * You can optionally pass a
+ *
+ * DomainName
+ *
+ * to get all upgrade-compatible versions of OpenSearch/Elasticsearch for that specific domain.
+ *
Returns a list of package versions, along with their creation time and commit message.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, GetPackageVersionHistoryCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, GetPackageVersionHistoryCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new GetPackageVersionHistoryCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link GetPackageVersionHistoryCommandInput} for command's `input` shape. + * @see {@link GetPackageVersionHistoryCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class GetPackageVersionHistoryCommand extends $Command< + GetPackageVersionHistoryCommandInput, + GetPackageVersionHistoryCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: GetPackageVersionHistoryCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackRetrieves the complete history of the last 10 upgrades performed on the domain.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, GetUpgradeHistoryCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, GetUpgradeHistoryCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new GetUpgradeHistoryCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link GetUpgradeHistoryCommandInput} for command's `input` shape. + * @see {@link GetUpgradeHistoryCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class GetUpgradeHistoryCommand extends $Command< + GetUpgradeHistoryCommandInput, + GetUpgradeHistoryCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: GetUpgradeHistoryCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackRetrieves the latest status of the last upgrade or upgrade eligibility check performed on the domain. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, GetUpgradeStatusCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, GetUpgradeStatusCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new GetUpgradeStatusCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link GetUpgradeStatusCommandInput} for command's `input` shape. + * @see {@link GetUpgradeStatusCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class GetUpgradeStatusCommand extends $Command< + GetUpgradeStatusCommandInput, + GetUpgradeStatusCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: GetUpgradeStatusCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackReturns the names of all domains owned by the current user's account.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, ListDomainNamesCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, ListDomainNamesCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new ListDomainNamesCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ListDomainNamesCommandInput} for command's `input` shape. + * @see {@link ListDomainNamesCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class ListDomainNamesCommand extends $Command< + ListDomainNamesCommandInput, + ListDomainNamesCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ListDomainNamesCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackLists all Amazon OpenSearch Service domains associated with the package.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, ListDomainsForPackageCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, ListDomainsForPackageCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new ListDomainsForPackageCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ListDomainsForPackageCommandInput} for command's `input` shape. + * @see {@link ListDomainsForPackageCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class ListDomainsForPackageCommand extends $Command< + ListDomainsForPackageCommandInput, + ListDomainsForPackageCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ListDomainsForPackageCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackLists all packages associated with the Amazon OpenSearch Service domain.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, ListPackagesForDomainCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, ListPackagesForDomainCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new ListPackagesForDomainCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ListPackagesForDomainCommandInput} for command's `input` shape. + * @see {@link ListPackagesForDomainCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class ListPackagesForDomainCommand extends $Command< + ListPackagesForDomainCommandInput, + ListPackagesForDomainCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ListPackagesForDomainCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackReturns all tags for the given domain.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, ListTagsCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, ListTagsCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new ListTagsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ListTagsCommandInput} for command's `input` shape. + * @see {@link ListTagsCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class ListTagsCommand extends $Command< + ListTagsCommandInput, + ListTagsCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ListTagsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackList all supported versions of OpenSearch and Elasticsearch.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, ListVersionsCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, ListVersionsCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new ListVersionsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ListVersionsCommandInput} for command's `input` shape. + * @see {@link ListVersionsCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class ListVersionsCommand extends $Command< + ListVersionsCommandInput, + ListVersionsCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ListVersionsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackAllows you to purchase reserved OpenSearch instances.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, PurchaseReservedInstanceOfferingCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, PurchaseReservedInstanceOfferingCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new PurchaseReservedInstanceOfferingCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link PurchaseReservedInstanceOfferingCommandInput} for command's `input` shape. + * @see {@link PurchaseReservedInstanceOfferingCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class PurchaseReservedInstanceOfferingCommand extends $Command< + PurchaseReservedInstanceOfferingCommandInput, + PurchaseReservedInstanceOfferingCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: PurchaseReservedInstanceOfferingCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackAllows the remote domain owner to reject an inbound cross-cluster connection request.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, RejectInboundConnectionCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, RejectInboundConnectionCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new RejectInboundConnectionCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link RejectInboundConnectionCommandInput} for command's `input` shape. + * @see {@link RejectInboundConnectionCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class RejectInboundConnectionCommand extends $Command< + RejectInboundConnectionCommandInput, + RejectInboundConnectionCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: RejectInboundConnectionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackRemoves the specified set of tags from the given domain.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, RemoveTagsCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, RemoveTagsCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new RemoveTagsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link RemoveTagsCommandInput} for command's `input` shape. + * @see {@link RemoveTagsCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class RemoveTagsCommand extends $Command< + RemoveTagsCommandInput, + RemoveTagsCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: RemoveTagsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackSchedules a service software update for an Amazon OpenSearch Service domain.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, StartServiceSoftwareUpdateCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, StartServiceSoftwareUpdateCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new StartServiceSoftwareUpdateCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link StartServiceSoftwareUpdateCommandInput} for command's `input` shape. + * @see {@link StartServiceSoftwareUpdateCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class StartServiceSoftwareUpdateCommand extends $Command< + StartServiceSoftwareUpdateCommandInput, + StartServiceSoftwareUpdateCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: StartServiceSoftwareUpdateCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackModifies the cluster configuration of the specified domain, such as setting the instance type + * and the number of instances. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, UpdateDomainConfigCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, UpdateDomainConfigCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new UpdateDomainConfigCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link UpdateDomainConfigCommandInput} for command's `input` shape. + * @see {@link UpdateDomainConfigCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class UpdateDomainConfigCommand extends $Command< + UpdateDomainConfigCommandInput, + UpdateDomainConfigCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: UpdateDomainConfigCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackUpdates a package for use with Amazon OpenSearch Service domains.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, UpdatePackageCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, UpdatePackageCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new UpdatePackageCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link UpdatePackageCommandInput} for command's `input` shape. + * @see {@link UpdatePackageCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class UpdatePackageCommand extends $Command< + UpdatePackageCommandInput, + UpdatePackageCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: UpdatePackageCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackAllows you to either upgrade your domain or perform an upgrade eligibility check to a compatible version of OpenSearch or Elasticsearch. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { OpenSearchClient, UpgradeDomainCommand } from "@aws-sdk/client-opensearch"; // ES Modules import + * // const { OpenSearchClient, UpgradeDomainCommand } = require("@aws-sdk/client-opensearch"); // CommonJS import + * const client = new OpenSearchClient(config); + * const command = new UpgradeDomainCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link UpgradeDomainCommandInput} for command's `input` shape. + * @see {@link UpgradeDomainCommandOutput} for command's `response` shape. + * @see {@link OpenSearchClientResolvedConfig | config} for command's `input` shape. + * + */ +export class UpgradeDomainCommand extends $Command< + UpgradeDomainCommandInput, + UpgradeDomainCommandOutput, + OpenSearchClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: UpgradeDomainCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackContainer for the parameters to the
+ *
+ * AcceptInboundConnection
+ *
+ * operation.
+ *
The ID of the inbound connection you want to accept.
+ */ + ConnectionId: string | undefined; +} + +export namespace AcceptInboundConnectionRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AcceptInboundConnectionRequest): any => ({ + ...obj, + }); +} + +export enum InboundConnectionStatusCode { + ACTIVE = "ACTIVE", + APPROVED = "APPROVED", + DELETED = "DELETED", + DELETING = "DELETING", + PENDING_ACCEPTANCE = "PENDING_ACCEPTANCE", + PROVISIONING = "PROVISIONING", + REJECTED = "REJECTED", + REJECTING = "REJECTING", +} + +/** + *The connection status of an inbound cross-cluster connection.
+ */ +export interface InboundConnectionStatus { + /** + *The state code for the inbound connection. Can be one of the following:
+ *Verbose information for the inbound connection status.
+ */ + Message?: string; +} + +export namespace InboundConnectionStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InboundConnectionStatus): any => ({ + ...obj, + }); +} + +export interface AWSDomainInformation { + OwnerId?: string; + /** + *The name of an domain. Domain names are unique across the domains owned by an account within an AWS + * region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, + * and - (hyphen). + *
+ */ + DomainName: string | undefined; + + Region?: string; +} + +export namespace AWSDomainInformation { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AWSDomainInformation): any => ({ + ...obj, + }); +} + +export interface DomainInformationContainer { + AWSDomainInformation?: AWSDomainInformation; +} + +export namespace DomainInformationContainer { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DomainInformationContainer): any => ({ + ...obj, + }); +} + +/** + *Details of an inbound connection.
+ */ +export interface InboundConnection { + /** + *The
+ *
+ * AWSDomainInformation
+ *
+ * for the local OpenSearch domain.
+ *
The
+ *
+ * AWSDomainInformation
+ *
+ * for the remote OpenSearch domain.
+ *
The connection ID for the inbound cross-cluster connection.
+ */ + ConnectionId?: string; + + /** + *The
+ *
+ * InboundConnectionStatus
+ *
+ * for the outbound connection.
+ *
The result of an
+ *
+ * AcceptInboundConnection
+ *
+ * operation. Contains details about the accepted inbound connection.
+ *
The
+ *
+ * InboundConnection
+ *
+ * of the accepted inbound connection.
+ *
An error occured because the client wanted to access a not supported operation. Gives http status code of 409.
+ */ +export interface DisabledOperationException extends __SmithyException, $MetadataBearer { + name: "DisabledOperationException"; + $fault: "client"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace DisabledOperationException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DisabledOperationException): any => ({ + ...obj, + }); +} + +/** + *An exception for trying to create more than allowed resources or sub-resources. Gives http status code of 409.
+ */ +export interface LimitExceededException extends __SmithyException, $MetadataBearer { + name: "LimitExceededException"; + $fault: "client"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace LimitExceededException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: LimitExceededException): any => ({ + ...obj, + }); +} + +/** + *An exception for accessing or deleting a resource that does not exist. Gives http status code of 400.
+ */ +export interface ResourceNotFoundException extends __SmithyException, $MetadataBearer { + name: "ResourceNotFoundException"; + $fault: "client"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace ResourceNotFoundException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ResourceNotFoundException): any => ({ + ...obj, + }); +} + +/** + *An error occurred because user does not have permissions to access the resource. Returns HTTP status code 403.
+ */ +export interface AccessDeniedException extends __SmithyException, $MetadataBearer { + name: "AccessDeniedException"; + $fault: "client"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace AccessDeniedException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AccessDeniedException): any => ({ + ...obj, + }); +} + +export enum OptionState { + Active = "Active", + Processing = "Processing", + RequiresIndexDocuments = "RequiresIndexDocuments", +} + +/** + *Provides the current status of the entity.
+ */ +export interface OptionStatus { + /** + *The timestamp of when the entity was created.
+ */ + CreationDate: Date | undefined; + + /** + *The timestamp of the last time the entity was updated.
+ */ + UpdateDate: Date | undefined; + + /** + *The latest version of the entity.
+ */ + UpdateVersion?: number; + + /** + *Provides the OptionState
for the domain.
+ *
Indicates whether the domain is being deleted.
+ */ + PendingDeletion?: boolean; +} + +export namespace OptionStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: OptionStatus): any => ({ + ...obj, + }); +} + +/** + *The configured access rules for the domain's document and search endpoints, and the current status of those + * rules. + *
+ */ +export interface AccessPoliciesStatus { + /** + *The access policy configured for the domain. Access policies can be resource-based, IP-based, or + * IAM-based. See + * Configuring access policiesfor more information. + *
+ */ + Options: string | undefined; + + /** + *The status of the access policy for the domain. See OptionStatus
for the status
+ * information that's included.
+ *
+ * List of limits that are specific to a given InstanceType and for each of its
+ *
+ * InstanceRole
+ *
+ * .
+ *
+ * Additional limit is specific to a given InstanceType and for each of its
+ *
+ * InstanceRole
+ *
+ * etc.
+ *
+ * Attributes and their details:
+ *
+ *
+ * ESPartitionInstanceType
+ *
+ * can support as master node.
+ *
+ * ESPartitionInstanceType
+ *
+ * up to which you don't need any master nodes to govern them.
+ *
+ * Value for a given
+ *
+ * AdditionalLimit$LimitName
+ *
+ * .
+ *
A key value pair for a resource tag.
+ */ +export interface Tag { + /** + *The TagKey
, the name of the tag. Tag keys must be unique for the domain to
+ * which they are attached.
+ *
The TagValue
, 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
+ *
Container for the parameters to the
+ *
+ * AddTags
+ *
+ * operation. Specifies the tags to attach to the domain.
+ *
Specify the ARN
of the domain you want to add tags to.
+ *
List of Tag
to add to the domain.
+ *
An error occurred while processing the request.
+ */ +export interface BaseException extends __SmithyException, $MetadataBearer { + name: "BaseException"; + $fault: "client"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace BaseException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: BaseException): any => ({ + ...obj, + }); +} + +/** + *The request processing has failed because of an unknown error, exception or failure (the failure is internal to the service) . Gives http status code of 500.
+ */ +export interface InternalException extends __SmithyException, $MetadataBearer { + name: "InternalException"; + $fault: "server"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace InternalException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InternalException): any => ({ + ...obj, + }); +} + +/** + *An exception for missing / invalid input fields. Gives http status code of 400.
+ */ +export interface ValidationException extends __SmithyException, $MetadataBearer { + name: "ValidationException"; + $fault: "client"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace ValidationException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ValidationException): any => ({ + ...obj, + }); +} + +/** + *Status of the advanced options for the specified domain. Currently, the following advanced options + * are available: + *
+ *false
when configuring
+ * access to individual sub-resources. By default, the value is true
.
+ * See Advanced cluster parameters
+ * for more information.
+ * For more information, see + * Advanced cluster parameters. + *
+ */ +export interface AdvancedOptionsStatus { + /** + *The status of advanced options for the specified domain.
+ */ + Options: { [key: string]: string } | undefined; + + /** + *The OptionStatus
for advanced options for the specified domain.
+ *
The SAML identity povider's information.
+ */ +export interface SAMLIdp { + /** + *The metadata of the SAML application in XML format.
+ */ + MetadataContent: string | undefined; + + /** + *The unique entity ID of the application in SAML identity provider.
+ */ + EntityId: string | undefined; +} + +export namespace SAMLIdp { + /** + * @internal + */ + export const filterSensitiveLog = (obj: SAMLIdp): any => ({ + ...obj, + }); +} + +/** + *Describes the SAML application configured for the domain.
+ */ +export interface SAMLOptionsOutput { + /** + *True if SAML is enabled.
+ */ + Enabled?: boolean; + + /** + *Describes the SAML identity provider's information.
+ */ + Idp?: SAMLIdp; + + /** + *The key used for matching the SAML subject attribute.
+ */ + SubjectKey?: string; + + /** + *The key used for matching the SAML roles attribute.
+ */ + RolesKey?: string; + + /** + *The duration, in minutes, after which a user session becomes inactive.
+ */ + SessionTimeoutMinutes?: number; +} + +export namespace SAMLOptionsOutput { + /** + * @internal + */ + export const filterSensitiveLog = (obj: SAMLOptionsOutput): any => ({ + ...obj, + }); +} + +/** + *The advanced security configuration: whether advanced security is enabled, whether the internal + * database option is enabled. + *
+ */ +export interface AdvancedSecurityOptions { + /** + *True if advanced security is enabled.
+ */ + Enabled?: boolean; + + /** + *True if the internal user database is enabled.
+ */ + InternalUserDatabaseEnabled?: boolean; + + /** + *Describes the SAML application configured for a domain.
+ */ + SAMLOptions?: SAMLOptionsOutput; +} + +export namespace AdvancedSecurityOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AdvancedSecurityOptions): any => ({ + ...obj, + }); +} + +/** + *Credentials for the master user: username and password, ARN, or both.
+ */ +export interface MasterUserOptions { + /** + *ARN for the master user (if IAM is enabled).
+ */ + MasterUserARN?: string; + + /** + *The master user's username, which is stored in the Amazon OpenSearch Service domain's internal database.
+ */ + MasterUserName?: string; + + /** + *The master user's password, which is stored in the Amazon OpenSearch Service domain's internal database.
+ */ + MasterUserPassword?: string; +} + +export namespace MasterUserOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: MasterUserOptions): any => ({ + ...obj, + ...(obj.MasterUserName && { MasterUserName: SENSITIVE_STRING }), + ...(obj.MasterUserPassword && { MasterUserPassword: SENSITIVE_STRING }), + }); +} + +/** + *The SAML application configuration for the domain.
+ */ +export interface SAMLOptionsInput { + /** + *True if SAML is enabled.
+ */ + Enabled?: boolean; + + /** + *The SAML Identity Provider's information.
+ */ + Idp?: SAMLIdp; + + /** + *The SAML master username, which is stored in the Amazon OpenSearch Service domain's internal database.
+ */ + MasterUserName?: string; + + /** + *The backend role that the SAML master user is mapped to.
+ */ + MasterBackendRole?: string; + + /** + *Element of the SAML assertion to use for username. Default is NameID.
+ */ + SubjectKey?: string; + + /** + *Element of the SAML assertion to use for backend roles. Default is roles.
+ */ + RolesKey?: string; + + /** + *The duration, in minutes, after which a user session becomes inactive. Acceptable values are between 1 and 1440, + * and the default value is 60. + *
+ */ + SessionTimeoutMinutes?: number; +} + +export namespace SAMLOptionsInput { + /** + * @internal + */ + export const filterSensitiveLog = (obj: SAMLOptionsInput): any => ({ + ...obj, + ...(obj.MasterUserName && { MasterUserName: SENSITIVE_STRING }), + }); +} + +/** + *The advanced security configuration: whether advanced security is enabled, whether the internal + * database option is enabled, master username and password (if internal database is enabled), and master user ARN + * (if IAM is enabled). + *
+ */ +export interface AdvancedSecurityOptionsInput { + /** + *True if advanced security is enabled.
+ */ + Enabled?: boolean; + + /** + *True if the internal user database is enabled.
+ */ + InternalUserDatabaseEnabled?: boolean; + + /** + *Credentials for the master user: username and password, ARN, or both.
+ */ + MasterUserOptions?: MasterUserOptions; + + /** + *The SAML application configuration for the domain.
+ */ + SAMLOptions?: SAMLOptionsInput; +} + +export namespace AdvancedSecurityOptionsInput { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AdvancedSecurityOptionsInput): any => ({ + ...obj, + ...(obj.MasterUserOptions && { MasterUserOptions: MasterUserOptions.filterSensitiveLog(obj.MasterUserOptions) }), + ...(obj.SAMLOptions && { SAMLOptions: SAMLOptionsInput.filterSensitiveLog(obj.SAMLOptions) }), + }); +} + +/** + *The status of advanced security options for the specified domain.
+ */ +export interface AdvancedSecurityOptionsStatus { + /** + *Advanced security options for the specified domain.
+ */ + Options: AdvancedSecurityOptions | undefined; + + /** + *Status of the advanced security options for the specified domain.
+ */ + Status: OptionStatus | undefined; +} + +export namespace AdvancedSecurityOptionsStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AdvancedSecurityOptionsStatus): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the request parameters to the
+ *
+ * AssociatePackage
+ *
+ * operation.
+ *
Internal ID of the package to associate with a domain. Use DescribePackages
to find
+ * this value.
+ *
The name of the domain to associate the package with.
+ */ + DomainName: string | undefined; +} + +export namespace AssociatePackageRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AssociatePackageRequest): any => ({ + ...obj, + }); +} + +export enum DomainPackageStatus { + ACTIVE = "ACTIVE", + ASSOCIATING = "ASSOCIATING", + ASSOCIATION_FAILED = "ASSOCIATION_FAILED", + DISSOCIATING = "DISSOCIATING", + DISSOCIATION_FAILED = "DISSOCIATION_FAILED", +} + +export interface ErrorDetails { + ErrorType?: string; + ErrorMessage?: string; +} + +export namespace ErrorDetails { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ErrorDetails): any => ({ + ...obj, + }); +} + +export enum PackageType { + TXT_DICTIONARY = "TXT-DICTIONARY", +} + +/** + *Information on a package associated with a domain.
+ */ +export interface DomainPackageDetails { + /** + *The internal ID of the package.
+ */ + PackageID?: string; + + /** + *User-specified name of the package.
+ */ + PackageName?: string; + + /** + *Currently supports only TXT-DICTIONARY.
+ */ + PackageType?: PackageType | string; + + /** + *The timestamp of the most recent update to the package association status.
+ */ + LastUpdated?: Date; + + /** + *The name of the domain you've associated a package with.
+ */ + DomainName?: string; + + /** + *State of the association. Values are ASSOCIATING, ASSOCIATION_FAILED, ACTIVE, DISSOCIATING, and DISSOCIATION_FAILED.
+ */ + DomainPackageStatus?: DomainPackageStatus | string; + + PackageVersion?: string; + /** + *The relative path on Amazon OpenSearch Service nodes, which can be used as synonym_path when the package is a synonym file.
+ */ + ReferencePath?: string; + + /** + *Additional information if the package is in an error state. Null otherwise.
+ */ + ErrorDetails?: ErrorDetails; +} + +export namespace DomainPackageDetails { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DomainPackageDetails): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the response returned by
+ *
+ * AssociatePackage
+ *
+ * operation.
+ *
+ * DomainPackageDetails
+ *
An error occurred because the client attempts to remove a resource that is currently in use. Returns HTTP status code 409.
+ */ +export interface ConflictException extends __SmithyException, $MetadataBearer { + name: "ConflictException"; + $fault: "client"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace ConflictException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ConflictException): any => ({ + ...obj, + }); +} + +/** + *Container for the parameters to the
+ *
+ * CancelServiceSoftwareUpdate
+ *
+ * operation. Specifies the name of the domain that you wish to cancel a service software update on.
+ *
The name of the domain that you want to stop the latest service software update on.
+ */ + DomainName: string | undefined; +} + +export namespace CancelServiceSoftwareUpdateRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CancelServiceSoftwareUpdateRequest): any => ({ + ...obj, + }); +} + +export enum DeploymentStatus { + COMPLETED = "COMPLETED", + ELIGIBLE = "ELIGIBLE", + IN_PROGRESS = "IN_PROGRESS", + NOT_ELIGIBLE = "NOT_ELIGIBLE", + PENDING_UPDATE = "PENDING_UPDATE", +} + +/** + *The current options of an domain service software options.
+ */ +export interface ServiceSoftwareOptions { + /** + *The current service software version present on the domain.
+ */ + CurrentVersion?: string; + + /** + *The new service software version if one is available.
+ */ + NewVersion?: string; + + /** + *
+ * True
+ * if you're able to update your service software version. False
if you can't update your
+ * service software version.
+ *
+ * True
+ * if you're able to cancel your service software version update. False
if you can't cancel
+ * your service software update.
+ *
The status of your service software update. This field can take the following values:
+ * ELIGIBLE
, PENDING_UPDATE
, IN_PROGRESS
, COMPLETED
, and
+ * NOT_ELIGIBLE
.
+ *
The description of the UpdateStatus
.
+ *
The timestamp, in Epoch time, until which you can manually request a service software update. After this date, we + * automatically update your service software. + *
+ */ + AutomatedUpdateDate?: Date; + + /** + *
+ * True
+ * if a service software is never automatically updated. False
if a service software is automatically
+ * updated after AutomatedUpdateDate
.
+ *
The result of a CancelServiceSoftwareUpdate
operation. Contains the status of the
+ * update.
+ *
The current status of the OpenSearch service software update.
+ */ + ServiceSoftwareOptions?: ServiceSoftwareOptions; +} + +export namespace CancelServiceSoftwareUpdateResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CancelServiceSoftwareUpdateResponse): any => ({ + ...obj, + }); +} + +export enum AutoTuneDesiredState { + DISABLED = "DISABLED", + ENABLED = "ENABLED", +} + +export enum TimeUnit { + HOURS = "HOURS", +} + +/** + *The maintenance schedule duration: duration value and duration unit. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ +export interface Duration { + /** + *Integer to specify the value of a maintenance schedule duration. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ + Value?: number; + + /** + *The unit of a maintenance schedule duration. Valid value is HOURS. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ + Unit?: TimeUnit | string; +} + +export namespace Duration { + /** + * @internal + */ + export const filterSensitiveLog = (obj: Duration): any => ({ + ...obj, + }); +} + +/** + *Specifies the Auto-Tune maintenance schedule. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ +export interface AutoTuneMaintenanceSchedule { + /** + *The timestamp at which the Auto-Tune maintenance schedule starts.
+ */ + StartAt?: Date; + + /** + *Specifies maintenance schedule duration: duration value and duration unit. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ + Duration?: Duration; + + /** + *A cron expression for a recurring maintenance schedule. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ + CronExpressionForRecurrence?: string; +} + +export namespace AutoTuneMaintenanceSchedule { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AutoTuneMaintenanceSchedule): any => ({ + ...obj, + }); +} + +/** + *The Auto-Tune options: the Auto-Tune desired state for the domain and list of maintenance schedules. + *
+ */ +export interface AutoTuneOptionsInput { + /** + *The Auto-Tune desired state. Valid values are ENABLED and DISABLED.
+ */ + DesiredState?: AutoTuneDesiredState | string; + + /** + *A list of maintenance schedules. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ + MaintenanceSchedules?: AutoTuneMaintenanceSchedule[]; +} + +export namespace AutoTuneOptionsInput { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AutoTuneOptionsInput): any => ({ + ...obj, + }); +} + +export interface ColdStorageOptions { + Enabled: boolean | undefined; +} + +export namespace ColdStorageOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ColdStorageOptions): any => ({ + ...obj, + }); +} + +export enum OpenSearchPartitionInstanceType { + c4_2xlarge_search = "c4.2xlarge.search", + c4_4xlarge_search = "c4.4xlarge.search", + c4_8xlarge_search = "c4.8xlarge.search", + c4_large_search = "c4.large.search", + c4_xlarge_search = "c4.xlarge.search", + c5_18xlarge_search = "c5.18xlarge.search", + c5_2xlarge_search = "c5.2xlarge.search", + c5_4xlarge_search = "c5.4xlarge.search", + c5_9xlarge_search = "c5.9xlarge.search", + c5_large_search = "c5.large.search", + c5_xlarge_search = "c5.xlarge.search", + c6g_12xlarge_search = "c6g.12xlarge.search", + c6g_2xlarge_search = "c6g.2xlarge.search", + c6g_4xlarge_search = "c6g.4xlarge.search", + c6g_8xlarge_search = "c6g.8xlarge.search", + c6g_large_search = "c6g.large.search", + c6g_xlarge_search = "c6g.xlarge.search", + d2_2xlarge_search = "d2.2xlarge.search", + d2_4xlarge_search = "d2.4xlarge.search", + d2_8xlarge_search = "d2.8xlarge.search", + d2_xlarge_search = "d2.xlarge.search", + i2_2xlarge_search = "i2.2xlarge.search", + i2_xlarge_search = "i2.xlarge.search", + i3_16xlarge_search = "i3.16xlarge.search", + i3_2xlarge_search = "i3.2xlarge.search", + i3_4xlarge_search = "i3.4xlarge.search", + i3_8xlarge_search = "i3.8xlarge.search", + i3_large_search = "i3.large.search", + i3_xlarge_search = "i3.xlarge.search", + m3_2xlarge_search = "m3.2xlarge.search", + m3_large_search = "m3.large.search", + m3_medium_search = "m3.medium.search", + m3_xlarge_search = "m3.xlarge.search", + m4_10xlarge_search = "m4.10xlarge.search", + m4_2xlarge_search = "m4.2xlarge.search", + m4_4xlarge_search = "m4.4xlarge.search", + m4_large_search = "m4.large.search", + m4_xlarge_search = "m4.xlarge.search", + m5_12xlarge_search = "m5.12xlarge.search", + m5_24xlarge_search = "m5.24xlarge.search", + m5_2xlarge_search = "m5.2xlarge.search", + m5_4xlarge_search = "m5.4xlarge.search", + m5_large_search = "m5.large.search", + m5_xlarge_search = "m5.xlarge.search", + m6g_12xlarge_search = "m6g.12xlarge.search", + m6g_2xlarge_search = "m6g.2xlarge.search", + m6g_4xlarge_search = "m6g.4xlarge.search", + m6g_8xlarge_search = "m6g.8xlarge.search", + m6g_large_search = "m6g.large.search", + m6g_xlarge_search = "m6g.xlarge.search", + r3_2xlarge_search = "r3.2xlarge.search", + r3_4xlarge_search = "r3.4xlarge.search", + r3_8xlarge_search = "r3.8xlarge.search", + r3_large_search = "r3.large.search", + r3_xlarge_search = "r3.xlarge.search", + r4_16xlarge_search = "r4.16xlarge.search", + r4_2xlarge_search = "r4.2xlarge.search", + r4_4xlarge_search = "r4.4xlarge.search", + r4_8xlarge_search = "r4.8xlarge.search", + r4_large_search = "r4.large.search", + r4_xlarge_search = "r4.xlarge.search", + r5_12xlarge_search = "r5.12xlarge.search", + r5_24xlarge_search = "r5.24xlarge.search", + r5_2xlarge_search = "r5.2xlarge.search", + r5_4xlarge_search = "r5.4xlarge.search", + r5_large_search = "r5.large.search", + r5_xlarge_search = "r5.xlarge.search", + r6g_12xlarge_search = "r6g.12xlarge.search", + r6g_2xlarge_search = "r6g.2xlarge.search", + r6g_4xlarge_search = "r6g.4xlarge.search", + r6g_8xlarge_search = "r6g.8xlarge.search", + r6g_large_search = "r6g.large.search", + r6g_xlarge_search = "r6g.xlarge.search", + r6gd_12xlarge_search = "r6gd.12xlarge.search", + r6gd_16xlarge_search = "r6gd.16xlarge.search", + r6gd_2xlarge_search = "r6gd.2xlarge.search", + r6gd_4xlarge_search = "r6gd.4xlarge.search", + r6gd_8xlarge_search = "r6gd.8xlarge.search", + r6gd_large_search = "r6gd.large.search", + r6gd_xlarge_search = "r6gd.xlarge.search", + t2_medium_search = "t2.medium.search", + t2_micro_search = "t2.micro.search", + t2_small_search = "t2.small.search", + t3_2xlarge_search = "t3.2xlarge.search", + t3_large_search = "t3.large.search", + t3_medium_search = "t3.medium.search", + t3_micro_search = "t3.micro.search", + t3_nano_search = "t3.nano.search", + t3_small_search = "t3.small.search", + t3_xlarge_search = "t3.xlarge.search", + t4g_medium_search = "t4g.medium.search", + t4g_small_search = "t4g.small.search", + ultrawarm1_large_search = "ultrawarm1.large.search", + ultrawarm1_medium_search = "ultrawarm1.medium.search", + ultrawarm1_xlarge_search = "ultrawarm1.xlarge.search", +} + +export enum OpenSearchWarmPartitionInstanceType { + ultrawarm1_large_search = "ultrawarm1.large.search", + ultrawarm1_medium_search = "ultrawarm1.medium.search", + ultrawarm1_xlarge_search = "ultrawarm1.xlarge.search", +} + +/** + *The zone awareness configuration for the domain cluster, such as the number of availability zones.
+ */ +export interface ZoneAwarenessConfig { + /** + *An integer value to indicate the number of availability zones for a domain when zone awareness is enabled. This + * should be equal to number of subnets if VPC endpoints is enabled. + *
+ */ + AvailabilityZoneCount?: number; +} + +export namespace ZoneAwarenessConfig { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ZoneAwarenessConfig): any => ({ + ...obj, + }); +} + +/** + *The configuration for the domain cluster, such as the type and number of instances.
+ */ +export interface ClusterConfig { + /** + *The instance type for an OpenSearch cluster. UltraWarm instance types are not supported for data instances. + *
+ */ + InstanceType?: OpenSearchPartitionInstanceType | string; + + /** + *The number of instances in the specified domain cluster.
+ */ + InstanceCount?: number; + + /** + *A boolean value to indicate whether a dedicated master node is enabled. See Dedicated master nodes in Amazon OpenSearch Service + * for more information. + *
+ */ + DedicatedMasterEnabled?: boolean; + + /** + *A boolean value to indicate whether zone awareness is enabled. See Configuring a multi-AZ domain in Amazon OpenSearch Service + * for more information. + *
+ */ + ZoneAwarenessEnabled?: boolean; + + /** + *The zone awareness configuration for a domain when zone awareness is enabled.
+ */ + ZoneAwarenessConfig?: ZoneAwarenessConfig; + + /** + *The instance type for a dedicated master node.
+ */ + DedicatedMasterType?: OpenSearchPartitionInstanceType | string; + + /** + *Total number of dedicated master nodes, active and on standby, for the cluster.
+ */ + DedicatedMasterCount?: number; + + /** + *True to enable UltraWarm storage.
+ */ + WarmEnabled?: boolean; + + /** + *The instance type for the OpenSearch cluster's warm nodes.
+ */ + WarmType?: OpenSearchWarmPartitionInstanceType | string; + + /** + *The number of UltraWarm nodes in the cluster.
+ */ + WarmCount?: number; + + ColdStorageOptions?: ColdStorageOptions; +} + +export namespace ClusterConfig { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ClusterConfig): any => ({ + ...obj, + }); +} + +/** + *Options to specify the Cognito user and identity pools for OpenSearch Dashboards authentication. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards. + *
+ */ +export interface CognitoOptions { + /** + *The option to enable Cognito for OpenSearch Dashboards authentication.
+ */ + Enabled?: boolean; + + /** + *The Cognito user pool ID for OpenSearch Dashboards authentication.
+ */ + UserPoolId?: string; + + /** + *The Cognito identity pool ID for OpenSearch Dashboards authentication.
+ */ + IdentityPoolId?: string; + + /** + *The role ARN that provides OpenSearch permissions for accessing Cognito resources.
+ */ + RoleArn?: string; +} + +export namespace CognitoOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CognitoOptions): any => ({ + ...obj, + }); +} + +export enum TLSSecurityPolicy { + POLICY_MIN_TLS_1_0_2019_07 = "Policy-Min-TLS-1-0-2019-07", + POLICY_MIN_TLS_1_2_2019_07 = "Policy-Min-TLS-1-2-2019-07", +} + +/** + *Options to configure the endpoint for the domain.
+ */ +export interface DomainEndpointOptions { + /** + *Whether only HTTPS endpoint should be enabled for the domain.
+ */ + EnforceHTTPS?: boolean; + + /** + *Specify the TLS security policy to apply to the HTTPS endpoint of the domain.
+ *
+ * Can be one of the following values:
+ *
Whether to enable a custom endpoint for the domain.
+ */ + CustomEndpointEnabled?: boolean; + + /** + *The fully qualified domain for your custom endpoint.
+ */ + CustomEndpoint?: string; + + /** + *The ACM certificate ARN for your custom endpoint.
+ */ + CustomEndpointCertificateArn?: string; +} + +export namespace DomainEndpointOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DomainEndpointOptions): any => ({ + ...obj, + }); +} + +export enum VolumeType { + gp2 = "gp2", + io1 = "io1", + standard = "standard", +} + +/** + *Options to enable, disable, and specify the properties of EBS storage volumes.
+ */ +export interface EBSOptions { + /** + *Whether EBS-based storage is enabled.
+ */ + EBSEnabled?: boolean; + + /** + *The volume type for EBS-based storage.
+ */ + VolumeType?: VolumeType | string; + + /** + *Integer to specify the size of an EBS volume.
+ */ + VolumeSize?: number; + + /** + *The IOPD for a Provisioned IOPS EBS volume (SSD).
+ */ + Iops?: number; +} + +export namespace EBSOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: EBSOptions): any => ({ + ...obj, + }); +} + +/** + *Specifies encryption at rest options.
+ */ +export interface EncryptionAtRestOptions { + /** + *The option to enable encryption at rest.
+ */ + Enabled?: boolean; + + /** + *The KMS key ID for encryption at rest options.
+ */ + KmsKeyId?: string; +} + +export namespace EncryptionAtRestOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: EncryptionAtRestOptions): any => ({ + ...obj, + }); +} + +export enum LogType { + AUDIT_LOGS = "AUDIT_LOGS", + ES_APPLICATION_LOGS = "ES_APPLICATION_LOGS", + INDEX_SLOW_LOGS = "INDEX_SLOW_LOGS", + SEARCH_SLOW_LOGS = "SEARCH_SLOW_LOGS", +} + +/** + *Log Publishing option that is set for a given domain.
+ *
Attributes and their details:
+ *
ARN of the Cloudwatch log group to publish logs to.
+ */ + CloudWatchLogsLogGroupArn?: string; + + /** + *Whether the given log publishing option is enabled or not.
+ */ + Enabled?: boolean; +} + +export namespace LogPublishingOption { + /** + * @internal + */ + export const filterSensitiveLog = (obj: LogPublishingOption): any => ({ + ...obj, + }); +} + +/** + *The node-to-node encryption options.
+ */ +export interface NodeToNodeEncryptionOptions { + /** + *True to enable node-to-node encryption.
+ */ + Enabled?: boolean; +} + +export namespace NodeToNodeEncryptionOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: NodeToNodeEncryptionOptions): any => ({ + ...obj, + }); +} + +/** + *The time, in UTC format, when the service takes a daily automated snapshot of the specified
+ * domain. Default is 0
hours.
+ *
The time, in UTC format, when the service takes a daily automated snapshot of the specified
+ * domain. Default is 0
hours.
+ *
Options to specify the subnets and security groups for the VPC endpoint. For more information, see + * Launching your Amazon OpenSearch Service domains using a VPC. + *
+ */ +export interface VPCOptions { + /** + *The subnets for the VPC endpoint.
+ */ + SubnetIds?: string[]; + + /** + *The security groups for the VPC endpoint.
+ */ + SecurityGroupIds?: string[]; +} + +export namespace VPCOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: VPCOptions): any => ({ + ...obj, + }); +} + +export interface CreateDomainRequest { + /** + *The name of the Amazon OpenSearch Service domain you're creating. Domain names are unique across the domains owned by + * an account within an AWS region. Domain names must start with a lowercase letter and can contain the following + * characters: a-z (lowercase), 0-9, and - (hyphen). + *
+ */ + DomainName: string | undefined; + + /** + *String of format Elasticsearch_X.Y or OpenSearch_X.Y to specify the engine version for the Amazon OpenSearch Service domain. + * For example, "OpenSearch_1.0" or "Elasticsearch_7.9". For more information, + * see Creating and managing Amazon OpenSearch Service domains + * . + *
+ */ + EngineVersion?: string; + + /** + *Configuration options for a domain. Specifies the instance type and number of instances in the + * domain. + *
+ */ + ClusterConfig?: ClusterConfig; + + /** + *Options to enable, disable, and specify the type and size of EBS storage volumes.
+ */ + EBSOptions?: EBSOptions; + + /** + *IAM access policy as a JSON-formatted string.
+ */ + AccessPolicies?: string; + + /** + *Option to set time, in UTC format, of the daily automated snapshot. Default value is 0 hours.
+ */ + SnapshotOptions?: SnapshotOptions; + + /** + *Options to specify the subnets and security groups for a VPC endpoint. For more information, see Launching your Amazon OpenSearch Service domains using a VPC + * . + *
+ */ + VPCOptions?: VPCOptions; + + /** + *Options to specify the Cognito user and identity pools for OpenSearch Dashboards authentication. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards. + *
+ */ + CognitoOptions?: CognitoOptions; + + /** + *Options for encryption of data at rest.
+ */ + EncryptionAtRestOptions?: EncryptionAtRestOptions; + + /** + *Node-to-node encryption options.
+ */ + NodeToNodeEncryptionOptions?: NodeToNodeEncryptionOptions; + + /** + *Option to allow references to indices in an HTTP request body. Must be false
when configuring access
+ * to individual sub-resources. By default, the value is true
.
+ * See Advanced cluster parameters
+ * for more information.
+ *
Map of LogType
and LogPublishingOption
, each containing options to publish a given type
+ * of OpenSearch log.
+ *
Options to specify configurations that will be applied to the domain endpoint.
+ */ + DomainEndpointOptions?: DomainEndpointOptions; + + /** + *Specifies advanced security options.
+ */ + AdvancedSecurityOptions?: AdvancedSecurityOptionsInput; + + /** + *A list of Tag
added during domain creation.
+ *
Specifies Auto-Tune options.
+ */ + AutoTuneOptions?: AutoTuneOptionsInput; +} + +export namespace CreateDomainRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CreateDomainRequest): any => ({ + ...obj, + ...(obj.AdvancedSecurityOptions && { + AdvancedSecurityOptions: AdvancedSecurityOptionsInput.filterSensitiveLog(obj.AdvancedSecurityOptions), + }), + }); +} + +export enum AutoTuneState { + DISABLED = "DISABLED", + DISABLED_AND_ROLLBACK_COMPLETE = "DISABLED_AND_ROLLBACK_COMPLETE", + DISABLED_AND_ROLLBACK_ERROR = "DISABLED_AND_ROLLBACK_ERROR", + DISABLED_AND_ROLLBACK_IN_PROGRESS = "DISABLED_AND_ROLLBACK_IN_PROGRESS", + DISABLED_AND_ROLLBACK_SCHEDULED = "DISABLED_AND_ROLLBACK_SCHEDULED", + DISABLE_IN_PROGRESS = "DISABLE_IN_PROGRESS", + ENABLED = "ENABLED", + ENABLE_IN_PROGRESS = "ENABLE_IN_PROGRESS", + ERROR = "ERROR", +} + +/** + *The Auto-Tune options: the Auto-Tune desired state for the domain and list of maintenance schedules. + *
+ */ +export interface AutoTuneOptionsOutput { + /** + *The AutoTuneState
for the domain.
+ *
The error message while enabling or disabling Auto-Tune.
+ */ + ErrorMessage?: string; +} + +export namespace AutoTuneOptionsOutput { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AutoTuneOptionsOutput): any => ({ + ...obj, + }); +} + +/** + *Options to specify the subnets and security groups for the VPC endpoint. For more information, see + * Launching your Amazon OpenSearch Service domains using a VPC. + *
+ */ +export interface VPCDerivedInfo { + /** + *The VPC ID for the domain. Exists only if the domain was created with VPCOptions
.
The subnets for the VPC endpoint.
+ */ + SubnetIds?: string[]; + + /** + *The Availability Zones for the domain. Exists only if the domain was created with VPCOptions
.
The security groups for the VPC endpoint.
+ */ + SecurityGroupIds?: string[]; +} + +export namespace VPCDerivedInfo { + /** + * @internal + */ + export const filterSensitiveLog = (obj: VPCDerivedInfo): any => ({ + ...obj, + }); +} + +/** + *The current status of a domain.
+ */ +export interface DomainStatus { + /** + *The unique identifier for the specified domain.
+ */ + DomainId: string | undefined; + + /** + *The name of a domain. Domain names are unique across the domains owned by an account within an AWS + * region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, + * and - (hyphen). + *
+ */ + DomainName: string | undefined; + + /** + *The Amazon Resource Name (ARN) of a domain. See IAM identifiers + * in the AWS Identity and Access Management User Guide for more information. + *
+ */ + ARN: string | undefined; + + /** + *The domain creation status. True
if the creation of a domain is complete.
+ * False
+ *
if domain creation is still in progress.
+ *
The domain deletion status. True
if a delete request has been received for the domain but resource
+ * cleanup is still in progress. False
if the domain has not been deleted. Once domain deletion is
+ * complete, the status of the domain is no longer returned.
+ *
The domain endpoint that you use to submit index and search requests.
+ */ + Endpoint?: string; + + /** + *Map containing the domain endpoints used to submit index and search requests. Example key,
+ * value
: 'vpc','vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com'
.
+ *
The status of the domain configuration. True
if Amazon OpenSearch Service is
+ * processing configuration changes. False
if the configuration is active.
+ *
The status of a domain version upgrade. True
if Amazon OpenSearch Service is
+ * undergoing a version upgrade. False
if the configuration is active.
+ *
The type and number of instances in the domain.
+ */ + ClusterConfig: ClusterConfig | undefined; + + /** + *The EBSOptions
for the specified domain.
+ *
IAM access policy as a JSON-formatted string.
+ */ + AccessPolicies?: string; + + /** + *The status of the
+ * SnapshotOptions
.
+ *
The VPCOptions
for the specified domain. For more information, see
+ * Launching your Amazon OpenSearch Service domains using a VPC.
+ *
The CognitoOptions
for the specified domain. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards.
+ *
The status of the EncryptionAtRestOptions
.
+ *
The status of the NodeToNodeEncryptionOptions
.
+ *
The status of the
+ * AdvancedOptions
.
+ *
Log publishing options for the given domain.
+ */ + LogPublishingOptions?: { [key: string]: LogPublishingOption }; + + /** + *The current status of the domain's service software.
+ */ + ServiceSoftwareOptions?: ServiceSoftwareOptions; + + /** + *The current status of the domain's endpoint options.
+ */ + DomainEndpointOptions?: DomainEndpointOptions; + + /** + *The current status of the domain's advanced security options.
+ */ + AdvancedSecurityOptions?: AdvancedSecurityOptions; + + /** + *The current status of the domain's Auto-Tune options.
+ */ + AutoTuneOptions?: AutoTuneOptionsOutput; +} + +export namespace DomainStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DomainStatus): any => ({ + ...obj, + }); +} + +/** + *The result of a CreateDomain
operation. Contains the status of the newly created
+ * Amazon OpenSearch Service domain.
+ *
The status of the newly created domain.
+ */ + DomainStatus?: DomainStatus; +} + +export namespace CreateDomainResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CreateDomainResponse): any => ({ + ...obj, + }); +} + +/** + *An exception for trying to create or access sub-resource that is either invalid or not supported. Gives http status code of 409.
+ */ +export interface InvalidTypeException extends __SmithyException, $MetadataBearer { + name: "InvalidTypeException"; + $fault: "client"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace InvalidTypeException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InvalidTypeException): any => ({ + ...obj, + }); +} + +/** + *An exception for creating a resource that already exists. Gives http status code of 400.
+ */ +export interface ResourceAlreadyExistsException extends __SmithyException, $MetadataBearer { + name: "ResourceAlreadyExistsException"; + $fault: "client"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace ResourceAlreadyExistsException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ResourceAlreadyExistsException): any => ({ + ...obj, + }); +} + +/** + *Container for the parameters to the
+ *
+ * CreateOutboundConnection
+ *
+ * operation.
+ *
The
+ *
+ * AWSDomainInformation
+ *
+ * for the local OpenSearch domain.
+ *
The
+ *
+ * AWSDomainInformation
+ *
+ * for the remote OpenSearch domain.
+ *
The connection alias used used by the customer for this cross-cluster connection.
+ */ + ConnectionAlias: string | undefined; +} + +export namespace CreateOutboundConnectionRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CreateOutboundConnectionRequest): any => ({ + ...obj, + }); +} + +export enum OutboundConnectionStatusCode { + ACTIVE = "ACTIVE", + APPROVED = "APPROVED", + DELETED = "DELETED", + DELETING = "DELETING", + PENDING_ACCEPTANCE = "PENDING_ACCEPTANCE", + PROVISIONING = "PROVISIONING", + REJECTED = "REJECTED", + REJECTING = "REJECTING", + VALIDATING = "VALIDATING", + VALIDATION_FAILED = "VALIDATION_FAILED", +} + +/** + *The connection status of an outbound cross-cluster connection.
+ */ +export interface OutboundConnectionStatus { + /** + *The state code for the outbound connection. Can be one of the following:
+ *Verbose information for the outbound connection status.
+ */ + Message?: string; +} + +export namespace OutboundConnectionStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: OutboundConnectionStatus): any => ({ + ...obj, + }); +} + +/** + *The result of a
+ *
+ * CreateOutboundConnection
+ *
+ * request. Contains the details about the newly created cross-cluster connection.
+ *
The
+ *
+ * AWSDomainInformation
+ *
+ * for the local OpenSearch domain.
+ *
The
+ *
+ * AWSDomainInformation
+ *
+ * for the remote OpenSearch domain.
+ *
The connection alias provided during the create connection request.
+ */ + ConnectionAlias?: string; + + /** + *The
+ *
+ * OutboundConnectionStatus
+ *
+ * for the newly created connection.
+ *
The unique ID for the created outbound connection, which is used for subsequent operations on the connection.
+ */ + ConnectionId?: string; +} + +export namespace CreateOutboundConnectionResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CreateOutboundConnectionResponse): any => ({ + ...obj, + }); +} + +/** + *The Amazon S3 location for importing the package specified as S3BucketName
and
+ * S3Key
+ *
The name of the Amazon S3 bucket containing the package.
+ */ + S3BucketName?: string; + + /** + *Key (file name) of the package.
+ */ + S3Key?: string; +} + +export namespace PackageSource { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PackageSource): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for request parameters to the
+ *
+ * CreatePackage
+ *
+ * operation.
+ *
Unique identifier for the package.
+ */ + PackageName: string | undefined; + + /** + *Type of package. Currently supports only TXT-DICTIONARY.
+ */ + PackageType: PackageType | string | undefined; + + /** + *Description of the package.
+ */ + PackageDescription?: string; + + /** + *The Amazon S3 location from which to import the package. + *
+ */ + PackageSource: PackageSource | undefined; +} + +export namespace CreatePackageRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CreatePackageRequest): any => ({ + ...obj, + }); +} + +export enum PackageStatus { + AVAILABLE = "AVAILABLE", + COPYING = "COPYING", + COPY_FAILED = "COPY_FAILED", + DELETED = "DELETED", + DELETE_FAILED = "DELETE_FAILED", + DELETING = "DELETING", + VALIDATING = "VALIDATING", + VALIDATION_FAILED = "VALIDATION_FAILED", +} + +/** + *Basic information about a package.
+ */ +export interface PackageDetails { + /** + *Internal ID of the package.
+ */ + PackageID?: string; + + /** + *User-specified name of the package.
+ */ + PackageName?: string; + + /** + *Currently supports only TXT-DICTIONARY.
+ */ + PackageType?: PackageType | string; + + /** + *User-specified description of the package.
+ */ + PackageDescription?: string; + + /** + *Current state of the package. Values are COPYING, COPY_FAILED, AVAILABLE, DELETING, and DELETE_FAILED.
+ */ + PackageStatus?: PackageStatus | string; + + /** + *The timestamp of when the package was created.
+ */ + CreatedAt?: Date; + + LastUpdatedAt?: Date; + AvailablePackageVersion?: string; + /** + *Additional information if the package is in an error state. Null otherwise.
+ */ + ErrorDetails?: ErrorDetails; +} + +export namespace PackageDetails { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PackageDetails): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the response returned by the
+ *
+ * CreatePackage
+ *
+ * operation.
+ *
Information about the package. + *
+ */ + PackageDetails?: PackageDetails; +} + +export namespace CreatePackageResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CreatePackageResponse): any => ({ + ...obj, + }); +} + +/** + *Container for the parameters to the
+ *
+ * DeleteDomain
+ *
+ * operation. Specifies the name of the domain you want to delete.
+ *
The name of the domain you want to permanently delete.
+ */ + DomainName: string | undefined; +} + +export namespace DeleteDomainRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DeleteDomainRequest): any => ({ + ...obj, + }); +} + +/** + *The result of a DeleteDomain
request. Contains the status of the pending deletion, or
+ * a "domain not found" error if the domain and all of its resources have been deleted.
+ *
The status of the domain being deleted.
+ */ + DomainStatus?: DomainStatus; +} + +export namespace DeleteDomainResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DeleteDomainResponse): any => ({ + ...obj, + }); +} + +/** + *Container for the parameters to the
+ *
+ * DeleteInboundConnection
+ *
+ * operation.
+ *
The ID of the inbound connection to permanently delete.
+ */ + ConnectionId: string | undefined; +} + +export namespace DeleteInboundConnectionRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DeleteInboundConnectionRequest): any => ({ + ...obj, + }); +} + +/** + *The result of a
+ *
+ * DeleteInboundConnection
+ *
+ * operation. Contains details about the deleted inbound connection.
+ *
The
+ *
+ * InboundConnection
+ *
+ * of the deleted inbound connection.
+ *
Container for the parameters to the
+ *
+ * DeleteOutboundConnection
+ *
+ * operation.
+ *
The ID of the outbound connection you want to permanently delete.
+ */ + ConnectionId: string | undefined; +} + +export namespace DeleteOutboundConnectionRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DeleteOutboundConnectionRequest): any => ({ + ...obj, + }); +} + +/** + *Specifies details about an outbound connection.
+ */ +export interface OutboundConnection { + /** + *The
+ *
+ * DomainInformation
+ *
+ * for the local OpenSearch domain.
+ *
The
+ *
+ * DomainInformation
+ *
+ * for the remote OpenSearch domain.
+ *
The connection ID for the outbound cross-cluster connection.
+ */ + ConnectionId?: string; + + /** + *The connection alias for the outbound cross-cluster connection.
+ */ + ConnectionAlias?: string; + + /** + *The
+ *
+ * OutboundConnectionStatus
+ *
+ * for the outbound connection.
+ *
The result of a
+ *
+ * DeleteOutboundConnection
+ *
+ * operation. Contains details about the deleted outbound connection.
+ *
The
+ *
+ * OutboundConnection
+ *
+ * of the deleted outbound connection.
+ *
+ * Container for the request parameters to the
+ *
+ * DeletePackage
+ *
+ * operation.
+ *
The internal ID of the package you want to delete. Use DescribePackages
to find this value.
+ *
+ * Container for the response parameters to the
+ *
+ * DeletePackage
+ *
+ * operation.
+ *
+ * PackageDetails
+ *
Container for the parameters to the
+ *
+ * DescribeDomain
+ *
+ * operation.
+ *
The name of the domain for which you want information.
+ */ + DomainName: string | undefined; +} + +export namespace DescribeDomainRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeDomainRequest): any => ({ + ...obj, + }); +} + +/** + *The result of a DescribeDomain
request. Contains the status of the domain specified in
+ * the request.
+ *
The current status of the domain.
+ */ + DomainStatus: DomainStatus | undefined; +} + +export namespace DescribeDomainResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeDomainResponse): any => ({ + ...obj, + }); +} + +/** + *Container for the parameters to the DescribeDomainAutoTunes
operation.
+ *
The domain name for which you want Auto-Tune action details.
+ */ + DomainName: string | undefined; + + /** + *Set this value to limit the number of results returned. If not specified, defaults to 100.
+ */ + MaxResults?: number; + + /** + *NextToken is sent in case the earlier API call results contain the NextToken. Used for pagination.
+ */ + NextToken?: string; +} + +export namespace DescribeDomainAutoTunesRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeDomainAutoTunesRequest): any => ({ + ...obj, + }); +} + +export enum ScheduledAutoTuneActionType { + JVM_HEAP_SIZE_TUNING = "JVM_HEAP_SIZE_TUNING", + JVM_YOUNG_GEN_TUNING = "JVM_YOUNG_GEN_TUNING", +} + +export enum ScheduledAutoTuneSeverityType { + HIGH = "HIGH", + LOW = "LOW", + MEDIUM = "MEDIUM", +} + +/** + *Specifies details about the scheduled Auto-Tune action. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ +export interface ScheduledAutoTuneDetails { + /** + *The timestamp of the Auto-Tune action scheduled for the domain.
+ */ + Date?: Date; + + /** + *The Auto-Tune action type. Valid values are JVM_HEAP_SIZE_TUNING and JVM_YOUNG_GEN_TUNING.
+ */ + ActionType?: ScheduledAutoTuneActionType | string; + + /** + *The Auto-Tune action description.
+ */ + Action?: string; + + /** + *The Auto-Tune action severity. Valid values are LOW, MEDIUM, and HIGH.
+ */ + Severity?: ScheduledAutoTuneSeverityType | string; +} + +export namespace ScheduledAutoTuneDetails { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ScheduledAutoTuneDetails): any => ({ + ...obj, + }); +} + +/** + *Specifies details about the Auto-Tune action. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ +export interface AutoTuneDetails { + /** + *Specifies details about the scheduled Auto-Tune action. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ + ScheduledAutoTuneDetails?: ScheduledAutoTuneDetails; +} + +export namespace AutoTuneDetails { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AutoTuneDetails): any => ({ + ...obj, + }); +} + +export enum AutoTuneType { + SCHEDULED_ACTION = "SCHEDULED_ACTION", +} + +/** + *Specifies the Auto-Tune type and Auto-Tune action details.
+ */ +export interface AutoTune { + /** + *Specifies the Auto-Tune type. Valid value is SCHEDULED_ACTION.
+ */ + AutoTuneType?: AutoTuneType | string; + + /** + *Specifies details about the Auto-Tune action. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ + AutoTuneDetails?: AutoTuneDetails; +} + +export namespace AutoTune { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AutoTune): any => ({ + ...obj, + }); +} + +/** + *The result of a DescribeDomainAutoTunes
request. See
+ * Auto-Tune for Amazon OpenSearch Service
+ * for more information.
+ *
The list of setting adjustments that Auto-Tune has made to the domain. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ + AutoTunes?: AutoTune[]; + + /** + *An identifier to allow retrieval of paginated results.
+ */ + NextToken?: string; +} + +export namespace DescribeDomainAutoTunesResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeDomainAutoTunesResponse): any => ({ + ...obj, + }); +} + +/** + *Container for the parameters to the DescribeDomainConfig
operation. Specifies the
+ * domain name for which you want configuration information.
+ *
The domain you want to get information about.
+ */ + DomainName: string | undefined; +} + +export namespace DescribeDomainConfigRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeDomainConfigRequest): any => ({ + ...obj, + }); +} + +export enum RollbackOnDisable { + DEFAULT_ROLLBACK = "DEFAULT_ROLLBACK", + NO_ROLLBACK = "NO_ROLLBACK", +} + +/** + *The Auto-Tune options: the Auto-Tune desired state for the domain, rollback state when disabling + * Auto-Tune options and list of maintenance schedules. + *
+ */ +export interface AutoTuneOptions { + /** + *The Auto-Tune desired state. Valid values are ENABLED and DISABLED.
+ */ + DesiredState?: AutoTuneDesiredState | string; + + /** + *The rollback state while disabling Auto-Tune for the domain. Valid values are NO_ROLLBACK and DEFAULT_ROLLBACK. + *
+ */ + RollbackOnDisable?: RollbackOnDisable | string; + + /** + *A list of maintenance schedules. See + * Auto-Tune for Amazon OpenSearch Service + * for more information. + *
+ */ + MaintenanceSchedules?: AutoTuneMaintenanceSchedule[]; +} + +export namespace AutoTuneOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AutoTuneOptions): any => ({ + ...obj, + }); +} + +/** + *Provides the current Auto-Tune status for the domain.
+ */ +export interface AutoTuneStatus { + /** + *The timestamp of the Auto-Tune options creation date.
+ */ + CreationDate: Date | undefined; + + /** + *The timestamp of when the Auto-Tune options were last updated.
+ */ + UpdateDate: Date | undefined; + + /** + *The latest version of the Auto-Tune options.
+ */ + UpdateVersion?: number; + + /** + *The AutoTuneState
for the domain.
+ *
The error message while enabling or disabling Auto-Tune.
+ */ + ErrorMessage?: string; + + /** + *Indicates whether the domain is being deleted.
+ */ + PendingDeletion?: boolean; +} + +export namespace AutoTuneStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AutoTuneStatus): any => ({ + ...obj, + }); +} + +/** + *The Auto-Tune status for the domain.
+ */ +export interface AutoTuneOptionsStatus { + /** + *Specifies Auto-Tune options for the domain.
+ */ + Options?: AutoTuneOptions; + + /** + *The status of the Auto-Tune options for the domain.
+ */ + Status?: AutoTuneStatus; +} + +export namespace AutoTuneOptionsStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AutoTuneOptionsStatus): any => ({ + ...obj, + }); +} + +/** + *The configuration status for the specified domain.
+ */ +export interface ClusterConfigStatus { + /** + *The cluster configuration for the specified domain.
+ */ + Options: ClusterConfig | undefined; + + /** + *The cluster configuration status for the specified domain.
+ */ + Status: OptionStatus | undefined; +} + +export namespace ClusterConfigStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ClusterConfigStatus): any => ({ + ...obj, + }); +} + +/** + *The status of the Cognito options for the specified domain.
+ */ +export interface CognitoOptionsStatus { + /** + *Cognito options for the specified domain.
+ */ + Options: CognitoOptions | undefined; + + /** + *The status of the Cognito options for the specified domain.
+ */ + Status: OptionStatus | undefined; +} + +export namespace CognitoOptionsStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CognitoOptionsStatus): any => ({ + ...obj, + }); +} + +/** + *The configured endpoint options for the domain and their current status.
+ */ +export interface DomainEndpointOptionsStatus { + /** + *Options to configure the endpoint for the domain.
+ */ + Options: DomainEndpointOptions | undefined; + + /** + *The status of the endpoint options for the domain. See OptionStatus
for the status
+ * information that's included.
+ *
Status of the EBS options for the specified domain.
+ */ +export interface EBSOptionsStatus { + /** + *The EBS options for the specified domain.
+ */ + Options: EBSOptions | undefined; + + /** + *The status of the EBS options for the specified domain.
+ */ + Status: OptionStatus | undefined; +} + +export namespace EBSOptionsStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: EBSOptionsStatus): any => ({ + ...obj, + }); +} + +/** + *Status of the encryption At Rest options for the specified domain.
+ */ +export interface EncryptionAtRestOptionsStatus { + /** + *The Encryption At Rest options for the specified domain.
+ */ + Options: EncryptionAtRestOptions | undefined; + + /** + *The status of the Encryption At Rest options for the specified domain.
+ */ + Status: OptionStatus | undefined; +} + +export namespace EncryptionAtRestOptionsStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: EncryptionAtRestOptionsStatus): any => ({ + ...obj, + }); +} + +/** + *The status of the OpenSearch version options for the specified OpenSearch domain.
+ */ +export interface VersionStatus { + /** + *The OpenSearch version for the specified OpenSearch domain.
+ */ + Options: string | undefined; + + /** + *The status of the OpenSearch version options for the specified OpenSearch domain.
+ */ + Status: OptionStatus | undefined; +} + +export namespace VersionStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: VersionStatus): any => ({ + ...obj, + }); +} + +/** + *The configured log publishing options for the domain and their current status.
+ */ +export interface LogPublishingOptionsStatus { + /** + *The log publishing options configured for the domain.
+ */ + Options?: { [key: string]: LogPublishingOption }; + + /** + *The status of the log publishing options for the domain. See OptionStatus
for the
+ * status information that's included.
+ *
Status of the node-to-node encryption options for the specified domain.
+ */ +export interface NodeToNodeEncryptionOptionsStatus { + /** + *The node-to-node encryption options for the specified domain.
+ */ + Options: NodeToNodeEncryptionOptions | undefined; + + /** + *The status of the node-to-node encryption options for the specified domain.
+ */ + Status: OptionStatus | undefined; +} + +export namespace NodeToNodeEncryptionOptionsStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: NodeToNodeEncryptionOptionsStatus): any => ({ + ...obj, + }); +} + +/** + *Status of a daily automated snapshot.
+ */ +export interface SnapshotOptionsStatus { + /** + *The daily snapshot options specified for the domain.
+ */ + Options: SnapshotOptions | undefined; + + /** + *The status of a daily automated snapshot.
+ */ + Status: OptionStatus | undefined; +} + +export namespace SnapshotOptionsStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: SnapshotOptionsStatus): any => ({ + ...obj, + }); +} + +/** + *Status of the VPC options for the specified domain.
+ */ +export interface VPCDerivedInfoStatus { + /** + *The VPC options for the specified domain.
+ */ + Options: VPCDerivedInfo | undefined; + + /** + *The status of the VPC options for the specified domain.
+ */ + Status: OptionStatus | undefined; +} + +export namespace VPCDerivedInfoStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: VPCDerivedInfoStatus): any => ({ + ...obj, + }); +} + +/** + *The configuration of a domain.
+ */ +export interface DomainConfig { + /** + *String of format Elasticsearch_X.Y or OpenSearch_X.Y to specify the engine version for the OpenSearch or Elasticsearch domain.
+ */ + EngineVersion?: VersionStatus; + + /** + *The ClusterConfig
for the domain.
+ *
The EBSOptions
for the domain.
+ *
IAM access policy as a JSON-formatted string.
+ */ + AccessPolicies?: AccessPoliciesStatus; + + /** + *The SnapshotOptions
for the domain.
+ *
The VPCOptions
for the specified domain. For more information, see
+ * Launching your Amazon OpenSearch Service domains using a VPC.
+ *
The CognitoOptions
for the specified domain. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards.
+ *
The EncryptionAtRestOptions
for the domain.
+ *
The NodeToNodeEncryptionOptions
for the domain.
+ *
The AdvancedOptions
for the domain. See Advanced options
+ * for more information.
+ *
Log publishing options for the given domain.
+ */ + LogPublishingOptions?: LogPublishingOptionsStatus; + + /** + *The DomainEndpointOptions
for the domain.
+ *
Specifies AdvancedSecurityOptions
for the domain.
+ *
Specifies AutoTuneOptions
for the domain.
+ *
The result of a DescribeDomainConfig
request. Contains the configuration information of
+ * the requested domain.
+ *
The configuration information of the domain requested in the DescribeDomainConfig
request.
+ *
Container for the parameters to the
+ *
+ * DescribeDomains
+ *
+ * operation. By default, the API returns the status of all domains.
+ *
The domains for which you want information.
+ */ + DomainNames: string[] | undefined; +} + +export namespace DescribeDomainsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeDomainsRequest): any => ({ + ...obj, + }); +} + +/** + *The result of a DescribeDomains
request. Contains the status of the specified domains
+ * or all domains owned by the account.
+ *
The status of the domains requested in the DescribeDomains
request.
+ *
+ * A filter used to limit results when describing inbound or outbound cross-cluster connections. + * Multiple values can be specified per filter. + * A cross-cluster connection must match at least one of the specified values for it to be + * returned from an operation. + *
+ */ +export interface Filter { + /** + *+ * The name of the filter. + *
+ */ + Name?: string; + + /** + *+ * Contains one or more values for the filter. + *
+ */ + Values?: string[]; +} + +export namespace Filter { + /** + * @internal + */ + export const filterSensitiveLog = (obj: Filter): any => ({ + ...obj, + }); +} + +/** + *Container for the parameters to the
+ *
+ * DescribeInboundConnections
+ *
+ * operation.
+ *
+ * A list of filters used to match properties for inbound cross-cluster connections.
+ * Available
+ *
+ * Filter
+ *
+ * values are:
+ *
Set this value to limit the number of results returned. If not specified, defaults to 100.
+ */ + MaxResults?: number; + + /** + *If more results are available and NextToken is present, make the next request to the same API with the received + * NextToken to paginate the remaining results.
+ */ + NextToken?: string; +} + +export namespace DescribeInboundConnectionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeInboundConnectionsRequest): any => ({ + ...obj, + }); +} + +/** + *The result of a
+ *
+ * DescribeInboundConnections
+ *
+ * request. Contains a list of connections matching the filter criteria.
+ *
A list of
+ *
+ * InboundConnection
+ *
+ * matching the specified filter criteria.
+ *
If more results are available and NextToken is present, make the next request to the same API with the received + * NextToken to paginate the remaining results. + *
+ */ + NextToken?: string; +} + +export namespace DescribeInboundConnectionsResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeInboundConnectionsResponse): any => ({ + ...obj, + }); +} + +/** + *The request processing has failed because of invalid pagination token provided by customer. Returns an HTTP status code of 400.
+ */ +export interface InvalidPaginationTokenException extends __SmithyException, $MetadataBearer { + name: "InvalidPaginationTokenException"; + $fault: "client"; + /** + *A description of the error.
+ */ + message?: string; +} + +export namespace InvalidPaginationTokenException { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InvalidPaginationTokenException): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the parameters to the
+ *
+ * DescribeInstanceTypeLimits
+ *
+ * operation.
+ *
+ * The name of the domain you want to modify. Only include this value if you're
+ * querying OpenSearch
+ *
+ * Limits
+ *
+ * for an existing domain.
+ *
+ * The instance type for an OpenSearch cluster for which OpenSearch
+ *
+ * Limits
+ *
+ * are needed.
+ *
+ * Version of OpenSearch for which
+ *
+ * Limits
+ *
+ * are needed.
+ *
+ * InstanceCountLimits represents the limits on the number of instances that can be created in Amazon OpenSearch Service for + * a given InstanceType. + *
+ */ +export interface InstanceCountLimits { + /** + *+ * Minimum number of instances that can be instantiated for a given InstanceType. + *
+ */ + MinimumInstanceCount?: number; + + /** + *+ * Maximum number of instances that can be instantiated for a given InstanceType. + *
+ */ + MaximumInstanceCount?: number; +} + +export namespace InstanceCountLimits { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InstanceCountLimits): any => ({ + ...obj, + }); +} + +/** + *InstanceLimits represents the list of instance-related attributes that are available for a given InstanceType. + *
+ */ +export interface InstanceLimits { + /** + *+ * InstanceCountLimits represents the limits on the number of instances that can be created in Amazon OpenSearch Service for + * a given InstanceType. + *
+ */ + InstanceCountLimits?: InstanceCountLimits; +} + +export namespace InstanceLimits { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InstanceLimits): any => ({ + ...obj, + }); +} + +/** + *Limits that are applicable for the given storage type. + *
+ */ +export interface StorageTypeLimit { + /** + *
+ * Name of storage limits that are applicable for the given storage type.
+ * If
+ *
+ * StorageType
+ *
+ * is "ebs", the following storage options are applicable:
+ *
+ * Values for the
+ *
+ * StorageTypeLimit$LimitName
+ *
+ * .
+ *
StorageTypes represents the list of storage-related types and their attributes + * that are available for a given InstanceType. + *
+ */ +export interface StorageType { + /** + *+ * Type of storage. + * List of available storage options: + *
+ * Sub-type of the given storage type. + * List of available sub-storage options: + * "instance" storageType has no storageSubType. + * "ebs" storageType has the following valid storageSubTypes: + *
+ * VolumeType
+ *
+ * for more information regarding each EBS storage option.
+ *
+ */
+ StorageSubTypeName?: string;
+
+ /**
+ * Limits that are applicable for the given storage type. + *
+ */ + StorageTypeLimits?: StorageTypeLimit[]; +} + +export namespace StorageType { + /** + * @internal + */ + export const filterSensitiveLog = (obj: StorageType): any => ({ + ...obj, + }); +} + +/** + *
+ * Limits for a given InstanceType and for each of its roles.
+ *
+ * Limits contains the following:
+ *
+ * StorageTypes
+ *
,
+ *
+ * InstanceLimits
+ *
,
+ * and
+ *
+ * AdditionalLimits
+ *
+ *
Storage-related types and attributes + * that are available for a given InstanceType. + *
+ */ + StorageTypes?: StorageType[]; + + /** + *InstanceLimits represents the list of instance-related attributes that are available for a given InstanceType. + *
+ */ + InstanceLimits?: InstanceLimits; + + /** + *
+ * List of additional limits that are specific to a given InstanceType and for each of its
+ *
+ * InstanceRole
+ *
+ * .
+ *
+ * Container for the parameters received from the
+ *
+ * DescribeInstanceTypeLimits
+ *
+ * operation.
+ *
+ * The role of a given instance and all applicable limits. + * The role performed by a given OpenSearch instance + * can be one of the following: + *
Container for the parameters to the
+ *
+ * DescribeOutboundConnections
+ *
+ * operation.
+ *
+ * A list of filters used to match properties for outbound cross-cluster connections.
+ * Available
+ *
+ * Filter
+ *
+ * names for this operation are:
+ *
Set this value to limit the number of results returned. If not specified, defaults to 100.
+ */ + MaxResults?: number; + + /** + *NextToken is sent in case the earlier API call results contain the NextToken parameter. Used for pagination.
+ */ + NextToken?: string; +} + +export namespace DescribeOutboundConnectionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeOutboundConnectionsRequest): any => ({ + ...obj, + }); +} + +/** + *The result of a
+ *
+ * DescribeOutboundConnections
+ *
+ * request. Contains the list of connections matching the filter criteria.
+ *
A list of
+ *
+ * OutboundConnection
+ *
+ * matching the specified filter criteria.
+ *
If more results are available and NextToken is present, make the next request to the same API with the received + * NextToken to paginate the remaining results. + *
+ */ + NextToken?: string; +} + +export namespace DescribeOutboundConnectionsResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeOutboundConnectionsResponse): any => ({ + ...obj, + }); +} + +export enum DescribePackagesFilterName { + PackageID = "PackageID", + PackageName = "PackageName", + PackageStatus = "PackageStatus", +} + +/** + *A filter to apply to the DescribePackage
response.
+ *
Any field from PackageDetails
.
+ *
A list of values for the specified field.
+ */ + Value?: string[]; +} + +export namespace DescribePackagesFilter { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribePackagesFilter): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the request parameters to the
+ *
+ * DescribePackage
+ *
+ * operation.
+ *
Only returns packages that match the DescribePackagesFilterList
values.
+ *
Limits results to a maximum number of packages.
+ */ + MaxResults?: number; + + /** + *Used for pagination. Only necessary if a previous API call includes a non-null NextToken value. If provided, + * returns results for the next page. + *
+ */ + NextToken?: string; +} + +export namespace DescribePackagesRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribePackagesRequest): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the response returned by the
+ *
+ * DescribePackages
+ *
+ * operation.
+ *
List of PackageDetails
objects.
+ *
Container for parameters to
+ * DescribeReservedInstanceOfferings
+ *
The offering identifier filter value. Use this parameter to show only the available offering that matches the + * specified reservation identifier. + *
+ */ + ReservedInstanceOfferingId?: string; + + /** + *Set this value to limit the number of results returned. If not specified, defaults to 100.
+ */ + MaxResults?: number; + + /** + *Provides an identifier to allow retrieval of paginated results. + *
+ */ + NextToken?: string; +} + +export namespace DescribeReservedInstanceOfferingsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeReservedInstanceOfferingsRequest): any => ({ + ...obj, + }); +} + +export enum ReservedInstancePaymentOption { + ALL_UPFRONT = "ALL_UPFRONT", + NO_UPFRONT = "NO_UPFRONT", + PARTIAL_UPFRONT = "PARTIAL_UPFRONT", +} + +/** + *Contains the specific price and frequency of a recurring charges for a reserved OpenSearch instance, or for a + * reserved OpenSearch instance offering. + *
+ */ +export interface RecurringCharge { + /** + *The monetary amount of the recurring charge.
+ */ + RecurringChargeAmount?: number; + + /** + *The frequency of the recurring charge.
+ */ + RecurringChargeFrequency?: string; +} + +export namespace RecurringCharge { + /** + * @internal + */ + export const filterSensitiveLog = (obj: RecurringCharge): any => ({ + ...obj, + }); +} + +/** + *Details of a reserved OpenSearch instance offering.
+ */ +export interface ReservedInstanceOffering { + /** + *The OpenSearch reserved instance offering identifier.
+ */ + ReservedInstanceOfferingId?: string; + + /** + *The OpenSearch instance type offered by the reserved instance offering.
+ */ + InstanceType?: OpenSearchPartitionInstanceType | string; + + /** + *The duration, in seconds, for which the offering will reserve the OpenSearch instance.
+ */ + Duration?: number; + + /** + *The upfront fixed charge you will pay to purchase the specific reserved OpenSearch instance offering.
+ */ + FixedPrice?: number; + + /** + *The rate you are charged for each hour the domain that is using the offering is running.
+ */ + UsagePrice?: number; + + /** + *The currency code for the reserved OpenSearch instance offering.
+ */ + CurrencyCode?: string; + + /** + *Payment option for the reserved OpenSearch instance offering
+ */ + PaymentOption?: ReservedInstancePaymentOption | string; + + /** + *The charge to your account regardless of whether you are creating any domains using the instance offering.
+ */ + RecurringCharges?: RecurringCharge[]; +} + +export namespace ReservedInstanceOffering { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ReservedInstanceOffering): any => ({ + ...obj, + }); +} + +/** + *Container for results from
+ * DescribeReservedInstanceOfferings
+ *
Provides an identifier to allow retrieval of paginated results.
+ */ + NextToken?: string; + + /** + *List of reserved OpenSearch instance offerings
+ */ + ReservedInstanceOfferings?: ReservedInstanceOffering[]; +} + +export namespace DescribeReservedInstanceOfferingsResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeReservedInstanceOfferingsResponse): any => ({ + ...obj, + }); +} + +/** + *Container for parameters to
+ * DescribeReservedInstances
+ *
The reserved instance identifier filter value. Use this parameter to show only the reservation that matches the + * specified reserved OpenSearch instance ID. + *
+ */ + ReservedInstanceId?: string; + + /** + *Set this value to limit the number of results returned. If not specified, defaults to 100.
+ */ + MaxResults?: number; + + /** + *Provides an identifier to allow retrieval of paginated results. + *
+ */ + NextToken?: string; +} + +export namespace DescribeReservedInstancesRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeReservedInstancesRequest): any => ({ + ...obj, + }); +} + +/** + *Details of a reserved OpenSearch instance.
+ */ +export interface ReservedInstance { + /** + *The customer-specified identifier to track this reservation.
+ */ + ReservationName?: string; + + /** + *The unique identifier for the reservation.
+ */ + ReservedInstanceId?: string; + + BillingSubscriptionId?: number; + /** + *The offering identifier.
+ */ + ReservedInstanceOfferingId?: string; + + /** + *The OpenSearch instance type offered by the reserved instance offering.
+ */ + InstanceType?: OpenSearchPartitionInstanceType | string; + + /** + *The time the reservation started.
+ */ + StartTime?: Date; + + /** + *The duration, in seconds, for which the OpenSearch instance is reserved.
+ */ + Duration?: number; + + /** + *The upfront fixed charge you will paid to purchase the specific reserved OpenSearch instance offering.
+ */ + FixedPrice?: number; + + /** + *The rate you are charged for each hour for the domain that is using this reserved instance.
+ */ + UsagePrice?: number; + + /** + *The currency code for the reserved OpenSearch instance offering.
+ */ + CurrencyCode?: string; + + /** + *The number of OpenSearch instances that have been reserved.
+ */ + InstanceCount?: number; + + /** + *The state of the reserved OpenSearch instance.
+ */ + State?: string; + + /** + *The payment option as defined in the reserved OpenSearch instance offering.
+ */ + PaymentOption?: ReservedInstancePaymentOption | string; + + /** + *The charge to your account regardless of whether you are creating any domains using the instance offering.
+ */ + RecurringCharges?: RecurringCharge[]; +} + +export namespace ReservedInstance { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ReservedInstance): any => ({ + ...obj, + }); +} + +/** + *Container for results from
+ * DescribeReservedInstances
+ *
Provides an identifier to allow retrieval of paginated results.
+ */ + NextToken?: string; + + /** + *List of reserved OpenSearch instances.
+ */ + ReservedInstances?: ReservedInstance[]; +} + +export namespace DescribeReservedInstancesResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeReservedInstancesResponse): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the request parameters to the
+ *
+ * DissociatePackage
+ *
+ * operation.
+ *
The internal ID of the package to associate with a domain. Use DescribePackages
to find
+ * this value.
+ *
The name of the domain to associate the package with.
+ */ + DomainName: string | undefined; +} + +export namespace DissociatePackageRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DissociatePackageRequest): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the response returned by
+ *
+ * DissociatePackage
+ *
+ * operation.
+ *
+ * DomainPackageDetails
+ *
+ * Container for the request parameters to
+ *
+ * GetCompatibleVersions
+ *
+ * operation.
+ *
The name of an domain. Domain names are unique across the domains owned by an account within an AWS + * region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, + * and - (hyphen). + *
+ */ + DomainName?: string; +} + +export namespace GetCompatibleVersionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: GetCompatibleVersionsRequest): any => ({ + ...obj, + }); +} + +/** + *
+ * A map from an
+ *
+ * EngineVersion
+ *
+ * to a list of compatible
+ *
+ * EngineVersion
+ *
+ * s to which the domain can be upgraded.
+ *
The current version of OpenSearch a domain is on.
+ */ + SourceVersion?: string; + + /** + *List of supported OpenSearch versions. + *
+ */ + TargetVersions?: string[]; +} + +export namespace CompatibleVersionsMap { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CompatibleVersionsMap): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the response returned by the
+ *
+ * GetCompatibleVersions
+ *
+ * operation.
+ *
+ * A map of compatible OpenSearch versions returned as part of the
+ *
+ * GetCompatibleVersions
+ *
+ * operation.
+ *
+ * Container for the request parameters to the
+ *
+ * GetPackageVersionHistory
+ *
+ * operation.
+ *
Returns an audit history of package versions.
+ */ + PackageID: string | undefined; + + /** + *Limits results to a maximum number of package versions.
+ */ + MaxResults?: number; + + /** + *Used for pagination. Only necessary if a previous API call includes a non-null NextToken value. If provided, + * returns results for the next page. + *
+ */ + NextToken?: string; +} + +export namespace GetPackageVersionHistoryRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: GetPackageVersionHistoryRequest): any => ({ + ...obj, + }); +} + +/** + *Details of a package version.
+ */ +export interface PackageVersionHistory { + /** + *The package version.
+ */ + PackageVersion?: string; + + /** + *A message associated with the package version.
+ */ + CommitMessage?: string; + + /** + *The timestamp of when the package was created.
+ */ + CreatedAt?: Date; +} + +export namespace PackageVersionHistory { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PackageVersionHistory): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for response returned by
+ *
+ * GetPackageVersionHistory
+ *
+ * operation.
+ *
List of PackageVersionHistory
objects.
+ *
+ * Container for the request parameters to the
+ *
+ * GetUpgradeHistory
+ *
+ * operation.
+ *
The name of an domain. Domain names are unique across the domains owned by an account within an AWS + * region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, + * and - (hyphen). + *
+ */ + DomainName: string | undefined; + + /** + *+ * Set this value to limit the number of results returned. + *
+ */ + MaxResults?: number; + + /** + *+ * Paginated APIs accept the NextToken input to return the next page of results and provide + * a NextToken output in the response, which you can use to retrieve more results. + *
+ */ + NextToken?: string; +} + +export namespace GetUpgradeHistoryRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: GetUpgradeHistoryRequest): any => ({ + ...obj, + }); +} + +export enum UpgradeStep { + PRE_UPGRADE_CHECK = "PRE_UPGRADE_CHECK", + SNAPSHOT = "SNAPSHOT", + UPGRADE = "UPGRADE", +} + +export enum UpgradeStatus { + FAILED = "FAILED", + IN_PROGRESS = "IN_PROGRESS", + SUCCEEDED = "SUCCEEDED", + SUCCEEDED_WITH_ISSUES = "SUCCEEDED_WITH_ISSUES", +} + +/** + *Represents a single step of the upgrade or upgrade eligibility check workflow.
+ */ +export interface UpgradeStepItem { + /** + *+ * One of three steps an upgrade or upgrade eligibility check goes through: + *
+ * The current status of the upgrade. The status can take one of the following values: + *
A list of strings containing detailed information about the errors encountered in a particular step.
+ */ + Issues?: string[]; + + /** + *The floating point value representing the progress percentage of a particular step.
+ */ + ProgressPercent?: number; +} + +export namespace UpgradeStepItem { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UpgradeStepItem): any => ({ + ...obj, + }); +} + +/** + *History of the last 10 upgrades and upgrade eligibility checks.
+ */ +export interface UpgradeHistory { + /** + *A string that briefly describes the upgrade.
+ */ + UpgradeName?: string; + + /** + *UTC timestamp at which the upgrade API call was made in "yyyy-MM-ddTHH:mm:ssZ" format.
+ */ + StartTimestamp?: Date; + + /** + *+ * The current status of the upgrade. The status can take one of the following values: + *
+ * A list of
+ *
+ * UpgradeStepItem
+ *
+ * s representing information about each step performed as part of a specific upgrade or upgrade eligibility check.
+ *
+ * Container for the response returned by the
+ *
+ * GetUpgradeHistory
+ *
+ * operation.
+ *
+ * A list of
+ *
+ * UpgradeHistory
+ *
+ * objects corresponding to each upgrade or upgrade eligibility check performed on a domain returned as part of the
+ *
+ * GetUpgradeHistoryResponse
+ *
+ * object.
+ *
Pagination token that needs to be supplied to the next call to get the next page of results.
+ */ + NextToken?: string; +} + +export namespace GetUpgradeHistoryResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: GetUpgradeHistoryResponse): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the request parameters to the
+ *
+ * GetUpgradeStatus
+ *
+ * operation.
+ *
The name of an domain. Domain names are unique across the domains owned by an account within an AWS + * region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, + * and - (hyphen). + *
+ */ + DomainName: string | undefined; +} + +export namespace GetUpgradeStatusRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: GetUpgradeStatusRequest): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the response returned by the
+ *
+ * GetUpgradeStatus
+ *
+ * operation.
+ *
+ * One of three steps an upgrade or upgrade eligibility check goes through: + *
+ * One of four statuses an upgrade have, returned as part of the
+ *
+ * GetUpgradeStatusResponse
+ *
+ * object. The status can take one of the following values:
+ *
A string that briefly describes the update.
+ */ + UpgradeName?: string; +} + +export namespace GetUpgradeStatusResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: GetUpgradeStatusResponse): any => ({ + ...obj, + }); +} + +export interface DomainInfo { + /** + *The DomainName
.
+ *
The result of a ListDomainNames
operation. Contains the names of all domains owned by
+ * this account.
+ *
List of domain names.
+ */ + DomainNames?: DomainInfo[]; +} + +export namespace ListDomainNamesResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ListDomainNamesResponse): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the request parameters to the
+ *
+ * ListDomainsForPackage
+ *
+ * operation.
+ *
The package for which to list associated domains.
+ */ + PackageID: string | undefined; + + /** + *Limits the results to a maximum number of domains.
+ */ + MaxResults?: number; + + /** + *Used for pagination. Only necessary if a previous API call includes a non-null NextToken value. If provided, + * returns results for the next page. + *
+ */ + NextToken?: string; +} + +export namespace ListDomainsForPackageRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ListDomainsForPackageRequest): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the response parameters to the
+ *
+ * ListDomainsForPackage
+ *
+ * operation.
+ *
List of DomainPackageDetails
objects.
+ *
The name of an domain. Domain names are unique across the domains owned by an account within an AWS + * region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, + * and - (hyphen). + *
+ */ + DomainName?: string; + + /** + *+ * Set this value to limit the number of results returned. + *
+ */ + MaxResults?: number; + + /** + *+ * Paginated APIs accept the NextToken input to return the next page of results and provide + * a NextToken output in the response, which you can use to retrieve more results. + *
+ */ + NextToken?: string; +} + +export namespace ListInstanceTypeDetailsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ListInstanceTypeDetailsRequest): any => ({ + ...obj, + }); +} + +export interface InstanceTypeDetails { + InstanceType?: OpenSearchPartitionInstanceType | string; + EncryptionEnabled?: boolean; + CognitoEnabled?: boolean; + AppLogsEnabled?: boolean; + AdvancedSecurityEnabled?: boolean; + WarmEnabled?: boolean; + InstanceRole?: string[]; +} + +export namespace InstanceTypeDetails { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InstanceTypeDetails): any => ({ + ...obj, + }); +} + +export interface ListInstanceTypeDetailsResponse { + InstanceTypeDetails?: InstanceTypeDetails[]; + /** + *+ * Paginated APIs accept the NextToken input to return the next page of results and provide + * a NextToken output in the response, which you can use to retrieve more results. + *
+ */ + NextToken?: string; +} + +export namespace ListInstanceTypeDetailsResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ListInstanceTypeDetailsResponse): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the request parameters to the
+ *
+ * ListPackagesForDomain
+ *
+ * operation.
+ *
The name of the domain for which you want to list associated packages.
+ */ + DomainName: string | undefined; + + /** + *Limits results to a maximum number of packages.
+ */ + MaxResults?: number; + + /** + *Used for pagination. Only necessary if a previous API call includes a non-null NextToken value. If provided, + * returns results for the next page. + *
+ */ + NextToken?: string; +} + +export namespace ListPackagesForDomainRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ListPackagesForDomainRequest): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the response parameters to the
+ *
+ * ListPackagesForDomain
+ *
+ * operation.
+ *
List of DomainPackageDetails
objects.
+ *
Pagination token to supply to the next call to get the next page of results.
+ */ + NextToken?: string; +} + +export namespace ListPackagesForDomainResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ListPackagesForDomainResponse): any => ({ + ...obj, + }); +} + +/** + *Container for the parameters to the
+ *
+ * ListTags
+ *
+ * operation. Specify the ARN
of the domain that the tags you want
+ * to view are attached to.
+ *
Specify the ARN
of the domain that the tags you want
+ * to view are attached to.
+ *
The result of a ListTags
operation. Contains tags for all requested domains.
+ *
List of Tag
for the requested domain.
+ *
+ * Container for the parameters to the
+ *
+ * ListVersions
+ *
+ * operation.
+ *
+ * Use
+ *
+ * MaxResults
+ *
+ * to control the maximum number of results to retrieve in a single
+ * call.
+ *
+ * Use
+ *
+ * NextToken
+ *
+ * in response to retrieve more results. If the received response does
+ * not contain a NextToken, there are no more results to retrieve.
+ *
+ * Set this value to limit the number of results returned. + * Value must be greater than 10 or it won't be honored. + *
+ */ + MaxResults?: number; + + /** + *+ * Paginated APIs accept the NextToken input to return the next page of results and provide + * a NextToken output in the response, which you can use to retrieve more results. + *
+ */ + NextToken?: string; +} + +export namespace ListVersionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ListVersionsRequest): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the parameters for response received from the
+ *
+ * ListVersions
+ *
+ * operation.
+ *
List of supported OpenSearch versions. + *
+ */ + Versions?: string[]; + + /** + *+ * Paginated APIs accept the NextToken input to return the next page of results and provide + * a NextToken output in the response, which you can use to retrieve more results. + *
+ */ + NextToken?: string; +} + +export namespace ListVersionsResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ListVersionsResponse): any => ({ + ...obj, + }); +} + +/** + *Container for parameters to
+ * PurchaseReservedInstanceOffering
+ *
The ID of the reserved OpenSearch instance offering to purchase.
+ */ + ReservedInstanceOfferingId: string | undefined; + + /** + *A customer-specified identifier to track this reservation.
+ */ + ReservationName: string | undefined; + + /** + *The number of OpenSearch instances to reserve.
+ */ + InstanceCount?: number; +} + +export namespace PurchaseReservedInstanceOfferingRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PurchaseReservedInstanceOfferingRequest): any => ({ + ...obj, + }); +} + +/** + *Represents the output of a PurchaseReservedInstanceOffering
operation.
+ *
Details of the reserved OpenSearch instance which was purchased.
+ */ + ReservedInstanceId?: string; + + /** + *The customer-specified identifier used to track this reservation.
+ */ + ReservationName?: string; +} + +export namespace PurchaseReservedInstanceOfferingResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PurchaseReservedInstanceOfferingResponse): any => ({ + ...obj, + }); +} + +/** + *Container for the parameters to the
+ *
+ * RejectInboundConnection
+ *
+ * operation.
+ *
The ID of the inbound connection to reject.
+ */ + ConnectionId: string | undefined; +} + +export namespace RejectInboundConnectionRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: RejectInboundConnectionRequest): any => ({ + ...obj, + }); +} + +/** + *The result of a
+ *
+ * RejectInboundConnection
+ *
+ * operation. Contains details about the rejected inbound connection.
+ *
The
+ *
+ * InboundConnection
+ *
+ * of the rejected inbound connection.
+ *
Container for the parameters to the
+ *
+ * RemoveTags
+ *
+ * operation. Specify the ARN
for the domain from which you want to remove the
+ * specified TagKey
.
+ *
The ARN
of the domain from which you want to delete the specified tags.
+ *
The TagKey
list you want to remove from the domain.
+ *
Container for the parameters to the
+ *
+ * StartServiceSoftwareUpdate
+ *
+ * operation. Specifies the name of the domain to schedule a service software update for.
+ *
The name of the domain that you want to update to the latest service software.
+ */ + DomainName: string | undefined; +} + +export namespace StartServiceSoftwareUpdateRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: StartServiceSoftwareUpdateRequest): any => ({ + ...obj, + }); +} + +/** + *The result of a StartServiceSoftwareUpdate
operation. Contains the status of the
+ * update.
+ *
The current status of the OpenSearch service software update.
+ */ + ServiceSoftwareOptions?: ServiceSoftwareOptions; +} + +export namespace StartServiceSoftwareUpdateResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: StartServiceSoftwareUpdateResponse): any => ({ + ...obj, + }); +} + +/** + *Container for the parameters to the
+ *
+ * UpdateDomain
+ *
+ * operation. Specifies the type and number of instances in the domain cluster.
+ *
The name of the domain you're updating.
+ */ + DomainName: string | undefined; + + /** + *The type and number of instances to instantiate for the domain cluster.
+ */ + ClusterConfig?: ClusterConfig; + + /** + *Specify the type and size of the EBS volume to use.
+ */ + EBSOptions?: EBSOptions; + + /** + *Option to set the time, in UTC format, for the daily automated snapshot. Default value is 0
hours.
+ *
Options to specify the subnets and security groups for the VPC endpoint. For more information, see Launching your Amazon OpenSearch Service domains using a VPC + * . + *
+ */ + VPCOptions?: VPCOptions; + + /** + *Options to specify the Cognito user and identity pools for OpenSearch Dashboards authentication. For more information, see Configuring Amazon Cognito authentication for OpenSearch Dashboards. + *
+ */ + CognitoOptions?: CognitoOptions; + + /** + *Modifies the advanced option to allow references to indices in an HTTP request body. Must be false
when
+ * configuring access to individual sub-resources. By default, the value is true
.
+ * See Advanced options
+ * for more information.
+ *
IAM access policy as a JSON-formatted string.
+ */ + AccessPolicies?: string; + + /** + *Map of LogType
and LogPublishingOption
, each containing options to publish a given type
+ * of OpenSearch log.
+ *
Specifies encryption of data at rest options.
+ */ + EncryptionAtRestOptions?: EncryptionAtRestOptions; + + /** + *Options to specify configuration that will be applied to the domain endpoint.
+ */ + DomainEndpointOptions?: DomainEndpointOptions; + + /** + *Specifies node-to-node encryption options.
+ */ + NodeToNodeEncryptionOptions?: NodeToNodeEncryptionOptions; + + /** + *Specifies advanced security options.
+ */ + AdvancedSecurityOptions?: AdvancedSecurityOptionsInput; + + /** + *Specifies Auto-Tune options.
+ */ + AutoTuneOptions?: AutoTuneOptions; +} + +export namespace UpdateDomainConfigRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UpdateDomainConfigRequest): any => ({ + ...obj, + ...(obj.AdvancedSecurityOptions && { + AdvancedSecurityOptions: AdvancedSecurityOptionsInput.filterSensitiveLog(obj.AdvancedSecurityOptions), + }), + }); +} + +/** + *The result of an UpdateDomain
request. Contains the status of the domain
+ * being updated.
+ *
The status of the updated domain.
+ */ + DomainConfig: DomainConfig | undefined; +} + +export namespace UpdateDomainConfigResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UpdateDomainConfigResponse): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for request parameters to the
+ *
+ * UpdatePackage
+ *
+ * operation.
+ *
The unique identifier for the package.
+ */ + PackageID: string | undefined; + + /** + *The Amazon S3 location for importing the package specified as S3BucketName
and
+ * S3Key
+ *
A new description of the package.
+ */ + PackageDescription?: string; + + /** + *A commit message for the new version which is shown as part of GetPackageVersionHistoryResponse
.
+ *
+ * Container for the response returned by the
+ *
+ * UpdatePackage
+ *
+ * operation.
+ *
Information about the package. + *
+ */ + PackageDetails?: PackageDetails; +} + +export namespace UpdatePackageResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UpdatePackageResponse): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for the request parameters to
+ *
+ * UpgradeDomain
+ *
+ * operation.
+ *
The name of an domain. Domain names are unique across the domains owned by an account within an AWS + * region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, + * and - (hyphen). + *
+ */ + DomainName: string | undefined; + + /** + *The version of OpenSearch you intend to upgrade the domain to.
+ */ + TargetVersion: string | undefined; + + /** + *+ * When true, indicates that an upgrade eligibility check needs to be performed. + * Does not actually perform the upgrade. + *
+ */ + PerformCheckOnly?: boolean; + + /** + *Exposes select native OpenSearch configuration values from opensearch.yml
. Currently, the
+ * following advanced options are available:
+ *
false
when configuring
+ * access to individual sub-resources. By default, the value is true
.
+ * See Advanced cluster parameters
+ * for more information.
+ * For more information, see + * Advanced cluster parameters. + *
+ */ + AdvancedOptions?: { [key: string]: string }; +} + +export namespace UpgradeDomainRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UpgradeDomainRequest): any => ({ + ...obj, + }); +} + +/** + *
+ * Container for response returned by
+ *
+ * UpgradeDomain
+ *
+ * operation.
+ *
The name of an domain. Domain names are unique across the domains owned by an account within an AWS + * region. Domain names start with a letter or number and can contain the following characters: a-z (lowercase), 0-9, + * and - (hyphen). + *
+ */ + DomainName?: string; + + /** + *The version of OpenSearch that you intend to upgrade the domain to.
+ */ + TargetVersion?: string; + + /** + *+ * When true, indicates that an upgrade eligibility check needs to be performed. + * Does not actually perform the upgrade. + *
+ */ + PerformCheckOnly?: boolean; + + /** + *Exposes select native OpenSearch configuration values from opensearch.yml
. Currently, the
+ * following advanced options are available:
+ *
false
when configuring
+ * access to individual sub-resources. By default, the value is true
.
+ * See Advanced cluster parameters
+ * for more information.
+ * For more information, see + * Advanced cluster parameters. + *
+ */ + AdvancedOptions?: { [key: string]: string }; +} + +export namespace UpgradeDomainResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UpgradeDomainResponse): any => ({ + ...obj, + }); +} diff --git a/clients/client-opensearch/package.json b/clients/client-opensearch/package.json new file mode 100644 index 000000000000..fb71396cd812 --- /dev/null +++ b/clients/client-opensearch/package.json @@ -0,0 +1,91 @@ +{ + "name": "@aws-sdk/client-opensearch", + "description": "AWS SDK for JavaScript Opensearch Client for Node.js, Browser and React Native", + "version": "3.0.0", + "scripts": { + "clean": "yarn remove-definitions && yarn remove-dist && yarn remove-documentation", + "build-documentation": "yarn remove-documentation && typedoc ./", + "downlevel-dts": "downlevel-dts dist/types dist/types/ts3.4", + "remove-definitions": "rimraf ./types", + "remove-dist": "rimraf ./dist", + "remove-documentation": "rimraf ./docs", + "test": "jest --coverage --passWithNoTests", + "build:cjs": "tsc -p tsconfig.json", + "build:es": "tsc -p tsconfig.es.json", + "build": "yarn build:cjs && yarn build:es" + }, + "main": "./dist/cjs/index.js", + "types": "./dist/types/index.d.ts", + "module": "./dist/es/index.js", + "browser": { + "./runtimeConfig": "./runtimeConfig.browser" + }, + "react-native": { + "./runtimeConfig": "./runtimeConfig.native" + }, + "sideEffects": false, + "dependencies": { + "@aws-crypto/sha256-browser": "^1.1.0", + "@aws-crypto/sha256-js": "^1.1.0", + "@aws-sdk/client-sts": "3.30.0", + "@aws-sdk/config-resolver": "3.30.0", + "@aws-sdk/credential-provider-node": "3.30.0", + "@aws-sdk/fetch-http-handler": "3.29.0", + "@aws-sdk/hash-node": "3.29.0", + "@aws-sdk/invalid-dependency": "3.29.0", + "@aws-sdk/middleware-content-length": "3.29.0", + "@aws-sdk/middleware-host-header": "3.29.0", + "@aws-sdk/middleware-logger": "3.29.0", + "@aws-sdk/middleware-retry": "3.29.0", + "@aws-sdk/middleware-serde": "3.29.0", + "@aws-sdk/middleware-signing": "3.30.0", + "@aws-sdk/middleware-stack": "3.29.0", + "@aws-sdk/middleware-user-agent": "3.29.0", + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/node-http-handler": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/smithy-client": "3.30.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/url-parser": "3.29.0", + "@aws-sdk/util-base64-browser": "3.29.0", + "@aws-sdk/util-base64-node": "3.29.0", + "@aws-sdk/util-body-length-browser": "3.29.0", + "@aws-sdk/util-body-length-node": "3.29.0", + "@aws-sdk/util-user-agent-browser": "3.29.0", + "@aws-sdk/util-user-agent-node": "3.29.0", + "@aws-sdk/util-utf8-browser": "3.29.0", + "@aws-sdk/util-utf8-node": "3.29.0", + "tslib": "^2.3.0" + }, + "devDependencies": { + "@aws-sdk/client-documentation-generator": "3.29.0", + "@types/node": "^12.7.5", + "downlevel-dts": "0.7.0", + "jest": "^26.1.0", + "rimraf": "^3.0.0", + "ts-jest": "^26.4.1", + "typedoc": "^0.19.2", + "typescript": "~4.4.2" + }, + "engines": { + "node": ">=10.0.0" + }, + "typesVersions": { + "<4.0": { + "dist/types/*": [ + "dist/types/ts3.4/*" + ] + } + }, + "author": { + "name": "AWS SDK for JavaScript Team", + "url": "https://aws.amazon.com/javascript/" + }, + "license": "Apache-2.0", + "homepage": "https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-opensearch", + "repository": { + "type": "git", + "url": "https://github.com/aws/aws-sdk-js-v3.git", + "directory": "clients/client-opensearch" + } +} diff --git a/clients/client-opensearch/pagination/DescribeDomainAutoTunesPaginator.ts b/clients/client-opensearch/pagination/DescribeDomainAutoTunesPaginator.ts new file mode 100644 index 000000000000..0126551a8361 --- /dev/null +++ b/clients/client-opensearch/pagination/DescribeDomainAutoTunesPaginator.ts @@ -0,0 +1,58 @@ +import { OpenSearch } from "../OpenSearch"; +import { OpenSearchClient } from "../OpenSearchClient"; +import { + DescribeDomainAutoTunesCommand, + DescribeDomainAutoTunesCommandInput, + DescribeDomainAutoTunesCommandOutput, +} from "../commands/DescribeDomainAutoTunesCommand"; +import { OpenSearchPaginationConfiguration } from "./Interfaces"; +import { Paginator } from "@aws-sdk/types"; + +/** + * @private + */ +const makePagedClientRequest = async ( + client: OpenSearchClient, + input: DescribeDomainAutoTunesCommandInput, + ...args: any +): Promise