From 3d2694dc2de10fedb4e1d80c1e7e6157ba03af80 Mon Sep 17 00:00:00 2001 From: aws-sdk-go-automation <43143561+aws-sdk-go-automation@users.noreply.github.com> Date: Thu, 29 Feb 2024 14:18:19 -0500 Subject: [PATCH] Release v1.50.29 (2024-02-29) (#5186) Release v1.50.29 (2024-02-29) === ### Service Client Updates * `service/docdb-elastic`: Updates service API and documentation * `service/eks`: Updates service API * `service/migrationhuborchestrator`: Updates service API and documentation * `service/models.lex.v2`: Updates service API and documentation * `service/quicksight`: Updates service API and documentation * TooltipTarget for Combo chart visuals; ColumnConfiguration limit increase to 2000; Documentation Update * `service/sagemaker`: Updates service API and documentation * Adds support for ModelDataSource in Model Packages to support unzipped models. Adds support to specify SourceUri for models which allows registration of models without mandating a container for hosting. Using SourceUri, customers can decouple the model from hosting information during registration. * `service/securitylake`: Updates service API and documentation --- CHANGELOG.md | 14 + aws/endpoints/defaults.go | 210 +++ aws/version.go | 2 +- .../apis/docdb-elastic/2022-11-28/api-2.json | 180 ++- .../apis/docdb-elastic/2022-11-28/docs-2.json | 292 +++-- .../2022-11-28/endpoint-rule-set-1.json | 427 +++--- .../2022-11-28/endpoint-tests-1.json | 187 +-- models/apis/eks/2017-11-01/api-2.json | 4 +- .../2021-08-28/api-2.json | 216 +++- .../2021-08-28/docs-2.json | 116 +- .../2021-08-28/endpoint-rule-set-1.json | 350 +++++ .../2021-08-28/endpoint-tests-1.json | 314 +++++ .../apis/models.lex.v2/2020-08-07/api-2.json | 99 +- .../apis/models.lex.v2/2020-08-07/docs-2.json | 94 +- models/apis/quicksight/2018-04-01/api-2.json | 16 +- models/apis/quicksight/2018-04-01/docs-2.json | 9 +- models/apis/sagemaker/2017-07-24/api-2.json | 21 +- models/apis/sagemaker/2017-07-24/docs-2.json | 36 +- .../apis/securitylake/2018-05-10/api-2.json | 27 +- .../apis/securitylake/2018-05-10/docs-2.json | 5 +- models/endpoints/endpoints.json | 209 ++- service/docdbelastic/api.go | 1141 +++++++++++++++-- service/docdbelastic/doc.go | 17 +- .../docdbelasticiface/interface.go | 16 +- service/eks/api.go | 8 + service/lexmodelsv2/api.go | 507 ++++++++ service/migrationhuborchestrator/api.go | 852 +++++++++++- service/migrationhuborchestrator/doc.go | 8 +- service/migrationhuborchestrator/errors.go | 8 + .../interface.go | 16 +- service/quicksight/api.go | 48 +- service/sagemaker/api.go | 136 +- service/securitylake/api.go | 73 +- 33 files changed, 4993 insertions(+), 665 deletions(-) create mode 100644 models/apis/migrationhuborchestrator/2021-08-28/endpoint-rule-set-1.json create mode 100644 models/apis/migrationhuborchestrator/2021-08-28/endpoint-tests-1.json diff --git a/CHANGELOG.md b/CHANGELOG.md index c0f2df4751..a2b9150907 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,17 @@ +Release v1.50.29 (2024-02-29) +=== + +### Service Client Updates +* `service/docdb-elastic`: Updates service API and documentation +* `service/eks`: Updates service API +* `service/migrationhuborchestrator`: Updates service API and documentation +* `service/models.lex.v2`: Updates service API and documentation +* `service/quicksight`: Updates service API and documentation + * TooltipTarget for Combo chart visuals; ColumnConfiguration limit increase to 2000; Documentation Update +* `service/sagemaker`: Updates service API and documentation + * Adds support for ModelDataSource in Model Packages to support unzipped models. Adds support to specify SourceUri for models which allows registration of models without mandating a container for hosting. Using SourceUri, customers can decouple the model from hosting information during registration. +* `service/securitylake`: Updates service API and documentation + Release v1.50.28 (2024-02-28) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index a18c83304f..25055d6b81 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -12547,6 +12547,9 @@ var awsPartition = partition{ endpointKey{ Region: "eu-south-1", }: endpoint{}, + endpointKey{ + Region: "eu-south-2", + }: endpoint{}, endpointKey{ Region: "eu-west-1", }: endpoint{}, @@ -14554,6 +14557,9 @@ var awsPartition = partition{ endpointKey{ Region: "ca-central-1", }: endpoint{}, + endpointKey{ + Region: "ca-west-1", + }: endpoint{}, endpointKey{ Region: "eu-central-1", }: endpoint{}, @@ -19213,66 +19219,222 @@ var awsPartition = partition{ endpointKey{ Region: "af-south-1", }: endpoint{}, + endpointKey{ + Region: "af-south-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.af-south-1.api.aws", + }, endpointKey{ Region: "ap-east-1", }: endpoint{}, + endpointKey{ + Region: "ap-east-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ap-east-1.api.aws", + }, endpointKey{ Region: "ap-northeast-1", }: endpoint{}, + endpointKey{ + Region: "ap-northeast-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ap-northeast-1.api.aws", + }, endpointKey{ Region: "ap-northeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-northeast-2", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ap-northeast-2.api.aws", + }, endpointKey{ Region: "ap-northeast-3", }: endpoint{}, + endpointKey{ + Region: "ap-northeast-3", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ap-northeast-3.api.aws", + }, endpointKey{ Region: "ap-south-1", }: endpoint{}, + endpointKey{ + Region: "ap-south-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ap-south-1.api.aws", + }, endpointKey{ Region: "ap-south-2", }: endpoint{}, + endpointKey{ + Region: "ap-south-2", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ap-south-2.api.aws", + }, endpointKey{ Region: "ap-southeast-1", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ap-southeast-1.api.aws", + }, endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-2", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ap-southeast-2.api.aws", + }, endpointKey{ Region: "ap-southeast-3", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-3", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ap-southeast-3.api.aws", + }, endpointKey{ Region: "ap-southeast-4", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-4", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ap-southeast-4.api.aws", + }, endpointKey{ Region: "ca-central-1", }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ca-central-1.api.aws", + }, + endpointKey{ + Region: "ca-central-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "logs-fips.ca-central-1.amazonaws.com", + }, endpointKey{ Region: "ca-west-1", }: endpoint{}, + endpointKey{ + Region: "ca-west-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.ca-west-1.api.aws", + }, + endpointKey{ + Region: "ca-west-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "logs-fips.ca-west-1.amazonaws.com", + }, endpointKey{ Region: "eu-central-1", }: endpoint{}, + endpointKey{ + Region: "eu-central-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.eu-central-1.api.aws", + }, endpointKey{ Region: "eu-central-2", }: endpoint{}, + endpointKey{ + Region: "eu-central-2", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.eu-central-2.api.aws", + }, endpointKey{ Region: "eu-north-1", }: endpoint{}, + endpointKey{ + Region: "eu-north-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.eu-north-1.api.aws", + }, endpointKey{ Region: "eu-south-1", }: endpoint{}, + endpointKey{ + Region: "eu-south-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.eu-south-1.api.aws", + }, endpointKey{ Region: "eu-south-2", }: endpoint{}, + endpointKey{ + Region: "eu-south-2", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.eu-south-2.api.aws", + }, endpointKey{ Region: "eu-west-1", }: endpoint{}, + endpointKey{ + Region: "eu-west-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.eu-west-1.api.aws", + }, endpointKey{ Region: "eu-west-2", }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.eu-west-2.api.aws", + }, endpointKey{ Region: "eu-west-3", }: endpoint{}, + endpointKey{ + Region: "eu-west-3", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.eu-west-3.api.aws", + }, + endpointKey{ + Region: "fips-ca-central-1", + }: endpoint{ + Hostname: "logs-fips.ca-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-central-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "fips-ca-west-1", + }: endpoint{ + Hostname: "logs-fips.ca-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-west-1", + }, + Deprecated: boxedTrue, + }, endpointKey{ Region: "fips-us-east-1", }: endpoint{ @@ -19312,18 +19474,48 @@ var awsPartition = partition{ endpointKey{ Region: "il-central-1", }: endpoint{}, + endpointKey{ + Region: "il-central-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.il-central-1.api.aws", + }, endpointKey{ Region: "me-central-1", }: endpoint{}, + endpointKey{ + Region: "me-central-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.me-central-1.api.aws", + }, endpointKey{ Region: "me-south-1", }: endpoint{}, + endpointKey{ + Region: "me-south-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.me-south-1.api.aws", + }, endpointKey{ Region: "sa-east-1", }: endpoint{}, + endpointKey{ + Region: "sa-east-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.sa-east-1.api.aws", + }, endpointKey{ Region: "us-east-1", }: endpoint{}, + endpointKey{ + Region: "us-east-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.us-east-1.api.aws", + }, endpointKey{ Region: "us-east-1", Variant: fipsVariant, @@ -19333,6 +19525,12 @@ var awsPartition = partition{ endpointKey{ Region: "us-east-2", }: endpoint{}, + endpointKey{ + Region: "us-east-2", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.us-east-2.api.aws", + }, endpointKey{ Region: "us-east-2", Variant: fipsVariant, @@ -19342,6 +19540,12 @@ var awsPartition = partition{ endpointKey{ Region: "us-west-1", }: endpoint{}, + endpointKey{ + Region: "us-west-1", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.us-west-1.api.aws", + }, endpointKey{ Region: "us-west-1", Variant: fipsVariant, @@ -19351,6 +19555,12 @@ var awsPartition = partition{ endpointKey{ Region: "us-west-2", }: endpoint{}, + endpointKey{ + Region: "us-west-2", + Variant: dualStackVariant, + }: endpoint{ + Hostname: "logs.us-west-2.api.aws", + }, endpointKey{ Region: "us-west-2", Variant: fipsVariant, diff --git a/aws/version.go b/aws/version.go index b283a3e1b1..85877f0794 100644 --- a/aws/version.go +++ b/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.50.28" +const SDKVersion = "1.50.29" diff --git a/models/apis/docdb-elastic/2022-11-28/api-2.json b/models/apis/docdb-elastic/2022-11-28/api-2.json index 54725a62d9..954e9f40bf 100644 --- a/models/apis/docdb-elastic/2022-11-28/api-2.json +++ b/models/apis/docdb-elastic/2022-11-28/api-2.json @@ -13,6 +13,26 @@ "uid":"docdb-elastic-2022-11-28" }, "operations":{ + "CopyClusterSnapshot":{ + "name":"CopyClusterSnapshot", + "http":{ + "method":"POST", + "requestUri":"/cluster-snapshot/{snapshotArn}/copy", + "responseCode":200 + }, + "input":{"shape":"CopyClusterSnapshotInput"}, + "output":{"shape":"CopyClusterSnapshotOutput"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ConflictException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, "CreateCluster":{ "name":"CreateCluster", "http":{ @@ -192,6 +212,42 @@ ], "idempotent":true }, + "StartCluster":{ + "name":"StartCluster", + "http":{ + "method":"POST", + "requestUri":"/cluster/{clusterArn}/start", + "responseCode":200 + }, + "input":{"shape":"StartClusterInput"}, + "output":{"shape":"StartClusterOutput"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "StopCluster":{ + "name":"StopCluster", + "http":{ + "method":"POST", + "requestUri":"/cluster/{clusterArn}/stop", + "responseCode":200 + }, + "input":{"shape":"StopClusterInput"}, + "output":{"shape":"StopClusterOutput"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, "TagResource":{ "name":"TagResource", "http":{ @@ -270,6 +326,10 @@ "SECRET_ARN" ] }, + "Boolean":{ + "type":"boolean", + "box":true + }, "Cluster":{ "type":"structure", "required":[ @@ -290,14 +350,18 @@ "members":{ "adminUserName":{"shape":"String"}, "authType":{"shape":"Auth"}, + "backupRetentionPeriod":{"shape":"Integer"}, "clusterArn":{"shape":"String"}, "clusterEndpoint":{"shape":"String"}, "clusterName":{"shape":"String"}, "createTime":{"shape":"String"}, "kmsKeyId":{"shape":"String"}, + "preferredBackupWindow":{"shape":"String"}, "preferredMaintenanceWindow":{"shape":"String"}, "shardCapacity":{"shape":"Integer"}, "shardCount":{"shape":"Integer"}, + "shardInstanceCount":{"shape":"Integer"}, + "shards":{"shape":"ShardList"}, "status":{"shape":"Status"}, "subnetIds":{"shape":"StringList"}, "vpcSecurityGroupIds":{"shape":"StringList"} @@ -342,6 +406,7 @@ "snapshotArn":{"shape":"String"}, "snapshotCreationTime":{"shape":"String"}, "snapshotName":{"shape":"String"}, + "snapshotType":{"shape":"SnapshotType"}, "status":{"shape":"Status"}, "subnetIds":{"shape":"StringList"}, "vpcSecurityGroupIds":{"shape":"StringList"} @@ -386,6 +451,36 @@ }, "exception":true }, + "CopyClusterSnapshotInput":{ + "type":"structure", + "required":[ + "snapshotArn", + "targetSnapshotName" + ], + "members":{ + "copyTags":{"shape":"Boolean"}, + "kmsKeyId":{"shape":"String"}, + "snapshotArn":{ + "shape":"String", + "location":"uri", + "locationName":"snapshotArn" + }, + "tags":{"shape":"TagMap"}, + "targetSnapshotName":{"shape":"CopyClusterSnapshotInputTargetSnapshotNameString"} + } + }, + "CopyClusterSnapshotInputTargetSnapshotNameString":{ + "type":"string", + "max":63, + "min":1 + }, + "CopyClusterSnapshotOutput":{ + "type":"structure", + "required":["snapshot"], + "members":{ + "snapshot":{"shape":"ClusterSnapshot"} + } + }, "CreateClusterInput":{ "type":"structure", "required":[ @@ -400,15 +495,18 @@ "adminUserName":{"shape":"String"}, "adminUserPassword":{"shape":"Password"}, "authType":{"shape":"Auth"}, + "backupRetentionPeriod":{"shape":"Integer"}, "clientToken":{ "shape":"String", "idempotencyToken":true }, "clusterName":{"shape":"String"}, "kmsKeyId":{"shape":"String"}, + "preferredBackupWindow":{"shape":"String"}, "preferredMaintenanceWindow":{"shape":"String"}, "shardCapacity":{"shape":"Integer"}, "shardCount":{"shape":"Integer"}, + "shardInstanceCount":{"shape":"Integer"}, "subnetIds":{"shape":"StringList"}, "tags":{"shape":"TagMap"}, "vpcSecurityGroupIds":{"shape":"StringList"} @@ -549,6 +647,11 @@ "shape":"PaginationToken", "location":"querystring", "locationName":"nextToken" + }, + "snapshotType":{ + "shape":"String", + "location":"querystring", + "locationName":"snapshotType" } } }, @@ -642,6 +745,8 @@ "members":{ "clusterName":{"shape":"String"}, "kmsKeyId":{"shape":"String"}, + "shardCapacity":{"shape":"Integer"}, + "shardInstanceCount":{"shape":"Integer"}, "snapshotArn":{ "shape":"String", "location":"uri", @@ -671,6 +776,48 @@ }, "exception":true }, + "Shard":{ + "type":"structure", + "required":[ + "createTime", + "shardId", + "status" + ], + "members":{ + "createTime":{"shape":"String"}, + "shardId":{"shape":"String"}, + "status":{"shape":"Status"} + } + }, + "ShardList":{ + "type":"list", + "member":{"shape":"Shard"} + }, + "SnapshotType":{ + "type":"string", + "enum":[ + "MANUAL", + "AUTOMATED" + ] + }, + "StartClusterInput":{ + "type":"structure", + "required":["clusterArn"], + "members":{ + "clusterArn":{ + "shape":"String", + "location":"uri", + "locationName":"clusterArn" + } + } + }, + "StartClusterOutput":{ + "type":"structure", + "required":["cluster"], + "members":{ + "cluster":{"shape":"Cluster"} + } + }, "Status":{ "type":"string", "enum":[ @@ -682,9 +829,37 @@ "IP_ADDRESS_LIMIT_EXCEEDED", "INVALID_SECURITY_GROUP_ID", "INVALID_SUBNET_ID", - "INACCESSIBLE_ENCRYPTION_CREDS" + "INACCESSIBLE_ENCRYPTION_CREDS", + "INACCESSIBLE_SECRET_ARN", + "INACCESSIBLE_VPC_ENDPOINT", + "INCOMPATIBLE_NETWORK", + "MERGING", + "MODIFYING", + "SPLITTING", + "COPYING", + "STARTING", + "STOPPING", + "STOPPED" ] }, + "StopClusterInput":{ + "type":"structure", + "required":["clusterArn"], + "members":{ + "clusterArn":{ + "shape":"String", + "location":"uri", + "locationName":"clusterArn" + } + } + }, + "StopClusterOutput":{ + "type":"structure", + "required":["cluster"], + "members":{ + "cluster":{"shape":"Cluster"} + } + }, "String":{"type":"string"}, "StringList":{ "type":"list", @@ -780,6 +955,7 @@ "members":{ "adminUserPassword":{"shape":"Password"}, "authType":{"shape":"Auth"}, + "backupRetentionPeriod":{"shape":"Integer"}, "clientToken":{ "shape":"String", "idempotencyToken":true @@ -789,9 +965,11 @@ "location":"uri", "locationName":"clusterArn" }, + "preferredBackupWindow":{"shape":"String"}, "preferredMaintenanceWindow":{"shape":"String"}, "shardCapacity":{"shape":"Integer"}, "shardCount":{"shape":"Integer"}, + "shardInstanceCount":{"shape":"Integer"}, "subnetIds":{"shape":"StringList"}, "vpcSecurityGroupIds":{"shape":"StringList"} } diff --git a/models/apis/docdb-elastic/2022-11-28/docs-2.json b/models/apis/docdb-elastic/2022-11-28/docs-2.json index 6837152aff..0121ae142a 100644 --- a/models/apis/docdb-elastic/2022-11-28/docs-2.json +++ b/models/apis/docdb-elastic/2022-11-28/docs-2.json @@ -1,20 +1,23 @@ { "version": "2.0", - "service": "

The new Amazon Elastic DocumentDB service endpoint.

", + "service": "

Amazon DocumentDB elastic clusters

Amazon DocumentDB elastic-clusters support workloads with millions of reads/writes per second and petabytes of storage capacity. Amazon DocumentDB elastic clusters also simplify how developers interact with Amazon DocumentDB elastic-clusters by eliminating the need to choose, manage or upgrade instances.

Amazon DocumentDB elastic-clusters were created to:

", "operations": { - "CreateCluster": "

Creates a new Elastic DocumentDB cluster and returns its Cluster structure.

", - "CreateClusterSnapshot": "

Creates a snapshot of a cluster.

", - "DeleteCluster": "

Delete a Elastic DocumentDB cluster.

", - "DeleteClusterSnapshot": "

Delete a Elastic DocumentDB snapshot.

", - "GetCluster": "

Returns information about a specific Elastic DocumentDB cluster.

", - "GetClusterSnapshot": "

Returns information about a specific Elastic DocumentDB snapshot

", - "ListClusterSnapshots": "

Returns information about Elastic DocumentDB snapshots for a specified cluster.

", - "ListClusters": "

Returns information about provisioned Elastic DocumentDB clusters.

", - "ListTagsForResource": "

Lists all tags on a Elastic DocumentDB resource

", - "RestoreClusterFromSnapshot": "

Restores a Elastic DocumentDB cluster from a snapshot.

", - "TagResource": "

Adds metadata tags to a Elastic DocumentDB resource

", - "UntagResource": "

Removes metadata tags to a Elastic DocumentDB resource

", - "UpdateCluster": "

Modifies a Elastic DocumentDB cluster. This includes updating admin-username/password, upgrading API version setting up a backup window and maintenance window

" + "CopyClusterSnapshot": "

Copies a snapshot of an elastic cluster.

", + "CreateCluster": "

Creates a new Amazon DocumentDB elastic cluster and returns its cluster structure.

", + "CreateClusterSnapshot": "

Creates a snapshot of an elastic cluster.

", + "DeleteCluster": "

Delete an elastic cluster.

", + "DeleteClusterSnapshot": "

Delete an elastic cluster snapshot.

", + "GetCluster": "

Returns information about a specific elastic cluster.

", + "GetClusterSnapshot": "

Returns information about a specific elastic cluster snapshot

", + "ListClusterSnapshots": "

Returns information about snapshots for a specified elastic cluster.

", + "ListClusters": "

Returns information about provisioned Amazon DocumentDB elastic clusters.

", + "ListTagsForResource": "

Lists all tags on a elastic cluster resource

", + "RestoreClusterFromSnapshot": "

Restores an elastic cluster from a snapshot.

", + "StartCluster": "

Restarts the stopped elastic cluster that is specified by clusterARN.

", + "StopCluster": "

Stops the running elastic cluster that is specified by clusterArn. The elastic cluster must be in the available state.

", + "TagResource": "

Adds metadata tags to an elastic cluster resource

", + "UntagResource": "

Removes metadata tags from an elastic cluster resource

", + "UpdateCluster": "

Modifies an elastic cluster. This includes updating admin-username/password, upgrading the API version, and setting up a backup window and maintenance window

" }, "shapes": { "AccessDeniedException": { @@ -25,31 +28,39 @@ "Arn": { "base": null, "refs": { - "ListTagsForResourceRequest$resourceArn": "

The arn of the Elastic DocumentDB resource.

", - "TagResourceRequest$resourceArn": "

The arn of the Elastic DocumentDB resource.

", - "UntagResourceRequest$resourceArn": "

The arn of the Elastic DocumentDB resource.

" + "ListTagsForResourceRequest$resourceArn": "

The ARN identifier of the elastic cluster resource.

", + "TagResourceRequest$resourceArn": "

The ARN identifier of the elastic cluster resource.

", + "UntagResourceRequest$resourceArn": "

The ARN identifier of the elastic cluster resource.

" } }, "Auth": { "base": null, "refs": { - "Cluster$authType": "

The authentication type for the Elastic DocumentDB cluster.

", - "CreateClusterInput$authType": "

The authentication type for the Elastic DocumentDB cluster.

", - "UpdateClusterInput$authType": "

The authentication type for the Elastic DocumentDB cluster.

" + "Cluster$authType": "

The authentication type for the elastic cluster.

", + "CreateClusterInput$authType": "

The authentication type used to determine where to fetch the password used for accessing the elastic cluster. Valid types are PLAIN_TEXT or SECRET_ARN.

", + "UpdateClusterInput$authType": "

The authentication type used to determine where to fetch the password used for accessing the elastic cluster. Valid types are PLAIN_TEXT or SECRET_ARN.

" + } + }, + "Boolean": { + "base": null, + "refs": { + "CopyClusterSnapshotInput$copyTags": "

Set to true to copy all tags from the source cluster snapshot to the target elastic cluster snapshot. The default is false.

" } }, "Cluster": { - "base": "

Returns information about a specific Elastic DocumentDB cluster.

", + "base": "

Returns information about a specific elastic cluster.

", "refs": { - "CreateClusterOutput$cluster": "

The new Elastic DocumentDB cluster that has been created.

", - "DeleteClusterOutput$cluster": "

Returns information about the newly deleted Elastic DocumentDB cluster.

", - "GetClusterOutput$cluster": "

Returns information about a specific Elastic DocumentDB cluster.

", - "RestoreClusterFromSnapshotOutput$cluster": "

Returns information about a the restored Elastic DocumentDB cluster.

", - "UpdateClusterOutput$cluster": "

Returns information about the updated Elastic DocumentDB cluster.

" + "CreateClusterOutput$cluster": "

The new elastic cluster that has been created.

", + "DeleteClusterOutput$cluster": "

Returns information about the newly deleted elastic cluster.

", + "GetClusterOutput$cluster": "

Returns information about a specific elastic cluster.

", + "RestoreClusterFromSnapshotOutput$cluster": "

Returns information about a the restored elastic cluster.

", + "StartClusterOutput$cluster": null, + "StopClusterOutput$cluster": null, + "UpdateClusterOutput$cluster": "

Returns information about the updated elastic cluster.

" } }, "ClusterInList": { - "base": "

A list of Elastic DocumentDB cluster.

", + "base": "

A list of Amazon DocumentDB elastic clusters.

", "refs": { "ClusterList$member": null } @@ -57,19 +68,20 @@ "ClusterList": { "base": null, "refs": { - "ListClustersOutput$clusters": "

A list of Elastic DocumentDB cluster.

" + "ListClustersOutput$clusters": "

A list of Amazon DocumentDB elastic clusters.

" } }, "ClusterSnapshot": { - "base": "

Returns information about a specific Elastic DocumentDB snapshot.

", + "base": "

Returns information about a specific elastic cluster snapshot.

", "refs": { - "CreateClusterSnapshotOutput$snapshot": "

Returns information about the new Elastic DocumentDB snapshot.

", - "DeleteClusterSnapshotOutput$snapshot": "

Returns information about the newly deleted Elastic DocumentDB snapshot.

", - "GetClusterSnapshotOutput$snapshot": "

Returns information about a specific Elastic DocumentDB snapshot.

" + "CopyClusterSnapshotOutput$snapshot": null, + "CreateClusterSnapshotOutput$snapshot": "

Returns information about the new elastic cluster snapshot.

", + "DeleteClusterSnapshotOutput$snapshot": "

Returns information about the newly deleted elastic cluster snapshot.

", + "GetClusterSnapshotOutput$snapshot": "

Returns information about a specific elastic cluster snapshot.

" } }, "ClusterSnapshotInList": { - "base": "

A list of Elastic DocumentDB snapshots.

", + "base": "

A list of elastic cluster snapshots.

", "refs": { "ClusterSnapshotList$member": null } @@ -77,7 +89,7 @@ "ClusterSnapshotList": { "base": null, "refs": { - "ListClusterSnapshotsOutput$snapshots": "

A list of Elastic DocumentDB snapshots for a specified cluster.

" + "ListClusterSnapshotsOutput$snapshots": "

A list of snapshots for a specified elastic cluster.

" } }, "ConflictException": { @@ -85,6 +97,22 @@ "refs": { } }, + "CopyClusterSnapshotInput": { + "base": null, + "refs": { + } + }, + "CopyClusterSnapshotInputTargetSnapshotNameString": { + "base": null, + "refs": { + "CopyClusterSnapshotInput$targetSnapshotName": "

The identifier of the new elastic cluster snapshot to create from the source cluster snapshot. This parameter is not case sensitive.

Constraints:

Example: elastic-cluster-snapshot-5

" + } + }, + "CopyClusterSnapshotOutput": { + "base": null, + "refs": { + } + }, "CreateClusterInput": { "base": null, "refs": { @@ -103,7 +131,7 @@ "CreateClusterSnapshotInputSnapshotNameString": { "base": null, "refs": { - "CreateClusterSnapshotInput$snapshotName": "

The name of the Elastic DocumentDB snapshot.

" + "CreateClusterSnapshotInput$snapshotName": "

The name of the new elastic cluster snapshot.

" } }, "CreateClusterSnapshotOutput": { @@ -154,13 +182,21 @@ "Integer": { "base": null, "refs": { - "Cluster$shardCapacity": "

The capacity of each shard in the Elastic DocumentDB cluster.

", - "Cluster$shardCount": "

The number of shards in the Elastic DocumentDB cluster.

", - "CreateClusterInput$shardCapacity": "

The capacity of each shard in the new Elastic DocumentDB cluster.

", - "CreateClusterInput$shardCount": "

The number of shards to create in the new Elastic DocumentDB cluster.

", + "Cluster$backupRetentionPeriod": "

The number of days for which automatic snapshots are retained.

", + "Cluster$shardCapacity": "

The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. Allowed values are 2, 4, 8, 16, 32, 64.

", + "Cluster$shardCount": "

The number of shards assigned to the elastic cluster. Maximum is 32.

", + "Cluster$shardInstanceCount": "

The number of replica instances applying to all shards in the cluster. A shardInstanceCount value of 1 means there is one writer instance, and any additional instances are replicas that can be used for reads and to improve availability.

", + "CreateClusterInput$backupRetentionPeriod": "

The number of days for which automatic snapshots are retained.

", + "CreateClusterInput$shardCapacity": "

The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. Allowed values are 2, 4, 8, 16, 32, 64.

", + "CreateClusterInput$shardCount": "

The number of shards assigned to the elastic cluster. Maximum is 32.

", + "CreateClusterInput$shardInstanceCount": "

The number of replica instances applying to all shards in the elastic cluster. A shardInstanceCount value of 1 means there is one writer instance, and any additional instances are replicas that can be used for reads and to improve availability.

", + "RestoreClusterFromSnapshotInput$shardCapacity": "

The capacity of each shard in the new restored elastic cluster.

", + "RestoreClusterFromSnapshotInput$shardInstanceCount": "

The number of replica instances applying to all shards in the elastic cluster. A shardInstanceCount value of 1 means there is one writer instance, and any additional instances are replicas that can be used for reads and to improve availability.

", "ThrottlingException$retryAfterSeconds": "

The number of seconds to wait before retrying the operation.

", - "UpdateClusterInput$shardCapacity": "

The capacity of each shard in the Elastic DocumentDB cluster.

", - "UpdateClusterInput$shardCount": "

The number of shards to create in the Elastic DocumentDB cluster.

" + "UpdateClusterInput$backupRetentionPeriod": "

The number of days for which automatic snapshots are retained.

", + "UpdateClusterInput$shardCapacity": "

The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. Allowed values are 2, 4, 8, 16, 32, 64.

", + "UpdateClusterInput$shardCount": "

The number of shards assigned to the elastic cluster. Maximum is 32.

", + "UpdateClusterInput$shardInstanceCount": "

The number of replica instances applying to all shards in the elastic cluster. A shardInstanceCount value of 1 means there is one writer instance, and any additional instances are replicas that can be used for reads and to improve availability.

" } }, "InternalServerException": { @@ -176,7 +212,7 @@ "ListClusterSnapshotsInputMaxResultsInteger": { "base": null, "refs": { - "ListClusterSnapshotsInput$maxResults": "

The maximum number of entries to recieve in the response.

" + "ListClusterSnapshotsInput$maxResults": "

The maximum number of elastic cluster snapshot results to receive in the response.

" } }, "ListClusterSnapshotsOutput": { @@ -192,7 +228,7 @@ "ListClustersInputMaxResultsInteger": { "base": null, "refs": { - "ListClustersInput$maxResults": "

The maximum number of entries to recieve in the response.

" + "ListClustersInput$maxResults": "

The maximum number of elastic cluster snapshot results to receive in the response.

" } }, "ListClustersOutput": { @@ -213,17 +249,17 @@ "PaginationToken": { "base": "

Token or cursor used in paginated operations.

When this value is provided as operation input, the service returns results from where the previous response left off. When this value is present in operation output, it indicates that there are more results to retrieve.

This should be opaque to not expose implementation details and potentially versioned to allow evolution of pagination strategy.

", "refs": { - "ListClusterSnapshotsInput$nextToken": "

The nextToken which is used the get the next page of data.

", - "ListClusterSnapshotsOutput$nextToken": "

The response will provide a nextToken if there is more data beyond the maxResults.

If there is no more data in the responce, the nextToken will not be returned.

", - "ListClustersInput$nextToken": "

The nextToken which is used the get the next page of data.

", - "ListClustersOutput$nextToken": "

The response will provide a nextToken if there is more data beyond the maxResults.

If there is no more data in the responce, the nextToken will not be returned.

" + "ListClusterSnapshotsInput$nextToken": "

A pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond this token, up to the value specified by max-results.

If there is no more data in the responce, the nextToken will not be returned.

", + "ListClusterSnapshotsOutput$nextToken": "

A pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond this token, up to the value specified by max-results.

If there is no more data in the responce, the nextToken will not be returned.

", + "ListClustersInput$nextToken": "

A pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond this token, up to the value specified by max-results.

If there is no more data in the responce, the nextToken will not be returned.

", + "ListClustersOutput$nextToken": "

A pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond this token, up to the value specified by max-results.

If there is no more data in the responce, the nextToken will not be returned.

" } }, "Password": { "base": null, "refs": { - "CreateClusterInput$adminUserPassword": "

The password for the Elastic DocumentDB cluster administrator and can contain any printable ASCII characters.

Constraints:

", - "UpdateClusterInput$adminUserPassword": "

The password for the Elastic DocumentDB cluster administrator. This password can contain any printable ASCII character except forward slash (/), double quote (\"), or the \"at\" symbol (@).

Constraints: Must contain from 8 to 100 characters.

" + "CreateClusterInput$adminUserPassword": "

The password for the Amazon DocumentDB elastic clusters administrator. The password can contain any printable ASCII characters.

Constraints:

", + "UpdateClusterInput$adminUserPassword": "

The password associated with the elastic cluster administrator. This password can contain any printable ASCII character except forward slash (/), double quote (\"), or the \"at\" symbol (@).

Constraints: Must contain from 8 to 100 characters.

" } }, "ResourceNotFoundException": { @@ -246,65 +282,114 @@ "refs": { } }, + "Shard": { + "base": "

The name of the shard.

", + "refs": { + "ShardList$member": null + } + }, + "ShardList": { + "base": null, + "refs": { + "Cluster$shards": "

The total number of shards in the cluster.

" + } + }, + "SnapshotType": { + "base": null, + "refs": { + "ClusterSnapshot$snapshotType": "

The type of cluster snapshots to be returned. You can specify one of the following values:

" + } + }, + "StartClusterInput": { + "base": null, + "refs": { + } + }, + "StartClusterOutput": { + "base": null, + "refs": { + } + }, "Status": { "base": null, "refs": { - "Cluster$status": "

The status of the Elastic DocumentDB cluster.

", - "ClusterInList$status": "

The status of the Elastic DocumentDB cluster.

", - "ClusterSnapshot$status": "

The status of the Elastic DocumentDB snapshot.

", - "ClusterSnapshotInList$status": "

The status of the Elastic DocumentDB snapshot.

" + "Cluster$status": "

The status of the elastic cluster.

", + "ClusterInList$status": "

The status of the elastic cluster.

", + "ClusterSnapshot$status": "

The status of the elastic cluster snapshot.

", + "ClusterSnapshotInList$status": "

The status of the elastic cluster snapshot.

", + "Shard$status": "

The current status of the shard.

" + } + }, + "StopClusterInput": { + "base": null, + "refs": { + } + }, + "StopClusterOutput": { + "base": null, + "refs": { } }, "String": { "base": null, "refs": { "AccessDeniedException$message": "

An error message explaining why access was denied.

", - "Cluster$adminUserName": "

The name of the Elastic DocumentDB cluster administrator.

", - "Cluster$clusterArn": "

The arn of the Elastic DocumentDB cluster.

", - "Cluster$clusterEndpoint": "

The URL used to connect to the Elastic DocumentDB cluster.

", - "Cluster$clusterName": "

The name of the Elastic DocumentDB cluster.

", - "Cluster$createTime": "

The time when the Elastic DocumentDB cluster was created in Universal Coordinated Time (UTC).

", - "Cluster$kmsKeyId": "

The KMS key identifier to use to encrypt the Elastic DocumentDB cluster.

", + "Cluster$adminUserName": "

The name of the elastic cluster administrator.

", + "Cluster$clusterArn": "

The ARN identifier of the elastic cluster.

", + "Cluster$clusterEndpoint": "

The URL used to connect to the elastic cluster.

", + "Cluster$clusterName": "

The name of the elastic cluster.

", + "Cluster$createTime": "

The time when the elastic cluster was created in Universal Coordinated Time (UTC).

", + "Cluster$kmsKeyId": "

The KMS key identifier to use to encrypt the elastic cluster.

", + "Cluster$preferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, as determined by backupRetentionPeriod.

", "Cluster$preferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

", - "ClusterInList$clusterArn": "

The arn of the Elastic DocumentDB cluster.

", - "ClusterInList$clusterName": "

The name of the Elastic DocumentDB cluster.

", - "ClusterSnapshot$adminUserName": "

The name of the Elastic DocumentDB cluster administrator.

", - "ClusterSnapshot$clusterArn": "

The arn of the Elastic DocumentDB cluster.

", - "ClusterSnapshot$clusterCreationTime": "

The time when the Elastic DocumentDB cluster was created in Universal Coordinated Time (UTC).

", - "ClusterSnapshot$kmsKeyId": "

The KMS key identifier to use to encrypt the Elastic DocumentDB cluster.

", - "ClusterSnapshot$snapshotArn": "

The arn of the Elastic DocumentDB snapshot

", - "ClusterSnapshot$snapshotCreationTime": "

The time when the Elastic DocumentDB snapshot was created in Universal Coordinated Time (UTC).

", - "ClusterSnapshot$snapshotName": "

The name of the Elastic DocumentDB snapshot.

", - "ClusterSnapshotInList$clusterArn": "

The arn of the Elastic DocumentDB cluster.

", - "ClusterSnapshotInList$snapshotArn": "

The arn of the Elastic DocumentDB snapshot

", - "ClusterSnapshotInList$snapshotCreationTime": "

The time when the Elastic DocumentDB snapshot was created in Universal Coordinated Time (UTC).

", - "ClusterSnapshotInList$snapshotName": "

The name of the Elastic DocumentDB snapshot.

", + "ClusterInList$clusterArn": "

The ARN identifier of the elastic cluster.

", + "ClusterInList$clusterName": "

The name of the elastic cluster.

", + "ClusterSnapshot$adminUserName": "

The name of the elastic cluster administrator.

", + "ClusterSnapshot$clusterArn": "

The ARN identifier of the elastic cluster.

", + "ClusterSnapshot$clusterCreationTime": "

The time when the elastic cluster was created in Universal Coordinated Time (UTC).

", + "ClusterSnapshot$kmsKeyId": "

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key. If an encryption key is not specified here, Amazon DocumentDB uses the default encryption key that KMS creates for your account. Your account has a different default encryption key for each Amazon Region.

", + "ClusterSnapshot$snapshotArn": "

The ARN identifier of the elastic cluster snapshot.

", + "ClusterSnapshot$snapshotCreationTime": "

The time when the elastic cluster snapshot was created in Universal Coordinated Time (UTC).

", + "ClusterSnapshot$snapshotName": "

The name of the elastic cluster snapshot.

", + "ClusterSnapshotInList$clusterArn": "

The ARN identifier of the elastic cluster.

", + "ClusterSnapshotInList$snapshotArn": "

The ARN identifier of the elastic cluster snapshot.

", + "ClusterSnapshotInList$snapshotCreationTime": "

The time when the elastic cluster snapshot was created in Universal Coordinated Time (UTC).

", + "ClusterSnapshotInList$snapshotName": "

The name of the elastic cluster snapshot.

", "ConflictException$message": null, "ConflictException$resourceId": "

The ID of the resource where there was an access conflict.

", "ConflictException$resourceType": "

The type of the resource where there was an access conflict.

", - "CreateClusterInput$adminUserName": "

The name of the Elastic DocumentDB cluster administrator.

Constraints:

", - "CreateClusterInput$clientToken": "

The client token for the Elastic DocumentDB cluster.

", - "CreateClusterInput$clusterName": "

The name of the new Elastic DocumentDB cluster. This parameter is stored as a lowercase string.

Constraints:

Example: my-cluster

", - "CreateClusterInput$kmsKeyId": "

The KMS key identifier to use to encrypt the new Elastic DocumentDB cluster.

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key.

If an encryption key is not specified, Elastic DocumentDB uses the default encryption key that KMS creates for your account. Your account has a different default encryption key for each Amazon Region.

", + "CopyClusterSnapshotInput$kmsKeyId": "

The Amazon Web Services KMS key ID for an encrypted elastic cluster snapshot. The Amazon Web Services KMS key ID is the Amazon Resource Name (ARN), Amazon Web Services KMS key identifier, or the Amazon Web Services KMS key alias for the Amazon Web Services KMS encryption key.

If you copy an encrypted elastic cluster snapshot from your Amazon Web Services account, you can specify a value for KmsKeyId to encrypt the copy with a new Amazon Web ServicesS KMS encryption key. If you don't specify a value for KmsKeyId, then the copy of the elastic cluster snapshot is encrypted with the same AWS KMS key as the source elastic cluster snapshot.

To copy an encrypted elastic cluster snapshot to another Amazon Web Services region, set KmsKeyId to the Amazon Web Services KMS key ID that you want to use to encrypt the copy of the elastic cluster snapshot in the destination region. Amazon Web Services KMS encryption keys are specific to the Amazon Web Services region that they are created in, and you can't use encryption keys from one Amazon Web Services region in another Amazon Web Services region.

If you copy an unencrypted elastic cluster snapshot and specify a value for the KmsKeyId parameter, an error is returned.

", + "CopyClusterSnapshotInput$snapshotArn": "

The Amazon Resource Name (ARN) identifier of the elastic cluster snapshot.

", + "CreateClusterInput$adminUserName": "

The name of the Amazon DocumentDB elastic clusters administrator.

Constraints:

", + "CreateClusterInput$clientToken": "

The client token for the elastic cluster.

", + "CreateClusterInput$clusterName": "

The name of the new elastic cluster. This parameter is stored as a lowercase string.

Constraints:

Example: my-cluster

", + "CreateClusterInput$kmsKeyId": "

The KMS key identifier to use to encrypt the new elastic cluster.

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key.

If an encryption key is not specified, Amazon DocumentDB uses the default encryption key that KMS creates for your account. Your account has a different default encryption key for each Amazon Region.

", + "CreateClusterInput$preferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, as determined by the backupRetentionPeriod.

", "CreateClusterInput$preferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

Default: a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week.

Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute window.

", - "CreateClusterSnapshotInput$clusterArn": "

The arn of the Elastic DocumentDB cluster that the snapshot will be taken from.

", - "DeleteClusterInput$clusterArn": "

The arn of the Elastic DocumentDB cluster that is to be deleted.

", - "DeleteClusterSnapshotInput$snapshotArn": "

The arn of the Elastic DocumentDB snapshot that is to be deleted.

", - "GetClusterInput$clusterArn": "

The arn of the Elastic DocumentDB cluster.

", - "GetClusterSnapshotInput$snapshotArn": "

The arn of the Elastic DocumentDB snapshot.

", + "CreateClusterSnapshotInput$clusterArn": "

The ARN identifier of the elastic cluster of which you want to create a snapshot.

", + "DeleteClusterInput$clusterArn": "

The ARN identifier of the elastic cluster that is to be deleted.

", + "DeleteClusterSnapshotInput$snapshotArn": "

The ARN identifier of the elastic cluster snapshot that is to be deleted.

", + "GetClusterInput$clusterArn": "

The ARN identifier of the elastic cluster.

", + "GetClusterSnapshotInput$snapshotArn": "

The ARN identifier of the elastic cluster snapshot.

", "InternalServerException$message": null, - "ListClusterSnapshotsInput$clusterArn": "

The arn of the Elastic DocumentDB cluster.

", + "ListClusterSnapshotsInput$clusterArn": "

The ARN identifier of the elastic cluster.

", + "ListClusterSnapshotsInput$snapshotType": "

The type of cluster snapshots to be returned. You can specify one of the following values:

", "ResourceNotFoundException$message": "

An error message describing the failure.

", "ResourceNotFoundException$resourceId": "

The ID of the resource that could not be located.

", "ResourceNotFoundException$resourceType": "

The type of the resource that could not be found.

", - "RestoreClusterFromSnapshotInput$clusterName": "

The name of the Elastic DocumentDB cluster.

", - "RestoreClusterFromSnapshotInput$kmsKeyId": "

The KMS key identifier to use to encrypt the new Elastic DocumentDB cluster.

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key.

If an encryption key is not specified here, Elastic DocumentDB uses the default encryption key that KMS creates for your account. Your account has a different default encryption key for each Amazon Region.

", - "RestoreClusterFromSnapshotInput$snapshotArn": "

The arn of the Elastic DocumentDB snapshot.

", + "RestoreClusterFromSnapshotInput$clusterName": "

The name of the elastic cluster.

", + "RestoreClusterFromSnapshotInput$kmsKeyId": "

The KMS key identifier to use to encrypt the new Amazon DocumentDB elastic clusters cluster.

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key.

If an encryption key is not specified here, Amazon DocumentDB uses the default encryption key that KMS creates for your account. Your account has a different default encryption key for each Amazon Region.

", + "RestoreClusterFromSnapshotInput$snapshotArn": "

The ARN identifier of the elastic cluster snapshot.

", "ServiceQuotaExceededException$message": null, + "Shard$createTime": "

The time when the shard was created in Universal Coordinated Time (UTC).

", + "Shard$shardId": "

The ID of the shard.

", + "StartClusterInput$clusterArn": "

The ARN identifier of the elastic cluster.

", + "StopClusterInput$clusterArn": "

The ARN identifier of the elastic cluster.

", "StringList$member": null, "ThrottlingException$message": null, - "UpdateClusterInput$clientToken": "

The client token for the Elastic DocumentDB cluster.

", - "UpdateClusterInput$clusterArn": "

The arn of the Elastic DocumentDB cluster.

", + "UpdateClusterInput$clientToken": "

The client token for the elastic cluster.

", + "UpdateClusterInput$clusterArn": "

The ARN identifier of the elastic cluster.

", + "UpdateClusterInput$preferredBackupWindow": "

The daily time range during which automated backups are created if automated backups are enabled, as determined by the backupRetentionPeriod.

", "UpdateClusterInput$preferredMaintenanceWindow": "

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

Default: a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services Region, occurring on a random day of the week.

Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute window.

", "ValidationException$message": "

An error message describing the validation exception.

", "ValidationExceptionField$message": "

An error message describing the validation exception in this field.

", @@ -314,16 +399,16 @@ "StringList": { "base": null, "refs": { - "Cluster$subnetIds": "

The Amazon EC2 subnet IDs for the Elastic DocumentDB cluster.

", - "Cluster$vpcSecurityGroupIds": "

A list of EC2 VPC security groups associated with this cluster.

", - "ClusterSnapshot$subnetIds": "

A list of the IDs of subnets associated with the DB cluster snapshot.

", - "ClusterSnapshot$vpcSecurityGroupIds": "

A list of the IDs of the VPC security groups associated with the cluster snapshot.

", - "CreateClusterInput$subnetIds": "

The Amazon EC2 subnet IDs for the new Elastic DocumentDB cluster.

", - "CreateClusterInput$vpcSecurityGroupIds": "

A list of EC2 VPC security groups to associate with the new Elastic DocumentDB cluster.

", - "RestoreClusterFromSnapshotInput$subnetIds": "

The Amazon EC2 subnet IDs for the Elastic DocumentDB cluster.

", - "RestoreClusterFromSnapshotInput$vpcSecurityGroupIds": "

A list of EC2 VPC security groups to associate with the Elastic DocumentDB cluster.

", - "UpdateClusterInput$subnetIds": "

The number of shards to create in the Elastic DocumentDB cluster.

", - "UpdateClusterInput$vpcSecurityGroupIds": "

A list of EC2 VPC security groups to associate with the new Elastic DocumentDB cluster.

" + "Cluster$subnetIds": "

The Amazon EC2 subnet IDs for the elastic cluster.

", + "Cluster$vpcSecurityGroupIds": "

A list of EC2 VPC security groups associated with thie elastic cluster.

", + "ClusterSnapshot$subnetIds": "

The Amazon EC2 subnet IDs for the elastic cluster.

", + "ClusterSnapshot$vpcSecurityGroupIds": "

A list of EC2 VPC security groups to associate with the elastic cluster.

", + "CreateClusterInput$subnetIds": "

The Amazon EC2 subnet IDs for the new elastic cluster.

", + "CreateClusterInput$vpcSecurityGroupIds": "

A list of EC2 VPC security groups to associate with the new elastic cluster.

", + "RestoreClusterFromSnapshotInput$subnetIds": "

The Amazon EC2 subnet IDs for the elastic cluster.

", + "RestoreClusterFromSnapshotInput$vpcSecurityGroupIds": "

A list of EC2 VPC security groups to associate with the elastic cluster.

", + "UpdateClusterInput$subnetIds": "

The Amazon EC2 subnet IDs for the elastic cluster.

", + "UpdateClusterInput$vpcSecurityGroupIds": "

A list of EC2 VPC security groups to associate with the elastic cluster.

" } }, "TagKey": { @@ -336,17 +421,18 @@ "TagKeyList": { "base": null, "refs": { - "UntagResourceRequest$tagKeys": "

The tag keys to be removed from the Elastic DocumentDB resource.

" + "UntagResourceRequest$tagKeys": "

The tag keys to be removed from the elastic cluster resource.

" } }, "TagMap": { "base": null, "refs": { - "CreateClusterInput$tags": "

The tags to be assigned to the new Elastic DocumentDB cluster.

", - "CreateClusterSnapshotInput$tags": "

The tags to be assigned to the new Elastic DocumentDB snapshot.

", - "ListTagsForResourceResponse$tags": "

The list of tags for the specified Elastic DocumentDB resource.

", - "RestoreClusterFromSnapshotInput$tags": "

A list of the tag names to be assigned to the restored DB cluster, in the form of an array of key-value pairs in which the key is the tag name and the value is the key value.

", - "TagResourceRequest$tags": "

The tags to be assigned to the Elastic DocumentDB resource.

" + "CopyClusterSnapshotInput$tags": "

The tags to be assigned to the elastic cluster snapshot.

", + "CreateClusterInput$tags": "

The tags to be assigned to the new elastic cluster.

", + "CreateClusterSnapshotInput$tags": "

The tags to be assigned to the new elastic cluster snapshot.

", + "ListTagsForResourceResponse$tags": "

The list of tags for the specified elastic cluster resource.

", + "RestoreClusterFromSnapshotInput$tags": "

A list of the tag names to be assigned to the restored elastic cluster, in the form of an array of key-value pairs in which the key is the tag name and the value is the key value.

", + "TagResourceRequest$tags": "

The tags that are assigned to the elastic cluster resource.

" } }, "TagResourceRequest": { diff --git a/models/apis/docdb-elastic/2022-11-28/endpoint-rule-set-1.json b/models/apis/docdb-elastic/2022-11-28/endpoint-rule-set-1.json index 984fc53b2b..086aaa0cea 100644 --- a/models/apis/docdb-elastic/2022-11-28/endpoint-rule-set-1.json +++ b/models/apis/docdb-elastic/2022-11-28/endpoint-rule-set-1.json @@ -3,7 +3,7 @@ "parameters": { "Region": { "builtIn": "AWS::Region", - "required": true, + "required": false, "documentation": "The AWS region used to dispatch the request.", "type": "String" }, @@ -32,38 +32,32 @@ { "conditions": [ { - "fn": "aws.partition", + "fn": "isSet", "argv": [ { - "ref": "Region" + "ref": "Endpoint" } - ], - "assign": "PartitionResult" + ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "isSet", + "fn": "booleanEquals", "argv": [ { - "ref": "Endpoint" - } + "ref": "UseFIPS" + }, + true ] - }, - { - "fn": "parseURL", - "argv": [ - { - "ref": "Endpoint" - } - ], - "assign": "url" } ], - "type": "tree", + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], "rules": [ { "conditions": [ @@ -71,239 +65,286 @@ "fn": "booleanEquals", "argv": [ { - "ref": "UseFIPS" + "ref": "UseDualStack" }, true ] } ], - "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", "type": "error" }, { "conditions": [], - "type": "tree", - "rules": [ - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" - }, - true - ] - } - ], - "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", - "type": "error" + "endpoint": { + "url": { + "ref": "Endpoint" }, - { - "conditions": [], - "endpoint": { - "url": { - "ref": "Endpoint" - }, - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] + "properties": {}, + "headers": {} + }, + "type": "endpoint" } - ] - }, + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ { "conditions": [ { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" - }, - true - ] - }, - { - "fn": "booleanEquals", + "fn": "isSet", "argv": [ { - "ref": "UseDualStack" - }, - true + "ref": "Region" + } ] } ], - "type": "tree", "rules": [ { "conditions": [ { - "fn": "booleanEquals", + "fn": "aws.partition", "argv": [ - true, { - "fn": "getAttr", + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsFIPS" + true ] - } - ] - }, - { - "fn": "booleanEquals", - "argv": [ - true, + }, { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "supportsDualStack" + true ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://docdb-elastic-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS and DualStack are enabled, but this partition does not support one or both", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseFIPS" + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://docdb-elastic-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseFIPS" }, - "supportsFIPS" + true ] } - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [], - "endpoint": { - "url": "https://docdb-elastic-fips.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" - } - ] - }, - { - "conditions": [], - "error": "FIPS is enabled but this partition does not support FIPS", - "type": "error" - } - ] - }, - { - "conditions": [ - { - "fn": "booleanEquals", - "argv": [ - { - "ref": "UseDualStack" + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://docdb-elastic-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" }, - true - ] - } - ], - "type": "tree", - "rules": [ - { - "conditions": [ { - "fn": "booleanEquals", - "argv": [ - true, + "conditions": [ { - "fn": "getAttr", + "fn": "booleanEquals", "argv": [ { - "ref": "PartitionResult" + "ref": "UseDualStack" }, - "supportsDualStack" + true ] } - ] - } - ], - "type": "tree", - "rules": [ + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://docdb-elastic.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, { "conditions": [], - "endpoint": { - "url": "https://docdb-elastic.{Region}.{PartitionResult#dualStackDnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://docdb-elastic.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" } - ] - }, - { - "conditions": [], - "error": "DualStack is enabled but this partition does not support DualStack", - "type": "error" + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "endpoint": { - "url": "https://docdb-elastic.{Region}.{PartitionResult#dnsSuffix}", - "properties": {}, - "headers": {} - }, - "type": "endpoint" + "error": "Invalid Configuration: Missing Region", + "type": "error" } - ] + ], + "type": "tree" } ] } \ No newline at end of file diff --git a/models/apis/docdb-elastic/2022-11-28/endpoint-tests-1.json b/models/apis/docdb-elastic/2022-11-28/endpoint-tests-1.json index c56e45bd7b..3c39747652 100644 --- a/models/apis/docdb-elastic/2022-11-28/endpoint-tests-1.json +++ b/models/apis/docdb-elastic/2022-11-28/endpoint-tests-1.json @@ -1,55 +1,55 @@ { "testCases": [ { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://docdb-elastic-fips.us-gov-east-1.api.aws" + "url": "https://docdb-elastic-fips.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://docdb-elastic-fips.us-gov-east-1.amazonaws.com" + "url": "https://docdb-elastic-fips.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": true + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", "expect": { "endpoint": { - "url": "https://docdb-elastic.us-gov-east-1.api.aws" + "url": "https://docdb-elastic.us-east-1.api.aws" } }, "params": { - "UseDualStack": true, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://docdb-elastic.us-gov-east-1.amazonaws.com" + "url": "https://docdb-elastic.us-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-gov-east-1", - "UseFIPS": false + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -60,9 +60,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -73,9 +73,9 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -86,9 +86,9 @@ } }, "params": { - "UseDualStack": true, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -99,109 +99,109 @@ } }, "params": { - "UseDualStack": false, "Region": "cn-north-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", "expect": { - "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + "endpoint": { + "url": "https://docdb-elastic-fips.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://docdb-elastic-fips.us-iso-east-1.c2s.ic.gov" + "url": "https://docdb-elastic-fips.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": true + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", "expect": { - "error": "DualStack is enabled but this partition does not support DualStack" + "endpoint": { + "url": "https://docdb-elastic.us-gov-east-1.api.aws" + } }, "params": { - "UseDualStack": true, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://docdb-elastic.us-iso-east-1.c2s.ic.gov" + "url": "https://docdb-elastic.us-gov-east-1.amazonaws.com" } }, "params": { - "UseDualStack": false, - "Region": "us-iso-east-1", - "UseFIPS": false + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://docdb-elastic-fips.us-east-1.api.aws" - } + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://docdb-elastic-fips.us-east-1.amazonaws.com" + "url": "https://docdb-elastic-fips.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": true + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", "expect": { - "endpoint": { - "url": "https://docdb-elastic.us-east-1.api.aws" - } + "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true } }, { - "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", "expect": { "endpoint": { - "url": "https://docdb-elastic.us-east-1.amazonaws.com" + "url": "https://docdb-elastic.us-iso-east-1.c2s.ic.gov" } }, "params": { - "UseDualStack": false, - "Region": "us-east-1", - "UseFIPS": false + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false } }, { @@ -210,9 +210,9 @@ "error": "FIPS and DualStack are enabled, but this partition does not support one or both" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": true } }, { @@ -223,9 +223,9 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": true + "UseFIPS": true, + "UseDualStack": false } }, { @@ -234,9 +234,9 @@ "error": "DualStack is enabled but this partition does not support DualStack" }, "params": { - "UseDualStack": true, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": true } }, { @@ -247,22 +247,35 @@ } }, "params": { - "UseDualStack": false, "Region": "us-isob-east-1", - "UseFIPS": false + "UseFIPS": false, + "UseDualStack": false } }, { - "documentation": "For custom endpoint with fips disabled and dualstack disabled", + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", "expect": { "endpoint": { "url": "https://example.com" } }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -272,9 +285,9 @@ "error": "Invalid Configuration: FIPS and custom endpoint are not supported" }, "params": { - "UseDualStack": false, "Region": "us-east-1", "UseFIPS": true, + "UseDualStack": false, "Endpoint": "https://example.com" } }, @@ -284,11 +297,17 @@ "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" }, "params": { - "UseDualStack": true, "Region": "us-east-1", "UseFIPS": false, + "UseDualStack": true, "Endpoint": "https://example.com" } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } } ], "version": "1.0" diff --git a/models/apis/eks/2017-11-01/api-2.json b/models/apis/eks/2017-11-01/api-2.json index 3afff8cb1f..90c8a96837 100644 --- a/models/apis/eks/2017-11-01/api-2.json +++ b/models/apis/eks/2017-11-01/api-2.json @@ -902,7 +902,9 @@ "WINDOWS_CORE_2019_x86_64", "WINDOWS_FULL_2019_x86_64", "WINDOWS_CORE_2022_x86_64", - "WINDOWS_FULL_2022_x86_64" + "WINDOWS_FULL_2022_x86_64", + "AL2023_x86_64_STANDARD", + "AL2023_ARM_64_STANDARD" ] }, "AccessConfigResponse":{ diff --git a/models/apis/migrationhuborchestrator/2021-08-28/api-2.json b/models/apis/migrationhuborchestrator/2021-08-28/api-2.json index fe09da7d27..dd96dd8063 100644 --- a/models/apis/migrationhuborchestrator/2021-08-28/api-2.json +++ b/models/apis/migrationhuborchestrator/2021-08-28/api-2.json @@ -12,6 +12,23 @@ "uid":"migrationhuborchestrator-2021-08-28" }, "operations":{ + "CreateTemplate":{ + "name":"CreateTemplate", + "http":{ + "method":"POST", + "requestUri":"/template", + "responseCode":200 + }, + "input":{"shape":"CreateTemplateRequest"}, + "output":{"shape":"CreateTemplateResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"} + ] + }, "CreateWorkflow":{ "name":"CreateWorkflow", "http":{ @@ -60,6 +77,24 @@ {"shape":"ValidationException"} ] }, + "DeleteTemplate":{ + "name":"DeleteTemplate", + "http":{ + "method":"DELETE", + "requestUri":"/template/{id}", + "responseCode":200 + }, + "input":{"shape":"DeleteTemplateRequest"}, + "output":{"shape":"DeleteTemplateResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ], + "idempotent":true + }, "DeleteWorkflow":{ "name":"DeleteWorkflow", "http":{ @@ -421,6 +456,23 @@ ], "idempotent":true }, + "UpdateTemplate":{ + "name":"UpdateTemplate", + "http":{ + "method":"POST", + "requestUri":"/template/{id}", + "responseCode":200 + }, + "input":{"shape":"UpdateTemplateRequest"}, + "output":{"shape":"UpdateTemplateResponse"}, + "errors":[ + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ResourceNotFoundException"} + ] + }, "UpdateWorkflow":{ "name":"UpdateWorkflow", "http":{ @@ -497,12 +549,30 @@ "type":"boolean", "box":true }, + "ClientToken":{ + "type":"string", + "max":256, + "min":1, + "pattern":"[-a-zA-Z0-9]*" + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":false} + }, "CreateMigrationWorkflowRequest":{ "type":"structure", "required":[ "name", "templateId", - "applicationConfigurationId", "inputParameters" ], "members":{ @@ -518,8 +588,8 @@ "CreateMigrationWorkflowRequestApplicationConfigurationIdString":{ "type":"string", "max":100, - "min":1, - "pattern":"[-a-zA-Z0-9_.+]+[-a-zA-Z0-9_.+ ]*" + "min":0, + "pattern":"[-a-zA-Z0-9_.+]*" }, "CreateMigrationWorkflowRequestDescriptionString":{ "type":"string", @@ -555,6 +625,43 @@ "tags":{"shape":"StringMap"} } }, + "CreateTemplateRequest":{ + "type":"structure", + "required":[ + "templateName", + "templateSource" + ], + "members":{ + "templateName":{"shape":"CreateTemplateRequestTemplateNameString"}, + "templateDescription":{"shape":"CreateTemplateRequestTemplateDescriptionString"}, + "templateSource":{"shape":"TemplateSource"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + }, + "tags":{"shape":"TagMap"} + } + }, + "CreateTemplateRequestTemplateDescriptionString":{ + "type":"string", + "max":250, + "min":0, + "pattern":".*" + }, + "CreateTemplateRequestTemplateNameString":{ + "type":"string", + "max":128, + "min":1, + "pattern":"[ a-zA-Z0-9]*" + }, + "CreateTemplateResponse":{ + "type":"structure", + "members":{ + "templateId":{"shape":"String"}, + "templateArn":{"shape":"String"}, + "tags":{"shape":"StringMap"} + } + }, "CreateWorkflowStepGroupRequest":{ "type":"structure", "required":[ @@ -640,6 +747,22 @@ "status":{"shape":"MigrationWorkflowStatusEnum"} } }, + "DeleteTemplateRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"TemplateId", + "location":"uri", + "locationName":"id" + } + } + }, + "DeleteTemplateResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteWorkflowStepGroupRequest":{ "type":"structure", "required":[ @@ -745,12 +868,17 @@ "type":"structure", "members":{ "id":{"shape":"String"}, + "templateArn":{"shape":"String"}, "name":{"shape":"String"}, "description":{"shape":"String"}, "inputs":{"shape":"TemplateInputList"}, "tools":{"shape":"ToolsList"}, + "creationTime":{"shape":"Timestamp"}, + "owner":{"shape":"String"}, "status":{"shape":"TemplateStatus"}, - "creationTime":{"shape":"Timestamp"} + "statusMessage":{"shape":"String"}, + "templateClass":{"shape":"String"}, + "tags":{"shape":"StringMap"} } }, "GetTemplateStepGroupRequest":{ @@ -1187,6 +1315,15 @@ "max":100, "min":0 }, + "MaxStringList":{ + "type":"list", + "member":{"shape":"MaxStringValue"} + }, + "MaxStringValue":{ + "type":"string", + "max":2048, + "min":0 + }, "MigrationWorkflowDescription":{ "type":"string", "max":500, @@ -1306,7 +1443,7 @@ }, "ResourceArn":{ "type":"string", - "pattern":"arn:aws:migrationhub-orchestrator:[a-z0-9-]+:[0-9]+:workflow/[.]*" + "pattern":"arn:aws:migrationhub-orchestrator:[a-z0-9-]+:[0-9]+:(template|workflow)/[.]*" }, "ResourceNotFoundException":{ "type":"structure", @@ -1456,10 +1593,7 @@ "StepInput":{ "type":"structure", "members":{ - "integerValue":{ - "shape":"Integer", - "box":true - }, + "integerValue":{"shape":"Integer"}, "stringValue":{"shape":"StringValue"}, "listOfStringsValue":{"shape":"StringList"}, "mapOfStringValue":{"shape":"StringMap"} @@ -1500,6 +1634,7 @@ "type":"string", "enum":[ "AWAITING_DEPENDENCIES", + "SKIPPED", "READY", "IN_PROGRESS", "COMPLETED", @@ -1536,7 +1671,7 @@ }, "StringListMember":{ "type":"string", - "max":100, + "max":500, "min":0 }, "StringMap":{ @@ -1640,9 +1775,22 @@ "min":1, "pattern":"[-a-zA-Z0-9_.+]+[-a-zA-Z0-9_.+ ]*" }, + "TemplateSource":{ + "type":"structure", + "members":{ + "workflowId":{"shape":"MigrationWorkflowId"} + }, + "union":true + }, "TemplateStatus":{ "type":"string", - "enum":["CREATED"] + "enum":[ + "CREATED", + "READY", + "PENDING_CREATION", + "CREATING", + "CREATION_FAILED" + ] }, "TemplateStepGroupSummary":{ "type":"structure", @@ -1780,6 +1928,43 @@ "tags":{"shape":"StringMap"} } }, + "UpdateTemplateRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"TemplateId", + "location":"uri", + "locationName":"id" + }, + "templateName":{"shape":"UpdateTemplateRequestTemplateNameString"}, + "templateDescription":{"shape":"UpdateTemplateRequestTemplateDescriptionString"}, + "clientToken":{ + "shape":"ClientToken", + "idempotencyToken":true + } + } + }, + "UpdateTemplateRequestTemplateDescriptionString":{ + "type":"string", + "max":250, + "min":0, + "pattern":".*" + }, + "UpdateTemplateRequestTemplateNameString":{ + "type":"string", + "max":128, + "min":1, + "pattern":"[ a-zA-Z0-9]*" + }, + "UpdateTemplateResponse":{ + "type":"structure", + "members":{ + "templateId":{"shape":"String"}, + "templateArn":{"shape":"String"}, + "tags":{"shape":"StringMap"} + } + }, "UpdateWorkflowStepGroupRequest":{ "type":"structure", "required":[ @@ -1911,12 +2096,9 @@ "WorkflowStepOutputUnion":{ "type":"structure", "members":{ - "integerValue":{ - "shape":"Integer", - "box":true - }, - "stringValue":{"shape":"StringValue"}, - "listOfStringValue":{"shape":"StringList"} + "integerValue":{"shape":"Integer"}, + "stringValue":{"shape":"MaxStringValue"}, + "listOfStringValue":{"shape":"MaxStringList"} }, "union":true }, diff --git a/models/apis/migrationhuborchestrator/2021-08-28/docs-2.json b/models/apis/migrationhuborchestrator/2021-08-28/docs-2.json index 498a5f968d..524c5bd9eb 100644 --- a/models/apis/migrationhuborchestrator/2021-08-28/docs-2.json +++ b/models/apis/migrationhuborchestrator/2021-08-28/docs-2.json @@ -1,10 +1,12 @@ { "version": "2.0", - "service": "

This API reference provides descriptions, syntax, and other details about each of the actions and data types for AWS Migration Hub Orchestrator. he topic for each action shows the API request parameters and the response. Alternatively, you can use one of the AWS SDKs to access an API that is tailored to the programming language or platform that you're using.

", + "service": "

This API reference provides descriptions, syntax, and other details about each of the actions and data types for AWS Migration Hub Orchestrator. The topic for each action shows the API request parameters and responses. Alternatively, you can use one of the AWS SDKs to access an API that is tailored to the programming language or platform that you're using.

", "operations": { + "CreateTemplate": "

Creates a migration workflow template.

", "CreateWorkflow": "

Create a workflow to orchestrate your migrations.

", "CreateWorkflowStep": "

Create a step in the migration workflow.

", "CreateWorkflowStepGroup": "

Create a step group in a migration workflow.

", + "DeleteTemplate": "

Deletes a migration workflow template.

", "DeleteWorkflow": "

Delete a migration workflow. You must pause a running workflow in Migration Hub Orchestrator console to delete it.

", "DeleteWorkflowStep": "

Delete a step in a migration workflow. Pause the workflow to delete a running step.

", "DeleteWorkflowStepGroup": "

Delete a step group in a migration workflow.

", @@ -27,6 +29,7 @@ "StopWorkflow": "

Stop an ongoing migration workflow.

", "TagResource": "

Tag a resource by specifying its Amazon Resource Name (ARN).

", "UntagResource": "

Deletes the tags for a resource.

", + "UpdateTemplate": "

Updates a migration workflow template.

", "UpdateWorkflow": "

Update a migration workflow.

", "UpdateWorkflowStep": "

Update a step in a migration workflow.

", "UpdateWorkflowStepGroup": "

Update the step group in a migration workflow.

" @@ -51,6 +54,18 @@ "WorkflowStepOutput$required": "

Determine if an output is required from a step.

" } }, + "ClientToken": { + "base": null, + "refs": { + "CreateTemplateRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Idempotency in the Smithy documentation.

", + "UpdateTemplateRequest$clientToken": "

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

" + } + }, + "ConflictException": { + "base": "

This exception is thrown when an attempt to update or delete a resource would cause an inconsistent state.

", + "refs": { + } + }, "CreateMigrationWorkflowRequest": { "base": null, "refs": { @@ -85,6 +100,28 @@ "refs": { } }, + "CreateTemplateRequest": { + "base": null, + "refs": { + } + }, + "CreateTemplateRequestTemplateDescriptionString": { + "base": null, + "refs": { + "CreateTemplateRequest$templateDescription": "

A description of the migration workflow template.

" + } + }, + "CreateTemplateRequestTemplateNameString": { + "base": null, + "refs": { + "CreateTemplateRequest$templateName": "

The name of the migration workflow template.

" + } + }, + "CreateTemplateResponse": { + "base": null, + "refs": { + } + }, "CreateWorkflowStepGroupRequest": { "base": null, "refs": { @@ -123,6 +160,16 @@ "refs": { } }, + "DeleteTemplateRequest": { + "base": null, + "refs": { + } + }, + "DeleteTemplateResponse": { + "base": null, + "refs": { + } + }, "DeleteWorkflowStepGroupRequest": { "base": null, "refs": { @@ -329,6 +376,19 @@ "ListWorkflowStepsRequest$maxResults": "

The maximum number of results that can be returned.

" } }, + "MaxStringList": { + "base": null, + "refs": { + "WorkflowStepOutputUnion$listOfStringValue": "

The list of string value.

" + } + }, + "MaxStringValue": { + "base": null, + "refs": { + "MaxStringList$member": null, + "WorkflowStepOutputUnion$stringValue": "

The string value.

" + } + }, "MigrationWorkflowDescription": { "base": null, "refs": { @@ -357,6 +417,7 @@ "StartMigrationWorkflowResponse$id": "

The ID of the migration workflow.

", "StopMigrationWorkflowRequest$id": "

The ID of the migration workflow.

", "StopMigrationWorkflowResponse$id": "

The ID of the migration workflow.

", + "TemplateSource$workflowId": "

The ID of the workflow from the source migration workflow template.

", "UpdateMigrationWorkflowRequest$id": "

The ID of the migration workflow.

", "UpdateMigrationWorkflowResponse$id": "

The ID of the migration workflow.

", "UpdateWorkflowStepGroupRequest$workflowId": "

The ID of the migration workflow.

", @@ -561,7 +622,7 @@ "GetTemplateStepResponse$stepGroupId": "

The ID of the step group.

", "GetWorkflowStepGroupRequest$id": "

The ID of the step group.

", "GetWorkflowStepGroupResponse$id": "

The ID of the step group.

", - "GetWorkflowStepRequest$stepGroupId": "

desThe ID of the step group.

", + "GetWorkflowStepRequest$stepGroupId": "

The ID of the step group.

", "ListTemplateStepsRequest$stepGroupId": "

The ID of the step group.

", "ListWorkflowStepsRequest$stepGroupId": "

The ID of the step group.

", "RetryWorkflowStepRequest$stepGroupId": "

The ID of the step group.

", @@ -659,11 +720,14 @@ "base": null, "refs": { "AccessDeniedException$message": null, + "ConflictException$message": null, "CreateMigrationWorkflowResponse$arn": "

The Amazon Resource Name (ARN) of the migration workflow.

", "CreateMigrationWorkflowResponse$name": "

The name of the migration workflow.

", "CreateMigrationWorkflowResponse$description": "

The description of the migration workflow.

", "CreateMigrationWorkflowResponse$templateId": "

The ID of the template.

", "CreateMigrationWorkflowResponse$adsApplicationConfigurationId": "

The configuration ID of the application configured in Application Discovery Service.

", + "CreateTemplateResponse$templateId": "

The ID of the migration workflow template.

", + "CreateTemplateResponse$templateArn": "

The Amazon Resource Name (ARN) of the migration workflow template. The format for an Migration Hub Orchestrator template ARN is arn:aws:migrationhub-orchestrator:region:account:template/template-abcd1234. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference.

", "CreateWorkflowStepGroupResponse$workflowId": "

The ID of the migration workflow that contains the step group.

", "CreateWorkflowStepGroupResponse$name": "

The name of the step group.

", "CreateWorkflowStepGroupResponse$id": "

The ID of the step group.

", @@ -682,8 +746,12 @@ "GetMigrationWorkflowResponse$statusMessage": "

The status message of the migration workflow.

", "GetMigrationWorkflowResponse$workflowBucket": "

The Amazon S3 bucket where the migration logs are stored.

", "GetMigrationWorkflowTemplateResponse$id": "

The ID of the template.

", + "GetMigrationWorkflowTemplateResponse$templateArn": "

>The Amazon Resource Name (ARN) of the migration workflow template. The format for an Migration Hub Orchestrator template ARN is arn:aws:migrationhub-orchestrator:region:account:template/template-abcd1234. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference.

", "GetMigrationWorkflowTemplateResponse$name": "

The name of the template.

", "GetMigrationWorkflowTemplateResponse$description": "

The time at which the template was last created.

", + "GetMigrationWorkflowTemplateResponse$owner": "

The owner of the migration workflow template.

", + "GetMigrationWorkflowTemplateResponse$statusMessage": "

The status message of retrieving migration workflow templates.

", + "GetMigrationWorkflowTemplateResponse$templateClass": "

The class of the migration workflow template. The available template classes are:

", "GetTemplateStepGroupResponse$templateId": "

The ID of the template.

", "GetTemplateStepGroupResponse$id": "

The ID of the step group.

", "GetTemplateStepGroupResponse$name": "

The name of the step group.

", @@ -739,6 +807,8 @@ "UpdateMigrationWorkflowResponse$description": "

The description of the migration workflow.

", "UpdateMigrationWorkflowResponse$templateId": "

The ID of the template.

", "UpdateMigrationWorkflowResponse$adsApplicationConfigurationId": "

The ID of the application configured in Application Discovery Service.

", + "UpdateTemplateResponse$templateId": "

The ID of the migration workflow template being updated.

", + "UpdateTemplateResponse$templateArn": "

The ARN of the migration workflow template being updated. The format for an Migration Hub Orchestrator template ARN is arn:aws:migrationhub-orchestrator:region:account:template/template-abcd1234. For more information about ARNs, see Amazon Resource Names (ARNs) in the AWS General Reference.

", "UpdateWorkflowStepGroupResponse$workflowId": "

The ID of the migration workflow.

", "UpdateWorkflowStepGroupResponse$name": "

The name of the step group.

", "UpdateWorkflowStepGroupResponse$id": "

The ID of the step group.

", @@ -793,7 +863,6 @@ "UpdateWorkflowStepRequest$next": "

The next step.

", "WorkflowStepGroupSummary$previous": "

The previous step group.

", "WorkflowStepGroupSummary$next": "

The next step group.

", - "WorkflowStepOutputUnion$listOfStringValue": "

The list of string value.

", "WorkflowStepSummary$previous": "

The previous step.

", "WorkflowStepSummary$next": "

The next step.

" } @@ -809,9 +878,12 @@ "refs": { "CreateMigrationWorkflowRequest$tags": "

The tags to add on a migration workflow.

", "CreateMigrationWorkflowResponse$tags": "

The tags to add on a migration workflow.

", + "CreateTemplateResponse$tags": "

The tags added to the migration workflow template.

", "GetMigrationWorkflowResponse$tags": "

The tags added to the migration workflow.

", + "GetMigrationWorkflowTemplateResponse$tags": "

The tags added to the migration workflow template.

", "StepInput$mapOfStringValue": "

Map of string values.

", - "UpdateMigrationWorkflowResponse$tags": "

The tags added to the migration workflow.

" + "UpdateMigrationWorkflowResponse$tags": "

The tags added to the migration workflow.

", + "UpdateTemplateResponse$tags": "

The tags added to the migration workflow template.

" } }, "StringMapKey": { @@ -829,8 +901,7 @@ "StringValue": { "base": null, "refs": { - "StepInput$stringValue": "

String value.

", - "WorkflowStepOutputUnion$stringValue": "

The string value.

" + "StepInput$stringValue": "

String value.

" } }, "TagKey": { @@ -849,6 +920,7 @@ "TagMap": { "base": null, "refs": { + "CreateTemplateRequest$tags": "

The tags to add to the migration workflow template.

", "ListTagsForResourceResponse$tags": "

The tags added to a resource.

", "TagResourceRequest$tags": "

A collection of labels, in the form of key:value pairs, that apply to this resource.

" } @@ -880,13 +952,15 @@ "TemplateId": { "base": null, "refs": { + "DeleteTemplateRequest$id": "

The ID of the request to delete a migration workflow template.

", "GetMigrationWorkflowTemplateRequest$id": "

The ID of the template.

", "GetTemplateStepGroupRequest$templateId": "

The ID of the template.

", "GetTemplateStepRequest$templateId": "

The ID of the template.

", "GetTemplateStepResponse$templateId": "

The ID of the template.

", "ListMigrationWorkflowsRequest$templateId": "

The ID of the template.

", "ListTemplateStepGroupsRequest$templateId": "

The ID of the template.

", - "ListTemplateStepsRequest$templateId": "

The ID of the template.

" + "ListTemplateStepsRequest$templateId": "

The ID of the template.

", + "UpdateTemplateRequest$id": "

The ID of the request to update a migration workflow template.

" } }, "TemplateInput": { @@ -913,6 +987,12 @@ "ListMigrationWorkflowTemplatesRequest$name": "

The name of the template.

" } }, + "TemplateSource": { + "base": "

The migration workflow template used as the source for the new template.

", + "refs": { + "CreateTemplateRequest$templateSource": "

The source of the migration workflow template.

" + } + }, "TemplateStatus": { "base": null, "refs": { @@ -1037,6 +1117,28 @@ "refs": { } }, + "UpdateTemplateRequest": { + "base": null, + "refs": { + } + }, + "UpdateTemplateRequestTemplateDescriptionString": { + "base": null, + "refs": { + "UpdateTemplateRequest$templateDescription": "

The description of the migration workflow template to update.

" + } + }, + "UpdateTemplateRequestTemplateNameString": { + "base": null, + "refs": { + "UpdateTemplateRequest$templateName": "

The name of the migration workflow template to update.

" + } + }, + "UpdateTemplateResponse": { + "base": null, + "refs": { + } + }, "UpdateWorkflowStepGroupRequest": { "base": null, "refs": { diff --git a/models/apis/migrationhuborchestrator/2021-08-28/endpoint-rule-set-1.json b/models/apis/migrationhuborchestrator/2021-08-28/endpoint-rule-set-1.json new file mode 100644 index 0000000000..caee563f28 --- /dev/null +++ b/models/apis/migrationhuborchestrator/2021-08-28/endpoint-rule-set-1.json @@ -0,0 +1,350 @@ +{ + "version": "1.0", + "parameters": { + "Region": { + "builtIn": "AWS::Region", + "required": false, + "documentation": "The AWS region used to dispatch the request.", + "type": "String" + }, + "UseDualStack": { + "builtIn": "AWS::UseDualStack", + "required": true, + "default": false, + "documentation": "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.", + "type": "Boolean" + }, + "UseFIPS": { + "builtIn": "AWS::UseFIPS", + "required": true, + "default": false, + "documentation": "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.", + "type": "Boolean" + }, + "Endpoint": { + "builtIn": "SDK::Endpoint", + "required": false, + "documentation": "Override the endpoint used to send this request", + "type": "String" + } + }, + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Endpoint" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "error": "Invalid Configuration: FIPS and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported", + "type": "error" + }, + { + "conditions": [], + "endpoint": { + "url": { + "ref": "Endpoint" + }, + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [ + { + "fn": "isSet", + "argv": [ + { + "ref": "Region" + } + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "aws.partition", + "argv": [ + { + "ref": "Region" + } + ], + "assign": "PartitionResult" + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + }, + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + } + ] + }, + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://migrationhub-orchestrator-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS and DualStack are enabled, but this partition does not support one or both", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseFIPS" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsFIPS" + ] + }, + true + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://migrationhub-orchestrator-fips.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "FIPS is enabled but this partition does not support FIPS", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + { + "ref": "UseDualStack" + }, + true + ] + } + ], + "rules": [ + { + "conditions": [ + { + "fn": "booleanEquals", + "argv": [ + true, + { + "fn": "getAttr", + "argv": [ + { + "ref": "PartitionResult" + }, + "supportsDualStack" + ] + } + ] + } + ], + "rules": [ + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://migrationhub-orchestrator.{Region}.{PartitionResult#dualStackDnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "DualStack is enabled but this partition does not support DualStack", + "type": "error" + } + ], + "type": "tree" + }, + { + "conditions": [], + "rules": [ + { + "conditions": [], + "endpoint": { + "url": "https://migrationhub-orchestrator.{Region}.{PartitionResult#dnsSuffix}", + "properties": {}, + "headers": {} + }, + "type": "endpoint" + } + ], + "type": "tree" + } + ], + "type": "tree" + } + ], + "type": "tree" + }, + { + "conditions": [], + "error": "Invalid Configuration: Missing Region", + "type": "error" + } + ], + "type": "tree" + } + ] +} \ No newline at end of file diff --git a/models/apis/migrationhuborchestrator/2021-08-28/endpoint-tests-1.json b/models/apis/migrationhuborchestrator/2021-08-28/endpoint-tests-1.json new file mode 100644 index 0000000000..2f56d882d3 --- /dev/null +++ b/models/apis/migrationhuborchestrator/2021-08-28/endpoint-tests-1.json @@ -0,0 +1,314 @@ +{ + "testCases": [ + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator-fips.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator-fips.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator.us-east-1.api.aws" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator.us-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator-fips.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator-fips.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator.cn-north-1.api.amazonwebservices.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region cn-north-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator.cn-north-1.amazonaws.com.cn" + } + }, + "params": { + "Region": "cn-north-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator-fips.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator-fips.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator.us-gov-east-1.api.aws" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-gov-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator.us-gov-east-1.amazonaws.com" + } + }, + "params": { + "Region": "us-gov-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator-fips.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-iso-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator.us-iso-east-1.c2s.ic.gov" + } + }, + "params": { + "Region": "us-iso-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack enabled", + "expect": { + "error": "FIPS and DualStack are enabled, but this partition does not support one or both" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS enabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator-fips.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": true, + "UseDualStack": false + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack enabled", + "expect": { + "error": "DualStack is enabled but this partition does not support DualStack" + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": true + } + }, + { + "documentation": "For region us-isob-east-1 with FIPS disabled and DualStack disabled", + "expect": { + "endpoint": { + "url": "https://migrationhub-orchestrator.us-isob-east-1.sc2s.sgov.gov" + } + }, + "params": { + "Region": "us-isob-east-1", + "UseFIPS": false, + "UseDualStack": false + } + }, + { + "documentation": "For custom endpoint with region set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with region not set and fips disabled and dualstack disabled", + "expect": { + "endpoint": { + "url": "https://example.com" + } + }, + "params": { + "UseFIPS": false, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips enabled and dualstack disabled", + "expect": { + "error": "Invalid Configuration: FIPS and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": true, + "UseDualStack": false, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "For custom endpoint with fips disabled and dualstack enabled", + "expect": { + "error": "Invalid Configuration: Dualstack and custom endpoint are not supported" + }, + "params": { + "Region": "us-east-1", + "UseFIPS": false, + "UseDualStack": true, + "Endpoint": "https://example.com" + } + }, + { + "documentation": "Missing region", + "expect": { + "error": "Invalid Configuration: Missing Region" + } + } + ], + "version": "1.0" +} \ No newline at end of file diff --git a/models/apis/models.lex.v2/2020-08-07/api-2.json b/models/apis/models.lex.v2/2020-08-07/api-2.json index 0b6c234d71..f4a4b46b4f 100644 --- a/models/apis/models.lex.v2/2020-08-07/api-2.json +++ b/models/apis/models.lex.v2/2020-08-07/api-2.json @@ -2554,6 +2554,7 @@ "type":"string", "enum":["UtteranceTimestamp"] }, + "AnswerField":{"type":"string"}, "AssociatedTranscript":{ "type":"structure", "members":{ @@ -2764,9 +2765,22 @@ "resources":{"shape":"CustomVocabularyItems"} } }, + "BedrockKnowledgeBaseArn":{ + "type":"string", + "max":200, + "min":1, + "pattern":"^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,40}:[0-9]{12}:knowledge-base\\/[A-Za-z0-9]{10}$|^[A-Za-z0-9]{10}$" + }, + "BedrockKnowledgeStoreConfiguration":{ + "type":"structure", + "required":["bedrockKnowledgeBaseArn"], + "members":{ + "bedrockKnowledgeBaseArn":{"shape":"BedrockKnowledgeBaseArn"} + } + }, "BedrockModelArn":{ "type":"string", - "pattern":"^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model\\/[a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}$" + "pattern":"^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model\\/[a-z0-9-]{1,63}[.]{1}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}$" }, "BedrockModelSpecification":{ "type":"structure", @@ -3906,7 +3920,8 @@ "location":"uri", "locationName":"localeId" }, - "initialResponseSetting":{"shape":"InitialResponseSetting"} + "initialResponseSetting":{"shape":"InitialResponseSetting"}, + "qnAIntentConfiguration":{"shape":"QnAIntentConfiguration"} } }, "CreateIntentResponse":{ @@ -3928,7 +3943,8 @@ "botVersion":{"shape":"DraftBotVersion"}, "localeId":{"shape":"LocaleId"}, "creationDateTime":{"shape":"Timestamp"}, - "initialResponseSetting":{"shape":"InitialResponseSetting"} + "initialResponseSetting":{"shape":"InitialResponseSetting"}, + "qnAIntentConfiguration":{"shape":"QnAIntentConfiguration"} } }, "CreateResourcePolicyRequest":{ @@ -4229,6 +4245,14 @@ "childDirected":{"shape":"ChildDirected"} } }, + "DataSourceConfiguration":{ + "type":"structure", + "members":{ + "opensearchConfiguration":{"shape":"OpensearchConfiguration"}, + "kendraConfiguration":{"shape":"QnAKendraConfiguration"}, + "bedrockKnowledgeStoreConfiguration":{"shape":"BedrockKnowledgeStoreConfiguration"} + } + }, "DateRangeFilter":{ "type":"structure", "required":[ @@ -5076,7 +5100,8 @@ "localeId":{"shape":"LocaleId"}, "creationDateTime":{"shape":"Timestamp"}, "lastUpdatedDateTime":{"shape":"Timestamp"}, - "initialResponseSetting":{"shape":"InitialResponseSetting"} + "initialResponseSetting":{"shape":"InitialResponseSetting"}, + "qnAIntentConfiguration":{"shape":"QnAIntentConfiguration"} } }, "DescribeResourcePolicyRequest":{ @@ -5372,6 +5397,10 @@ "sessionAttributes":{"shape":"StringMap"} } }, + "DomainEndpoint":{ + "type":"string", + "pattern":"^(http|https):\\/\\/+[^\\s]+[\\w]" + }, "DraftBotVersion":{ "type":"string", "max":5, @@ -5412,6 +5441,17 @@ ] }, "ErrorMessage":{"type":"string"}, + "ExactResponseFields":{ + "type":"structure", + "required":[ + "questionField", + "answerField" + ], + "members":{ + "questionField":{"shape":"QuestionField"}, + "answerField":{"shape":"AnswerField"} + } + }, "ExceptionMessage":{"type":"string"}, "ExecutionErrorDetails":{ "type":"structure", @@ -5852,6 +5892,7 @@ "min":5, "pattern":"^([0-9a-zA-Z_])+$" }, + "IncludeField":{"type":"string"}, "InitialResponseSetting":{ "type":"structure", "members":{ @@ -7110,6 +7151,18 @@ "min":1, "pattern":"^[0-9]+$" }, + "OSIncludeFields":{ + "type":"list", + "member":{"shape":"IncludeField"}, + "max":5, + "min":1 + }, + "OSIndexName":{ + "type":"string", + "max":255, + "min":1, + "pattern":"^(?![_-])[a-z0-9][a-z0-9_\\-]{0,254}$" + }, "ObfuscationSetting":{ "type":"structure", "required":["obfuscationSettingType"], @@ -7135,6 +7188,20 @@ "max":2, "min":1 }, + "OpensearchConfiguration":{ + "type":"structure", + "required":[ + "domainEndpoint", + "indexName" + ], + "members":{ + "domainEndpoint":{"shape":"DomainEndpoint"}, + "indexName":{"shape":"OSIndexName"}, + "exactResponse":{"shape":"Boolean"}, + "exactResponseFields":{"shape":"ExactResponseFields"}, + "includeFields":{"shape":"OSIncludeFields"} + } + }, "Operation":{ "type":"string", "max":50, @@ -7341,11 +7408,29 @@ "promptAttemptsSpecification":{"shape":"PromptAttemptsSpecificationMap"} } }, + "QnAIntentConfiguration":{ + "type":"structure", + "members":{ + "dataSourceConfiguration":{"shape":"DataSourceConfiguration"}, + "bedrockModelConfiguration":{"shape":"BedrockModelSpecification"} + } + }, + "QnAKendraConfiguration":{ + "type":"structure", + "required":["kendraIndex"], + "members":{ + "kendraIndex":{"shape":"KendraIndexArn"}, + "queryFilterStringEnabled":{"shape":"Boolean"}, + "queryFilterString":{"shape":"QueryFilterString"}, + "exactResponse":{"shape":"Boolean"} + } + }, "QueryFilterString":{ "type":"string", "max":5000, "min":1 }, + "QuestionField":{"type":"string"}, "RecommendedAction":{"type":"string"}, "RecommendedActions":{ "type":"list", @@ -9066,7 +9151,8 @@ "location":"uri", "locationName":"localeId" }, - "initialResponseSetting":{"shape":"InitialResponseSetting"} + "initialResponseSetting":{"shape":"InitialResponseSetting"}, + "qnAIntentConfiguration":{"shape":"QnAIntentConfiguration"} } }, "UpdateIntentResponse":{ @@ -9090,7 +9176,8 @@ "localeId":{"shape":"LocaleId"}, "creationDateTime":{"shape":"Timestamp"}, "lastUpdatedDateTime":{"shape":"Timestamp"}, - "initialResponseSetting":{"shape":"InitialResponseSetting"} + "initialResponseSetting":{"shape":"InitialResponseSetting"}, + "qnAIntentConfiguration":{"shape":"QnAIntentConfiguration"} } }, "UpdateResourcePolicyRequest":{ diff --git a/models/apis/models.lex.v2/2020-08-07/docs-2.json b/models/apis/models.lex.v2/2020-08-07/docs-2.json index 09386fc7e2..0babcb36c2 100644 --- a/models/apis/models.lex.v2/2020-08-07/docs-2.json +++ b/models/apis/models.lex.v2/2020-08-07/docs-2.json @@ -837,6 +837,12 @@ "UtteranceDataSortBy$name": "

The measure by which to sort the utterance analytics data.

" } }, + "AnswerField": { + "base": null, + "refs": { + "ExactResponseFields$answerField": "

The name of the field that contains the answer to the query made to the OpenSearch Service database.

" + } + }, "AssociatedTranscript": { "base": "

The object containing information that associates the recommended intent/slot type with a conversation.

", "refs": { @@ -952,6 +958,18 @@ "refs": { } }, + "BedrockKnowledgeBaseArn": { + "base": null, + "refs": { + "BedrockKnowledgeStoreConfiguration$bedrockKnowledgeBaseArn": "

The ARN of the knowledge base used.

" + } + }, + "BedrockKnowledgeStoreConfiguration": { + "base": "

Contains details about the configuration of a Amazon Bedrock knowledge base.

", + "refs": { + "DataSourceConfiguration$bedrockKnowledgeStoreConfiguration": "

Contains details about the configuration of the Amazon Bedrock knowledge base used for the AMAZON.QnAIntent. To set up a knowledge base, follow the steps at Building a knowledge base.

" + } + }, "BedrockModelArn": { "base": null, "refs": { @@ -963,6 +981,7 @@ "base": "

Contains information about the Amazon Bedrock model used to interpret the prompt used in descriptive bot building.

", "refs": { "DescriptiveBotBuilderSpecification$bedrockModelSpecification": "

An object containing information about the Amazon Bedrock model used to interpret the prompt used in descriptive bot building.

", + "QnAIntentConfiguration$bedrockModelConfiguration": null, "SampleUtteranceGenerationSpecification$bedrockModelSpecification": null, "SlotResolutionImprovementSpecification$bedrockModelSpecification": "

An object containing information about the Amazon Bedrock model used to assist slot resolution.

" } @@ -979,7 +998,10 @@ "IntentLevelSlotResolutionTestResultItem$multiTurnConversation": "

Indicates whether the conversation involves multiple turns or not.

", "KendraConfiguration$queryFilterStringEnabled": "

Determines whether the AMAZON.KendraSearchIntent intent uses a custom query string to query the Amazon Kendra index.

", "MultipleValuesSetting$allowMultipleValues": "

Indicates whether a slot can return multiple values. When true, the slot may return more than one value in a response. When false, the slot returns only a single value.

Multi-value slots are only available in the en-US locale. If you set this value to true in any other locale, Amazon Lex throws a ValidationException.

If the allowMutlipleValues is not set, the default value is false.

", + "OpensearchConfiguration$exactResponse": "

Specifies whether to return an exact response or to return an answer generated by the model using the fields you specify from the database.

", "OverallTestResultItem$multiTurnConversation": "

Indicates whether the conversation contains multiple turns or not.

", + "QnAKendraConfiguration$queryFilterStringEnabled": "

Specifies whether to enable an Amazon Kendra filter string or not.

", + "QnAKendraConfiguration$exactResponse": "

Specifies whether to return an exact response from the Amazon Kendra index or to let the Amazon Bedrock model you select generate a response based on the results. To use this feature, you must first add FAQ questions to your index by following the steps at Adding frequently asked questions (FAQs) to an index.

", "SampleUtteranceGenerationSpecification$enabled": "

Specifies whether to enable sample utterance generation or not.

", "SentimentAnalysisSettings$detectSentiment": "

Sets whether Amazon Lex uses Amazon Comprehend to detect the sentiment of user utterances.

", "TextLogSetting$enabled": "

Determines whether conversation logs should be stored for an alias.

" @@ -2048,6 +2070,12 @@ "UpdateBotResponse$dataPrivacy": "

The data privacy settings for the bot after the update.

" } }, + "DataSourceConfiguration": { + "base": "

Contains details about the configuration of the knowledge store used for the AMAZON.QnAIntent. You must have already created the knowledge store and indexed the documents within it.

", + "refs": { + "QnAIntentConfiguration$dataSourceConfiguration": "

Contains details about the configuration of the data source used for the AMAZON.QnAIntent.

" + } + }, "DateRangeFilter": { "base": "

The object used for specifying the data range that the customer wants Amazon Lex to read through in the input transcripts.

", "refs": { @@ -2487,6 +2515,12 @@ "SlotCaptureSetting$failureNextStep": "

Specifies the next step that the bot runs when the slot value code is not recognized.

" } }, + "DomainEndpoint": { + "base": null, + "refs": { + "OpensearchConfiguration$domainEndpoint": "

The endpoint of the Amazon OpenSearch Service domain.

" + } + }, "DraftBotVersion": { "base": null, "refs": { @@ -2576,6 +2610,12 @@ "FailedCustomVocabularyItem$errorMessage": "

The error message for the failed custom vocabulary item from the custom vocabulary list.

" } }, + "ExactResponseFields": { + "base": "

Contains the names of the fields used for an exact response to the user.

", + "refs": { + "OpensearchConfiguration$exactResponseFields": "

Contains the names of the fields used for an exact response to the user.

" + } + }, "ExceptionMessage": { "base": null, "refs": { @@ -3219,6 +3259,12 @@ "ImportSummary$importedResourceId": "

The unique identifier that Amazon Lex assigned to the imported resource.

" } }, + "IncludeField": { + "base": null, + "refs": { + "OSIncludeFields$member": null + } + }, "InitialResponseSetting": { "base": "

Configuration setting for a response sent to the user before Amazon Lex starts eliciting slots.

", "refs": { @@ -3430,7 +3476,8 @@ "KendraIndexArn": { "base": null, "refs": { - "KendraConfiguration$kendraIndex": "

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the AMAZON.KendraSearchIntent intent to search. The index must be in the same account and Region as the Amazon Lex bot.

" + "KendraConfiguration$kendraIndex": "

The Amazon Resource Name (ARN) of the Amazon Kendra index that you want the AMAZON.KendraSearchIntent intent to search. The index must be in the same account and Region as the Amazon Lex bot.

", + "QnAKendraConfiguration$kendraIndex": "

The ARN of the Amazon Kendra index to use.

" } }, "KmsKeyArn": { @@ -4165,6 +4212,18 @@ "UtteranceSpecification$botVersion": "

The version of the bot that the utterance was made to.

" } }, + "OSIncludeFields": { + "base": null, + "refs": { + "OpensearchConfiguration$includeFields": "

Contains a list of fields from the Amazon OpenSearch Service that the model can use to generate the answer to the query.

" + } + }, + "OSIndexName": { + "base": null, + "refs": { + "OpensearchConfiguration$indexName": "

The name of the Amazon OpenSearch Service index.

" + } + }, "ObfuscationSetting": { "base": "

Determines whether Amazon Lex obscures slot values in conversation logs.

", "refs": { @@ -4193,6 +4252,12 @@ "PathFormat$objectPrefixes": "

A list of Amazon S3 prefixes that points to sub-folders in the Amazon S3 bucket. Specify this list if you only want Lex to read the files under this set of sub-folders.

" } }, + "OpensearchConfiguration": { + "base": "

Contains details about the configuration of the Amazon OpenSearch Service database used for the AMAZON.QnAIntent.

", + "refs": { + "DataSourceConfiguration$opensearchConfiguration": "

Contains details about the configuration of the Amazon OpenSearch Service database used for the AMAZON.QnAIntent. To create a domain, follow the steps at Creating and managing Amazon OpenSearch Service domains.

" + } + }, "Operation": { "base": null, "refs": { @@ -4374,10 +4439,33 @@ "SubSlotValueElicitationSetting$promptSpecification": null } }, + "QnAIntentConfiguration": { + "base": "

Details about the the configuration of the built-in Amazon.QnAIntent.

", + "refs": { + "CreateIntentRequest$qnAIntentConfiguration": "

Specifies the configuration of the built-in Amazon.QnAIntent. The AMAZON.QnAIntent intent is called when Amazon Lex can't determine another intent to invoke. If you specify this field, you can't specify the kendraConfiguration field.

", + "CreateIntentResponse$qnAIntentConfiguration": "

Details about the the configuration of the built-in Amazon.QnAIntent.

", + "DescribeIntentResponse$qnAIntentConfiguration": "

Details about the configuration of the built-in Amazon.QnAIntent.

", + "UpdateIntentRequest$qnAIntentConfiguration": "

Specifies the configuration of the built-in Amazon.QnAIntent. The AMAZON.QnAIntent intent is called when Amazon Lex can't determine another intent to invoke. If you specify this field, you can't specify the kendraConfiguration field.

", + "UpdateIntentResponse$qnAIntentConfiguration": "

Details about the configuration of the built-in Amazon.QnAIntent.

" + } + }, + "QnAKendraConfiguration": { + "base": "

Contains details about the configuration of the Amazon Kendra index used for the AMAZON.QnAIntent.

", + "refs": { + "DataSourceConfiguration$kendraConfiguration": "

Contains details about the configuration of the Amazon Kendra index used for the AMAZON.QnAIntent. To create a Amazon Kendra index, follow the steps at Creating an index.

" + } + }, "QueryFilterString": { "base": null, "refs": { - "KendraConfiguration$queryFilterString": "

A query filter that Amazon Lex sends to Amazon Kendra to filter the response from a query. The filter is in the format defined by Amazon Kendra. For more information, see Filtering queries.

" + "KendraConfiguration$queryFilterString": "

A query filter that Amazon Lex sends to Amazon Kendra to filter the response from a query. The filter is in the format defined by Amazon Kendra. For more information, see Filtering queries.

", + "QnAKendraConfiguration$queryFilterString": "

Contains the Amazon Kendra filter string to use if enabled. For more information on the Amazon Kendra search filter JSON format, see Using document attributes to filter search results.

" + } + }, + "QuestionField": { + "base": null, + "refs": { + "ExactResponseFields$questionField": "

The name of the field that contains the query made to the OpenSearch Service database.

" } }, "RecommendedAction": { @@ -4611,7 +4699,7 @@ "SampleUtteranceGenerationSpecification": { "base": "

Contains specifications for the sample utterance generation feature.

", "refs": { - "BuildtimeSettings$sampleUtteranceGeneration": null + "BuildtimeSettings$sampleUtteranceGeneration": "

Contains specifications for the sample utterance generation feature.

" } }, "SampleUtterancesCount": { diff --git a/models/apis/quicksight/2018-04-01/api-2.json b/models/apis/quicksight/2018-04-01/api-2.json index b6a3360248..47aac27e29 100644 --- a/models/apis/quicksight/2018-04-01/api-2.json +++ b/models/apis/quicksight/2018-04-01/api-2.json @@ -4965,7 +4965,7 @@ "ColumnConfigurationList":{ "type":"list", "member":{"shape":"ColumnConfiguration"}, - "max":200 + "max":2000 }, "ColumnDataRole":{ "type":"string", @@ -5169,7 +5169,8 @@ "Column":{"shape":"ColumnIdentifier"}, "Label":{"shape":"String"}, "Visibility":{"shape":"Visibility"}, - "Aggregation":{"shape":"AggregationFunction"} + "Aggregation":{"shape":"AggregationFunction"}, + "TooltipTarget":{"shape":"TooltipTarget"} } }, "ComboChartAggregatedFieldWells":{ @@ -10339,7 +10340,8 @@ "members":{ "FieldId":{"shape":"FieldId"}, "Label":{"shape":"String"}, - "Visibility":{"shape":"Visibility"} + "Visibility":{"shape":"Visibility"}, + "TooltipTarget":{"shape":"TooltipTarget"} } }, "FieldValue":{ @@ -18471,6 +18473,14 @@ "FieldBasedTooltip":{"shape":"FieldBasedTooltip"} } }, + "TooltipTarget":{ + "type":"string", + "enum":[ + "BOTH", + "BAR", + "LINE" + ] + }, "TooltipTitleType":{ "type":"string", "enum":[ diff --git a/models/apis/quicksight/2018-04-01/docs-2.json b/models/apis/quicksight/2018-04-01/docs-2.json index 7470ee0736..c0fc19cb51 100644 --- a/models/apis/quicksight/2018-04-01/docs-2.json +++ b/models/apis/quicksight/2018-04-01/docs-2.json @@ -674,7 +674,7 @@ "ArnList": { "base": null, "refs": { - "GenerateEmbedUrlForAnonymousUserRequest$AuthorizedResourceArns": "

The Amazon Resource Names (ARNs) for the Amazon QuickSight resources that the user is authorized to access during the lifetime of the session. If you choose Dashboard embedding experience, pass the list of dashboard ARNs in the account that you want the user to be able to view. Currently, you can pass up to 25 dashboard ARNs in each API call.

" + "GenerateEmbedUrlForAnonymousUserRequest$AuthorizedResourceArns": "

The Amazon Resource Names (ARNs) for the Amazon QuickSight resources that the user is authorized to access during the lifetime of the session.

If you choose Dashboard embedding experience, pass the list of dashboard ARNs in the account that you want the user to be able to view.

Currently, you can pass up to 25 dashboard ARNs in each API call.

" } }, "AssetBundleCloudFormationOverridePropertyConfiguration": { @@ -11897,6 +11897,13 @@ "TreeMapConfiguration$Tooltip": "

The tooltip display setup of the visual.

" } }, + "TooltipTarget": { + "base": null, + "refs": { + "ColumnTooltipItem$TooltipTarget": "

Determines the target of the column tooltip item in a combo chart visual.

", + "FieldTooltipItem$TooltipTarget": "

Determines the target of the field tooltip item in a combo chart visual.

" + } + }, "TooltipTitleType": { "base": null, "refs": { diff --git a/models/apis/sagemaker/2017-07-24/api-2.json b/models/apis/sagemaker/2017-07-24/api-2.json index 3eac61fdbe..9ddffb96d8 100644 --- a/models/apis/sagemaker/2017-07-24/api-2.json +++ b/models/apis/sagemaker/2017-07-24/api-2.json @@ -7099,7 +7099,8 @@ "CustomerMetadataProperties":{"shape":"CustomerMetadataMap"}, "DriftCheckBaselines":{"shape":"DriftCheckBaselines"}, "AdditionalInferenceSpecifications":{"shape":"AdditionalInferenceSpecifications"}, - "SkipModelValidation":{"shape":"SkipModelValidation"} + "SkipModelValidation":{"shape":"SkipModelValidation"}, + "SourceUri":{"shape":"ModelPackageSourceUri"} } }, "CreateModelPackageOutput":{ @@ -9771,7 +9772,8 @@ "CustomerMetadataProperties":{"shape":"CustomerMetadataMap"}, "DriftCheckBaselines":{"shape":"DriftCheckBaselines"}, "AdditionalInferenceSpecifications":{"shape":"AdditionalInferenceSpecifications"}, - "SkipModelValidation":{"shape":"SkipModelValidation"} + "SkipModelValidation":{"shape":"SkipModelValidation"}, + "SourceUri":{"shape":"ModelPackageSourceUri"} } }, "DescribeModelQualityJobDefinitionRequest":{ @@ -11190,7 +11192,7 @@ "type":"map", "key":{"shape":"EnvironmentKey"}, "value":{"shape":"EnvironmentValue"}, - "max":16 + "max":100 }, "EnvironmentParameter":{ "type":"structure", @@ -16363,6 +16365,7 @@ "Task":{"shape":"String"}, "SamplePayloadUrl":{"shape":"String"}, "AdditionalInferenceSpecifications":{"shape":"AdditionalInferenceSpecifications"}, + "SourceUri":{"shape":"ModelPackageSourceUri"}, "Tags":{"shape":"TagList"}, "CustomerMetadataProperties":{"shape":"CustomerMetadataMap"}, "DriftCheckBaselines":{"shape":"DriftCheckBaselines"}, @@ -16389,6 +16392,7 @@ "Image":{"shape":"ContainerImage"}, "ImageDigest":{"shape":"ImageDigest"}, "ModelDataUrl":{"shape":"Url"}, + "ModelDataSource":{"shape":"ModelDataSource"}, "ProductId":{"shape":"ProductId"}, "Environment":{"shape":"EnvironmentMap"}, "ModelInput":{"shape":"ModelInput"}, @@ -16473,6 +16477,12 @@ "CreationTime" ] }, + "ModelPackageSourceUri":{ + "type":"string", + "max":1024, + "min":0, + "pattern":"[\\p{L}\\p{M}\\p{Z}\\p{N}\\p{P}]{0,1024}" + }, "ModelPackageStatus":{ "type":"string", "enum":[ @@ -20261,6 +20271,7 @@ "required":["AlgorithmName"], "members":{ "ModelDataUrl":{"shape":"Url"}, + "ModelDataSource":{"shape":"ModelDataSource"}, "AlgorithmName":{"shape":"ArnOrName"} } }, @@ -22435,7 +22446,9 @@ "ApprovalDescription":{"shape":"ApprovalDescription"}, "CustomerMetadataProperties":{"shape":"CustomerMetadataMap"}, "CustomerMetadataPropertiesToRemove":{"shape":"CustomerMetadataKeyList"}, - "AdditionalInferenceSpecificationsToAdd":{"shape":"AdditionalInferenceSpecifications"} + "AdditionalInferenceSpecificationsToAdd":{"shape":"AdditionalInferenceSpecifications"}, + "InferenceSpecification":{"shape":"InferenceSpecification"}, + "SourceUri":{"shape":"ModelPackageSourceUri"} } }, "UpdateModelPackageOutput":{ diff --git a/models/apis/sagemaker/2017-07-24/docs-2.json b/models/apis/sagemaker/2017-07-24/docs-2.json index 76d71c8140..f769596d65 100644 --- a/models/apis/sagemaker/2017-07-24/docs-2.json +++ b/models/apis/sagemaker/2017-07-24/docs-2.json @@ -37,7 +37,7 @@ "CreateInferenceExperiment": "

Creates an inference experiment using the configurations specified in the request.

Use this API to setup and schedule an experiment to compare model variants on a Amazon SageMaker inference endpoint. For more information about inference experiments, see Shadow tests.

Amazon SageMaker begins your experiment at the scheduled time and routes traffic to your endpoint's model variants based on your specified configuration.

While the experiment is in progress or after it has concluded, you can view metrics that compare your model variants. For more information, see View, monitor, and edit shadow tests.

", "CreateInferenceRecommendationsJob": "

Starts a recommendation job. You can create either an instance recommendation or load test job.

", "CreateLabelingJob": "

Creates a job that uses workers to label the data objects in your input dataset. You can use the labeled data to train machine learning models.

You can select your workforce from one of three providers:

You can also use automated data labeling to reduce the number of data objects that need to be labeled by a human. Automated data labeling uses active learning to determine if a data object can be labeled by machine or if it needs to be sent to a human worker. For more information, see Using Automated Data Labeling.

The data objects to be labeled are contained in an Amazon S3 bucket. You create a manifest file that describes the location of each object. For more information, see Using Input and Output Data.

The output can be used as the manifest file for another labeling job or as training data for your machine learning models.

You can use this operation to create a static labeling job or a streaming labeling job. A static labeling job stops if all data objects in the input manifest file identified in ManifestS3Uri have been labeled. A streaming labeling job runs perpetually until it is manually stopped, or remains idle for 10 days. You can send new data objects to an active (InProgress) streaming labeling job in real time. To learn how to create a static labeling job, see Create a Labeling Job (API) in the Amazon SageMaker Developer Guide. To learn how to create a streaming labeling job, see Create a Streaming Labeling Job.

", - "CreateModel": "

Creates a model in SageMaker. In the request, you name the model and describe a primary container. For the primary container, you specify the Docker image that contains inference code, artifacts (from prior training), and a custom environment map that the inference code uses when you deploy the model for predictions.

Use this API to create a model if you want to use SageMaker hosting services or run a batch transform job.

To host your model, you create an endpoint configuration with the CreateEndpointConfig API, and then create an endpoint with the CreateEndpoint API. SageMaker then deploys all of the containers that you defined for the model in the hosting environment.

For an example that calls this method when deploying a model to SageMaker hosting services, see Create a Model (Amazon Web Services SDK for Python (Boto 3)).

To run a batch transform using your model, you start a job with the CreateTransformJob API. SageMaker uses your model and your dataset to get inferences which are then saved to a specified S3 location.

In the request, you also provide an IAM role that SageMaker can assume to access model artifacts and docker image for deployment on ML compute hosting instances or for batch transform jobs. In addition, you also use the IAM role to manage permissions the inference code needs. For example, if the inference code access any other Amazon Web Services resources, you grant necessary permissions via this role.

", + "CreateModel": "

Creates a model in SageMaker. In the request, you name the model and describe a primary container. For the primary container, you specify the Docker image that contains inference code, artifacts (from prior training), and a custom environment map that the inference code uses when you deploy the model for predictions.

Use this API to create a model if you want to use SageMaker hosting services or run a batch transform job.

To host your model, you create an endpoint configuration with the CreateEndpointConfig API, and then create an endpoint with the CreateEndpoint API. SageMaker then deploys all of the containers that you defined for the model in the hosting environment.

To run a batch transform using your model, you start a job with the CreateTransformJob API. SageMaker uses your model and your dataset to get inferences which are then saved to a specified S3 location.

In the request, you also provide an IAM role that SageMaker can assume to access model artifacts and docker image for deployment on ML compute hosting instances or for batch transform jobs. In addition, you also use the IAM role to manage permissions the inference code needs. For example, if the inference code access any other Amazon Web Services resources, you grant necessary permissions via this role.

", "CreateModelBiasJobDefinition": "

Creates the definition for a model bias job.

", "CreateModelCard": "

Creates an Amazon SageMaker Model Card.

For information about how to use model cards, see Amazon SageMaker Model Card.

", "CreateModelCardExportJob": "

Creates an Amazon SageMaker Model Card export job.

", @@ -298,7 +298,7 @@ "UpdateEndpoint": "

Deploys the EndpointConfig specified in the request to a new fleet of instances. SageMaker shifts endpoint traffic to the new instances with the updated endpoint configuration and then deletes the old instances using the previous EndpointConfig (there is no availability loss). For more information about how to control the update and traffic shifting process, see Update models in production.

When SageMaker receives the request, it sets the endpoint status to Updating. After updating the endpoint, it sets the status to InService. To check the status of an endpoint, use the DescribeEndpoint API.

You must not delete an EndpointConfig in use by an endpoint that is live or while the UpdateEndpoint or CreateEndpoint operations are being performed on the endpoint. To update an endpoint, you must create a new EndpointConfig.

If you delete the EndpointConfig of an endpoint that is active or being created or updated you may lose visibility into the instance type the endpoint is using. The endpoint must be deleted in order to stop incurring charges.

", "UpdateEndpointWeightsAndCapacities": "

Updates variant weight of one or more variants associated with an existing endpoint, or capacity of one variant associated with an existing endpoint. When it receives the request, SageMaker sets the endpoint status to Updating. After updating the endpoint, it sets the status to InService. To check the status of an endpoint, use the DescribeEndpoint API.

", "UpdateExperiment": "

Adds, updates, or removes the description of an experiment. Updates the display name of an experiment.

", - "UpdateFeatureGroup": "

Updates the feature group by either adding features or updating the online store configuration. Use one of the following request parameters at a time while using the UpdateFeatureGroup API.

You can add features for your feature group using the FeatureAdditions request parameter. Features cannot be removed from a feature group.

You can update the online store configuration by using the OnlineStoreConfig request parameter. If a TtlDuration is specified, the default TtlDuration applies for all records added to the feature group after the feature group is updated. If a record level TtlDuration exists from using the PutRecord API, the record level TtlDuration applies to that record instead of the default TtlDuration.

", + "UpdateFeatureGroup": "

Updates the feature group by either adding features or updating the online store configuration. Use one of the following request parameters at a time while using the UpdateFeatureGroup API.

You can add features for your feature group using the FeatureAdditions request parameter. Features cannot be removed from a feature group.

You can update the online store configuration by using the OnlineStoreConfig request parameter. If a TtlDuration is specified, the default TtlDuration applies for all records added to the feature group after the feature group is updated. If a record level TtlDuration exists from using the PutRecord API, the record level TtlDuration applies to that record instead of the default TtlDuration. To remove the default TtlDuration from an existing feature group, use the UpdateFeatureGroup API and set the TtlDuration Unit and Value to null.

", "UpdateFeatureMetadata": "

Updates the description and parameters of the feature group.

", "UpdateHub": "

Update a hub.

Hub APIs are only callable through SageMaker Studio.

", "UpdateImage": "

Updates the properties of a SageMaker image. To change the image's tags, use the AddTags and DeleteTags APIs.

", @@ -1214,7 +1214,7 @@ "AutoMLMetricEnum": { "base": null, "refs": { - "AutoMLJobObjective$MetricName": "

The name of the objective metric used to measure the predictive quality of a machine learning system. During training, the model's parameters are updated iteratively to optimize its performance based on the feedback provided by the objective metric when evaluating the model on the validation dataset.

The list of available metrics supported by Autopilot and the default metric applied when you do not specify a metric name explicitly depend on the problem type.

", + "AutoMLJobObjective$MetricName": "

The name of the objective metric used to measure the predictive quality of a machine learning system. During training, the model's parameters are updated iteratively to optimize its performance based on the feedback provided by the objective metric when evaluating the model on the validation dataset.

The list of available metrics supported by Autopilot and the default metric applied when you do not specify a metric name explicitly depend on the problem type.

", "FinalAutoMLJobObjectiveMetric$MetricName": "

The name of the metric with the best result. For a description of the possible objective metrics, see AutoMLJobObjective$MetricName.

", "FinalAutoMLJobObjectiveMetric$StandardMetricName": "

The name of the standard metric. For a description of the standard metrics, see Autopilot candidate metrics.

", "MetricDatum$MetricName": "

The name of the metric.

" @@ -1441,7 +1441,7 @@ "Bias": { "base": "

Contains bias metrics for a model.

", "refs": { - "ModelMetrics$Bias": "

Metrics that measure bais in a model.

" + "ModelMetrics$Bias": "

Metrics that measure bias in a model.

" } }, "BillableTimeInSeconds": { @@ -7459,10 +7459,11 @@ "refs": { "BatchDescribeModelPackageSummary$InferenceSpecification": null, "CreateAlgorithmInput$InferenceSpecification": "

Specifies details about inference jobs that the algorithm runs, including the following:

", - "CreateModelPackageInput$InferenceSpecification": "

Specifies details about inference jobs that can be run with models based on this model package, including the following:

", + "CreateModelPackageInput$InferenceSpecification": "

Specifies details about inference jobs that you can run with models based on this model package, including the following information:

", "DescribeAlgorithmOutput$InferenceSpecification": "

Details about inference jobs that the algorithm runs.

", - "DescribeModelPackageOutput$InferenceSpecification": "

Details about inference jobs that can be run with models based on this model package.

", - "ModelPackage$InferenceSpecification": "

Defines how to perform inference generation after a training job is run.

" + "DescribeModelPackageOutput$InferenceSpecification": "

Details about inference jobs that you can run with models based on this model package.

", + "ModelPackage$InferenceSpecification": "

Defines how to perform inference generation after a training job is run.

", + "UpdateModelPackageInput$InferenceSpecification": "

Specifies details about inference jobs that you can run with models based on this model package, including the following information:

" } }, "InferenceSpecificationName": { @@ -7720,7 +7721,7 @@ } }, "JupyterLabAppImageConfig": { - "base": "

The configuration for the file system and kernels in a SageMaker image running as a JupyterLab app.

", + "base": "

The configuration for the file system and kernels in a SageMaker image running as a JupyterLab app. The FileSystemConfig object is not supported.

", "refs": { "AppImageConfigDetails$JupyterLabAppImageConfig": "

The configuration for the file system and the runtime, such as the environment variables and entry point.

", "CreateAppImageConfigRequest$JupyterLabAppImageConfig": "

The JupyterLabAppImageConfig. You can only specify one image kernel in the AppImageConfig API. This kernel is shown to users before the image starts. After the image runs, all kernels are visible in JupyterLab.

", @@ -9656,7 +9657,9 @@ "ModelDataSource": { "base": "

Specifies the location of ML model data to deploy. If specified, you must specify one and only one of the available data sources.

", "refs": { - "ContainerDefinition$ModelDataSource": "

Specifies the location of ML model data to deploy.

Currently you cannot use ModelDataSource in conjunction with SageMaker batch transform, SageMaker serverless endpoints, SageMaker multi-model endpoints, and SageMaker Marketplace.

" + "ContainerDefinition$ModelDataSource": "

Specifies the location of ML model data to deploy.

Currently you cannot use ModelDataSource in conjunction with SageMaker batch transform, SageMaker serverless endpoints, SageMaker multi-model endpoints, and SageMaker Marketplace.

", + "ModelPackageContainerDefinition$ModelDataSource": "

Specifies the location of ML model data to deploy during endpoint creation.

", + "SourceAlgorithm$ModelDataSource": "

Specifies the location of ML model data to deploy during endpoint creation.

" } }, "ModelDeployConfig": { @@ -9910,6 +9913,15 @@ "ListModelPackagesInput$SortBy": "

The parameter by which to sort the results. The default is CreationTime.

" } }, + "ModelPackageSourceUri": { + "base": null, + "refs": { + "CreateModelPackageInput$SourceUri": "

The URI of the source for the model package. If you want to clone a model package, set it to the model package Amazon Resource Name (ARN). If you want to register a model, set it to the model ARN.

", + "DescribeModelPackageOutput$SourceUri": "

The URI of the source for the model package.

", + "ModelPackage$SourceUri": "

The URI of the source for the model package.

", + "UpdateModelPackageInput$SourceUri": "

The URI of the source for the model package.

" + } + }, "ModelPackageStatus": { "base": null, "refs": { @@ -14666,7 +14678,7 @@ "DescribeAppImageConfigResponse$LastModifiedTime": "

When the AppImageConfig was last modified.

", "DescribeAppResponse$LastHealthCheckTimestamp": "

The timestamp of the last health check.

", "DescribeAppResponse$LastUserActivityTimestamp": "

The timestamp of the last user's activity. LastUserActivityTimestamp is also updated when SageMaker performs health checks without user activity. As a result, this value is set to the same value as LastHealthCheckTimestamp.

", - "DescribeAppResponse$CreationTime": "

The creation time.

", + "DescribeAppResponse$CreationTime": "

The creation time of the application.

After an application has been shut down for 24 hours, SageMaker deletes all metadata for the application. To be considered an update and retain application metadata, applications must be restarted within 24 hours after the previous application has been shut down. After this time window, creation of an application is considered a new application rather than an update of the previous application.

", "DescribeArtifactResponse$CreationTime": "

When the artifact was created.

", "DescribeArtifactResponse$LastModifiedTime": "

When the artifact was last modified.

", "DescribeAutoMLJobResponse$CreationTime": "

Returns the creation time of the AutoML job.

", @@ -16328,7 +16340,7 @@ } }, "VisibilityConditions": { - "base": "

The list of key-value pairs that you specify for your resources.

", + "base": "

The list of key-value pairs used to filter your search results. If a search result contains a key from your list, it is included in the final search response if the value associated with the key in the result matches the value you specified. If the value doesn't match, the result is excluded from the search response. Any resources that don't have a key from the list that you've provided will also be included in the search response.

", "refs": { "VisibilityConditionsList$member": null } @@ -16336,7 +16348,7 @@ "VisibilityConditionsKey": { "base": null, "refs": { - "VisibilityConditions$Key": "

The key that specifies the tag that you're using to filter the search results. It must be in the following format: Tags.<key>/EqualsIfExists.

" + "VisibilityConditions$Key": "

The key that specifies the tag that you're using to filter the search results. It must be in the following format: Tags.<key>.

" } }, "VisibilityConditionsList": { diff --git a/models/apis/securitylake/2018-05-10/api-2.json b/models/apis/securitylake/2018-05-10/api-2.json index 87d59836c5..2b8dd4b3b1 100644 --- a/models/apis/securitylake/2018-05-10/api-2.json +++ b/models/apis/securitylake/2018-05-10/api-2.json @@ -652,7 +652,7 @@ "type":"list", "member":{"shape":"AwsLogSourceConfiguration"}, "max":50, - "min":0 + "min":1 }, "AwsLogSourceName":{ "type":"string", @@ -662,7 +662,9 @@ "SH_FINDINGS", "CLOUD_TRAIL_MGMT", "LAMBDA_EXECUTION", - "S3_DATA" + "S3_DATA", + "EKS_AUDIT", + "WAF" ] }, "AwsLogSourceResource":{ @@ -674,7 +676,8 @@ }, "AwsLogSourceResourceList":{ "type":"list", - "member":{"shape":"AwsLogSourceResource"} + "member":{"shape":"AwsLogSourceResource"}, + "min":1 }, "AwsLogSourceVersion":{ "type":"string", @@ -723,7 +726,10 @@ }, "CreateCustomLogSourceRequest":{ "type":"structure", - "required":["sourceName"], + "required":[ + "configuration", + "sourceName" + ], "members":{ "configuration":{"shape":"CustomLogSourceConfiguration"}, "eventClasses":{"shape":"OcsfEventClassList"}, @@ -761,7 +767,6 @@ }, "CreateDataLakeOrganizationConfigurationRequest":{ "type":"structure", - "required":["autoEnableNewAccount"], "members":{ "autoEnableNewAccount":{"shape":"DataLakeAutoEnableNewAccountConfigurationList"} } @@ -904,7 +909,8 @@ }, "DataLakeAutoEnableNewAccountConfigurationList":{ "type":"list", - "member":{"shape":"DataLakeAutoEnableNewAccountConfiguration"} + "member":{"shape":"DataLakeAutoEnableNewAccountConfiguration"}, + "min":1 }, "DataLakeConfiguration":{ "type":"structure", @@ -918,7 +924,8 @@ }, "DataLakeConfigurationList":{ "type":"list", - "member":{"shape":"DataLakeConfiguration"} + "member":{"shape":"DataLakeConfiguration"}, + "min":1 }, "DataLakeEncryptionConfiguration":{ "type":"structure", @@ -1096,7 +1103,6 @@ }, "DeleteDataLakeOrganizationConfigurationRequest":{ "type":"structure", - "required":["autoEnableNewAccount"], "members":{ "autoEnableNewAccount":{"shape":"DataLakeAutoEnableNewAccountConfigurationList"} } @@ -1448,7 +1454,7 @@ }, "RoleArn":{ "type":"string", - "pattern":"^arn:.*$" + "pattern":"^arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$" }, "S3BucketArn":{"type":"string"}, "S3URI":{ @@ -1649,7 +1655,8 @@ "type":"structure", "required":["configurations"], "members":{ - "configurations":{"shape":"DataLakeConfigurationList"} + "configurations":{"shape":"DataLakeConfigurationList"}, + "metaStoreManagerRoleArn":{"shape":"RoleArn"} } }, "UpdateDataLakeResponse":{ diff --git a/models/apis/securitylake/2018-05-10/docs-2.json b/models/apis/securitylake/2018-05-10/docs-2.json index 82d3b151d7..60ca58998c 100644 --- a/models/apis/securitylake/2018-05-10/docs-2.json +++ b/models/apis/securitylake/2018-05-10/docs-2.json @@ -71,7 +71,7 @@ "CustomLogSourceAttributes$tableArn": "

The ARN of the Glue table.

", "DataLakeResource$dataLakeArn": "

The Amazon Resource Name (ARN) created by you to provide to the subscriber. For more information about ARNs and how to use them in policies, see the Amazon Security Lake User Guide.

", "GetDataLakeSourcesResponse$dataLakeArn": "

The Amazon Resource Name (ARN) created by you to provide to the subscriber. For more information about ARNs and how to use them in policies, see the Amazon Security Lake User Guide.

", - "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the Amazon Security Lake resource to retrieve the tags for.

", + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the Amazon Security Lake resource for which you want to retrieve the tags.

", "SubscriberResource$subscriberArn": "

The subscriber ARN of the Amazon Security Lake subscriber account.

", "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the Amazon Security Lake resource to add or update the tags for.

", "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the Amazon Security Lake resource to remove one or more tags from.

" @@ -776,7 +776,8 @@ "CustomLogSourceProvider$roleArn": "

The ARN of the IAM role to be used by the entity putting logs into your custom source partition. Security Lake will apply the correct access policies to this role, but you must first manually create the trust policy for this role. The IAM role name must start with the text 'Security Lake'. The IAM role must trust the logProviderAccountId to assume the role.

", "DataLakeReplicationConfiguration$roleArn": "

Replication settings for the Amazon S3 buckets. This parameter uses the Identity and Access Management (IAM) role you created that is managed by Security Lake, to ensure the replication setting is correct.

", "HttpsNotificationConfiguration$targetRoleArn": "

The Amazon Resource Name (ARN) of the EventBridge API destinations IAM role that you created. For more information about ARNs and how to use them in policies, see Managing data access and Amazon Web Services Managed Policies in the Amazon Security Lake User Guide.

", - "SubscriberResource$roleArn": "

The Amazon Resource Name (ARN) specifying the role of the subscriber.

" + "SubscriberResource$roleArn": "

The Amazon Resource Name (ARN) specifying the role of the subscriber.

", + "UpdateDataLakeRequest$metaStoreManagerRoleArn": "

The Amazon Resource Name (ARN) used to create and update the Glue table. This table contains partitions generated by the ingestion and normalization of Amazon Web Services log sources and custom sources.

" } }, "S3BucketArn": { diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index c931c4beaa..6667248064 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -7195,6 +7195,7 @@ "eu-central-1" : { }, "eu-north-1" : { }, "eu-south-1" : { }, + "eu-south-2" : { }, "eu-west-1" : { }, "eu-west-2" : { }, "eu-west-3" : { }, @@ -8408,6 +8409,7 @@ "ap-southeast-3" : { }, "ap-southeast-4" : { }, "ca-central-1" : { }, + "ca-west-1" : { }, "eu-central-1" : { }, "eu-central-2" : { }, "eu-north-1" : { }, @@ -11242,27 +11244,152 @@ }, "logs" : { "endpoints" : { - "af-south-1" : { }, - "ap-east-1" : { }, - "ap-northeast-1" : { }, - "ap-northeast-2" : { }, - "ap-northeast-3" : { }, - "ap-south-1" : { }, - "ap-south-2" : { }, - "ap-southeast-1" : { }, - "ap-southeast-2" : { }, - "ap-southeast-3" : { }, - "ap-southeast-4" : { }, - "ca-central-1" : { }, - "ca-west-1" : { }, - "eu-central-1" : { }, - "eu-central-2" : { }, - "eu-north-1" : { }, - "eu-south-1" : { }, - "eu-south-2" : { }, - "eu-west-1" : { }, - "eu-west-2" : { }, - "eu-west-3" : { }, + "af-south-1" : { + "variants" : [ { + "hostname" : "logs.af-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-east-1" : { + "variants" : [ { + "hostname" : "logs.ap-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-1" : { + "variants" : [ { + "hostname" : "logs.ap-northeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-2" : { + "variants" : [ { + "hostname" : "logs.ap-northeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-northeast-3" : { + "variants" : [ { + "hostname" : "logs.ap-northeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-1" : { + "variants" : [ { + "hostname" : "logs.ap-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-south-2" : { + "variants" : [ { + "hostname" : "logs.ap-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-1" : { + "variants" : [ { + "hostname" : "logs.ap-southeast-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-2" : { + "variants" : [ { + "hostname" : "logs.ap-southeast-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-3" : { + "variants" : [ { + "hostname" : "logs.ap-southeast-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ap-southeast-4" : { + "variants" : [ { + "hostname" : "logs.ap-southeast-4.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "logs-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "logs.ca-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "ca-west-1" : { + "variants" : [ { + "hostname" : "logs-fips.ca-west-1.amazonaws.com", + "tags" : [ "fips" ] + }, { + "hostname" : "logs.ca-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-1" : { + "variants" : [ { + "hostname" : "logs.eu-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-central-2" : { + "variants" : [ { + "hostname" : "logs.eu-central-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-north-1" : { + "variants" : [ { + "hostname" : "logs.eu-north-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-1" : { + "variants" : [ { + "hostname" : "logs.eu-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-south-2" : { + "variants" : [ { + "hostname" : "logs.eu-south-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-1" : { + "variants" : [ { + "hostname" : "logs.eu-west-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-2" : { + "variants" : [ { + "hostname" : "logs.eu-west-2.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "eu-west-3" : { + "variants" : [ { + "hostname" : "logs.eu-west-3.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "fips-ca-central-1" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "logs-fips.ca-central-1.amazonaws.com" + }, + "fips-ca-west-1" : { + "credentialScope" : { + "region" : "ca-west-1" + }, + "deprecated" : true, + "hostname" : "logs-fips.ca-west-1.amazonaws.com" + }, "fips-us-east-1" : { "credentialScope" : { "region" : "us-east-1" @@ -11291,32 +11418,64 @@ "deprecated" : true, "hostname" : "logs-fips.us-west-2.amazonaws.com" }, - "il-central-1" : { }, - "me-central-1" : { }, - "me-south-1" : { }, - "sa-east-1" : { }, + "il-central-1" : { + "variants" : [ { + "hostname" : "logs.il-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-central-1" : { + "variants" : [ { + "hostname" : "logs.me-central-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "me-south-1" : { + "variants" : [ { + "hostname" : "logs.me-south-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, + "sa-east-1" : { + "variants" : [ { + "hostname" : "logs.sa-east-1.api.aws", + "tags" : [ "dualstack" ] + } ] + }, "us-east-1" : { "variants" : [ { "hostname" : "logs-fips.us-east-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "logs.us-east-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-east-2" : { "variants" : [ { "hostname" : "logs-fips.us-east-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "logs.us-east-2.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-1" : { "variants" : [ { "hostname" : "logs-fips.us-west-1.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "logs.us-west-1.api.aws", + "tags" : [ "dualstack" ] } ] }, "us-west-2" : { "variants" : [ { "hostname" : "logs-fips.us-west-2.amazonaws.com", "tags" : [ "fips" ] + }, { + "hostname" : "logs.us-west-2.api.aws", + "tags" : [ "dualstack" ] } ] } } diff --git a/service/docdbelastic/api.go b/service/docdbelastic/api.go index 83c7c746b3..3192807756 100644 --- a/service/docdbelastic/api.go +++ b/service/docdbelastic/api.go @@ -12,6 +12,105 @@ import ( "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opCopyClusterSnapshot = "CopyClusterSnapshot" + +// CopyClusterSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the CopyClusterSnapshot operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CopyClusterSnapshot for more information on using the CopyClusterSnapshot +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CopyClusterSnapshotRequest method. +// req, resp := client.CopyClusterSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-elastic-2022-11-28/CopyClusterSnapshot +func (c *DocDBElastic) CopyClusterSnapshotRequest(input *CopyClusterSnapshotInput) (req *request.Request, output *CopyClusterSnapshotOutput) { + op := &request.Operation{ + Name: opCopyClusterSnapshot, + HTTPMethod: "POST", + HTTPPath: "/cluster-snapshot/{snapshotArn}/copy", + } + + if input == nil { + input = &CopyClusterSnapshotInput{} + } + + output = &CopyClusterSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// CopyClusterSnapshot API operation for Amazon DocumentDB Elastic Clusters. +// +// Copies a snapshot of an elastic cluster. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DocumentDB Elastic Clusters's +// API operation CopyClusterSnapshot for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// ThrottlingException will be thrown when request was denied due to request +// throttling. +// +// - ValidationException +// A structure defining a validation exception. +// +// - ServiceQuotaExceededException +// The service quota for the action was exceeded. +// +// - ConflictException +// There was an access conflict. +// +// - InternalServerException +// There was an internal server error. +// +// - ResourceNotFoundException +// The specified resource could not be located. +// +// - AccessDeniedException +// An exception that occurs when there are not sufficient permissions to perform +// an action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-elastic-2022-11-28/CopyClusterSnapshot +func (c *DocDBElastic) CopyClusterSnapshot(input *CopyClusterSnapshotInput) (*CopyClusterSnapshotOutput, error) { + req, out := c.CopyClusterSnapshotRequest(input) + return out, req.Send() +} + +// CopyClusterSnapshotWithContext is the same as CopyClusterSnapshot with the addition of +// the ability to pass a context and additional request options. +// +// See CopyClusterSnapshot for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *DocDBElastic) CopyClusterSnapshotWithContext(ctx aws.Context, input *CopyClusterSnapshotInput, opts ...request.Option) (*CopyClusterSnapshotOutput, error) { + req, out := c.CopyClusterSnapshotRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateCluster = "CreateCluster" // CreateClusterRequest generates a "aws/request.Request" representing the @@ -55,7 +154,7 @@ func (c *DocDBElastic) CreateClusterRequest(input *CreateClusterInput) (req *req // CreateCluster API operation for Amazon DocumentDB Elastic Clusters. // -// Creates a new Elastic DocumentDB cluster and returns its Cluster structure. +// Creates a new Amazon DocumentDB elastic cluster and returns its cluster structure. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -151,7 +250,7 @@ func (c *DocDBElastic) CreateClusterSnapshotRequest(input *CreateClusterSnapshot // CreateClusterSnapshot API operation for Amazon DocumentDB Elastic Clusters. // -// Creates a snapshot of a cluster. +// Creates a snapshot of an elastic cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -250,7 +349,7 @@ func (c *DocDBElastic) DeleteClusterRequest(input *DeleteClusterInput) (req *req // DeleteCluster API operation for Amazon DocumentDB Elastic Clusters. // -// Delete a Elastic DocumentDB cluster. +// Delete an elastic cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -346,7 +445,7 @@ func (c *DocDBElastic) DeleteClusterSnapshotRequest(input *DeleteClusterSnapshot // DeleteClusterSnapshot API operation for Amazon DocumentDB Elastic Clusters. // -// Delete a Elastic DocumentDB snapshot. +// Delete an elastic cluster snapshot. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -442,7 +541,7 @@ func (c *DocDBElastic) GetClusterRequest(input *GetClusterInput) (req *request.R // GetCluster API operation for Amazon DocumentDB Elastic Clusters. // -// Returns information about a specific Elastic DocumentDB cluster. +// Returns information about a specific elastic cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -535,7 +634,7 @@ func (c *DocDBElastic) GetClusterSnapshotRequest(input *GetClusterSnapshotInput) // GetClusterSnapshot API operation for Amazon DocumentDB Elastic Clusters. // -// # Returns information about a specific Elastic DocumentDB snapshot +// # Returns information about a specific elastic cluster snapshot // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -634,7 +733,7 @@ func (c *DocDBElastic) ListClusterSnapshotsRequest(input *ListClusterSnapshotsIn // ListClusterSnapshots API operation for Amazon DocumentDB Elastic Clusters. // -// Returns information about Elastic DocumentDB snapshots for a specified cluster. +// Returns information about snapshots for a specified elastic cluster. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -781,7 +880,7 @@ func (c *DocDBElastic) ListClustersRequest(input *ListClustersInput) (req *reque // ListClusters API operation for Amazon DocumentDB Elastic Clusters. // -// Returns information about provisioned Elastic DocumentDB clusters. +// Returns information about provisioned Amazon DocumentDB elastic clusters. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -922,7 +1021,7 @@ func (c *DocDBElastic) ListTagsForResourceRequest(input *ListTagsForResourceInpu // ListTagsForResource API operation for Amazon DocumentDB Elastic Clusters. // -// # Lists all tags on a Elastic DocumentDB resource +// # Lists all tags on a elastic cluster resource // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1011,7 +1110,7 @@ func (c *DocDBElastic) RestoreClusterFromSnapshotRequest(input *RestoreClusterFr // RestoreClusterFromSnapshot API operation for Amazon DocumentDB Elastic Clusters. // -// Restores a Elastic DocumentDB cluster from a snapshot. +// Restores an elastic cluster from a snapshot. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1067,6 +1166,193 @@ func (c *DocDBElastic) RestoreClusterFromSnapshotWithContext(ctx aws.Context, in return out, req.Send() } +const opStartCluster = "StartCluster" + +// StartClusterRequest generates a "aws/request.Request" representing the +// client's request for the StartCluster operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StartCluster for more information on using the StartCluster +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the StartClusterRequest method. +// req, resp := client.StartClusterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-elastic-2022-11-28/StartCluster +func (c *DocDBElastic) StartClusterRequest(input *StartClusterInput) (req *request.Request, output *StartClusterOutput) { + op := &request.Operation{ + Name: opStartCluster, + HTTPMethod: "POST", + HTTPPath: "/cluster/{clusterArn}/start", + } + + if input == nil { + input = &StartClusterInput{} + } + + output = &StartClusterOutput{} + req = c.newRequest(op, input, output) + return +} + +// StartCluster API operation for Amazon DocumentDB Elastic Clusters. +// +// Restarts the stopped elastic cluster that is specified by clusterARN. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DocumentDB Elastic Clusters's +// API operation StartCluster for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// ThrottlingException will be thrown when request was denied due to request +// throttling. +// +// - ValidationException +// A structure defining a validation exception. +// +// - InternalServerException +// There was an internal server error. +// +// - ResourceNotFoundException +// The specified resource could not be located. +// +// - AccessDeniedException +// An exception that occurs when there are not sufficient permissions to perform +// an action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-elastic-2022-11-28/StartCluster +func (c *DocDBElastic) StartCluster(input *StartClusterInput) (*StartClusterOutput, error) { + req, out := c.StartClusterRequest(input) + return out, req.Send() +} + +// StartClusterWithContext is the same as StartCluster with the addition of +// the ability to pass a context and additional request options. +// +// See StartCluster for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *DocDBElastic) StartClusterWithContext(ctx aws.Context, input *StartClusterInput, opts ...request.Option) (*StartClusterOutput, error) { + req, out := c.StartClusterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opStopCluster = "StopCluster" + +// StopClusterRequest generates a "aws/request.Request" representing the +// client's request for the StopCluster operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See StopCluster for more information on using the StopCluster +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the StopClusterRequest method. +// req, resp := client.StopClusterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-elastic-2022-11-28/StopCluster +func (c *DocDBElastic) StopClusterRequest(input *StopClusterInput) (req *request.Request, output *StopClusterOutput) { + op := &request.Operation{ + Name: opStopCluster, + HTTPMethod: "POST", + HTTPPath: "/cluster/{clusterArn}/stop", + } + + if input == nil { + input = &StopClusterInput{} + } + + output = &StopClusterOutput{} + req = c.newRequest(op, input, output) + return +} + +// StopCluster API operation for Amazon DocumentDB Elastic Clusters. +// +// Stops the running elastic cluster that is specified by clusterArn. The elastic +// cluster must be in the available state. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon DocumentDB Elastic Clusters's +// API operation StopCluster for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// ThrottlingException will be thrown when request was denied due to request +// throttling. +// +// - ValidationException +// A structure defining a validation exception. +// +// - InternalServerException +// There was an internal server error. +// +// - ResourceNotFoundException +// The specified resource could not be located. +// +// - AccessDeniedException +// An exception that occurs when there are not sufficient permissions to perform +// an action. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/docdb-elastic-2022-11-28/StopCluster +func (c *DocDBElastic) StopCluster(input *StopClusterInput) (*StopClusterOutput, error) { + req, out := c.StopClusterRequest(input) + return out, req.Send() +} + +// StopClusterWithContext is the same as StopCluster with the addition of +// the ability to pass a context and additional request options. +// +// See StopCluster for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *DocDBElastic) StopClusterWithContext(ctx aws.Context, input *StopClusterInput, opts ...request.Option) (*StopClusterOutput, error) { + req, out := c.StopClusterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opTagResource = "TagResource" // TagResourceRequest generates a "aws/request.Request" representing the @@ -1111,7 +1397,7 @@ func (c *DocDBElastic) TagResourceRequest(input *TagResourceInput) (req *request // TagResource API operation for Amazon DocumentDB Elastic Clusters. // -// # Adds metadata tags to a Elastic DocumentDB resource +// # Adds metadata tags to an elastic cluster resource // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1201,7 +1487,7 @@ func (c *DocDBElastic) UntagResourceRequest(input *UntagResourceInput) (req *req // UntagResource API operation for Amazon DocumentDB Elastic Clusters. // -// # Removes metadata tags to a Elastic DocumentDB resource +// # Removes metadata tags from an elastic cluster resource // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1290,8 +1576,9 @@ func (c *DocDBElastic) UpdateClusterRequest(input *UpdateClusterInput) (req *req // UpdateCluster API operation for Amazon DocumentDB Elastic Clusters. // -// Modifies a Elastic DocumentDB cluster. This includes updating admin-username/password, -// upgrading API version setting up a backup window and maintenance window +// Modifies an elastic cluster. This includes updating admin-username/password, +// upgrading the API version, and setting up a backup window and maintenance +// window // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1410,46 +1697,53 @@ func (s *AccessDeniedException) RequestID() string { return s.RespMetadata.RequestID } -// Returns information about a specific Elastic DocumentDB cluster. +// Returns information about a specific elastic cluster. type Cluster struct { _ struct{} `type:"structure"` - // The name of the Elastic DocumentDB cluster administrator. + // The name of the elastic cluster administrator. // // AdminUserName is a required field AdminUserName *string `locationName:"adminUserName" type:"string" required:"true"` - // The authentication type for the Elastic DocumentDB cluster. + // The authentication type for the elastic cluster. // // AuthType is a required field AuthType *string `locationName:"authType" type:"string" required:"true" enum:"Auth"` - // The arn of the Elastic DocumentDB cluster. + // The number of days for which automatic snapshots are retained. + BackupRetentionPeriod *int64 `locationName:"backupRetentionPeriod" type:"integer"` + + // The ARN identifier of the elastic cluster. // // ClusterArn is a required field ClusterArn *string `locationName:"clusterArn" type:"string" required:"true"` - // The URL used to connect to the Elastic DocumentDB cluster. + // The URL used to connect to the elastic cluster. // // ClusterEndpoint is a required field ClusterEndpoint *string `locationName:"clusterEndpoint" type:"string" required:"true"` - // The name of the Elastic DocumentDB cluster. + // The name of the elastic cluster. // // ClusterName is a required field ClusterName *string `locationName:"clusterName" type:"string" required:"true"` - // The time when the Elastic DocumentDB cluster was created in Universal Coordinated - // Time (UTC). + // The time when the elastic cluster was created in Universal Coordinated Time + // (UTC). // // CreateTime is a required field CreateTime *string `locationName:"createTime" type:"string" required:"true"` - // The KMS key identifier to use to encrypt the Elastic DocumentDB cluster. + // The KMS key identifier to use to encrypt the elastic cluster. // // KmsKeyId is a required field KmsKeyId *string `locationName:"kmsKeyId" type:"string" required:"true"` + // The daily time range during which automated backups are created if automated + // backups are enabled, as determined by backupRetentionPeriod. + PreferredBackupWindow *string `locationName:"preferredBackupWindow" type:"string"` + // The weekly time range during which system maintenance can occur, in Universal // Coordinated Time (UTC). // @@ -1458,27 +1752,37 @@ type Cluster struct { // PreferredMaintenanceWindow is a required field PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"string" required:"true"` - // The capacity of each shard in the Elastic DocumentDB cluster. + // The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. + // Allowed values are 2, 4, 8, 16, 32, 64. // // ShardCapacity is a required field ShardCapacity *int64 `locationName:"shardCapacity" type:"integer" required:"true"` - // The number of shards in the Elastic DocumentDB cluster. + // The number of shards assigned to the elastic cluster. Maximum is 32. // // ShardCount is a required field ShardCount *int64 `locationName:"shardCount" type:"integer" required:"true"` - // The status of the Elastic DocumentDB cluster. + // The number of replica instances applying to all shards in the cluster. A + // shardInstanceCount value of 1 means there is one writer instance, and any + // additional instances are replicas that can be used for reads and to improve + // availability. + ShardInstanceCount *int64 `locationName:"shardInstanceCount" type:"integer"` + + // The total number of shards in the cluster. + Shards []*Shard `locationName:"shards" type:"list"` + + // The status of the elastic cluster. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"Status"` - // The Amazon EC2 subnet IDs for the Elastic DocumentDB cluster. + // The Amazon EC2 subnet IDs for the elastic cluster. // // SubnetIds is a required field SubnetIds []*string `locationName:"subnetIds" type:"list" required:"true"` - // A list of EC2 VPC security groups associated with this cluster. + // A list of EC2 VPC security groups associated with thie elastic cluster. // // VpcSecurityGroupIds is a required field VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" type:"list" required:"true"` @@ -1514,6 +1818,12 @@ func (s *Cluster) SetAuthType(v string) *Cluster { return s } +// SetBackupRetentionPeriod sets the BackupRetentionPeriod field's value. +func (s *Cluster) SetBackupRetentionPeriod(v int64) *Cluster { + s.BackupRetentionPeriod = &v + return s +} + // SetClusterArn sets the ClusterArn field's value. func (s *Cluster) SetClusterArn(v string) *Cluster { s.ClusterArn = &v @@ -1544,6 +1854,12 @@ func (s *Cluster) SetKmsKeyId(v string) *Cluster { return s } +// SetPreferredBackupWindow sets the PreferredBackupWindow field's value. +func (s *Cluster) SetPreferredBackupWindow(v string) *Cluster { + s.PreferredBackupWindow = &v + return s +} + // SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. func (s *Cluster) SetPreferredMaintenanceWindow(v string) *Cluster { s.PreferredMaintenanceWindow = &v @@ -1562,6 +1878,18 @@ func (s *Cluster) SetShardCount(v int64) *Cluster { return s } +// SetShardInstanceCount sets the ShardInstanceCount field's value. +func (s *Cluster) SetShardInstanceCount(v int64) *Cluster { + s.ShardInstanceCount = &v + return s +} + +// SetShards sets the Shards field's value. +func (s *Cluster) SetShards(v []*Shard) *Cluster { + s.Shards = v + return s +} + // SetStatus sets the Status field's value. func (s *Cluster) SetStatus(v string) *Cluster { s.Status = &v @@ -1580,21 +1908,21 @@ func (s *Cluster) SetVpcSecurityGroupIds(v []*string) *Cluster { return s } -// A list of Elastic DocumentDB cluster. +// A list of Amazon DocumentDB elastic clusters. type ClusterInList struct { _ struct{} `type:"structure"` - // The arn of the Elastic DocumentDB cluster. + // The ARN identifier of the elastic cluster. // // ClusterArn is a required field ClusterArn *string `locationName:"clusterArn" type:"string" required:"true"` - // The name of the Elastic DocumentDB cluster. + // The name of the elastic cluster. // // ClusterName is a required field ClusterName *string `locationName:"clusterName" type:"string" required:"true"` - // The status of the Elastic DocumentDB cluster. + // The status of the elastic cluster. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"Status"` @@ -1636,59 +1964,73 @@ func (s *ClusterInList) SetStatus(v string) *ClusterInList { return s } -// Returns information about a specific Elastic DocumentDB snapshot. +// Returns information about a specific elastic cluster snapshot. type ClusterSnapshot struct { _ struct{} `type:"structure"` - // The name of the Elastic DocumentDB cluster administrator. + // The name of the elastic cluster administrator. // // AdminUserName is a required field AdminUserName *string `locationName:"adminUserName" type:"string" required:"true"` - // The arn of the Elastic DocumentDB cluster. + // The ARN identifier of the elastic cluster. // // ClusterArn is a required field ClusterArn *string `locationName:"clusterArn" type:"string" required:"true"` - // The time when the Elastic DocumentDB cluster was created in Universal Coordinated - // Time (UTC). + // The time when the elastic cluster was created in Universal Coordinated Time + // (UTC). // // ClusterCreationTime is a required field ClusterCreationTime *string `locationName:"clusterCreationTime" type:"string" required:"true"` - // The KMS key identifier to use to encrypt the Elastic DocumentDB cluster. + // The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption + // key. If you are creating a cluster using the same Amazon account that owns + // this KMS encryption key, you can use the KMS key alias instead of the ARN + // as the KMS encryption key. If an encryption key is not specified here, Amazon + // DocumentDB uses the default encryption key that KMS creates for your account. + // Your account has a different default encryption key for each Amazon Region. // // KmsKeyId is a required field KmsKeyId *string `locationName:"kmsKeyId" type:"string" required:"true"` - // The arn of the Elastic DocumentDB snapshot + // The ARN identifier of the elastic cluster snapshot. // // SnapshotArn is a required field SnapshotArn *string `locationName:"snapshotArn" type:"string" required:"true"` - // The time when the Elastic DocumentDB snapshot was created in Universal Coordinated + // The time when the elastic cluster snapshot was created in Universal Coordinated // Time (UTC). // // SnapshotCreationTime is a required field SnapshotCreationTime *string `locationName:"snapshotCreationTime" type:"string" required:"true"` - // The name of the Elastic DocumentDB snapshot. + // The name of the elastic cluster snapshot. // // SnapshotName is a required field SnapshotName *string `locationName:"snapshotName" type:"string" required:"true"` - // The status of the Elastic DocumentDB snapshot. + // The type of cluster snapshots to be returned. You can specify one of the + // following values: + // + // * automated - Return all cluster snapshots that Amazon DocumentDB has + // automatically created for your Amazon Web Services account. + // + // * manual - Return all cluster snapshots that you have manually created + // for your Amazon Web Services account. + SnapshotType *string `locationName:"snapshotType" type:"string" enum:"SnapshotType"` + + // The status of the elastic cluster snapshot. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"Status"` - // A list of the IDs of subnets associated with the DB cluster snapshot. + // The Amazon EC2 subnet IDs for the elastic cluster. // // SubnetIds is a required field SubnetIds []*string `locationName:"subnetIds" type:"list" required:"true"` - // A list of the IDs of the VPC security groups associated with the cluster - // snapshot. + // A list of EC2 VPC security groups to associate with the elastic cluster. // // VpcSecurityGroupIds is a required field VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" type:"list" required:"true"` @@ -1754,6 +2096,12 @@ func (s *ClusterSnapshot) SetSnapshotName(v string) *ClusterSnapshot { return s } +// SetSnapshotType sets the SnapshotType field's value. +func (s *ClusterSnapshot) SetSnapshotType(v string) *ClusterSnapshot { + s.SnapshotType = &v + return s +} + // SetStatus sets the Status field's value. func (s *ClusterSnapshot) SetStatus(v string) *ClusterSnapshot { s.Status = &v @@ -1772,32 +2120,32 @@ func (s *ClusterSnapshot) SetVpcSecurityGroupIds(v []*string) *ClusterSnapshot { return s } -// A list of Elastic DocumentDB snapshots. +// A list of elastic cluster snapshots. type ClusterSnapshotInList struct { _ struct{} `type:"structure"` - // The arn of the Elastic DocumentDB cluster. + // The ARN identifier of the elastic cluster. // // ClusterArn is a required field ClusterArn *string `locationName:"clusterArn" type:"string" required:"true"` - // The arn of the Elastic DocumentDB snapshot + // The ARN identifier of the elastic cluster snapshot. // // SnapshotArn is a required field SnapshotArn *string `locationName:"snapshotArn" type:"string" required:"true"` - // The time when the Elastic DocumentDB snapshot was created in Universal Coordinated + // The time when the elastic cluster snapshot was created in Universal Coordinated // Time (UTC). // // SnapshotCreationTime is a required field SnapshotCreationTime *string `locationName:"snapshotCreationTime" type:"string" required:"true"` - // The name of the Elastic DocumentDB snapshot. + // The name of the elastic cluster snapshot. // // SnapshotName is a required field SnapshotName *string `locationName:"snapshotName" type:"string" required:"true"` - // The status of the Elastic DocumentDB snapshot. + // The status of the elastic cluster snapshot. // // Status is a required field Status *string `locationName:"status" type:"string" required:"true" enum:"Status"` @@ -1925,24 +2273,181 @@ func (s *ConflictException) RequestID() string { return s.RespMetadata.RequestID } -type CreateClusterInput struct { +type CopyClusterSnapshotInput struct { _ struct{} `type:"structure"` - // The name of the Elastic DocumentDB cluster administrator. - // - // Constraints: + // Set to true to copy all tags from the source cluster snapshot to the target + // elastic cluster snapshot. The default is false. + CopyTags *bool `locationName:"copyTags" type:"boolean"` + + // The Amazon Web Services KMS key ID for an encrypted elastic cluster snapshot. + // The Amazon Web Services KMS key ID is the Amazon Resource Name (ARN), Amazon + // Web Services KMS key identifier, or the Amazon Web Services KMS key alias + // for the Amazon Web Services KMS encryption key. // - // * Must be from 1 to 63 letters or numbers. + // If you copy an encrypted elastic cluster snapshot from your Amazon Web Services + // account, you can specify a value for KmsKeyId to encrypt the copy with a + // new Amazon Web ServicesS KMS encryption key. If you don't specify a value + // for KmsKeyId, then the copy of the elastic cluster snapshot is encrypted + // with the same AWS KMS key as the source elastic cluster snapshot. // - // * The first character must be a letter. + // To copy an encrypted elastic cluster snapshot to another Amazon Web Services + // region, set KmsKeyId to the Amazon Web Services KMS key ID that you want + // to use to encrypt the copy of the elastic cluster snapshot in the destination + // region. Amazon Web Services KMS encryption keys are specific to the Amazon + // Web Services region that they are created in, and you can't use encryption + // keys from one Amazon Web Services region in another Amazon Web Services region. // - // * Cannot be a reserved word. + // If you copy an unencrypted elastic cluster snapshot and specify a value for + // the KmsKeyId parameter, an error is returned. + KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + + // The Amazon Resource Name (ARN) identifier of the elastic cluster snapshot. // - // AdminUserName is a required field + // SnapshotArn is a required field + SnapshotArn *string `location:"uri" locationName:"snapshotArn" type:"string" required:"true"` + + // The tags to be assigned to the elastic cluster snapshot. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The identifier of the new elastic cluster snapshot to create from the source + // cluster snapshot. This parameter is not case sensitive. + // + // Constraints: + // + // * Must contain from 1 to 63 letters, numbers, or hyphens. + // + // * The first character must be a letter. + // + // * Cannot end with a hyphen or contain two consecutive hyphens. + // + // Example: elastic-cluster-snapshot-5 + // + // TargetSnapshotName is a required field + TargetSnapshotName *string `locationName:"targetSnapshotName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyClusterSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyClusterSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CopyClusterSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopyClusterSnapshotInput"} + if s.SnapshotArn == nil { + invalidParams.Add(request.NewErrParamRequired("SnapshotArn")) + } + if s.SnapshotArn != nil && len(*s.SnapshotArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("SnapshotArn", 1)) + } + if s.TargetSnapshotName == nil { + invalidParams.Add(request.NewErrParamRequired("TargetSnapshotName")) + } + if s.TargetSnapshotName != nil && len(*s.TargetSnapshotName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TargetSnapshotName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCopyTags sets the CopyTags field's value. +func (s *CopyClusterSnapshotInput) SetCopyTags(v bool) *CopyClusterSnapshotInput { + s.CopyTags = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *CopyClusterSnapshotInput) SetKmsKeyId(v string) *CopyClusterSnapshotInput { + s.KmsKeyId = &v + return s +} + +// SetSnapshotArn sets the SnapshotArn field's value. +func (s *CopyClusterSnapshotInput) SetSnapshotArn(v string) *CopyClusterSnapshotInput { + s.SnapshotArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CopyClusterSnapshotInput) SetTags(v map[string]*string) *CopyClusterSnapshotInput { + s.Tags = v + return s +} + +// SetTargetSnapshotName sets the TargetSnapshotName field's value. +func (s *CopyClusterSnapshotInput) SetTargetSnapshotName(v string) *CopyClusterSnapshotInput { + s.TargetSnapshotName = &v + return s +} + +type CopyClusterSnapshotOutput struct { + _ struct{} `type:"structure"` + + // Returns information about a specific elastic cluster snapshot. + // + // Snapshot is a required field + Snapshot *ClusterSnapshot `locationName:"snapshot" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyClusterSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyClusterSnapshotOutput) GoString() string { + return s.String() +} + +// SetSnapshot sets the Snapshot field's value. +func (s *CopyClusterSnapshotOutput) SetSnapshot(v *ClusterSnapshot) *CopyClusterSnapshotOutput { + s.Snapshot = v + return s +} + +type CreateClusterInput struct { + _ struct{} `type:"structure"` + + // The name of the Amazon DocumentDB elastic clusters administrator. + // + // Constraints: + // + // * Must be from 1 to 63 letters or numbers. + // + // * The first character must be a letter. + // + // * Cannot be a reserved word. + // + // AdminUserName is a required field AdminUserName *string `locationName:"adminUserName" type:"string" required:"true"` - // The password for the Elastic DocumentDB cluster administrator and can contain - // any printable ASCII characters. + // The password for the Amazon DocumentDB elastic clusters administrator. The + // password can contain any printable ASCII characters. // // Constraints: // @@ -1958,16 +2463,20 @@ type CreateClusterInput struct { // AdminUserPassword is a required field AdminUserPassword *string `locationName:"adminUserPassword" type:"string" required:"true" sensitive:"true"` - // The authentication type for the Elastic DocumentDB cluster. + // The authentication type used to determine where to fetch the password used + // for accessing the elastic cluster. Valid types are PLAIN_TEXT or SECRET_ARN. // // AuthType is a required field AuthType *string `locationName:"authType" type:"string" required:"true" enum:"Auth"` - // The client token for the Elastic DocumentDB cluster. + // The number of days for which automatic snapshots are retained. + BackupRetentionPeriod *int64 `locationName:"backupRetentionPeriod" type:"integer"` + + // The client token for the elastic cluster. ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - // The name of the new Elastic DocumentDB cluster. This parameter is stored - // as a lowercase string. + // The name of the new elastic cluster. This parameter is stored as a lowercase + // string. // // Constraints: // @@ -1982,18 +2491,22 @@ type CreateClusterInput struct { // ClusterName is a required field ClusterName *string `locationName:"clusterName" type:"string" required:"true"` - // The KMS key identifier to use to encrypt the new Elastic DocumentDB cluster. + // The KMS key identifier to use to encrypt the new elastic cluster. // // The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption // key. If you are creating a cluster using the same Amazon account that owns // this KMS encryption key, you can use the KMS key alias instead of the ARN // as the KMS encryption key. // - // If an encryption key is not specified, Elastic DocumentDB uses the default + // If an encryption key is not specified, Amazon DocumentDB uses the default // encryption key that KMS creates for your account. Your account has a different // default encryption key for each Amazon Region. KmsKeyId *string `locationName:"kmsKeyId" type:"string"` + // The daily time range during which automated backups are created if automated + // backups are enabled, as determined by the backupRetentionPeriod. + PreferredBackupWindow *string `locationName:"preferredBackupWindow" type:"string"` + // The weekly time range during which system maintenance can occur, in Universal // Coordinated Time (UTC). // @@ -2007,24 +2520,30 @@ type CreateClusterInput struct { // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"string"` - // The capacity of each shard in the new Elastic DocumentDB cluster. + // The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. + // Allowed values are 2, 4, 8, 16, 32, 64. // // ShardCapacity is a required field ShardCapacity *int64 `locationName:"shardCapacity" type:"integer" required:"true"` - // The number of shards to create in the new Elastic DocumentDB cluster. + // The number of shards assigned to the elastic cluster. Maximum is 32. // // ShardCount is a required field ShardCount *int64 `locationName:"shardCount" type:"integer" required:"true"` - // The Amazon EC2 subnet IDs for the new Elastic DocumentDB cluster. + // The number of replica instances applying to all shards in the elastic cluster. + // A shardInstanceCount value of 1 means there is one writer instance, and any + // additional instances are replicas that can be used for reads and to improve + // availability. + ShardInstanceCount *int64 `locationName:"shardInstanceCount" type:"integer"` + + // The Amazon EC2 subnet IDs for the new elastic cluster. SubnetIds []*string `locationName:"subnetIds" type:"list"` - // The tags to be assigned to the new Elastic DocumentDB cluster. + // The tags to be assigned to the new elastic cluster. Tags map[string]*string `locationName:"tags" type:"map"` - // A list of EC2 VPC security groups to associate with the new Elastic DocumentDB - // cluster. + // A list of EC2 VPC security groups to associate with the new elastic cluster. VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" type:"list"` } @@ -2092,6 +2611,12 @@ func (s *CreateClusterInput) SetAuthType(v string) *CreateClusterInput { return s } +// SetBackupRetentionPeriod sets the BackupRetentionPeriod field's value. +func (s *CreateClusterInput) SetBackupRetentionPeriod(v int64) *CreateClusterInput { + s.BackupRetentionPeriod = &v + return s +} + // SetClientToken sets the ClientToken field's value. func (s *CreateClusterInput) SetClientToken(v string) *CreateClusterInput { s.ClientToken = &v @@ -2110,6 +2635,12 @@ func (s *CreateClusterInput) SetKmsKeyId(v string) *CreateClusterInput { return s } +// SetPreferredBackupWindow sets the PreferredBackupWindow field's value. +func (s *CreateClusterInput) SetPreferredBackupWindow(v string) *CreateClusterInput { + s.PreferredBackupWindow = &v + return s +} + // SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. func (s *CreateClusterInput) SetPreferredMaintenanceWindow(v string) *CreateClusterInput { s.PreferredMaintenanceWindow = &v @@ -2128,6 +2659,12 @@ func (s *CreateClusterInput) SetShardCount(v int64) *CreateClusterInput { return s } +// SetShardInstanceCount sets the ShardInstanceCount field's value. +func (s *CreateClusterInput) SetShardInstanceCount(v int64) *CreateClusterInput { + s.ShardInstanceCount = &v + return s +} + // SetSubnetIds sets the SubnetIds field's value. func (s *CreateClusterInput) SetSubnetIds(v []*string) *CreateClusterInput { s.SubnetIds = v @@ -2149,7 +2686,7 @@ func (s *CreateClusterInput) SetVpcSecurityGroupIds(v []*string) *CreateClusterI type CreateClusterOutput struct { _ struct{} `type:"structure"` - // The new Elastic DocumentDB cluster that has been created. + // The new elastic cluster that has been created. // // Cluster is a required field Cluster *Cluster `locationName:"cluster" type:"structure" required:"true"` @@ -2182,18 +2719,17 @@ func (s *CreateClusterOutput) SetCluster(v *Cluster) *CreateClusterOutput { type CreateClusterSnapshotInput struct { _ struct{} `type:"structure"` - // The arn of the Elastic DocumentDB cluster that the snapshot will be taken - // from. + // The ARN identifier of the elastic cluster of which you want to create a snapshot. // // ClusterArn is a required field ClusterArn *string `locationName:"clusterArn" type:"string" required:"true"` - // The name of the Elastic DocumentDB snapshot. + // The name of the new elastic cluster snapshot. // // SnapshotName is a required field SnapshotName *string `locationName:"snapshotName" min:"1" type:"string" required:"true"` - // The tags to be assigned to the new Elastic DocumentDB snapshot. + // The tags to be assigned to the new elastic cluster snapshot. Tags map[string]*string `locationName:"tags" type:"map"` } @@ -2255,7 +2791,7 @@ func (s *CreateClusterSnapshotInput) SetTags(v map[string]*string) *CreateCluste type CreateClusterSnapshotOutput struct { _ struct{} `type:"structure"` - // Returns information about the new Elastic DocumentDB snapshot. + // Returns information about the new elastic cluster snapshot. // // Snapshot is a required field Snapshot *ClusterSnapshot `locationName:"snapshot" type:"structure" required:"true"` @@ -2288,7 +2824,7 @@ func (s *CreateClusterSnapshotOutput) SetSnapshot(v *ClusterSnapshot) *CreateClu type DeleteClusterInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The arn of the Elastic DocumentDB cluster that is to be deleted. + // The ARN identifier of the elastic cluster that is to be deleted. // // ClusterArn is a required field ClusterArn *string `location:"uri" locationName:"clusterArn" type:"string" required:"true"` @@ -2337,7 +2873,7 @@ func (s *DeleteClusterInput) SetClusterArn(v string) *DeleteClusterInput { type DeleteClusterOutput struct { _ struct{} `type:"structure"` - // Returns information about the newly deleted Elastic DocumentDB cluster. + // Returns information about the newly deleted elastic cluster. // // Cluster is a required field Cluster *Cluster `locationName:"cluster" type:"structure" required:"true"` @@ -2370,7 +2906,7 @@ func (s *DeleteClusterOutput) SetCluster(v *Cluster) *DeleteClusterOutput { type DeleteClusterSnapshotInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The arn of the Elastic DocumentDB snapshot that is to be deleted. + // The ARN identifier of the elastic cluster snapshot that is to be deleted. // // SnapshotArn is a required field SnapshotArn *string `location:"uri" locationName:"snapshotArn" type:"string" required:"true"` @@ -2419,7 +2955,7 @@ func (s *DeleteClusterSnapshotInput) SetSnapshotArn(v string) *DeleteClusterSnap type DeleteClusterSnapshotOutput struct { _ struct{} `type:"structure"` - // Returns information about the newly deleted Elastic DocumentDB snapshot. + // Returns information about the newly deleted elastic cluster snapshot. // // Snapshot is a required field Snapshot *ClusterSnapshot `locationName:"snapshot" type:"structure" required:"true"` @@ -2452,7 +2988,7 @@ func (s *DeleteClusterSnapshotOutput) SetSnapshot(v *ClusterSnapshot) *DeleteClu type GetClusterInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The arn of the Elastic DocumentDB cluster. + // The ARN identifier of the elastic cluster. // // ClusterArn is a required field ClusterArn *string `location:"uri" locationName:"clusterArn" type:"string" required:"true"` @@ -2501,7 +3037,7 @@ func (s *GetClusterInput) SetClusterArn(v string) *GetClusterInput { type GetClusterOutput struct { _ struct{} `type:"structure"` - // Returns information about a specific Elastic DocumentDB cluster. + // Returns information about a specific elastic cluster. // // Cluster is a required field Cluster *Cluster `locationName:"cluster" type:"structure" required:"true"` @@ -2534,7 +3070,7 @@ func (s *GetClusterOutput) SetCluster(v *Cluster) *GetClusterOutput { type GetClusterSnapshotInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The arn of the Elastic DocumentDB snapshot. + // The ARN identifier of the elastic cluster snapshot. // // SnapshotArn is a required field SnapshotArn *string `location:"uri" locationName:"snapshotArn" type:"string" required:"true"` @@ -2583,7 +3119,7 @@ func (s *GetClusterSnapshotInput) SetSnapshotArn(v string) *GetClusterSnapshotIn type GetClusterSnapshotOutput struct { _ struct{} `type:"structure"` - // Returns information about a specific Elastic DocumentDB snapshot. + // Returns information about a specific elastic cluster snapshot. // // Snapshot is a required field Snapshot *ClusterSnapshot `locationName:"snapshot" type:"structure" required:"true"` @@ -2680,14 +3216,29 @@ func (s *InternalServerException) RequestID() string { type ListClusterSnapshotsInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The arn of the Elastic DocumentDB cluster. + // The ARN identifier of the elastic cluster. ClusterArn *string `location:"querystring" locationName:"clusterArn" type:"string"` - // The maximum number of entries to recieve in the response. + // The maximum number of elastic cluster snapshot results to receive in the + // response. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"20" type:"integer"` - // The nextToken which is used the get the next page of data. + // A pagination token provided by a previous request. If this parameter is specified, + // the response includes only records beyond this token, up to the value specified + // by max-results. + // + // If there is no more data in the responce, the nextToken will not be returned. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` + + // The type of cluster snapshots to be returned. You can specify one of the + // following values: + // + // * automated - Return all cluster snapshots that Amazon DocumentDB has + // automatically created for your Amazon Web Services account. + // + // * manual - Return all cluster snapshots that you have manually created + // for your Amazon Web Services account. + SnapshotType *string `location:"querystring" locationName:"snapshotType" type:"string"` } // String returns the string representation. @@ -2739,15 +3290,23 @@ func (s *ListClusterSnapshotsInput) SetNextToken(v string) *ListClusterSnapshots return s } +// SetSnapshotType sets the SnapshotType field's value. +func (s *ListClusterSnapshotsInput) SetSnapshotType(v string) *ListClusterSnapshotsInput { + s.SnapshotType = &v + return s +} + type ListClusterSnapshotsOutput struct { _ struct{} `type:"structure"` - // The response will provide a nextToken if there is more data beyond the maxResults. + // A pagination token provided by a previous request. If this parameter is specified, + // the response includes only records beyond this token, up to the value specified + // by max-results. // // If there is no more data in the responce, the nextToken will not be returned. NextToken *string `locationName:"nextToken" type:"string"` - // A list of Elastic DocumentDB snapshots for a specified cluster. + // A list of snapshots for a specified elastic cluster. Snapshots []*ClusterSnapshotInList `locationName:"snapshots" type:"list"` } @@ -2784,10 +3343,15 @@ func (s *ListClusterSnapshotsOutput) SetSnapshots(v []*ClusterSnapshotInList) *L type ListClustersInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The maximum number of entries to recieve in the response. + // The maximum number of elastic cluster snapshot results to receive in the + // response. MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` - // The nextToken which is used the get the next page of data. + // A pagination token provided by a previous request. If this parameter is specified, + // the response includes only records beyond this token, up to the value specified + // by max-results. + // + // If there is no more data in the responce, the nextToken will not be returned. NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` } @@ -2837,10 +3401,12 @@ func (s *ListClustersInput) SetNextToken(v string) *ListClustersInput { type ListClustersOutput struct { _ struct{} `type:"structure"` - // A list of Elastic DocumentDB cluster. + // A list of Amazon DocumentDB elastic clusters. Clusters []*ClusterInList `locationName:"clusters" type:"list"` - // The response will provide a nextToken if there is more data beyond the maxResults. + // A pagination token provided by a previous request. If this parameter is specified, + // the response includes only records beyond this token, up to the value specified + // by max-results. // // If there is no more data in the responce, the nextToken will not be returned. NextToken *string `locationName:"nextToken" type:"string"` @@ -2879,7 +3445,7 @@ func (s *ListClustersOutput) SetNextToken(v string) *ListClustersOutput { type ListTagsForResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The arn of the Elastic DocumentDB resource. + // The ARN identifier of the elastic cluster resource. // // ResourceArn is a required field ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"` @@ -2928,7 +3494,7 @@ func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResource type ListTagsForResourceOutput struct { _ struct{} `type:"structure"` - // The list of tags for the specified Elastic DocumentDB resource. + // The list of tags for the specified elastic cluster resource. Tags map[string]*string `locationName:"tags" type:"map"` } @@ -3034,38 +3600,47 @@ func (s *ResourceNotFoundException) RequestID() string { type RestoreClusterFromSnapshotInput struct { _ struct{} `type:"structure"` - // The name of the Elastic DocumentDB cluster. + // The name of the elastic cluster. // // ClusterName is a required field ClusterName *string `locationName:"clusterName" type:"string" required:"true"` - // The KMS key identifier to use to encrypt the new Elastic DocumentDB cluster. + // The KMS key identifier to use to encrypt the new Amazon DocumentDB elastic + // clusters cluster. // // The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption // key. If you are creating a cluster using the same Amazon account that owns // this KMS encryption key, you can use the KMS key alias instead of the ARN // as the KMS encryption key. // - // If an encryption key is not specified here, Elastic DocumentDB uses the default + // If an encryption key is not specified here, Amazon DocumentDB uses the default // encryption key that KMS creates for your account. Your account has a different // default encryption key for each Amazon Region. KmsKeyId *string `locationName:"kmsKeyId" type:"string"` - // The arn of the Elastic DocumentDB snapshot. + // The capacity of each shard in the new restored elastic cluster. + ShardCapacity *int64 `locationName:"shardCapacity" type:"integer"` + + // The number of replica instances applying to all shards in the elastic cluster. + // A shardInstanceCount value of 1 means there is one writer instance, and any + // additional instances are replicas that can be used for reads and to improve + // availability. + ShardInstanceCount *int64 `locationName:"shardInstanceCount" type:"integer"` + + // The ARN identifier of the elastic cluster snapshot. // // SnapshotArn is a required field SnapshotArn *string `location:"uri" locationName:"snapshotArn" type:"string" required:"true"` - // The Amazon EC2 subnet IDs for the Elastic DocumentDB cluster. + // The Amazon EC2 subnet IDs for the elastic cluster. SubnetIds []*string `locationName:"subnetIds" type:"list"` - // A list of the tag names to be assigned to the restored DB cluster, in the - // form of an array of key-value pairs in which the key is the tag name and - // the value is the key value. + // A list of the tag names to be assigned to the restored elastic cluster, in + // the form of an array of key-value pairs in which the key is the tag name + // and the value is the key value. Tags map[string]*string `locationName:"tags" type:"map"` - // A list of EC2 VPC security groups to associate with the Elastic DocumentDB - // cluster. + // A list of EC2 VPC security groups to associate with the elastic cluster. VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" type:"list"` } @@ -3118,6 +3693,18 @@ func (s *RestoreClusterFromSnapshotInput) SetKmsKeyId(v string) *RestoreClusterF return s } +// SetShardCapacity sets the ShardCapacity field's value. +func (s *RestoreClusterFromSnapshotInput) SetShardCapacity(v int64) *RestoreClusterFromSnapshotInput { + s.ShardCapacity = &v + return s +} + +// SetShardInstanceCount sets the ShardInstanceCount field's value. +func (s *RestoreClusterFromSnapshotInput) SetShardInstanceCount(v int64) *RestoreClusterFromSnapshotInput { + s.ShardInstanceCount = &v + return s +} + // SetSnapshotArn sets the SnapshotArn field's value. func (s *RestoreClusterFromSnapshotInput) SetSnapshotArn(v string) *RestoreClusterFromSnapshotInput { s.SnapshotArn = &v @@ -3145,7 +3732,7 @@ func (s *RestoreClusterFromSnapshotInput) SetVpcSecurityGroupIds(v []*string) *R type RestoreClusterFromSnapshotOutput struct { _ struct{} `type:"structure"` - // Returns information about a the restored Elastic DocumentDB cluster. + // Returns information about a the restored elastic cluster. // // Cluster is a required field Cluster *Cluster `locationName:"cluster" type:"structure" required:"true"` @@ -3239,15 +3826,235 @@ func (s *ServiceQuotaExceededException) RequestID() string { return s.RespMetadata.RequestID } +// The name of the shard. +type Shard struct { + _ struct{} `type:"structure"` + + // The time when the shard was created in Universal Coordinated Time (UTC). + // + // CreateTime is a required field + CreateTime *string `locationName:"createTime" type:"string" required:"true"` + + // The ID of the shard. + // + // ShardId is a required field + ShardId *string `locationName:"shardId" type:"string" required:"true"` + + // The current status of the shard. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"Status"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Shard) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s Shard) GoString() string { + return s.String() +} + +// SetCreateTime sets the CreateTime field's value. +func (s *Shard) SetCreateTime(v string) *Shard { + s.CreateTime = &v + return s +} + +// SetShardId sets the ShardId field's value. +func (s *Shard) SetShardId(v string) *Shard { + s.ShardId = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Shard) SetStatus(v string) *Shard { + s.Status = &v + return s +} + +type StartClusterInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN identifier of the elastic cluster. + // + // ClusterArn is a required field + ClusterArn *string `location:"uri" locationName:"clusterArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartClusterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartClusterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StartClusterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StartClusterInput"} + if s.ClusterArn == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterArn")) + } + if s.ClusterArn != nil && len(*s.ClusterArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterArn sets the ClusterArn field's value. +func (s *StartClusterInput) SetClusterArn(v string) *StartClusterInput { + s.ClusterArn = &v + return s +} + +type StartClusterOutput struct { + _ struct{} `type:"structure"` + + // Returns information about a specific elastic cluster. + // + // Cluster is a required field + Cluster *Cluster `locationName:"cluster" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartClusterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StartClusterOutput) GoString() string { + return s.String() +} + +// SetCluster sets the Cluster field's value. +func (s *StartClusterOutput) SetCluster(v *Cluster) *StartClusterOutput { + s.Cluster = v + return s +} + +type StopClusterInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ARN identifier of the elastic cluster. + // + // ClusterArn is a required field + ClusterArn *string `location:"uri" locationName:"clusterArn" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopClusterInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopClusterInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StopClusterInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StopClusterInput"} + if s.ClusterArn == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterArn")) + } + if s.ClusterArn != nil && len(*s.ClusterArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterArn sets the ClusterArn field's value. +func (s *StopClusterInput) SetClusterArn(v string) *StopClusterInput { + s.ClusterArn = &v + return s +} + +type StopClusterOutput struct { + _ struct{} `type:"structure"` + + // Returns information about a specific elastic cluster. + // + // Cluster is a required field + Cluster *Cluster `locationName:"cluster" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopClusterOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s StopClusterOutput) GoString() string { + return s.String() +} + +// SetCluster sets the Cluster field's value. +func (s *StopClusterOutput) SetCluster(v *Cluster) *StopClusterOutput { + s.Cluster = v + return s +} + type TagResourceInput struct { _ struct{} `type:"structure"` - // The arn of the Elastic DocumentDB resource. + // The ARN identifier of the elastic cluster resource. // // ResourceArn is a required field ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"` - // The tags to be assigned to the Elastic DocumentDB resource. + // The tags that are assigned to the elastic cluster resource. // // Tags is a required field Tags map[string]*string `locationName:"tags" type:"map" required:"true"` @@ -3395,12 +4202,12 @@ func (s *ThrottlingException) RequestID() string { type UntagResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The arn of the Elastic DocumentDB resource. + // The ARN identifier of the elastic cluster resource. // // ResourceArn is a required field ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"` - // The tag keys to be removed from the Elastic DocumentDB resource. + // The tag keys to be removed from the elastic cluster resource. // // TagKeys is a required field TagKeys []*string `location:"querystring" locationName:"tagKeys" type:"list" required:"true"` @@ -3480,7 +4287,7 @@ func (s UntagResourceOutput) GoString() string { type UpdateClusterInput struct { _ struct{} `type:"structure"` - // The password for the Elastic DocumentDB cluster administrator. This password + // The password associated with the elastic cluster administrator. This password // can contain any printable ASCII character except forward slash (/), double // quote ("), or the "at" symbol (@). // @@ -3491,17 +4298,25 @@ type UpdateClusterInput struct { // String and GoString methods. AdminUserPassword *string `locationName:"adminUserPassword" type:"string" sensitive:"true"` - // The authentication type for the Elastic DocumentDB cluster. + // The authentication type used to determine where to fetch the password used + // for accessing the elastic cluster. Valid types are PLAIN_TEXT or SECRET_ARN. AuthType *string `locationName:"authType" type:"string" enum:"Auth"` - // The client token for the Elastic DocumentDB cluster. + // The number of days for which automatic snapshots are retained. + BackupRetentionPeriod *int64 `locationName:"backupRetentionPeriod" type:"integer"` + + // The client token for the elastic cluster. ClientToken *string `locationName:"clientToken" type:"string" idempotencyToken:"true"` - // The arn of the Elastic DocumentDB cluster. + // The ARN identifier of the elastic cluster. // // ClusterArn is a required field ClusterArn *string `location:"uri" locationName:"clusterArn" type:"string" required:"true"` + // The daily time range during which automated backups are created if automated + // backups are enabled, as determined by the backupRetentionPeriod. + PreferredBackupWindow *string `locationName:"preferredBackupWindow" type:"string"` + // The weekly time range during which system maintenance can occur, in Universal // Coordinated Time (UTC). // @@ -3515,17 +4330,23 @@ type UpdateClusterInput struct { // Constraints: Minimum 30-minute window. PreferredMaintenanceWindow *string `locationName:"preferredMaintenanceWindow" type:"string"` - // The capacity of each shard in the Elastic DocumentDB cluster. + // The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. + // Allowed values are 2, 4, 8, 16, 32, 64. ShardCapacity *int64 `locationName:"shardCapacity" type:"integer"` - // The number of shards to create in the Elastic DocumentDB cluster. + // The number of shards assigned to the elastic cluster. Maximum is 32. ShardCount *int64 `locationName:"shardCount" type:"integer"` - // The number of shards to create in the Elastic DocumentDB cluster. + // The number of replica instances applying to all shards in the elastic cluster. + // A shardInstanceCount value of 1 means there is one writer instance, and any + // additional instances are replicas that can be used for reads and to improve + // availability. + ShardInstanceCount *int64 `locationName:"shardInstanceCount" type:"integer"` + + // The Amazon EC2 subnet IDs for the elastic cluster. SubnetIds []*string `locationName:"subnetIds" type:"list"` - // A list of EC2 VPC security groups to associate with the new Elastic DocumentDB - // cluster. + // A list of EC2 VPC security groups to associate with the elastic cluster. VpcSecurityGroupIds []*string `locationName:"vpcSecurityGroupIds" type:"list"` } @@ -3575,6 +4396,12 @@ func (s *UpdateClusterInput) SetAuthType(v string) *UpdateClusterInput { return s } +// SetBackupRetentionPeriod sets the BackupRetentionPeriod field's value. +func (s *UpdateClusterInput) SetBackupRetentionPeriod(v int64) *UpdateClusterInput { + s.BackupRetentionPeriod = &v + return s +} + // SetClientToken sets the ClientToken field's value. func (s *UpdateClusterInput) SetClientToken(v string) *UpdateClusterInput { s.ClientToken = &v @@ -3587,6 +4414,12 @@ func (s *UpdateClusterInput) SetClusterArn(v string) *UpdateClusterInput { return s } +// SetPreferredBackupWindow sets the PreferredBackupWindow field's value. +func (s *UpdateClusterInput) SetPreferredBackupWindow(v string) *UpdateClusterInput { + s.PreferredBackupWindow = &v + return s +} + // SetPreferredMaintenanceWindow sets the PreferredMaintenanceWindow field's value. func (s *UpdateClusterInput) SetPreferredMaintenanceWindow(v string) *UpdateClusterInput { s.PreferredMaintenanceWindow = &v @@ -3605,6 +4438,12 @@ func (s *UpdateClusterInput) SetShardCount(v int64) *UpdateClusterInput { return s } +// SetShardInstanceCount sets the ShardInstanceCount field's value. +func (s *UpdateClusterInput) SetShardInstanceCount(v int64) *UpdateClusterInput { + s.ShardInstanceCount = &v + return s +} + // SetSubnetIds sets the SubnetIds field's value. func (s *UpdateClusterInput) SetSubnetIds(v []*string) *UpdateClusterInput { s.SubnetIds = v @@ -3620,7 +4459,7 @@ func (s *UpdateClusterInput) SetVpcSecurityGroupIds(v []*string) *UpdateClusterI type UpdateClusterOutput struct { _ struct{} `type:"structure"` - // Returns information about the updated Elastic DocumentDB cluster. + // Returns information about the updated elastic cluster. // // Cluster is a required field Cluster *Cluster `locationName:"cluster" type:"structure" required:"true"` @@ -3785,6 +4624,22 @@ func Auth_Values() []string { } } +const ( + // SnapshotTypeManual is a SnapshotType enum value + SnapshotTypeManual = "MANUAL" + + // SnapshotTypeAutomated is a SnapshotType enum value + SnapshotTypeAutomated = "AUTOMATED" +) + +// SnapshotType_Values returns all elements of the SnapshotType enum +func SnapshotType_Values() []string { + return []string{ + SnapshotTypeManual, + SnapshotTypeAutomated, + } +} + const ( // StatusCreating is a Status enum value StatusCreating = "CREATING" @@ -3812,6 +4667,36 @@ const ( // StatusInaccessibleEncryptionCreds is a Status enum value StatusInaccessibleEncryptionCreds = "INACCESSIBLE_ENCRYPTION_CREDS" + + // StatusInaccessibleSecretArn is a Status enum value + StatusInaccessibleSecretArn = "INACCESSIBLE_SECRET_ARN" + + // StatusInaccessibleVpcEndpoint is a Status enum value + StatusInaccessibleVpcEndpoint = "INACCESSIBLE_VPC_ENDPOINT" + + // StatusIncompatibleNetwork is a Status enum value + StatusIncompatibleNetwork = "INCOMPATIBLE_NETWORK" + + // StatusMerging is a Status enum value + StatusMerging = "MERGING" + + // StatusModifying is a Status enum value + StatusModifying = "MODIFYING" + + // StatusSplitting is a Status enum value + StatusSplitting = "SPLITTING" + + // StatusCopying is a Status enum value + StatusCopying = "COPYING" + + // StatusStarting is a Status enum value + StatusStarting = "STARTING" + + // StatusStopping is a Status enum value + StatusStopping = "STOPPING" + + // StatusStopped is a Status enum value + StatusStopped = "STOPPED" ) // Status_Values returns all elements of the Status enum @@ -3826,6 +4711,16 @@ func Status_Values() []string { StatusInvalidSecurityGroupId, StatusInvalidSubnetId, StatusInaccessibleEncryptionCreds, + StatusInaccessibleSecretArn, + StatusInaccessibleVpcEndpoint, + StatusIncompatibleNetwork, + StatusMerging, + StatusModifying, + StatusSplitting, + StatusCopying, + StatusStarting, + StatusStopping, + StatusStopped, } } diff --git a/service/docdbelastic/doc.go b/service/docdbelastic/doc.go index 600ca934ef..39f0a0df66 100644 --- a/service/docdbelastic/doc.go +++ b/service/docdbelastic/doc.go @@ -3,7 +3,22 @@ // Package docdbelastic provides the client and types for making API // requests to Amazon DocumentDB Elastic Clusters. // -// The new Amazon Elastic DocumentDB service endpoint. +// Amazon DocumentDB elastic-clusters support workloads with millions of reads/writes +// per second and petabytes of storage capacity. Amazon DocumentDB elastic clusters +// also simplify how developers interact with Amazon DocumentDB elastic-clusters +// by eliminating the need to choose, manage or upgrade instances. +// +// Amazon DocumentDB elastic-clusters were created to: +// +// - provide a solution for customers looking for a database that provides +// virtually limitless scale with rich query capabilities and MongoDB API +// compatibility. +// +// - give customers higher connection limits, and to reduce downtime from +// patching. +// +// - continue investing in a cloud-native, elastic, and class leading architecture +// for JSON workloads. // // See https://docs.aws.amazon.com/goto/WebAPI/docdb-elastic-2022-11-28 for more information on this service. // diff --git a/service/docdbelastic/docdbelasticiface/interface.go b/service/docdbelastic/docdbelasticiface/interface.go index 3637a2e09d..e70bd53ada 100644 --- a/service/docdbelastic/docdbelasticiface/interface.go +++ b/service/docdbelastic/docdbelasticiface/interface.go @@ -26,7 +26,7 @@ import ( // // myFunc uses an SDK service client to make a request to // // Amazon DocumentDB Elastic Clusters. // func myFunc(svc docdbelasticiface.DocDBElasticAPI) bool { -// // Make svc.CreateCluster request +// // Make svc.CopyClusterSnapshot request // } // // func main() { @@ -42,7 +42,7 @@ import ( // type mockDocDBElasticClient struct { // docdbelasticiface.DocDBElasticAPI // } -// func (m *mockDocDBElasticClient) CreateCluster(input *docdbelastic.CreateClusterInput) (*docdbelastic.CreateClusterOutput, error) { +// func (m *mockDocDBElasticClient) CopyClusterSnapshot(input *docdbelastic.CopyClusterSnapshotInput) (*docdbelastic.CopyClusterSnapshotOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ import ( // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type DocDBElasticAPI interface { + CopyClusterSnapshot(*docdbelastic.CopyClusterSnapshotInput) (*docdbelastic.CopyClusterSnapshotOutput, error) + CopyClusterSnapshotWithContext(aws.Context, *docdbelastic.CopyClusterSnapshotInput, ...request.Option) (*docdbelastic.CopyClusterSnapshotOutput, error) + CopyClusterSnapshotRequest(*docdbelastic.CopyClusterSnapshotInput) (*request.Request, *docdbelastic.CopyClusterSnapshotOutput) + CreateCluster(*docdbelastic.CreateClusterInput) (*docdbelastic.CreateClusterOutput, error) CreateClusterWithContext(aws.Context, *docdbelastic.CreateClusterInput, ...request.Option) (*docdbelastic.CreateClusterOutput, error) CreateClusterRequest(*docdbelastic.CreateClusterInput) (*request.Request, *docdbelastic.CreateClusterOutput) @@ -106,6 +110,14 @@ type DocDBElasticAPI interface { RestoreClusterFromSnapshotWithContext(aws.Context, *docdbelastic.RestoreClusterFromSnapshotInput, ...request.Option) (*docdbelastic.RestoreClusterFromSnapshotOutput, error) RestoreClusterFromSnapshotRequest(*docdbelastic.RestoreClusterFromSnapshotInput) (*request.Request, *docdbelastic.RestoreClusterFromSnapshotOutput) + StartCluster(*docdbelastic.StartClusterInput) (*docdbelastic.StartClusterOutput, error) + StartClusterWithContext(aws.Context, *docdbelastic.StartClusterInput, ...request.Option) (*docdbelastic.StartClusterOutput, error) + StartClusterRequest(*docdbelastic.StartClusterInput) (*request.Request, *docdbelastic.StartClusterOutput) + + StopCluster(*docdbelastic.StopClusterInput) (*docdbelastic.StopClusterOutput, error) + StopClusterWithContext(aws.Context, *docdbelastic.StopClusterInput, ...request.Option) (*docdbelastic.StopClusterOutput, error) + StopClusterRequest(*docdbelastic.StopClusterInput) (*request.Request, *docdbelastic.StopClusterOutput) + TagResource(*docdbelastic.TagResourceInput) (*docdbelastic.TagResourceOutput, error) TagResourceWithContext(aws.Context, *docdbelastic.TagResourceInput, ...request.Option) (*docdbelastic.TagResourceOutput, error) TagResourceRequest(*docdbelastic.TagResourceInput) (*request.Request, *docdbelastic.TagResourceOutput) diff --git a/service/eks/api.go b/service/eks/api.go index 48faf266f2..6c7ac3068d 100644 --- a/service/eks/api.go +++ b/service/eks/api.go @@ -19147,6 +19147,12 @@ const ( // AMITypesWindowsFull2022X8664 is a AMITypes enum value AMITypesWindowsFull2022X8664 = "WINDOWS_FULL_2022_x86_64" + + // AMITypesAl2023X8664Standard is a AMITypes enum value + AMITypesAl2023X8664Standard = "AL2023_x86_64_STANDARD" + + // AMITypesAl2023Arm64Standard is a AMITypes enum value + AMITypesAl2023Arm64Standard = "AL2023_ARM_64_STANDARD" ) // AMITypes_Values returns all elements of the AMITypes enum @@ -19164,6 +19170,8 @@ func AMITypes_Values() []string { AMITypesWindowsFull2019X8664, AMITypesWindowsCore2022X8664, AMITypesWindowsFull2022X8664, + AMITypesAl2023X8664Standard, + AMITypesAl2023Arm64Standard, } } diff --git a/service/lexmodelsv2/api.go b/service/lexmodelsv2/api.go index 656477f2ea..0df46e9180 100644 --- a/service/lexmodelsv2/api.go +++ b/service/lexmodelsv2/api.go @@ -15171,6 +15171,56 @@ func (s *BatchUpdateCustomVocabularyItemOutput) SetResources(v []*CustomVocabula return s } +// Contains details about the configuration of a Amazon Bedrock knowledge base. +type BedrockKnowledgeStoreConfiguration struct { + _ struct{} `type:"structure"` + + // The ARN of the knowledge base used. + // + // BedrockKnowledgeBaseArn is a required field + BedrockKnowledgeBaseArn *string `locationName:"bedrockKnowledgeBaseArn" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BedrockKnowledgeStoreConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s BedrockKnowledgeStoreConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *BedrockKnowledgeStoreConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "BedrockKnowledgeStoreConfiguration"} + if s.BedrockKnowledgeBaseArn == nil { + invalidParams.Add(request.NewErrParamRequired("BedrockKnowledgeBaseArn")) + } + if s.BedrockKnowledgeBaseArn != nil && len(*s.BedrockKnowledgeBaseArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BedrockKnowledgeBaseArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBedrockKnowledgeBaseArn sets the BedrockKnowledgeBaseArn field's value. +func (s *BedrockKnowledgeStoreConfiguration) SetBedrockKnowledgeBaseArn(v string) *BedrockKnowledgeStoreConfiguration { + s.BedrockKnowledgeBaseArn = &v + return s +} + // Contains information about the Amazon Bedrock model used to interpret the // prompt used in descriptive bot building. type BedrockModelSpecification struct { @@ -20088,6 +20138,11 @@ type CreateIntentInput struct { // A unique identifier for the built-in intent to base this intent on. ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` + // Specifies the configuration of the built-in Amazon.QnAIntent. The AMAZON.QnAIntent + // intent is called when Amazon Lex can't determine another intent to invoke. + // If you specify this field, you can't specify the kendraConfiguration field. + QnAIntentConfiguration *QnAIntentConfiguration `locationName:"qnAIntentConfiguration" type:"structure"` + // An array of strings that a user might say to signal the intent. For example, // "I want a pizza", or "I want a {PizzaSize} pizza". // @@ -20191,6 +20246,11 @@ func (s *CreateIntentInput) Validate() error { } } } + if s.QnAIntentConfiguration != nil { + if err := s.QnAIntentConfiguration.Validate(); err != nil { + invalidParams.AddNested("QnAIntentConfiguration", err.(request.ErrInvalidParams)) + } + } if s.SampleUtterances != nil { for i, v := range s.SampleUtterances { if v == nil { @@ -20292,6 +20352,12 @@ func (s *CreateIntentInput) SetParentIntentSignature(v string) *CreateIntentInpu return s } +// SetQnAIntentConfiguration sets the QnAIntentConfiguration field's value. +func (s *CreateIntentInput) SetQnAIntentConfiguration(v *QnAIntentConfiguration) *CreateIntentInput { + s.QnAIntentConfiguration = v + return s +} + // SetSampleUtterances sets the SampleUtterances field's value. func (s *CreateIntentInput) SetSampleUtterances(v []*SampleUtterance) *CreateIntentInput { s.SampleUtterances = v @@ -20350,6 +20416,9 @@ type CreateIntentOutput struct { // The signature of the parent intent specified for the intent. ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` + // Details about the the configuration of the built-in Amazon.QnAIntent. + QnAIntentConfiguration *QnAIntentConfiguration `locationName:"qnAIntentConfiguration" type:"structure"` + // The sample utterances specified for the intent. SampleUtterances []*SampleUtterance `locationName:"sampleUtterances" type:"list"` } @@ -20468,6 +20537,12 @@ func (s *CreateIntentOutput) SetParentIntentSignature(v string) *CreateIntentOut return s } +// SetQnAIntentConfiguration sets the QnAIntentConfiguration field's value. +func (s *CreateIntentOutput) SetQnAIntentConfiguration(v *QnAIntentConfiguration) *CreateIntentOutput { + s.QnAIntentConfiguration = v + return s +} + // SetSampleUtterances sets the SampleUtterances field's value. func (s *CreateIntentOutput) SetSampleUtterances(v []*SampleUtterance) *CreateIntentOutput { s.SampleUtterances = v @@ -22191,6 +22266,89 @@ func (s *DataPrivacy) SetChildDirected(v bool) *DataPrivacy { return s } +// Contains details about the configuration of the knowledge store used for +// the AMAZON.QnAIntent. You must have already created the knowledge store and +// indexed the documents within it. +type DataSourceConfiguration struct { + _ struct{} `type:"structure"` + + // Contains details about the configuration of the Amazon Bedrock knowledge + // base used for the AMAZON.QnAIntent. To set up a knowledge base, follow the + // steps at Building a knowledge base (https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base.html). + BedrockKnowledgeStoreConfiguration *BedrockKnowledgeStoreConfiguration `locationName:"bedrockKnowledgeStoreConfiguration" type:"structure"` + + // Contains details about the configuration of the Amazon Kendra index used + // for the AMAZON.QnAIntent. To create a Amazon Kendra index, follow the steps + // at Creating an index (https://docs.aws.amazon.com/kendra/latest/dg/create-index.html). + KendraConfiguration *QnAKendraConfiguration `locationName:"kendraConfiguration" type:"structure"` + + // Contains details about the configuration of the Amazon OpenSearch Service + // database used for the AMAZON.QnAIntent. To create a domain, follow the steps + // at Creating and managing Amazon OpenSearch Service domains (https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html). + OpensearchConfiguration *OpensearchConfiguration `locationName:"opensearchConfiguration" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DataSourceConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DataSourceConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DataSourceConfiguration"} + if s.BedrockKnowledgeStoreConfiguration != nil { + if err := s.BedrockKnowledgeStoreConfiguration.Validate(); err != nil { + invalidParams.AddNested("BedrockKnowledgeStoreConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.KendraConfiguration != nil { + if err := s.KendraConfiguration.Validate(); err != nil { + invalidParams.AddNested("KendraConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.OpensearchConfiguration != nil { + if err := s.OpensearchConfiguration.Validate(); err != nil { + invalidParams.AddNested("OpensearchConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBedrockKnowledgeStoreConfiguration sets the BedrockKnowledgeStoreConfiguration field's value. +func (s *DataSourceConfiguration) SetBedrockKnowledgeStoreConfiguration(v *BedrockKnowledgeStoreConfiguration) *DataSourceConfiguration { + s.BedrockKnowledgeStoreConfiguration = v + return s +} + +// SetKendraConfiguration sets the KendraConfiguration field's value. +func (s *DataSourceConfiguration) SetKendraConfiguration(v *QnAKendraConfiguration) *DataSourceConfiguration { + s.KendraConfiguration = v + return s +} + +// SetOpensearchConfiguration sets the OpensearchConfiguration field's value. +func (s *DataSourceConfiguration) SetOpensearchConfiguration(v *OpensearchConfiguration) *DataSourceConfiguration { + s.OpensearchConfiguration = v + return s +} + // The object used for specifying the data range that the customer wants Amazon // Lex to read through in the input transcripts. type DateRangeFilter struct { @@ -26153,6 +26311,9 @@ type DescribeIntentOutput struct { // any. ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` + // Details about the configuration of the built-in Amazon.QnAIntent. + QnAIntentConfiguration *QnAIntentConfiguration `locationName:"qnAIntentConfiguration" type:"structure"` + // User utterances that trigger this intent. SampleUtterances []*SampleUtterance `locationName:"sampleUtterances" type:"list"` @@ -26281,6 +26442,12 @@ func (s *DescribeIntentOutput) SetParentIntentSignature(v string) *DescribeInten return s } +// SetQnAIntentConfiguration sets the QnAIntentConfiguration field's value. +func (s *DescribeIntentOutput) SetQnAIntentConfiguration(v *QnAIntentConfiguration) *DescribeIntentOutput { + s.QnAIntentConfiguration = v + return s +} + // SetSampleUtterances sets the SampleUtterances field's value. func (s *DescribeIntentOutput) SetSampleUtterances(v []*SampleUtterance) *DescribeIntentOutput { s.SampleUtterances = v @@ -28042,6 +28209,69 @@ func (s *EncryptionSetting) SetKmsKeyArn(v string) *EncryptionSetting { return s } +// Contains the names of the fields used for an exact response to the user. +type ExactResponseFields struct { + _ struct{} `type:"structure"` + + // The name of the field that contains the answer to the query made to the OpenSearch + // Service database. + // + // AnswerField is a required field + AnswerField *string `locationName:"answerField" type:"string" required:"true"` + + // The name of the field that contains the query made to the OpenSearch Service + // database. + // + // QuestionField is a required field + QuestionField *string `locationName:"questionField" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExactResponseFields) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ExactResponseFields) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ExactResponseFields) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ExactResponseFields"} + if s.AnswerField == nil { + invalidParams.Add(request.NewErrParamRequired("AnswerField")) + } + if s.QuestionField == nil { + invalidParams.Add(request.NewErrParamRequired("QuestionField")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAnswerField sets the AnswerField field's value. +func (s *ExactResponseFields) SetAnswerField(v string) *ExactResponseFields { + s.AnswerField = &v + return s +} + +// SetQuestionField sets the QuestionField field's value. +func (s *ExactResponseFields) SetQuestionField(v string) *ExactResponseFields { + s.QuestionField = &v + return s +} + // Details about an error in an execution of a test set. type ExecutionErrorDetails struct { _ struct{} `type:"structure"` @@ -37306,6 +37536,108 @@ func (s *ObfuscationSetting) SetObfuscationSettingType(v string) *ObfuscationSet return s } +// Contains details about the configuration of the Amazon OpenSearch Service +// database used for the AMAZON.QnAIntent. +type OpensearchConfiguration struct { + _ struct{} `type:"structure"` + + // The endpoint of the Amazon OpenSearch Service domain. + // + // DomainEndpoint is a required field + DomainEndpoint *string `locationName:"domainEndpoint" type:"string" required:"true"` + + // Specifies whether to return an exact response or to return an answer generated + // by the model using the fields you specify from the database. + ExactResponse *bool `locationName:"exactResponse" type:"boolean"` + + // Contains the names of the fields used for an exact response to the user. + ExactResponseFields *ExactResponseFields `locationName:"exactResponseFields" type:"structure"` + + // Contains a list of fields from the Amazon OpenSearch Service that the model + // can use to generate the answer to the query. + IncludeFields []*string `locationName:"includeFields" min:"1" type:"list"` + + // The name of the Amazon OpenSearch Service index. + // + // IndexName is a required field + IndexName *string `locationName:"indexName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OpensearchConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s OpensearchConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OpensearchConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OpensearchConfiguration"} + if s.DomainEndpoint == nil { + invalidParams.Add(request.NewErrParamRequired("DomainEndpoint")) + } + if s.IncludeFields != nil && len(s.IncludeFields) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IncludeFields", 1)) + } + if s.IndexName == nil { + invalidParams.Add(request.NewErrParamRequired("IndexName")) + } + if s.IndexName != nil && len(*s.IndexName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("IndexName", 1)) + } + if s.ExactResponseFields != nil { + if err := s.ExactResponseFields.Validate(); err != nil { + invalidParams.AddNested("ExactResponseFields", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDomainEndpoint sets the DomainEndpoint field's value. +func (s *OpensearchConfiguration) SetDomainEndpoint(v string) *OpensearchConfiguration { + s.DomainEndpoint = &v + return s +} + +// SetExactResponse sets the ExactResponse field's value. +func (s *OpensearchConfiguration) SetExactResponse(v bool) *OpensearchConfiguration { + s.ExactResponse = &v + return s +} + +// SetExactResponseFields sets the ExactResponseFields field's value. +func (s *OpensearchConfiguration) SetExactResponseFields(v *ExactResponseFields) *OpensearchConfiguration { + s.ExactResponseFields = v + return s +} + +// SetIncludeFields sets the IncludeFields field's value. +func (s *OpensearchConfiguration) SetIncludeFields(v []*string) *OpensearchConfiguration { + s.IncludeFields = v + return s +} + +// SetIndexName sets the IndexName field's value. +func (s *OpensearchConfiguration) SetIndexName(v string) *OpensearchConfiguration { + s.IndexName = &v + return s +} + // Describes a session context that is activated when an intent is fulfilled. type OutputContext struct { _ struct{} `type:"structure"` @@ -38304,6 +38636,156 @@ func (s *PromptSpecification) SetPromptAttemptsSpecification(v map[string]*Promp return s } +// Details about the the configuration of the built-in Amazon.QnAIntent. +type QnAIntentConfiguration struct { + _ struct{} `type:"structure"` + + // Contains information about the Amazon Bedrock model used to interpret the + // prompt used in descriptive bot building. + BedrockModelConfiguration *BedrockModelSpecification `locationName:"bedrockModelConfiguration" type:"structure"` + + // Contains details about the configuration of the data source used for the + // AMAZON.QnAIntent. + DataSourceConfiguration *DataSourceConfiguration `locationName:"dataSourceConfiguration" type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QnAIntentConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QnAIntentConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QnAIntentConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QnAIntentConfiguration"} + if s.BedrockModelConfiguration != nil { + if err := s.BedrockModelConfiguration.Validate(); err != nil { + invalidParams.AddNested("BedrockModelConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.DataSourceConfiguration != nil { + if err := s.DataSourceConfiguration.Validate(); err != nil { + invalidParams.AddNested("DataSourceConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBedrockModelConfiguration sets the BedrockModelConfiguration field's value. +func (s *QnAIntentConfiguration) SetBedrockModelConfiguration(v *BedrockModelSpecification) *QnAIntentConfiguration { + s.BedrockModelConfiguration = v + return s +} + +// SetDataSourceConfiguration sets the DataSourceConfiguration field's value. +func (s *QnAIntentConfiguration) SetDataSourceConfiguration(v *DataSourceConfiguration) *QnAIntentConfiguration { + s.DataSourceConfiguration = v + return s +} + +// Contains details about the configuration of the Amazon Kendra index used +// for the AMAZON.QnAIntent. +type QnAKendraConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies whether to return an exact response from the Amazon Kendra index + // or to let the Amazon Bedrock model you select generate a response based on + // the results. To use this feature, you must first add FAQ questions to your + // index by following the steps at Adding frequently asked questions (FAQs) + // to an index (https://docs.aws.amazon.com/kendra/latest/dg/in-creating-faq.html). + ExactResponse *bool `locationName:"exactResponse" type:"boolean"` + + // The ARN of the Amazon Kendra index to use. + // + // KendraIndex is a required field + KendraIndex *string `locationName:"kendraIndex" min:"32" type:"string" required:"true"` + + // Contains the Amazon Kendra filter string to use if enabled. For more information + // on the Amazon Kendra search filter JSON format, see Using document attributes + // to filter search results (https://docs.aws.amazon.com/kendra/latest/dg/filtering.html#search-filtering). + QueryFilterString *string `locationName:"queryFilterString" min:"1" type:"string"` + + // Specifies whether to enable an Amazon Kendra filter string or not. + QueryFilterStringEnabled *bool `locationName:"queryFilterStringEnabled" type:"boolean"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QnAKendraConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s QnAKendraConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *QnAKendraConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "QnAKendraConfiguration"} + if s.KendraIndex == nil { + invalidParams.Add(request.NewErrParamRequired("KendraIndex")) + } + if s.KendraIndex != nil && len(*s.KendraIndex) < 32 { + invalidParams.Add(request.NewErrParamMinLen("KendraIndex", 32)) + } + if s.QueryFilterString != nil && len(*s.QueryFilterString) < 1 { + invalidParams.Add(request.NewErrParamMinLen("QueryFilterString", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetExactResponse sets the ExactResponse field's value. +func (s *QnAKendraConfiguration) SetExactResponse(v bool) *QnAKendraConfiguration { + s.ExactResponse = &v + return s +} + +// SetKendraIndex sets the KendraIndex field's value. +func (s *QnAKendraConfiguration) SetKendraIndex(v string) *QnAKendraConfiguration { + s.KendraIndex = &v + return s +} + +// SetQueryFilterString sets the QueryFilterString field's value. +func (s *QnAKendraConfiguration) SetQueryFilterString(v string) *QnAKendraConfiguration { + s.QueryFilterString = &v + return s +} + +// SetQueryFilterStringEnabled sets the QueryFilterStringEnabled field's value. +func (s *QnAKendraConfiguration) SetQueryFilterStringEnabled(v bool) *QnAKendraConfiguration { + s.QueryFilterStringEnabled = &v + return s +} + // An object that contains a summary of a recommended intent. type RecommendedIntentSummary struct { _ struct{} `type:"structure"` @@ -46024,6 +46506,11 @@ type UpdateIntentInput struct { // The signature of the new built-in intent to use as the parent of this intent. ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` + // Specifies the configuration of the built-in Amazon.QnAIntent. The AMAZON.QnAIntent + // intent is called when Amazon Lex can't determine another intent to invoke. + // If you specify this field, you can't specify the kendraConfiguration field. + QnAIntentConfiguration *QnAIntentConfiguration `locationName:"qnAIntentConfiguration" type:"structure"` + // New utterances used to invoke the intent. SampleUtterances []*SampleUtterance `locationName:"sampleUtterances" type:"list"` @@ -46132,6 +46619,11 @@ func (s *UpdateIntentInput) Validate() error { } } } + if s.QnAIntentConfiguration != nil { + if err := s.QnAIntentConfiguration.Validate(); err != nil { + invalidParams.AddNested("QnAIntentConfiguration", err.(request.ErrInvalidParams)) + } + } if s.SampleUtterances != nil { for i, v := range s.SampleUtterances { if v == nil { @@ -46249,6 +46741,12 @@ func (s *UpdateIntentInput) SetParentIntentSignature(v string) *UpdateIntentInpu return s } +// SetQnAIntentConfiguration sets the QnAIntentConfiguration field's value. +func (s *UpdateIntentInput) SetQnAIntentConfiguration(v *QnAIntentConfiguration) *UpdateIntentInput { + s.QnAIntentConfiguration = v + return s +} + // SetSampleUtterances sets the SampleUtterances field's value. func (s *UpdateIntentInput) SetSampleUtterances(v []*SampleUtterance) *UpdateIntentInput { s.SampleUtterances = v @@ -46321,6 +46819,9 @@ type UpdateIntentOutput struct { // The updated built-in intent that is the parent of this intent. ParentIntentSignature *string `locationName:"parentIntentSignature" type:"string"` + // Details about the configuration of the built-in Amazon.QnAIntent. + QnAIntentConfiguration *QnAIntentConfiguration `locationName:"qnAIntentConfiguration" type:"structure"` + // The updated list of sample utterances for the intent. SampleUtterances []*SampleUtterance `locationName:"sampleUtterances" type:"list"` @@ -46449,6 +46950,12 @@ func (s *UpdateIntentOutput) SetParentIntentSignature(v string) *UpdateIntentOut return s } +// SetQnAIntentConfiguration sets the QnAIntentConfiguration field's value. +func (s *UpdateIntentOutput) SetQnAIntentConfiguration(v *QnAIntentConfiguration) *UpdateIntentOutput { + s.QnAIntentConfiguration = v + return s +} + // SetSampleUtterances sets the SampleUtterances field's value. func (s *UpdateIntentOutput) SetSampleUtterances(v []*SampleUtterance) *UpdateIntentOutput { s.SampleUtterances = v diff --git a/service/migrationhuborchestrator/api.go b/service/migrationhuborchestrator/api.go index a76a5fea8b..be3b5ae6f7 100644 --- a/service/migrationhuborchestrator/api.go +++ b/service/migrationhuborchestrator/api.go @@ -13,6 +13,98 @@ import ( "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opCreateTemplate = "CreateTemplate" + +// CreateTemplateRequest generates a "aws/request.Request" representing the +// client's request for the CreateTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateTemplate for more information on using the CreateTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the CreateTemplateRequest method. +// req, resp := client.CreateTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/CreateTemplate +func (c *MigrationHubOrchestrator) CreateTemplateRequest(input *CreateTemplateInput) (req *request.Request, output *CreateTemplateOutput) { + op := &request.Operation{ + Name: opCreateTemplate, + HTTPMethod: "POST", + HTTPPath: "/template", + } + + if input == nil { + input = &CreateTemplateInput{} + } + + output = &CreateTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateTemplate API operation for AWS Migration Hub Orchestrator. +// +// Creates a migration workflow template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Migration Hub Orchestrator's +// API operation CreateTemplate for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ConflictException +// This exception is thrown when an attempt to update or delete a resource would +// cause an inconsistent state. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// An internal error has occurred. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/CreateTemplate +func (c *MigrationHubOrchestrator) CreateTemplate(input *CreateTemplateInput) (*CreateTemplateOutput, error) { + req, out := c.CreateTemplateRequest(input) + return out, req.Send() +} + +// CreateTemplateWithContext is the same as CreateTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See CreateTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MigrationHubOrchestrator) CreateTemplateWithContext(ctx aws.Context, input *CreateTemplateInput, opts ...request.Option) (*CreateTemplateOutput, error) { + req, out := c.CreateTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateWorkflow = "CreateWorkflow" // CreateWorkflowRequest generates a "aws/request.Request" representing the @@ -277,6 +369,98 @@ func (c *MigrationHubOrchestrator) CreateWorkflowStepGroupWithContext(ctx aws.Co return out, req.Send() } +const opDeleteTemplate = "DeleteTemplate" + +// DeleteTemplateRequest generates a "aws/request.Request" representing the +// client's request for the DeleteTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteTemplate for more information on using the DeleteTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the DeleteTemplateRequest method. +// req, resp := client.DeleteTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/DeleteTemplate +func (c *MigrationHubOrchestrator) DeleteTemplateRequest(input *DeleteTemplateInput) (req *request.Request, output *DeleteTemplateOutput) { + op := &request.Operation{ + Name: opDeleteTemplate, + HTTPMethod: "DELETE", + HTTPPath: "/template/{id}", + } + + if input == nil { + input = &DeleteTemplateInput{} + } + + output = &DeleteTemplateOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteTemplate API operation for AWS Migration Hub Orchestrator. +// +// Deletes a migration workflow template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Migration Hub Orchestrator's +// API operation DeleteTemplate for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// An internal error has occurred. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// The resource is not available. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/DeleteTemplate +func (c *MigrationHubOrchestrator) DeleteTemplate(input *DeleteTemplateInput) (*DeleteTemplateOutput, error) { + req, out := c.DeleteTemplateRequest(input) + return out, req.Send() +} + +// DeleteTemplateWithContext is the same as DeleteTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MigrationHubOrchestrator) DeleteTemplateWithContext(ctx aws.Context, input *DeleteTemplateInput, opts ...request.Option) (*DeleteTemplateOutput, error) { + req, out := c.DeleteTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteWorkflow = "DeleteWorkflow" // DeleteWorkflowRequest generates a "aws/request.Request" representing the @@ -2631,6 +2815,97 @@ func (c *MigrationHubOrchestrator) UntagResourceWithContext(ctx aws.Context, inp return out, req.Send() } +const opUpdateTemplate = "UpdateTemplate" + +// UpdateTemplateRequest generates a "aws/request.Request" representing the +// client's request for the UpdateTemplate operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateTemplate for more information on using the UpdateTemplate +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the UpdateTemplateRequest method. +// req, resp := client.UpdateTemplateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/UpdateTemplate +func (c *MigrationHubOrchestrator) UpdateTemplateRequest(input *UpdateTemplateInput) (req *request.Request, output *UpdateTemplateOutput) { + op := &request.Operation{ + Name: opUpdateTemplate, + HTTPMethod: "POST", + HTTPPath: "/template/{id}", + } + + if input == nil { + input = &UpdateTemplateInput{} + } + + output = &UpdateTemplateOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateTemplate API operation for AWS Migration Hub Orchestrator. +// +// Updates a migration workflow template. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS Migration Hub Orchestrator's +// API operation UpdateTemplate for usage and error information. +// +// Returned Error Types: +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - InternalServerException +// An internal error has occurred. +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ResourceNotFoundException +// The resource is not available. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28/UpdateTemplate +func (c *MigrationHubOrchestrator) UpdateTemplate(input *UpdateTemplateInput) (*UpdateTemplateOutput, error) { + req, out := c.UpdateTemplateRequest(input) + return out, req.Send() +} + +// UpdateTemplateWithContext is the same as UpdateTemplate with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateTemplate for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *MigrationHubOrchestrator) UpdateTemplateWithContext(ctx aws.Context, input *UpdateTemplateInput, opts ...request.Option) (*UpdateTemplateOutput, error) { + req, out := c.UpdateTemplateRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdateWorkflow = "UpdateWorkflow" // UpdateWorkflowRequest generates a "aws/request.Request" representing the @@ -2951,18 +3226,235 @@ func (s *AccessDeniedException) OrigErr() error { return nil } -func (s *AccessDeniedException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +func (s *AccessDeniedException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *AccessDeniedException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *AccessDeniedException) RequestID() string { + return s.RespMetadata.RequestID +} + +// This exception is thrown when an attempt to update or delete a resource would +// cause an inconsistent state. +type ConflictException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ConflictException) GoString() string { + return s.String() +} + +func newErrorConflictException(v protocol.ResponseMetadata) error { + return &ConflictException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ConflictException) Code() string { + return "ConflictException" +} + +// Message returns the exception's message. +func (s *ConflictException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ConflictException) OrigErr() error { + return nil +} + +func (s *ConflictException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ConflictException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +type CreateTemplateInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. For more information, see Idempotency (https://smithy.io/2.0/spec/behavior-traits.html#idempotencytoken-trait) + // in the Smithy documentation. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The tags to add to the migration workflow template. + Tags map[string]*string `locationName:"tags" type:"map"` + + // A description of the migration workflow template. + TemplateDescription *string `locationName:"templateDescription" type:"string"` + + // The name of the migration workflow template. + // + // TemplateName is a required field + TemplateName *string `locationName:"templateName" min:"1" type:"string" required:"true"` + + // The source of the migration workflow template. + // + // TemplateSource is a required field + TemplateSource *TemplateSource `locationName:"templateSource" type:"structure" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateTemplateInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.TemplateName == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateName")) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + if s.TemplateSource == nil { + invalidParams.Add(request.NewErrParamRequired("TemplateSource")) + } + if s.TemplateSource != nil { + if err := s.TemplateSource.Validate(); err != nil { + invalidParams.AddNested("TemplateSource", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *CreateTemplateInput) SetClientToken(v string) *CreateTemplateInput { + s.ClientToken = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CreateTemplateInput) SetTags(v map[string]*string) *CreateTemplateInput { + s.Tags = v + return s +} + +// SetTemplateDescription sets the TemplateDescription field's value. +func (s *CreateTemplateInput) SetTemplateDescription(v string) *CreateTemplateInput { + s.TemplateDescription = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *CreateTemplateInput) SetTemplateName(v string) *CreateTemplateInput { + s.TemplateName = &v + return s +} + +// SetTemplateSource sets the TemplateSource field's value. +func (s *CreateTemplateInput) SetTemplateSource(v *TemplateSource) *CreateTemplateInput { + s.TemplateSource = v + return s +} + +type CreateTemplateOutput struct { + _ struct{} `type:"structure"` + + // The tags added to the migration workflow template. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The Amazon Resource Name (ARN) of the migration workflow template. The format + // for an Migration Hub Orchestrator template ARN is arn:aws:migrationhub-orchestrator:region:account:template/template-abcd1234. + // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) + // in the AWS General Reference. + TemplateArn *string `locationName:"templateArn" type:"string"` + + // The ID of the migration workflow template. + TemplateId *string `locationName:"templateId" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CreateTemplateOutput) GoString() string { + return s.String() } -// Status code returns the HTTP status code for the request's response error. -func (s *AccessDeniedException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetTags sets the Tags field's value. +func (s *CreateTemplateOutput) SetTags(v map[string]*string) *CreateTemplateOutput { + s.Tags = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *AccessDeniedException) RequestID() string { - return s.RespMetadata.RequestID +// SetTemplateArn sets the TemplateArn field's value. +func (s *CreateTemplateOutput) SetTemplateArn(v string) *CreateTemplateOutput { + s.TemplateArn = &v + return s +} + +// SetTemplateId sets the TemplateId field's value. +func (s *CreateTemplateOutput) SetTemplateId(v string) *CreateTemplateOutput { + s.TemplateId = &v + return s } type CreateWorkflowInput struct { @@ -2970,9 +3462,7 @@ type CreateWorkflowInput struct { // The configuration ID of the application configured in Application Discovery // Service. - // - // ApplicationConfigurationId is a required field - ApplicationConfigurationId *string `locationName:"applicationConfigurationId" min:"1" type:"string" required:"true"` + ApplicationConfigurationId *string `locationName:"applicationConfigurationId" type:"string"` // The description of the migration workflow. Description *string `locationName:"description" type:"string"` @@ -3024,12 +3514,6 @@ func (s CreateWorkflowInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CreateWorkflowInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateWorkflowInput"} - if s.ApplicationConfigurationId == nil { - invalidParams.Add(request.NewErrParamRequired("ApplicationConfigurationId")) - } - if s.ApplicationConfigurationId != nil && len(*s.ApplicationConfigurationId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("ApplicationConfigurationId", 1)) - } if s.InputParameters == nil { invalidParams.Add(request.NewErrParamRequired("InputParameters")) } @@ -3627,6 +4111,77 @@ func (s *CreateWorkflowStepOutput) SetWorkflowId(v string) *CreateWorkflowStepOu return s } +type DeleteTemplateInput struct { + _ struct{} `type:"structure" nopayload:"true"` + + // The ID of the request to delete a migration workflow template. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteTemplateInput"} + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetId sets the Id field's value. +func (s *DeleteTemplateInput) SetId(v string) *DeleteTemplateInput { + s.Id = &v + return s +} + +type DeleteTemplateOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteTemplateOutput) GoString() string { + return s.String() +} + type DeleteWorkflowInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -3985,9 +4540,40 @@ type GetTemplateOutput struct { // The name of the template. Name *string `locationName:"name" type:"string"` + // The owner of the migration workflow template. + Owner *string `locationName:"owner" type:"string"` + // The status of the template. Status *string `locationName:"status" type:"string" enum:"TemplateStatus"` + // The status message of retrieving migration workflow templates. + StatusMessage *string `locationName:"statusMessage" type:"string"` + + // The tags added to the migration workflow template. + Tags map[string]*string `locationName:"tags" type:"map"` + + // >The Amazon Resource Name (ARN) of the migration workflow template. The format + // for an Migration Hub Orchestrator template ARN is arn:aws:migrationhub-orchestrator:region:account:template/template-abcd1234. + // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) + // in the AWS General Reference. + TemplateArn *string `locationName:"templateArn" type:"string"` + + // The class of the migration workflow template. The available template classes + // are: + // + // * A2C + // + // * MGN + // + // * SAP_MULTI + // + // * SQL_EC2 + // + // * SQL_RDS + // + // * VMIE + TemplateClass *string `locationName:"templateClass" type:"string"` + // List of AWS services utilized in a migration workflow. Tools []*Tool `locationName:"tools" type:"list"` } @@ -4040,12 +4626,42 @@ func (s *GetTemplateOutput) SetName(v string) *GetTemplateOutput { return s } +// SetOwner sets the Owner field's value. +func (s *GetTemplateOutput) SetOwner(v string) *GetTemplateOutput { + s.Owner = &v + return s +} + // SetStatus sets the Status field's value. func (s *GetTemplateOutput) SetStatus(v string) *GetTemplateOutput { s.Status = &v return s } +// SetStatusMessage sets the StatusMessage field's value. +func (s *GetTemplateOutput) SetStatusMessage(v string) *GetTemplateOutput { + s.StatusMessage = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *GetTemplateOutput) SetTags(v map[string]*string) *GetTemplateOutput { + s.Tags = v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *GetTemplateOutput) SetTemplateArn(v string) *GetTemplateOutput { + s.TemplateArn = &v + return s +} + +// SetTemplateClass sets the TemplateClass field's value. +func (s *GetTemplateOutput) SetTemplateClass(v string) *GetTemplateOutput { + s.TemplateClass = &v + return s +} + // SetTools sets the Tools field's value. func (s *GetTemplateOutput) SetTools(v []*Tool) *GetTemplateOutput { s.Tools = v @@ -4895,7 +5511,7 @@ type GetWorkflowStepInput struct { // Id is a required field Id *string `location:"uri" locationName:"id" min:"1" type:"string" required:"true"` - // desThe ID of the step group. + // The ID of the step group. // // StepGroupId is a required field StepGroupId *string `location:"querystring" locationName:"stepGroupId" min:"1" type:"string" required:"true"` @@ -7135,6 +7751,51 @@ func (s *TemplateInput_) SetRequired(v bool) *TemplateInput_ { return s } +// The migration workflow template used as the source for the new template. +type TemplateSource struct { + _ struct{} `type:"structure"` + + // The ID of the workflow from the source migration workflow template. + WorkflowId *string `locationName:"workflowId" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TemplateSource) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s TemplateSource) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *TemplateSource) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "TemplateSource"} + if s.WorkflowId != nil && len(*s.WorkflowId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("WorkflowId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetWorkflowId sets the WorkflowId field's value. +func (s *TemplateSource) SetWorkflowId(v string) *TemplateSource { + s.WorkflowId = &v + return s +} + // The summary of the step group in the template. type TemplateStepGroupSummary struct { _ struct{} `type:"structure"` @@ -7549,6 +8210,141 @@ func (s UntagResourceOutput) GoString() string { return s.String() } +type UpdateTemplateInput struct { + _ struct{} `type:"structure"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + ClientToken *string `locationName:"clientToken" min:"1" type:"string" idempotencyToken:"true"` + + // The ID of the request to update a migration workflow template. + // + // Id is a required field + Id *string `location:"uri" locationName:"id" min:"1" type:"string" required:"true"` + + // The description of the migration workflow template to update. + TemplateDescription *string `locationName:"templateDescription" type:"string"` + + // The name of the migration workflow template to update. + TemplateName *string `locationName:"templateName" min:"1" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTemplateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTemplateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateTemplateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateTemplateInput"} + if s.ClientToken != nil && len(*s.ClientToken) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1)) + } + if s.Id == nil { + invalidParams.Add(request.NewErrParamRequired("Id")) + } + if s.Id != nil && len(*s.Id) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Id", 1)) + } + if s.TemplateName != nil && len(*s.TemplateName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TemplateName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClientToken sets the ClientToken field's value. +func (s *UpdateTemplateInput) SetClientToken(v string) *UpdateTemplateInput { + s.ClientToken = &v + return s +} + +// SetId sets the Id field's value. +func (s *UpdateTemplateInput) SetId(v string) *UpdateTemplateInput { + s.Id = &v + return s +} + +// SetTemplateDescription sets the TemplateDescription field's value. +func (s *UpdateTemplateInput) SetTemplateDescription(v string) *UpdateTemplateInput { + s.TemplateDescription = &v + return s +} + +// SetTemplateName sets the TemplateName field's value. +func (s *UpdateTemplateInput) SetTemplateName(v string) *UpdateTemplateInput { + s.TemplateName = &v + return s +} + +type UpdateTemplateOutput struct { + _ struct{} `type:"structure"` + + // The tags added to the migration workflow template. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The ARN of the migration workflow template being updated. The format for + // an Migration Hub Orchestrator template ARN is arn:aws:migrationhub-orchestrator:region:account:template/template-abcd1234. + // For more information about ARNs, see Amazon Resource Names (ARNs) (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html) + // in the AWS General Reference. + TemplateArn *string `locationName:"templateArn" type:"string"` + + // The ID of the migration workflow template being updated. + TemplateId *string `locationName:"templateId" type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTemplateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s UpdateTemplateOutput) GoString() string { + return s.String() +} + +// SetTags sets the Tags field's value. +func (s *UpdateTemplateOutput) SetTags(v map[string]*string) *UpdateTemplateOutput { + s.Tags = v + return s +} + +// SetTemplateArn sets the TemplateArn field's value. +func (s *UpdateTemplateOutput) SetTemplateArn(v string) *UpdateTemplateOutput { + s.TemplateArn = &v + return s +} + +// SetTemplateId sets the TemplateId field's value. +func (s *UpdateTemplateOutput) SetTemplateId(v string) *UpdateTemplateOutput { + s.TemplateId = &v + return s +} + type UpdateWorkflowInput struct { _ struct{} `type:"structure"` @@ -8878,6 +9674,9 @@ const ( // StepStatusAwaitingDependencies is a StepStatus enum value StepStatusAwaitingDependencies = "AWAITING_DEPENDENCIES" + // StepStatusSkipped is a StepStatus enum value + StepStatusSkipped = "SKIPPED" + // StepStatusReady is a StepStatus enum value StepStatusReady = "READY" @@ -8901,6 +9700,7 @@ const ( func StepStatus_Values() []string { return []string{ StepStatusAwaitingDependencies, + StepStatusSkipped, StepStatusReady, StepStatusInProgress, StepStatusCompleted, @@ -8933,11 +9733,27 @@ func TargetType_Values() []string { const ( // TemplateStatusCreated is a TemplateStatus enum value TemplateStatusCreated = "CREATED" + + // TemplateStatusReady is a TemplateStatus enum value + TemplateStatusReady = "READY" + + // TemplateStatusPendingCreation is a TemplateStatus enum value + TemplateStatusPendingCreation = "PENDING_CREATION" + + // TemplateStatusCreating is a TemplateStatus enum value + TemplateStatusCreating = "CREATING" + + // TemplateStatusCreationFailed is a TemplateStatus enum value + TemplateStatusCreationFailed = "CREATION_FAILED" ) // TemplateStatus_Values returns all elements of the TemplateStatus enum func TemplateStatus_Values() []string { return []string{ TemplateStatusCreated, + TemplateStatusReady, + TemplateStatusPendingCreation, + TemplateStatusCreating, + TemplateStatusCreationFailed, } } diff --git a/service/migrationhuborchestrator/doc.go b/service/migrationhuborchestrator/doc.go index 7994b962e5..25f26865a9 100644 --- a/service/migrationhuborchestrator/doc.go +++ b/service/migrationhuborchestrator/doc.go @@ -4,10 +4,10 @@ // requests to AWS Migration Hub Orchestrator. // // This API reference provides descriptions, syntax, and other details about -// each of the actions and data types for AWS Migration Hub Orchestrator. he -// topic for each action shows the API request parameters and the response. -// Alternatively, you can use one of the AWS SDKs to access an API that is tailored -// to the programming language or platform that you're using. +// each of the actions and data types for AWS Migration Hub Orchestrator. The +// topic for each action shows the API request parameters and responses. Alternatively, +// you can use one of the AWS SDKs to access an API that is tailored to the +// programming language or platform that you're using. // // See https://docs.aws.amazon.com/goto/WebAPI/migrationhuborchestrator-2021-08-28 for more information on this service. // diff --git a/service/migrationhuborchestrator/errors.go b/service/migrationhuborchestrator/errors.go index 70fa3aae30..b507a4c086 100644 --- a/service/migrationhuborchestrator/errors.go +++ b/service/migrationhuborchestrator/errors.go @@ -14,6 +14,13 @@ const ( // You do not have sufficient access to perform this action. ErrCodeAccessDeniedException = "AccessDeniedException" + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // This exception is thrown when an attempt to update or delete a resource would + // cause an inconsistent state. + ErrCodeConflictException = "ConflictException" + // ErrCodeInternalServerException for service response error code // "InternalServerException". // @@ -41,6 +48,7 @@ const ( var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, "InternalServerException": newErrorInternalServerException, "ResourceNotFoundException": newErrorResourceNotFoundException, "ThrottlingException": newErrorThrottlingException, diff --git a/service/migrationhuborchestrator/migrationhuborchestratoriface/interface.go b/service/migrationhuborchestrator/migrationhuborchestratoriface/interface.go index 79ff8c507b..edc5f45158 100644 --- a/service/migrationhuborchestrator/migrationhuborchestratoriface/interface.go +++ b/service/migrationhuborchestrator/migrationhuborchestratoriface/interface.go @@ -26,7 +26,7 @@ import ( // // myFunc uses an SDK service client to make a request to // // AWS Migration Hub Orchestrator. // func myFunc(svc migrationhuborchestratoriface.MigrationHubOrchestratorAPI) bool { -// // Make svc.CreateWorkflow request +// // Make svc.CreateTemplate request // } // // func main() { @@ -42,7 +42,7 @@ import ( // type mockMigrationHubOrchestratorClient struct { // migrationhuborchestratoriface.MigrationHubOrchestratorAPI // } -// func (m *mockMigrationHubOrchestratorClient) CreateWorkflow(input *migrationhuborchestrator.CreateWorkflowInput) (*migrationhuborchestrator.CreateWorkflowOutput, error) { +// func (m *mockMigrationHubOrchestratorClient) CreateTemplate(input *migrationhuborchestrator.CreateTemplateInput) (*migrationhuborchestrator.CreateTemplateOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ import ( // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type MigrationHubOrchestratorAPI interface { + CreateTemplate(*migrationhuborchestrator.CreateTemplateInput) (*migrationhuborchestrator.CreateTemplateOutput, error) + CreateTemplateWithContext(aws.Context, *migrationhuborchestrator.CreateTemplateInput, ...request.Option) (*migrationhuborchestrator.CreateTemplateOutput, error) + CreateTemplateRequest(*migrationhuborchestrator.CreateTemplateInput) (*request.Request, *migrationhuborchestrator.CreateTemplateOutput) + CreateWorkflow(*migrationhuborchestrator.CreateWorkflowInput) (*migrationhuborchestrator.CreateWorkflowOutput, error) CreateWorkflowWithContext(aws.Context, *migrationhuborchestrator.CreateWorkflowInput, ...request.Option) (*migrationhuborchestrator.CreateWorkflowOutput, error) CreateWorkflowRequest(*migrationhuborchestrator.CreateWorkflowInput) (*request.Request, *migrationhuborchestrator.CreateWorkflowOutput) @@ -72,6 +76,10 @@ type MigrationHubOrchestratorAPI interface { CreateWorkflowStepGroupWithContext(aws.Context, *migrationhuborchestrator.CreateWorkflowStepGroupInput, ...request.Option) (*migrationhuborchestrator.CreateWorkflowStepGroupOutput, error) CreateWorkflowStepGroupRequest(*migrationhuborchestrator.CreateWorkflowStepGroupInput) (*request.Request, *migrationhuborchestrator.CreateWorkflowStepGroupOutput) + DeleteTemplate(*migrationhuborchestrator.DeleteTemplateInput) (*migrationhuborchestrator.DeleteTemplateOutput, error) + DeleteTemplateWithContext(aws.Context, *migrationhuborchestrator.DeleteTemplateInput, ...request.Option) (*migrationhuborchestrator.DeleteTemplateOutput, error) + DeleteTemplateRequest(*migrationhuborchestrator.DeleteTemplateInput) (*request.Request, *migrationhuborchestrator.DeleteTemplateOutput) + DeleteWorkflow(*migrationhuborchestrator.DeleteWorkflowInput) (*migrationhuborchestrator.DeleteWorkflowOutput, error) DeleteWorkflowWithContext(aws.Context, *migrationhuborchestrator.DeleteWorkflowInput, ...request.Option) (*migrationhuborchestrator.DeleteWorkflowOutput, error) DeleteWorkflowRequest(*migrationhuborchestrator.DeleteWorkflowInput) (*request.Request, *migrationhuborchestrator.DeleteWorkflowOutput) @@ -181,6 +189,10 @@ type MigrationHubOrchestratorAPI interface { UntagResourceWithContext(aws.Context, *migrationhuborchestrator.UntagResourceInput, ...request.Option) (*migrationhuborchestrator.UntagResourceOutput, error) UntagResourceRequest(*migrationhuborchestrator.UntagResourceInput) (*request.Request, *migrationhuborchestrator.UntagResourceOutput) + UpdateTemplate(*migrationhuborchestrator.UpdateTemplateInput) (*migrationhuborchestrator.UpdateTemplateOutput, error) + UpdateTemplateWithContext(aws.Context, *migrationhuborchestrator.UpdateTemplateInput, ...request.Option) (*migrationhuborchestrator.UpdateTemplateOutput, error) + UpdateTemplateRequest(*migrationhuborchestrator.UpdateTemplateInput) (*request.Request, *migrationhuborchestrator.UpdateTemplateOutput) + UpdateWorkflow(*migrationhuborchestrator.UpdateWorkflowInput) (*migrationhuborchestrator.UpdateWorkflowOutput, error) UpdateWorkflowWithContext(aws.Context, *migrationhuborchestrator.UpdateWorkflowInput, ...request.Option) (*migrationhuborchestrator.UpdateWorkflowOutput, error) UpdateWorkflowRequest(*migrationhuborchestrator.UpdateWorkflowInput) (*request.Request, *migrationhuborchestrator.UpdateWorkflowOutput) diff --git a/service/quicksight/api.go b/service/quicksight/api.go index 165597b500..57fe31c1ed 100644 --- a/service/quicksight/api.go +++ b/service/quicksight/api.go @@ -29423,6 +29423,9 @@ type ColumnTooltipItem struct { // The label of the tooltip item. Label *string `type:"string"` + // Determines the target of the column tooltip item in a combo chart visual. + TooltipTarget *string `type:"string" enum:"TooltipTarget"` + // The visibility of the tooltip item. Visibility *string `type:"string" enum:"Visibility"` } @@ -29481,6 +29484,12 @@ func (s *ColumnTooltipItem) SetLabel(v string) *ColumnTooltipItem { return s } +// SetTooltipTarget sets the TooltipTarget field's value. +func (s *ColumnTooltipItem) SetTooltipTarget(v string) *ColumnTooltipItem { + s.TooltipTarget = &v + return s +} + // SetVisibility sets the Visibility field's value. func (s *ColumnTooltipItem) SetVisibility(v string) *ColumnTooltipItem { s.Visibility = &v @@ -54116,6 +54125,9 @@ type FieldTooltipItem struct { // The label of the tooltip item. Label *string `type:"string"` + // Determines the target of the field tooltip item in a combo chart visual. + TooltipTarget *string `type:"string" enum:"TooltipTarget"` + // The visibility of the tooltip item. Visibility *string `type:"string" enum:"Visibility"` } @@ -54166,6 +54178,12 @@ func (s *FieldTooltipItem) SetLabel(v string) *FieldTooltipItem { return s } +// SetTooltipTarget sets the TooltipTarget field's value. +func (s *FieldTooltipItem) SetTooltipTarget(v string) *FieldTooltipItem { + s.TooltipTarget = &v + return s +} + // SetVisibility sets the Visibility field's value. func (s *FieldTooltipItem) SetVisibility(v string) *FieldTooltipItem { s.Visibility = &v @@ -58903,10 +58921,12 @@ type GenerateEmbedUrlForAnonymousUserInput struct { AllowedDomains []*string `type:"list"` // The Amazon Resource Names (ARNs) for the Amazon QuickSight resources that - // the user is authorized to access during the lifetime of the session. If you - // choose Dashboard embedding experience, pass the list of dashboard ARNs in - // the account that you want the user to be able to view. Currently, you can - // pass up to 25 dashboard ARNs in each API call. + // the user is authorized to access during the lifetime of the session. + // + // If you choose Dashboard embedding experience, pass the list of dashboard + // ARNs in the account that you want the user to be able to view. + // + // Currently, you can pass up to 25 dashboard ARNs in each API call. // // AuthorizedResourceArns is a required field AuthorizedResourceArns []*string `type:"list" required:"true"` @@ -110475,6 +110495,26 @@ func TimeGranularity_Values() []string { } } +const ( + // TooltipTargetBoth is a TooltipTarget enum value + TooltipTargetBoth = "BOTH" + + // TooltipTargetBar is a TooltipTarget enum value + TooltipTargetBar = "BAR" + + // TooltipTargetLine is a TooltipTarget enum value + TooltipTargetLine = "LINE" +) + +// TooltipTarget_Values returns all elements of the TooltipTarget enum +func TooltipTarget_Values() []string { + return []string{ + TooltipTargetBoth, + TooltipTargetBar, + TooltipTargetLine, + } +} + const ( // TooltipTitleTypeNone is a TooltipTitleType enum value TooltipTitleTypeNone = "NONE" diff --git a/service/sagemaker/api.go b/service/sagemaker/api.go index 5d6fb441b9..b73920e437 100644 --- a/service/sagemaker/api.go +++ b/service/sagemaker/api.go @@ -3279,10 +3279,6 @@ func (c *SageMaker) CreateModelRequest(input *CreateModelInput) (req *request.Re // deploys all of the containers that you defined for the model in the hosting // environment. // -// For an example that calls this method when deploying a model to SageMaker -// hosting services, see Create a Model (Amazon Web Services SDK for Python -// (Boto 3)). (https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html#realtime-endpoints-deployment-create-model) -// // To run a batch transform using your model, you start a job with the CreateTransformJob // API. SageMaker uses your model and your dataset to get inferences which are // then saved to a specified S3 location. @@ -28358,7 +28354,9 @@ func (c *SageMaker) UpdateFeatureGroupRequest(input *UpdateFeatureGroupInput) (r // applies for all records added to the feature group after the feature group // is updated. If a record level TtlDuration exists from using the PutRecord // API, the record level TtlDuration applies to that record instead of the default -// TtlDuration. +// TtlDuration. To remove the default TtlDuration from an existing feature group, +// use the UpdateFeatureGroup API and set the TtlDuration Unit and Value to +// null. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -34285,12 +34283,11 @@ type AutoMLJobObjective struct { // applied when you do not specify a metric name explicitly depend on the problem // type. // - // * For tabular problem types: List of available metrics: Regression: InferenceLatency, - // MAE, MSE, R2, RMSE Binary classification: Accuracy, AUC, BalancedAccuracy, - // F1, InferenceLatency, LogLoss, Precision, Recall Multiclass classification: - // Accuracy, BalancedAccuracy, F1macro, InferenceLatency, LogLoss, PrecisionMacro, - // RecallMacro For a description of each metric, see Autopilot metrics for - // classification and regression (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-metrics-validation.html#autopilot-metrics). + // * For tabular problem types: List of available metrics: Regression: MAE, + // MSE, R2, RMSE Binary classification: Accuracy, AUC, BalancedAccuracy, + // F1, Precision, Recall Multiclass classification: Accuracy, BalancedAccuracy, + // F1macro, PrecisionMacro, RecallMacro For a description of each metric, + // see Autopilot metrics for classification and regression (https://docs.aws.amazon.com/sagemaker/latest/dg/autopilot-metrics-validation.html#autopilot-metrics). // Default objective metrics: Regression: MSE. Binary classification: F1. // Multiclass classification: Accuracy. // @@ -46431,8 +46428,8 @@ type CreateModelPackageInput struct { // in the Amazon SageMaker Developer Guide. DriftCheckBaselines *DriftCheckBaselines `type:"structure"` - // Specifies details about inference jobs that can be run with models based - // on this model package, including the following: + // Specifies details about inference jobs that you can run with models based + // on this model package, including the following information: // // * The Amazon ECR paths of containers that contain the inference code and // model artifacts. @@ -46490,6 +46487,11 @@ type CreateModelPackageInput struct { // Details about the algorithm that was used to create the model package. SourceAlgorithmSpecification *SourceAlgorithmSpecification `type:"structure"` + // The URI of the source for the model package. If you want to clone a model + // package, set it to the model package Amazon Resource Name (ARN). If you want + // to register a model, set it to the model ARN. + SourceUri *string `type:"string"` + // A list of key value pairs associated with the model. For more information, // see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) // in the Amazon Web Services General Reference Guide. @@ -46697,6 +46699,12 @@ func (s *CreateModelPackageInput) SetSourceAlgorithmSpecification(v *SourceAlgor return s } +// SetSourceUri sets the SourceUri field's value. +func (s *CreateModelPackageInput) SetSourceUri(v string) *CreateModelPackageInput { + s.SourceUri = &v + return s +} + // SetTags sets the Tags field's value. func (s *CreateModelPackageInput) SetTags(v []*Tag) *CreateModelPackageInput { s.Tags = v @@ -56690,7 +56698,13 @@ type DescribeAppOutput struct { // The type of app. AppType *string `type:"string" enum:"AppType"` - // The creation time. + // The creation time of the application. + // + // After an application has been shut down for 24 hours, SageMaker deletes all + // metadata for the application. To be considered an update and retain application + // metadata, applications must be restarted within 24 hours after the previous + // application has been shut down. After this time window, creation of an application + // is considered a new application rather than an update of the previous application. CreationTime *time.Time `type:"timestamp"` // The domain ID. @@ -64397,7 +64411,7 @@ type DescribeModelPackageOutput struct { // in the Amazon SageMaker Developer Guide. DriftCheckBaselines *DriftCheckBaselines `type:"structure"` - // Details about inference jobs that can be run with models based on this model + // Details about inference jobs that you can run with models based on this model // package. InferenceSpecification *InferenceSpecification `type:"structure"` @@ -64458,6 +64472,9 @@ type DescribeModelPackageOutput struct { // Details about the algorithm that was used to create the model package. SourceAlgorithmSpecification *SourceAlgorithmSpecification `type:"structure"` + // The URI of the source for the model package. + SourceUri *string `type:"string"` + // The machine learning task you specified that your model package accomplishes. // Common machine learning tasks include object detection and image classification. Task *string `type:"string"` @@ -64629,6 +64646,12 @@ func (s *DescribeModelPackageOutput) SetSourceAlgorithmSpecification(v *SourceAl return s } +// SetSourceUri sets the SourceUri field's value. +func (s *DescribeModelPackageOutput) SetSourceUri(v string) *DescribeModelPackageOutput { + s.SourceUri = &v + return s +} + // SetTask sets the Task field's value. func (s *DescribeModelPackageOutput) SetTask(v string) *DescribeModelPackageOutput { s.Task = &v @@ -80680,7 +80703,7 @@ func (s *IntegerParameterRangeSpecification) SetMinValue(v string) *IntegerParam } // The configuration for the file system and kernels in a SageMaker image running -// as a JupyterLab app. +// as a JupyterLab app. The FileSystemConfig object is not supported. type JupyterLabAppImageConfig struct { _ struct{} `type:"structure"` @@ -96774,7 +96797,7 @@ func (s *ModelMetadataSummary) SetTask(v string) *ModelMetadataSummary { type ModelMetrics struct { _ struct{} `type:"structure"` - // Metrics that measure bais in a model. + // Metrics that measure bias in a model. Bias *Bias `type:"structure"` // Metrics that help explain a model. @@ -96959,6 +96982,9 @@ type ModelPackage struct { // A list of algorithms that were used to create a model package. SourceAlgorithmSpecification *SourceAlgorithmSpecification `type:"structure"` + // The URI of the source for the model package. + SourceUri *string `type:"string"` + // A list of the tags associated with the model package. For more information, // see Tagging Amazon Web Services resources (https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) // in the Amazon Web Services General Reference Guide. @@ -97135,6 +97161,12 @@ func (s *ModelPackage) SetSourceAlgorithmSpecification(v *SourceAlgorithmSpecifi return s } +// SetSourceUri sets the SourceUri field's value. +func (s *ModelPackage) SetSourceUri(v string) *ModelPackage { + s.SourceUri = &v + return s +} + // SetTags sets the Tags field's value. func (s *ModelPackage) SetTags(v []*Tag) *ModelPackage { s.Tags = v @@ -97191,6 +97223,9 @@ type ModelPackageContainerDefinition struct { // for training. ImageDigest *string `type:"string"` + // Specifies the location of ML model data to deploy during endpoint creation. + ModelDataSource *ModelDataSource `type:"structure"` + // The Amazon S3 path where the model artifacts, which result from model training, // are stored. This path must point to a single gzip compressed tar archive // (.tar.gz suffix). @@ -97243,6 +97278,11 @@ func (s *ModelPackageContainerDefinition) Validate() error { invalidParams.AddNested("AdditionalS3DataSource", err.(request.ErrInvalidParams)) } } + if s.ModelDataSource != nil { + if err := s.ModelDataSource.Validate(); err != nil { + invalidParams.AddNested("ModelDataSource", err.(request.ErrInvalidParams)) + } + } if s.ModelInput != nil { if err := s.ModelInput.Validate(); err != nil { invalidParams.AddNested("ModelInput", err.(request.ErrInvalidParams)) @@ -97297,6 +97337,12 @@ func (s *ModelPackageContainerDefinition) SetImageDigest(v string) *ModelPackage return s } +// SetModelDataSource sets the ModelDataSource field's value. +func (s *ModelPackageContainerDefinition) SetModelDataSource(v *ModelDataSource) *ModelPackageContainerDefinition { + s.ModelDataSource = v + return s +} + // SetModelDataUrl sets the ModelDataUrl field's value. func (s *ModelPackageContainerDefinition) SetModelDataUrl(v string) *ModelPackageContainerDefinition { s.ModelDataUrl = &v @@ -111901,6 +111947,9 @@ type SourceAlgorithm struct { // AlgorithmName is a required field AlgorithmName *string `min:"1" type:"string" required:"true"` + // Specifies the location of ML model data to deploy during endpoint creation. + ModelDataSource *ModelDataSource `type:"structure"` + // The Amazon S3 path where the model artifacts, which result from model training, // are stored. This path must point to a single gzip compressed tar archive // (.tar.gz suffix). @@ -111937,6 +111986,11 @@ func (s *SourceAlgorithm) Validate() error { if s.AlgorithmName != nil && len(*s.AlgorithmName) < 1 { invalidParams.Add(request.NewErrParamMinLen("AlgorithmName", 1)) } + if s.ModelDataSource != nil { + if err := s.ModelDataSource.Validate(); err != nil { + invalidParams.AddNested("ModelDataSource", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -111950,6 +112004,12 @@ func (s *SourceAlgorithm) SetAlgorithmName(v string) *SourceAlgorithm { return s } +// SetModelDataSource sets the ModelDataSource field's value. +func (s *SourceAlgorithm) SetModelDataSource(v *ModelDataSource) *SourceAlgorithm { + s.ModelDataSource = v + return s +} + // SetModelDataUrl sets the ModelDataUrl field's value. func (s *SourceAlgorithm) SetModelDataUrl(v string) *SourceAlgorithm { s.ModelDataUrl = &v @@ -122467,6 +122527,19 @@ type UpdateModelPackageInput struct { // The metadata properties associated with the model package versions to remove. CustomerMetadataPropertiesToRemove []*string `type:"list"` + // Specifies details about inference jobs that you can run with models based + // on this model package, including the following information: + // + // * The Amazon ECR paths of containers that contain the inference code and + // model artifacts. + // + // * The instance types that the model package supports for transform jobs + // and real-time endpoints used for inference. + // + // * The input and output content formats that the model package supports + // for inference. + InferenceSpecification *InferenceSpecification `type:"structure"` + // The approval status of the model. ModelApprovalStatus *string `type:"string" enum:"ModelApprovalStatus"` @@ -122474,6 +122547,9 @@ type UpdateModelPackageInput struct { // // ModelPackageArn is a required field ModelPackageArn *string `min:"1" type:"string" required:"true"` + + // The URI of the source for the model package. + SourceUri *string `type:"string"` } // String returns the string representation. @@ -122519,6 +122595,11 @@ func (s *UpdateModelPackageInput) Validate() error { } } } + if s.InferenceSpecification != nil { + if err := s.InferenceSpecification.Validate(); err != nil { + invalidParams.AddNested("InferenceSpecification", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -122550,6 +122631,12 @@ func (s *UpdateModelPackageInput) SetCustomerMetadataPropertiesToRemove(v []*str return s } +// SetInferenceSpecification sets the InferenceSpecification field's value. +func (s *UpdateModelPackageInput) SetInferenceSpecification(v *InferenceSpecification) *UpdateModelPackageInput { + s.InferenceSpecification = v + return s +} + // SetModelApprovalStatus sets the ModelApprovalStatus field's value. func (s *UpdateModelPackageInput) SetModelApprovalStatus(v string) *UpdateModelPackageInput { s.ModelApprovalStatus = &v @@ -122562,6 +122649,12 @@ func (s *UpdateModelPackageInput) SetModelPackageArn(v string) *UpdateModelPacka return s } +// SetSourceUri sets the SourceUri field's value. +func (s *UpdateModelPackageInput) SetSourceUri(v string) *UpdateModelPackageInput { + s.SourceUri = &v + return s +} + type UpdateModelPackageOutput struct { _ struct{} `type:"structure"` @@ -125076,12 +125169,17 @@ func (s *Vertex) SetType(v string) *Vertex { return s } -// The list of key-value pairs that you specify for your resources. +// The list of key-value pairs used to filter your search results. If a search +// result contains a key from your list, it is included in the final search +// response if the value associated with the key in the result matches the value +// you specified. If the value doesn't match, the result is excluded from the +// search response. Any resources that don't have a key from the list that you've +// provided will also be included in the search response. type VisibilityConditions struct { _ struct{} `type:"structure"` // The key that specifies the tag that you're using to filter the search results. - // It must be in the following format: Tags./EqualsIfExists. + // It must be in the following format: Tags.. Key *string `min:"1" type:"string"` // The value for the tag that you're using to filter the search results. diff --git a/service/securitylake/api.go b/service/securitylake/api.go index 3fc54a8476..b65e4476b1 100644 --- a/service/securitylake/api.go +++ b/service/securitylake/api.go @@ -3958,7 +3958,7 @@ type CreateAwsLogSourceInput struct { // in Security Lake. // // Sources is a required field - Sources []*AwsLogSourceConfiguration `locationName:"sources" type:"list" required:"true"` + Sources []*AwsLogSourceConfiguration `locationName:"sources" min:"1" type:"list" required:"true"` } // String returns the string representation. @@ -3985,6 +3985,9 @@ func (s *CreateAwsLogSourceInput) Validate() error { if s.Sources == nil { invalidParams.Add(request.NewErrParamRequired("Sources")) } + if s.Sources != nil && len(s.Sources) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Sources", 1)) + } if s.Sources != nil { for i, v := range s.Sources { if v == nil { @@ -4045,7 +4048,9 @@ type CreateCustomLogSourceInput struct { _ struct{} `type:"structure"` // The configuration for the third-party custom source. - Configuration *CustomLogSourceConfiguration `locationName:"configuration" type:"structure"` + // + // Configuration is a required field + Configuration *CustomLogSourceConfiguration `locationName:"configuration" type:"structure" required:"true"` // The Open Cybersecurity Schema Framework (OCSF) event classes which describes // the type of data that the custom source will send to Security Lake. The supported @@ -4142,6 +4147,9 @@ func (s CreateCustomLogSourceInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CreateCustomLogSourceInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateCustomLogSourceInput"} + if s.Configuration == nil { + invalidParams.Add(request.NewErrParamRequired("Configuration")) + } if s.SourceName == nil { invalidParams.Add(request.NewErrParamRequired("SourceName")) } @@ -4318,7 +4326,7 @@ type CreateDataLakeInput struct { // Specify the Region or Regions that will contribute data to the rollup region. // // Configurations is a required field - Configurations []*DataLakeConfiguration `locationName:"configurations" type:"list" required:"true"` + Configurations []*DataLakeConfiguration `locationName:"configurations" min:"1" type:"list" required:"true"` // The Amazon Resource Name (ARN) used to create and update the Glue table. // This table contains partitions generated by the ingestion and normalization @@ -4357,6 +4365,9 @@ func (s *CreateDataLakeInput) Validate() error { if s.Configurations == nil { invalidParams.Add(request.NewErrParamRequired("Configurations")) } + if s.Configurations != nil && len(s.Configurations) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Configurations", 1)) + } if s.MetaStoreManagerRoleArn == nil { invalidParams.Add(request.NewErrParamRequired("MetaStoreManagerRoleArn")) } @@ -4410,9 +4421,7 @@ type CreateDataLakeOrganizationConfigurationInput struct { // Enable Security Lake with the specified configuration settings, to begin // collecting security data for new accounts in your organization. - // - // AutoEnableNewAccount is a required field - AutoEnableNewAccount []*DataLakeAutoEnableNewAccountConfiguration `locationName:"autoEnableNewAccount" type:"list" required:"true"` + AutoEnableNewAccount []*DataLakeAutoEnableNewAccountConfiguration `locationName:"autoEnableNewAccount" min:"1" type:"list"` } // String returns the string representation. @@ -4436,8 +4445,8 @@ func (s CreateDataLakeOrganizationConfigurationInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *CreateDataLakeOrganizationConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "CreateDataLakeOrganizationConfigurationInput"} - if s.AutoEnableNewAccount == nil { - invalidParams.Add(request.NewErrParamRequired("AutoEnableNewAccount")) + if s.AutoEnableNewAccount != nil && len(s.AutoEnableNewAccount) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AutoEnableNewAccount", 1)) } if s.AutoEnableNewAccount != nil { for i, v := range s.AutoEnableNewAccount { @@ -5110,7 +5119,7 @@ type DataLakeAutoEnableNewAccountConfiguration struct { // Lake. // // Sources is a required field - Sources []*AwsLogSourceResource `locationName:"sources" type:"list" required:"true"` + Sources []*AwsLogSourceResource `locationName:"sources" min:"1" type:"list" required:"true"` } // String returns the string representation. @@ -5140,6 +5149,9 @@ func (s *DataLakeAutoEnableNewAccountConfiguration) Validate() error { if s.Sources == nil { invalidParams.Add(request.NewErrParamRequired("Sources")) } + if s.Sources != nil && len(s.Sources) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Sources", 1)) + } if invalidParams.Len() > 0 { return invalidParams @@ -5925,7 +5937,7 @@ type DeleteAwsLogSourceInput struct { // source in Security Lake. // // Sources is a required field - Sources []*AwsLogSourceConfiguration `locationName:"sources" type:"list" required:"true"` + Sources []*AwsLogSourceConfiguration `locationName:"sources" min:"1" type:"list" required:"true"` } // String returns the string representation. @@ -5952,6 +5964,9 @@ func (s *DeleteAwsLogSourceInput) Validate() error { if s.Sources == nil { invalidParams.Add(request.NewErrParamRequired("Sources")) } + if s.Sources != nil && len(s.Sources) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Sources", 1)) + } if s.Sources != nil { for i, v := range s.Sources { if v == nil { @@ -6186,9 +6201,7 @@ type DeleteDataLakeOrganizationConfigurationInput struct { // Turns off automatic enablement of Security Lake for member accounts that // are added to an organization. - // - // AutoEnableNewAccount is a required field - AutoEnableNewAccount []*DataLakeAutoEnableNewAccountConfiguration `locationName:"autoEnableNewAccount" type:"list" required:"true"` + AutoEnableNewAccount []*DataLakeAutoEnableNewAccountConfiguration `locationName:"autoEnableNewAccount" min:"1" type:"list"` } // String returns the string representation. @@ -6212,8 +6225,8 @@ func (s DeleteDataLakeOrganizationConfigurationInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *DeleteDataLakeOrganizationConfigurationInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "DeleteDataLakeOrganizationConfigurationInput"} - if s.AutoEnableNewAccount == nil { - invalidParams.Add(request.NewErrParamRequired("AutoEnableNewAccount")) + if s.AutoEnableNewAccount != nil && len(s.AutoEnableNewAccount) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AutoEnableNewAccount", 1)) } if s.AutoEnableNewAccount != nil { for i, v := range s.AutoEnableNewAccount { @@ -6566,7 +6579,7 @@ type GetDataLakeOrganizationConfigurationOutput struct { _ struct{} `type:"structure"` // The configuration for new accounts. - AutoEnableNewAccount []*DataLakeAutoEnableNewAccountConfiguration `locationName:"autoEnableNewAccount" type:"list"` + AutoEnableNewAccount []*DataLakeAutoEnableNewAccountConfiguration `locationName:"autoEnableNewAccount" min:"1" type:"list"` } // String returns the string representation. @@ -7362,8 +7375,8 @@ func (s *ListSubscribersOutput) SetSubscribers(v []*SubscriberResource) *ListSub type ListTagsForResourceInput struct { _ struct{} `type:"structure" nopayload:"true"` - // The Amazon Resource Name (ARN) of the Amazon Security Lake resource to retrieve - // the tags for. + // The Amazon Resource Name (ARN) of the Amazon Security Lake resource for which + // you want to retrieve the tags. // // ResourceArn is a required field ResourceArn *string `location:"uri" locationName:"resourceArn" min:"1" type:"string" required:"true"` @@ -8398,7 +8411,12 @@ type UpdateDataLakeInput struct { // Specify the Region or Regions that will contribute data to the rollup region. // // Configurations is a required field - Configurations []*DataLakeConfiguration `locationName:"configurations" type:"list" required:"true"` + Configurations []*DataLakeConfiguration `locationName:"configurations" min:"1" type:"list" required:"true"` + + // The Amazon Resource Name (ARN) used to create and update the Glue table. + // This table contains partitions generated by the ingestion and normalization + // of Amazon Web Services log sources and custom sources. + MetaStoreManagerRoleArn *string `locationName:"metaStoreManagerRoleArn" type:"string"` } // String returns the string representation. @@ -8425,6 +8443,9 @@ func (s *UpdateDataLakeInput) Validate() error { if s.Configurations == nil { invalidParams.Add(request.NewErrParamRequired("Configurations")) } + if s.Configurations != nil && len(s.Configurations) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Configurations", 1)) + } if s.Configurations != nil { for i, v := range s.Configurations { if v == nil { @@ -8448,6 +8469,12 @@ func (s *UpdateDataLakeInput) SetConfigurations(v []*DataLakeConfiguration) *Upd return s } +// SetMetaStoreManagerRoleArn sets the MetaStoreManagerRoleArn field's value. +func (s *UpdateDataLakeInput) SetMetaStoreManagerRoleArn(v string) *UpdateDataLakeInput { + s.MetaStoreManagerRoleArn = &v + return s +} + type UpdateDataLakeOutput struct { _ struct{} `type:"structure"` @@ -8745,6 +8772,12 @@ const ( // AwsLogSourceNameS3Data is a AwsLogSourceName enum value AwsLogSourceNameS3Data = "S3_DATA" + + // AwsLogSourceNameEksAudit is a AwsLogSourceName enum value + AwsLogSourceNameEksAudit = "EKS_AUDIT" + + // AwsLogSourceNameWaf is a AwsLogSourceName enum value + AwsLogSourceNameWaf = "WAF" ) // AwsLogSourceName_Values returns all elements of the AwsLogSourceName enum @@ -8756,6 +8789,8 @@ func AwsLogSourceName_Values() []string { AwsLogSourceNameCloudTrailMgmt, AwsLogSourceNameLambdaExecution, AwsLogSourceNameS3Data, + AwsLogSourceNameEksAudit, + AwsLogSourceNameWaf, } }