diff --git a/CHANGELOG.md b/CHANGELOG.md index e6c9d0f3b81..b2a38104a86 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +Release v1.50.18 (2024-02-14) +=== + +### Service Client Updates +* `service/controltower`: Updates service API, documentation, and paginators +* `service/lookoutequipment`: Updates service API and documentation +* `service/qbusiness`: Updates service API and documentation + Release v1.50.17 (2024-02-13) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 09370d9d541..65acc40c78b 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -19864,6 +19864,9 @@ var awsPartition = partition{ endpointKey{ Region: "ap-northeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-northeast-3", + }: endpoint{}, endpointKey{ Region: "ap-south-1", }: endpoint{}, @@ -19873,6 +19876,12 @@ var awsPartition = partition{ endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-4", + }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, endpointKey{ Region: "eu-central-1", }: endpoint{}, @@ -22971,6 +22980,19 @@ var awsPartition = partition{ }, }, }, + "private-networks": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-2", + }: endpoint{}, + endpointKey{ + Region: "us-west-2", + }: endpoint{}, + }, + }, "profile": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -43282,6 +43304,20 @@ var awsisoPartition = partition{ }, }, }, + "api.pricing": service{ + Defaults: endpointDefaults{ + defaultKey{}: endpoint{ + CredentialScope: credentialScope{ + Service: "pricing", + }, + }, + }, + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-iso-east-1", + }: endpoint{}, + }, + }, "api.sagemaker": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -43331,6 +43367,13 @@ var awsisoPartition = partition{ }: endpoint{}, }, }, + "arc-zonal-shift": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-iso-east-1", + }: endpoint{}, + }, + }, "athena": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -44478,6 +44521,20 @@ var awsisobPartition = partition{ }, }, }, + "api.pricing": service{ + Defaults: endpointDefaults{ + defaultKey{}: endpoint{ + CredentialScope: credentialScope{ + Service: "pricing", + }, + }, + }, + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-isob-east-1", + }: endpoint{}, + }, + }, "api.sagemaker": service{ Endpoints: serviceEndpoints{ endpointKey{ @@ -44511,6 +44568,13 @@ var awsisobPartition = partition{ }: endpoint{}, }, }, + "arc-zonal-shift": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "us-isob-east-1", + }: endpoint{}, + }, + }, "autoscaling": service{ Defaults: endpointDefaults{ defaultKey{}: endpoint{ diff --git a/aws/version.go b/aws/version.go index f7c969c0908..e21ac40acb5 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.17" +const SDKVersion = "1.50.18" diff --git a/models/apis/controltower/2018-05-10/api-2.json b/models/apis/controltower/2018-05-10/api-2.json index 160feab4bfd..ab5c2007a7b 100644 --- a/models/apis/controltower/2018-05-10/api-2.json +++ b/models/apis/controltower/2018-05-10/api-2.json @@ -46,6 +46,44 @@ "shape": "DeleteLandingZoneOutput" } }, + "DisableBaseline": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/disable-baseline", + "responseCode": 200 + }, + "idempotent": true, + "input": { + "shape": "DisableBaselineInput" + }, + "name": "DisableBaseline", + "output": { + "shape": "DisableBaselineOutput" + } + }, "DisableControl": { "errors": [ { @@ -83,6 +121,43 @@ "shape": "DisableControlOutput" } }, + "EnableBaseline": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/enable-baseline", + "responseCode": 200 + }, + "input": { + "shape": "EnableBaselineInput" + }, + "name": "EnableBaseline", + "output": { + "shape": "EnableBaselineOutput" + } + }, "EnableControl": { "errors": [ { @@ -120,6 +195,68 @@ "shape": "EnableControlOutput" } }, + "GetBaseline": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/get-baseline", + "responseCode": 200 + }, + "input": { + "shape": "GetBaselineInput" + }, + "name": "GetBaseline", + "output": { + "shape": "GetBaselineOutput" + } + }, + "GetBaselineOperation": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/get-baseline-operation", + "responseCode": 200 + }, + "input": { + "shape": "GetBaselineOperationInput" + }, + "name": "GetBaselineOperation", + "output": { + "shape": "GetBaselineOperationOutput" + } + }, "GetControlOperation": { "errors": [ { @@ -151,6 +288,37 @@ "shape": "GetControlOperationOutput" } }, + "GetEnabledBaseline": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/get-enabled-baseline", + "responseCode": 200 + }, + "input": { + "shape": "GetEnabledBaselineInput" + }, + "name": "GetEnabledBaseline", + "output": { + "shape": "GetEnabledBaselineOutput" + } + }, "GetEnabledControl": { "errors": [ { @@ -213,6 +381,62 @@ "shape": "GetLandingZoneOperationOutput" } }, + "ListBaselines": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "POST", + "requestUri": "/list-baselines", + "responseCode": 200 + }, + "input": { + "shape": "ListBaselinesInput" + }, + "name": "ListBaselines", + "output": { + "shape": "ListBaselinesOutput" + } + }, + "ListEnabledBaselines": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + } + ], + "http": { + "method": "POST", + "requestUri": "/list-enabled-baselines", + "responseCode": 200 + }, + "input": { + "shape": "ListEnabledBaselinesInput" + }, + "name": "ListEnabledBaselines", + "output": { + "shape": "ListEnabledBaselinesOutput" + } + }, "ListEnabledControls": { "errors": [ { @@ -297,6 +521,43 @@ "shape": "ListTagsForResourceOutput" } }, + "ResetEnabledBaseline": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/reset-enabled-baseline", + "responseCode": 200 + }, + "input": { + "shape": "ResetEnabledBaselineInput" + }, + "name": "ResetEnabledBaseline", + "output": { + "shape": "ResetEnabledBaselineOutput" + } + }, "ResetLandingZone": { "errors": [ { @@ -380,6 +641,43 @@ "output": { "shape": "UntagResourceOutput" } + }, + "UpdateEnabledBaseline": { + "errors": [ + { + "shape": "ValidationException" + }, + { + "shape": "ConflictException" + }, + { + "shape": "ServiceQuotaExceededException" + }, + { + "shape": "InternalServerException" + }, + { + "shape": "AccessDeniedException" + }, + { + "shape": "ThrottlingException" + }, + { + "shape": "ResourceNotFoundException" + } + ], + "http": { + "method": "POST", + "requestUri": "/update-enabled-baseline", + "responseCode": 200 + }, + "input": { + "shape": "UpdateEnabledBaselineInput" + }, + "name": "UpdateEnabledBaseline", + "output": { + "shape": "UpdateEnabledBaselineOutput" + } } }, "shapes": { @@ -395,16 +693,90 @@ } }, "required": [ - "message" + "message" + ], + "type": "structure" + }, + "Arn": { + "max": 2048, + "min": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + }, + "BaselineArn": { + "pattern": "^arn:[a-z-]+:controltower:[a-z0-9-]*:[0-9]{0,12}:baseline/[A-Z0-9]{16}$", + "type": "string" + }, + "BaselineOperation": { + "members": { + "endTime": { + "shape": "Timestamp" + }, + "operationIdentifier": { + "shape": "OperationIdentifier" + }, + "operationType": { + "shape": "BaselineOperationType" + }, + "startTime": { + "shape": "Timestamp" + }, + "status": { + "shape": "BaselineOperationStatus" + }, + "statusMessage": { + "shape": "String" + } + }, + "type": "structure" + }, + "BaselineOperationStatus": { + "enum": [ + "SUCCEEDED", + "FAILED", + "IN_PROGRESS" + ], + "type": "string" + }, + "BaselineOperationType": { + "enum": [ + "ENABLE_BASELINE", + "DISABLE_BASELINE", + "UPDATE_ENABLED_BASELINE", + "RESET_ENABLED_BASELINE" + ], + "type": "string" + }, + "BaselineSummary": { + "members": { + "arn": { + "shape": "String" + }, + "description": { + "shape": "String" + }, + "name": { + "shape": "String" + } + }, + "required": [ + "arn", + "name" ], "type": "structure" }, - "Arn": { - "max": 2048, - "min": 20, - "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "BaselineVersion": { + "max": 10, + "min": 1, + "pattern": "^\\d+(?:\\.\\d+){0,2}$", "type": "string" }, + "Baselines": { + "member": { + "shape": "BaselineSummary" + }, + "type": "list" + }, "ConflictException": { "error": { "httpStatusCode": 409, @@ -500,6 +872,28 @@ ], "type": "structure" }, + "DisableBaselineInput": { + "members": { + "enabledBaselineIdentifier": { + "shape": "Arn" + } + }, + "required": [ + "enabledBaselineIdentifier" + ], + "type": "structure" + }, + "DisableBaselineOutput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, "DisableControlInput": { "members": { "controlIdentifier": { @@ -543,6 +937,43 @@ }, "type": "structure" }, + "EnableBaselineInput": { + "members": { + "baselineIdentifier": { + "shape": "Arn" + }, + "baselineVersion": { + "shape": "BaselineVersion" + }, + "tags": { + "shape": "TagMap" + }, + "targetIdentifier": { + "shape": "Arn" + } + }, + "required": [ + "baselineIdentifier", + "baselineVersion", + "targetIdentifier" + ], + "type": "structure" + }, + "EnableBaselineOutput": { + "members": { + "arn": { + "shape": "Arn" + }, + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "arn", + "operationIdentifier" + ], + "type": "structure" + }, "EnableControlInput": { "members": { "controlIdentifier": { @@ -575,6 +1006,91 @@ ], "type": "structure" }, + "EnabledBaselineBaselineIdentifiers": { + "max": 5, + "member": { + "shape": "Arn" + }, + "min": 1, + "type": "list" + }, + "EnabledBaselineDetails": { + "members": { + "arn": { + "shape": "Arn" + }, + "baselineIdentifier": { + "shape": "String" + }, + "baselineVersion": { + "shape": "String" + }, + "statusSummary": { + "shape": "EnablementStatusSummary" + }, + "targetIdentifier": { + "shape": "String" + } + }, + "required": [ + "arn", + "baselineIdentifier", + "statusSummary", + "targetIdentifier" + ], + "type": "structure" + }, + "EnabledBaselineFilter": { + "members": { + "baselineIdentifiers": { + "shape": "EnabledBaselineBaselineIdentifiers" + }, + "targetIdentifiers": { + "shape": "EnabledBaselineTargetIdentifiers" + } + }, + "type": "structure" + }, + "EnabledBaselineSummary": { + "members": { + "arn": { + "shape": "Arn" + }, + "baselineIdentifier": { + "shape": "String" + }, + "baselineVersion": { + "shape": "String" + }, + "statusSummary": { + "shape": "EnablementStatusSummary" + }, + "targetIdentifier": { + "shape": "String" + } + }, + "required": [ + "arn", + "baselineIdentifier", + "statusSummary", + "targetIdentifier" + ], + "type": "structure" + }, + "EnabledBaselineTargetIdentifiers": { + "max": 5, + "member": { + "shape": "Arn" + }, + "min": 1, + "type": "list" + }, + "EnabledBaselines": { + "member": { + "shape": "EnabledBaselineSummary" + }, + "type": "list" + }, "EnabledControlDetails": { "members": { "arn": { @@ -643,6 +1159,57 @@ }, "type": "structure" }, + "GetBaselineInput": { + "members": { + "baselineIdentifier": { + "shape": "BaselineArn" + } + }, + "required": [ + "baselineIdentifier" + ], + "type": "structure" + }, + "GetBaselineOperationInput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, + "GetBaselineOperationOutput": { + "members": { + "baselineOperation": { + "shape": "BaselineOperation" + } + }, + "required": [ + "baselineOperation" + ], + "type": "structure" + }, + "GetBaselineOutput": { + "members": { + "arn": { + "shape": "BaselineArn" + }, + "description": { + "shape": "String" + }, + "name": { + "shape": "String" + } + }, + "required": [ + "arn", + "name" + ], + "type": "structure" + }, "GetControlOperationInput": { "members": { "operationIdentifier": { @@ -665,6 +1232,25 @@ ], "type": "structure" }, + "GetEnabledBaselineInput": { + "members": { + "enabledBaselineIdentifier": { + "shape": "Arn" + } + }, + "required": [ + "enabledBaselineIdentifier" + ], + "type": "structure" + }, + "GetEnabledBaselineOutput": { + "members": { + "enabledBaselineDetails": { + "shape": "EnabledBaselineDetails" + } + }, + "type": "structure" + }, "GetEnabledControlInput": { "members": { "enabledControlIdentifier": { @@ -817,6 +1403,75 @@ "pattern": "^\\d+.\\d+$", "type": "string" }, + "ListBaselinesInput": { + "members": { + "maxResults": { + "shape": "ListBaselinesMaxResults" + }, + "nextToken": { + "shape": "String" + } + }, + "type": "structure" + }, + "ListBaselinesMaxResults": { + "box": true, + "max": 100, + "min": 4, + "type": "integer" + }, + "ListBaselinesOutput": { + "members": { + "baselines": { + "shape": "Baselines" + }, + "nextToken": { + "shape": "String" + } + }, + "required": [ + "baselines" + ], + "type": "structure" + }, + "ListEnabledBaselinesInput": { + "members": { + "filter": { + "shape": "EnabledBaselineFilter" + }, + "maxResults": { + "shape": "ListEnabledBaselinesMaxResults" + }, + "nextToken": { + "shape": "ListEnabledBaselinesNextToken" + } + }, + "type": "structure" + }, + "ListEnabledBaselinesMaxResults": { + "box": true, + "max": 100, + "min": 5, + "type": "integer" + }, + "ListEnabledBaselinesNextToken": { + "pattern": "\\S+", + "type": "string" + }, + "ListEnabledBaselinesOutput": { + "members": { + "enabledBaselines": { + "shape": "EnabledBaselines" + }, + "nextToken": { + "shape": "ListEnabledBaselinesNextToken" + } + }, + "required": [ + "enabledBaselines" + ], + "type": "structure" + }, "ListEnabledControlsInput": { "members": { "maxResults": { @@ -936,6 +1591,28 @@ "min": 1, "type": "string" }, + "ResetEnabledBaselineInput": { + "members": { + "enabledBaselineIdentifier": { + "shape": "Arn" + } + }, + "required": [ + "enabledBaselineIdentifier" + ], + "type": "structure" + }, + "ResetEnabledBaselineOutput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, "ResetLandingZoneInput": { "members": { "landingZoneIdentifier": { @@ -1116,6 +1793,32 @@ "members": {}, "type": "structure" }, + "UpdateEnabledBaselineInput": { + "members": { + "baselineVersion": { + "shape": "BaselineVersion" + }, + "enabledBaselineIdentifier": { + "shape": "Arn" + } + }, + "required": [ + "baselineVersion", + "enabledBaselineIdentifier" + ], + "type": "structure" + }, + "UpdateEnabledBaselineOutput": { + "members": { + "operationIdentifier": { + "shape": "OperationIdentifier" + } + }, + "required": [ + "operationIdentifier" + ], + "type": "structure" + }, "UpdateEnabledControlOutput": { "members": { "operationIdentifier": { diff --git a/models/apis/controltower/2018-05-10/docs-2.json b/models/apis/controltower/2018-05-10/docs-2.json index 2e65d118c42..ba7d53eb9d0 100644 --- a/models/apis/controltower/2018-05-10/docs-2.json +++ b/models/apis/controltower/2018-05-10/docs-2.json @@ -4,18 +4,27 @@ "operations": { "CreateLandingZone": "

Creates a new landing zone. This API call starts an asynchronous operation that creates and configures a landing zone, based on the parameters specified in the manifest JSON file.

", "DeleteLandingZone": "

Decommissions a landing zone. This API call starts an asynchronous operation that deletes Amazon Web Services Control Tower resources deployed in accounts managed by Amazon Web Services Control Tower.

", - "DisableControl": "

This API call turns off a control. It starts an asynchronous operation that deletes Amazon Web Services resources on the specified organizational unit and the accounts it contains. The resources will vary according to the control that you specify. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "DisableBaseline": "

Disable an EnabledBaseline resource on the specified Target. This API starts an asynchronous operation to remove all resources deployed as part of the baseline enablement. The resource will vary depending on the enabled baseline.

", + "DisableControl": "

This API call turns off a control. It starts an asynchronous operation that deletes AWS resources on the specified organizational unit and the accounts it contains. The resources will vary according to the control that you specify. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "EnableBaseline": "

Enable (apply) a Baseline to a Target. This API starts an asynchronous operation to deploy resources specified by the Baseline to the specified Target.

", "EnableControl": "

This API call activates a control. It starts an asynchronous operation that creates Amazon Web Services resources on the specified organizational unit and the accounts it contains. The resources created will vary according to the control that you specify. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "GetBaseline": "

Retrieve details about an existing Baseline resource by specifying its identifier.

", + "GetBaselineOperation": "

Returns the details of an asynchronous baseline operation, as initiated by any of these APIs: EnableBaseline, DisableBaseline, UpdateEnabledBaseline, ResetEnabledBaseline. A status message is displayed in case of operation failure.

", "GetControlOperation": "

Returns the status of a particular EnableControl or DisableControl operation. Displays a message in case of error. Details for an operation are available for 90 days. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "GetEnabledBaseline": "

Retrieve details of an EnabledBaseline resource by specifying its identifier.

", "GetEnabledControl": "

Retrieves details about an enabled control. For usage examples, see the Amazon Web Services Control Tower User Guide .

", "GetLandingZone": "

Returns details about the landing zone. Displays a message in case of error.

", "GetLandingZoneOperation": "

Returns the status of the specified landing zone operation. Details for an operation are available for 60 days.

", + "ListBaselines": "

Returns a summary list of all available baselines.

", + "ListEnabledBaselines": "

Returns a list of summaries describing EnabledBaseline resources. You can filter the list by the corresponding Baseline or Target of the EnabledBaseline resources.

", "ListEnabledControls": "

Lists the controls enabled by Amazon Web Services Control Tower on the specified organizational unit and the accounts it contains. For usage examples, see the Amazon Web Services Control Tower User Guide .

", "ListLandingZones": "

Returns the landing zone ARN for the landing zone deployed in your managed account. This API also creates an ARN for existing accounts that do not yet have a landing zone ARN.

Returns one landing zone ARN.

", "ListTagsForResource": "

Returns a list of tags associated with the resource. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "ResetEnabledBaseline": "

Re-enables an EnabledBaseline resource. For example, this API can re-apply the existing Baseline after a new member account is moved to the target OU.

", "ResetLandingZone": "

This API call resets a landing zone. It starts an asynchronous operation that resets the landing zone to the parameters specified in its original configuration.

", "TagResource": "

Applies tags to a resource. For usage examples, see the Amazon Web Services Control Tower User Guide .

", "UntagResource": "

Removes tags from a resource. For usage examples, see the Amazon Web Services Control Tower User Guide .

", + "UpdateEnabledBaseline": "

Updates an EnabledBaseline resource's applied parameters or version.

", "UpdateEnabledControl": "

Updates the configuration of an already enabled control.

If the enabled control shows an EnablementStatus of SUCCEEDED, supply parameters that are different from the currently configured parameters. Otherwise, Amazon Web Services Control Tower will not accept the request.

If the enabled control shows an EnablementStatus of FAILED, Amazon Web Services Control Tower will update the control to match any valid parameters that you supply.

If the DriftSummary status for the control shows as DRIFTED, you cannot call this API. Instead, you can update the control by calling DisableControl and again calling EnableControl, or you can run an extending governance operation. For usage examples, see the Amazon Web Services Control Tower User Guide

", "UpdateLandingZone": "

This API call updates the landing zone. It starts an asynchronous operation that updates the landing zone based on the new landing zone version, or on the changed parameters specified in the updated manifest file.

" }, @@ -29,18 +38,73 @@ "base": null, "refs": { "CreateLandingZoneOutput$arn": "

The ARN of the landing zone resource.

", + "DisableBaselineInput$enabledBaselineIdentifier": "

Identifier of the EnabledBaseline resource to be deactivated, in ARN format.

", + "EnableBaselineInput$baselineIdentifier": "

The ARN of the baseline to be enabled.

", + "EnableBaselineInput$targetIdentifier": "

The ARN of the target on which the baseline will be enabled. Only OUs are supported as targets.

", + "EnableBaselineOutput$arn": "

The ARN of the EnabledBaseline resource.

", "EnableControlOutput$arn": "

The ARN of the EnabledControl resource.

", + "EnabledBaselineBaselineIdentifiers$member": null, + "EnabledBaselineDetails$arn": "

The ARN of the EnabledBaseline resource.

", + "EnabledBaselineSummary$arn": "

The ARN of the EnabledBaseline resource

", + "EnabledBaselineTargetIdentifiers$member": null, "EnabledControlDetails$arn": "

The ARN of the enabled control.

", "EnabledControlSummary$arn": "

The ARN of the enabled control.

", + "GetEnabledBaselineInput$enabledBaselineIdentifier": "

Identifier of the EnabledBaseline resource to be retrieved, in ARN format.

", "GetEnabledControlInput$enabledControlIdentifier": "

The controlIdentifier of the enabled control.

", "LandingZoneDetail$arn": "

The ARN of the landing zone.

", "LandingZoneSummary$arn": "

The ARN of the landing zone.

", "ListTagsForResourceInput$resourceArn": "

The ARN of the resource.

", + "ResetEnabledBaselineInput$enabledBaselineIdentifier": "

Specifies the ID of the EnabledBaseline resource to be re-enabled, in ARN format.

", "TagResourceInput$resourceArn": "

The ARN of the resource to be tagged.

", "UntagResourceInput$resourceArn": "

The ARN of the resource.

", + "UpdateEnabledBaselineInput$enabledBaselineIdentifier": "

Specifies the EnabledBaseline resource to be updated.

", "UpdateEnabledControlInput$enabledControlIdentifier": "

The ARN of the enabled control that will be updated.

" } }, + "BaselineArn": { + "base": null, + "refs": { + "GetBaselineInput$baselineIdentifier": "

The ARN of the Baseline resource to be retrieved.

", + "GetBaselineOutput$arn": "

The baseline ARN.

" + } + }, + "BaselineOperation": { + "base": "

An object of shape BaselineOperation, returning details about the specified Baseline operation ID.

", + "refs": { + "GetBaselineOperationOutput$baselineOperation": "

A baselineOperation object that shows information about the specified operation ID.

" + } + }, + "BaselineOperationStatus": { + "base": null, + "refs": { + "BaselineOperation$status": "

An enumerated type (enum) with possible values of SUCCEEDED, FAILED, or IN_PROGRESS.

" + } + }, + "BaselineOperationType": { + "base": null, + "refs": { + "BaselineOperation$operationType": "

An enumerated type (enum) with possible values of ENABLE_BASELINE, DISABLE_BASELINE, UPDATE_ENABLED_BASELINE, or RESET_ENABLED_BASELINE.

" + } + }, + "BaselineSummary": { + "base": "

Returns a summary of information about a Baseline object.

", + "refs": { + "Baselines$member": null + } + }, + "BaselineVersion": { + "base": null, + "refs": { + "EnableBaselineInput$baselineVersion": "

The specific version to be enabled of the specified baseline.

", + "UpdateEnabledBaselineInput$baselineVersion": "

Specifies the new Baseline version, to which the EnabledBaseline should be updated.

" + } + }, + "Baselines": { + "base": null, + "refs": { + "ListBaselinesOutput$baselines": "

A list of Baseline object details.

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

Updating or deleting the resource can cause an inconsistent state.

", "refs": { @@ -49,8 +113,8 @@ "ControlIdentifier": { "base": null, "refs": { - "DisableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the landing zone Region deny control. For information on how to find the controlIdentifier, see the overview page.

", - "EnableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the landing zone Region deny control. For information on how to find the controlIdentifier, see the overview page.

", + "DisableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny control. For information on how to find the controlIdentifier, see the overview page.

", + "EnableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny control. For information on how to find the controlIdentifier, see the overview page.

", "EnabledControlDetails$controlIdentifier": "

The control identifier of the enabled control. For information on how to find the controlIdentifier, see the overview page.

", "EnabledControlSummary$controlIdentifier": "

The controlIdentifier of the enabled control.

" } @@ -93,6 +157,16 @@ "refs": { } }, + "DisableBaselineInput": { + "base": null, + "refs": { + } + }, + "DisableBaselineOutput": { + "base": null, + "refs": { + } + }, "DisableControlInput": { "base": null, "refs": { @@ -106,7 +180,7 @@ "Document": { "base": null, "refs": { - "EnabledControlParameter$value": "

The value of a key/value pair. It can be of type array string, number, object, or boolean.

", + "EnabledControlParameter$value": "

The value of a key/value pair.

", "EnabledControlParameterSummary$value": "

The value of a key/value pair.

" } }, @@ -123,6 +197,16 @@ "EnabledControlSummary$driftStatusSummary": "

The drift status of the enabled control.

" } }, + "EnableBaselineInput": { + "base": null, + "refs": { + } + }, + "EnableBaselineOutput": { + "base": null, + "refs": { + } + }, "EnableControlInput": { "base": null, "refs": { @@ -133,6 +217,74 @@ "refs": { } }, + "EnabledBaselineBaselineIdentifiers": { + "base": null, + "refs": { + "EnabledBaselineFilter$baselineIdentifiers": "

Identifiers for the Baseline objects returned as part of the filter operation.

" + } + }, + "EnabledBaselineDetails": { + "base": "

Details of the EnabledBaseline resource.

", + "refs": { + "GetEnabledBaselineOutput$enabledBaselineDetails": "

Details of the EnabledBaseline resource.

" + } + }, + "EnabledBaselineFilter": { + "base": "

A filter applied on the ListEnabledBaseline operation. Allowed filters are baselineIdentifiers and targetIdentifiers. The filter can be applied for either, or both.

", + "refs": { + "ListEnabledBaselinesInput$filter": "

A filter applied on the ListEnabledBaseline operation. Allowed filters are baselineIdentifiers and targetIdentifiers. The filter can be applied for either, or both.

" + } + }, + "EnabledBaselineParameter": { + "base": "

A key-value parameter to an EnabledBaseline resource.

", + "refs": { + "EnabledBaselineParameters$member": null + } + }, + "EnabledBaselineParameterDocument": { + "base": null, + "refs": { + "EnabledBaselineParameter$value": "

A low-level Document object of any type (for example, a Java Object).

", + "EnabledBaselineParameterSummary$value": "

A low-level document object of any type (for example, a Java Object).

" + } + }, + "EnabledBaselineParameterSummaries": { + "base": null, + "refs": { + "EnabledBaselineDetails$parameters": "

Shows the parameters that are applied when enabling this Baseline.

" + } + }, + "EnabledBaselineParameterSummary": { + "base": "

Summary of an applied parameter to an EnabledBaseline resource.

", + "refs": { + "EnabledBaselineParameterSummaries$member": null + } + }, + "EnabledBaselineParameters": { + "base": null, + "refs": { + "EnableBaselineInput$parameters": "

A list of key-value objects that specify enablement parameters, where key is a string and value is a document of any type.

", + "UpdateEnabledBaselineInput$parameters": "

Parameters to apply when making an update.

" + } + }, + "EnabledBaselineSummary": { + "base": "

Returns a summary of information about an EnabledBaseline object.

", + "refs": { + "EnabledBaselines$member": null + } + }, + "EnabledBaselineTargetIdentifiers": { + "base": null, + "refs": { + "EnabledBaselineFilter$targetIdentifiers": "

Identifiers for the targets of the Baseline filter operation.

" + } + }, + "EnabledBaselines": { + "base": null, + "refs": { + "ListEnabledBaselinesOutput$enabledBaselines": "

Retuens a list of summaries of EnabledBaseline resources.

" + } + }, "EnabledControlDetails": { "base": "

Information about the enabled control.

", "refs": { @@ -140,7 +292,7 @@ } }, "EnabledControlParameter": { - "base": "

A set of parameters that configure the behavior of the enabled control. A key/value pair, where Key is of type String and Value is of type Document.

", + "base": "

A key/value pair, where Key is of type String and Value is of type Document.

", "refs": { "EnabledControlParameters$member": null } @@ -160,7 +312,7 @@ "EnabledControlParameters": { "base": null, "refs": { - "EnableControlInput$parameters": "

An array of EnabledControlParameter objects

", + "EnableControlInput$parameters": "

A list of input parameter values, which are specified to configure the control when you enable it.

", "UpdateEnabledControlInput$parameters": "

A key/value pair, where Key is of type String and Value is of type Document.

" } }, @@ -185,10 +337,32 @@ "EnablementStatusSummary": { "base": "

The deployment summary of the enabled control.

", "refs": { + "EnabledBaselineDetails$statusSummary": null, + "EnabledBaselineSummary$statusSummary": null, "EnabledControlDetails$statusSummary": "

The deployment summary of the enabled control.

", "EnabledControlSummary$statusSummary": "

A short description of the status of the enabled control.

" } }, + "GetBaselineInput": { + "base": null, + "refs": { + } + }, + "GetBaselineOperationInput": { + "base": null, + "refs": { + } + }, + "GetBaselineOperationOutput": { + "base": null, + "refs": { + } + }, + "GetBaselineOutput": { + "base": null, + "refs": { + } + }, "GetControlOperationInput": { "base": null, "refs": { @@ -199,6 +373,16 @@ "refs": { } }, + "GetEnabledBaselineInput": { + "base": null, + "refs": { + } + }, + "GetEnabledBaselineOutput": { + "base": null, + "refs": { + } + }, "GetEnabledControlInput": { "base": null, "refs": { @@ -232,7 +416,7 @@ "Integer": { "base": null, "refs": { - "ThrottlingException$retryAfterSeconds": "

The number of seconds to wait before retrying.

" + "ThrottlingException$retryAfterSeconds": "

The number of seconds the caller should wait before retrying.

" } }, "InternalServerException": { @@ -279,7 +463,7 @@ "LandingZoneStatus": { "base": null, "refs": { - "LandingZoneDetail$status": "

The landing zone deployment status.

" + "LandingZoneDetail$status": "

The landing zone deployment status. One of ACTIVE, PROCESSING, FAILED.

" } }, "LandingZoneSummary": { @@ -297,6 +481,45 @@ "UpdateLandingZoneInput$version": "

The landing zone version, for example, 3.2.

" } }, + "ListBaselinesInput": { + "base": null, + "refs": { + } + }, + "ListBaselinesMaxResults": { + "base": null, + "refs": { + "ListBaselinesInput$maxResults": "

The maximum number of results to be shown.

" + } + }, + "ListBaselinesOutput": { + "base": null, + "refs": { + } + }, + "ListEnabledBaselinesInput": { + "base": null, + "refs": { + } + }, + "ListEnabledBaselinesMaxResults": { + "base": null, + "refs": { + "ListEnabledBaselinesInput$maxResults": "

The maximum number of results to be shown.

" + } + }, + "ListEnabledBaselinesNextToken": { + "base": null, + "refs": { + "ListEnabledBaselinesInput$nextToken": "

A pagination token.

", + "ListEnabledBaselinesOutput$nextToken": "

A pagination token.

" + } + }, + "ListEnabledBaselinesOutput": { + "base": null, + "refs": { + } + }, "ListEnabledControlsInput": { "base": null, "refs": { @@ -342,9 +565,9 @@ "Manifest": { "base": null, "refs": { - "CreateLandingZoneInput$manifest": "

The manifest JSON file is a text file that describes your Amazon Web Services resources. For examples, review Launch your landing zone.

", - "LandingZoneDetail$manifest": "

The landing zone manifest JSON text file that specifies the landing zone configurations.

", - "UpdateLandingZoneInput$manifest": "

The manifest JSON file is a text file that describes your Amazon Web Services resources. For examples, review Launch your landing zone.

" + "CreateLandingZoneInput$manifest": "

The manifest.yaml file is a text file that describes your Amazon Web Services resources. For examples, review The manifest file.

", + "LandingZoneDetail$manifest": "

The landing zone manifest.yaml text file that specifies the landing zone configurations.

", + "UpdateLandingZoneInput$manifest": "

The manifest.yaml file is a text file that describes your Amazon Web Services resources. For examples, review The manifest file.

" } }, "MaxResults": { @@ -356,14 +579,20 @@ "OperationIdentifier": { "base": null, "refs": { + "BaselineOperation$operationIdentifier": "

The identifier of the specified operation.

", "CreateLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a CreateLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

", "DeleteLandingZoneOutput$operationIdentifier": "

>A unique identifier assigned to a DeleteLandingZone operation. You can use this identifier as an input parameter of GetLandingZoneOperation to check the operation's status.

", + "DisableBaselineOutput$operationIdentifier": "

The ID (in UUID format) of the asynchronous DisableBaseline operation. This operationIdentifier is used to track status through calls to the GetBaselineOperation API.

", "DisableControlOutput$operationIdentifier": "

The ID of the asynchronous operation, which is used to track status. The operation is available for 90 days.

", + "EnableBaselineOutput$operationIdentifier": "

The ID (in UUID format) of the asynchronous EnableBaseline operation. This operationIdentifier is used to track status through calls to the GetBaselineOperation API.

", "EnableControlOutput$operationIdentifier": "

The ID of the asynchronous operation, which is used to track status. The operation is available for 90 days.

", "EnablementStatusSummary$lastOperationIdentifier": "

The last operation identifier for the enabled control.

", + "GetBaselineOperationInput$operationIdentifier": "

The operation ID returned from mutating asynchronous APIs (Enable, Disable, Update, Reset).

", "GetControlOperationInput$operationIdentifier": "

The ID of the asynchronous operation, which is used to track status. The operation is available for 90 days.

", "GetLandingZoneOperationInput$operationIdentifier": "

A unique identifier assigned to a landing zone operation.

", + "ResetEnabledBaselineOutput$operationIdentifier": "

The ID (in UUID format) of the asynchronous ResetEnabledBaseline operation. This operationIdentifier is used to track status through calls to the GetBaselineOperation API.

", "ResetLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a ResetLandingZone operation. You can use this identifier as an input parameter of GetLandingZoneOperation to check the operation's status.

", + "UpdateEnabledBaselineOutput$operationIdentifier": "

The ID (in UUID format) of the asynchronous UpdateEnabledBaseline operation. This operationIdentifier is used to track status through calls to the GetBaselineOperation API.

", "UpdateEnabledControlOutput$operationIdentifier": "

The operation identifier for this UpdateEnabledControl operation.

", "UpdateLandingZoneOutput$operationIdentifier": "

A unique identifier assigned to a UpdateLandingZone operation. You can use this identifier as an input of GetLandingZoneOperation to check the operation's status.

" } @@ -380,6 +609,16 @@ "Region$name": "

The Amazon Web Services Region name.

" } }, + "ResetEnabledBaselineInput": { + "base": null, + "refs": { + } + }, + "ResetEnabledBaselineOutput": { + "base": null, + "refs": { + } + }, "ResetLandingZoneInput": { "base": null, "refs": { @@ -404,14 +643,30 @@ "base": null, "refs": { "AccessDeniedException$message": null, + "BaselineOperation$statusMessage": "

A status message that gives more information about the operation's status, if applicable.

", + "BaselineSummary$arn": "

The full ARN of a Baseline.

", + "BaselineSummary$description": "

A summary description of a Baseline.

", + "BaselineSummary$name": "

The human-readable name of a Baseline.

", "ConflictException$message": null, "ControlOperation$statusMessage": "

If the operation result is FAILED, this string contains a message explaining why the operation failed.

", "DeleteLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", - "EnabledControlParameter$key": "

The key of a key/value pair. It is of type string.

", + "EnabledBaselineDetails$baselineIdentifier": "

The specific Baseline enabled as part of the EnabledBaseline resource.

", + "EnabledBaselineDetails$baselineVersion": "

The enabled version of the Baseline.

", + "EnabledBaselineDetails$targetIdentifier": "

The target on which to enable the Baseline.

", + "EnabledBaselineParameter$key": "

A string denoting the parameter key.

", + "EnabledBaselineParameterSummary$key": "

A string denoting the parameter key.

", + "EnabledBaselineSummary$baselineIdentifier": "

The specific baseline that is enabled as part of the EnabledBaseline resource.

", + "EnabledBaselineSummary$baselineVersion": "

The enabled version of the baseline.

", + "EnabledBaselineSummary$targetIdentifier": "

The target upon which the baseline is enabled.

", + "EnabledControlParameter$key": "

The key of a key/value pair.

", "EnabledControlParameterSummary$key": "

The key of a key/value pair.

", + "GetBaselineOutput$description": "

A description of the baseline.

", + "GetBaselineOutput$name": "

A user-friendly name for the baseline.

", "GetLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", "InternalServerException$message": null, "LandingZoneOperationDetail$statusMessage": "

If the operation result is FAILED, this string contains a message explaining why the operation failed.

", + "ListBaselinesInput$nextToken": "

A pagination token.

", + "ListBaselinesOutput$nextToken": "

A pagination token.

", "ListEnabledControlsInput$nextToken": "

The token to continue the list from a previous API call with the same parameters.

", "ListEnabledControlsOutput$nextToken": "

Retrieves the next page of results. If the string is empty, the response is the end of the results.

", "ListLandingZonesInput$nextToken": "

The token to continue the list from a previous API call with the same parameters.

", @@ -421,7 +676,7 @@ "ServiceQuotaExceededException$message": null, "ThrottlingException$message": null, "ThrottlingException$quotaCode": "

The ID of the service quota that was exceeded.

", - "ThrottlingException$serviceCode": "

The ID of the service that is associated with the error.

", + "ThrottlingException$serviceCode": "

The ID of the service that is associated with the error.

", "UpdateLandingZoneInput$landingZoneIdentifier": "

The unique identifier of the landing zone.

", "ValidationException$message": null } @@ -450,6 +705,7 @@ "base": null, "refs": { "CreateLandingZoneInput$tags": "

Tags to be applied to the landing zone.

", + "EnableBaselineInput$tags": "

Tags associated with input to EnableBaseline.

", "EnableControlInput$tags": "

Tags to be applied to the EnabledControl resource.

", "ListTagsForResourceOutput$tags": "

A list of tags, as key:value strings.

", "TagResourceInput$tags": "

Tags to be applied to the resource.

" @@ -495,6 +751,8 @@ "Timestamp": { "base": null, "refs": { + "BaselineOperation$endTime": "

The end time of the operation (if applicable), in ISO 8601 format.

", + "BaselineOperation$startTime": "

The start time of the operation, in ISO 8601 format.

", "LandingZoneOperationDetail$endTime": "

The landing zone operation end time.

", "LandingZoneOperationDetail$startTime": "

The landing zone operation start time.

" } @@ -509,6 +767,16 @@ "refs": { } }, + "UpdateEnabledBaselineInput": { + "base": null, + "refs": { + } + }, + "UpdateEnabledBaselineOutput": { + "base": null, + "refs": { + } + }, "UpdateEnabledControlInput": { "base": null, "refs": { diff --git a/models/apis/controltower/2018-05-10/paginators-1.json b/models/apis/controltower/2018-05-10/paginators-1.json index 24f2f2bdf59..10d8dd60fc1 100644 --- a/models/apis/controltower/2018-05-10/paginators-1.json +++ b/models/apis/controltower/2018-05-10/paginators-1.json @@ -1,5 +1,17 @@ { "pagination": { + "ListBaselines": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "baselines" + }, + "ListEnabledBaselines": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "enabledBaselines" + }, "ListEnabledControls": { "input_token": "nextToken", "output_token": "nextToken", diff --git a/models/apis/lookoutequipment/2020-12-15/api-2.json b/models/apis/lookoutequipment/2020-12-15/api-2.json index 9b17bdc1fd2..2f21783519e 100644 --- a/models/apis/lookoutequipment/2020-12-15/api-2.json +++ b/models/apis/lookoutequipment/2020-12-15/api-2.json @@ -1031,7 +1031,8 @@ "DataPreProcessingConfiguration":{"shape":"DataPreProcessingConfiguration"}, "ServerSideKmsKeyId":{"shape":"NameOrArn"}, "Tags":{"shape":"TagList"}, - "OffCondition":{"shape":"OffCondition"} + "OffCondition":{"shape":"OffCondition"}, + "ModelDiagnosticsOutputConfiguration":{"shape":"ModelDiagnosticsOutputConfiguration"} } }, "CreateModelResponse":{ @@ -1129,7 +1130,7 @@ "type":"string", "max":2048, "min":20, - "pattern":"arn:aws(-[^:]+)?:lookoutequipment:[a-zA-Z0-9\\-]*:[0-9]{12}:dataset\\/.+" + "pattern":"arn:aws(-[^:]+)?:lookoutequipment:[a-zA-Z0-9\\-]*:[0-9]{12}:dataset\\/[0-9a-zA-Z_-]{1,200}\\/.+" }, "DatasetIdentifier":{ "type":"string", @@ -1409,7 +1410,8 @@ "NextScheduledRetrainingStartDate":{"shape":"Timestamp"}, "AccumulatedInferenceDataStartTime":{"shape":"Timestamp"}, "AccumulatedInferenceDataEndTime":{"shape":"Timestamp"}, - "RetrainingSchedulerStatus":{"shape":"RetrainingSchedulerStatus"} + "RetrainingSchedulerStatus":{"shape":"RetrainingSchedulerStatus"}, + "ModelDiagnosticsOutputConfiguration":{"shape":"ModelDiagnosticsOutputConfiguration"} } }, "DescribeModelVersionRequest":{ @@ -1457,7 +1459,9 @@ "PriorModelMetrics":{"shape":"ModelMetrics"}, "RetrainingAvailableDataInDays":{"shape":"Integer"}, "AutoPromotionResult":{"shape":"AutoPromotionResult"}, - "AutoPromotionResultReason":{"shape":"AutoPromotionResultReason"} + "AutoPromotionResultReason":{"shape":"AutoPromotionResultReason"}, + "ModelDiagnosticsOutputConfiguration":{"shape":"ModelDiagnosticsOutputConfiguration"}, + "ModelDiagnosticsResultsObject":{"shape":"S3Object"} } }, "DescribeResourcePolicyRequest":{ @@ -2162,6 +2166,22 @@ "min":20, "pattern":"arn:aws(-[^:]+)?:lookoutequipment:[a-zA-Z0-9\\-]*:[0-9]{12}:model\\/.+" }, + "ModelDiagnosticsOutputConfiguration":{ + "type":"structure", + "required":["S3OutputConfiguration"], + "members":{ + "S3OutputConfiguration":{"shape":"ModelDiagnosticsS3OutputConfiguration"}, + "KmsKeyId":{"shape":"NameOrArn"} + } + }, + "ModelDiagnosticsS3OutputConfiguration":{ + "type":"structure", + "required":["Bucket"], + "members":{ + "Bucket":{"shape":"S3Bucket"}, + "Prefix":{"shape":"S3Prefix"} + } + }, "ModelMetrics":{ "type":"string", "max":50000, @@ -2208,7 +2228,8 @@ "LatestScheduledRetrainingModelVersion":{"shape":"ModelVersion"}, "LatestScheduledRetrainingStartTime":{"shape":"Timestamp"}, "NextScheduledRetrainingStartDate":{"shape":"Timestamp"}, - "RetrainingSchedulerStatus":{"shape":"RetrainingSchedulerStatus"} + "RetrainingSchedulerStatus":{"shape":"RetrainingSchedulerStatus"}, + "ModelDiagnosticsOutputConfiguration":{"shape":"ModelDiagnosticsOutputConfiguration"} } }, "ModelVersion":{ @@ -2219,7 +2240,7 @@ "type":"string", "max":2048, "min":20, - "pattern":"^arn:aws(-[^:]+)?:lookoutequipment:[a-zA-Z0-9\\-]*:[0-9]{12}:model\\/.+\\/.+\\/model-version\\/[0-9]{1,}$" + "pattern":"^arn:aws(-[^:]+)?:lookoutequipment:[a-zA-Z0-9\\-]*:[0-9]{12}:model\\/[0-9a-zA-Z_-]{1,200}\\/.+\\/model-version\\/[0-9]{1,}$" }, "ModelVersionSourceType":{ "type":"string", @@ -2692,7 +2713,8 @@ "members":{ "ModelName":{"shape":"ModelName"}, "LabelsInputConfiguration":{"shape":"LabelsInputConfiguration"}, - "RoleArn":{"shape":"IamRoleArn"} + "RoleArn":{"shape":"IamRoleArn"}, + "ModelDiagnosticsOutputConfiguration":{"shape":"ModelDiagnosticsOutputConfiguration"} } }, "UpdateRetrainingSchedulerRequest":{ diff --git a/models/apis/lookoutequipment/2020-12-15/docs-2.json b/models/apis/lookoutequipment/2020-12-15/docs-2.json index 11ada2f3376..dd35dccf9dc 100644 --- a/models/apis/lookoutequipment/2020-12-15/docs-2.json +++ b/models/apis/lookoutequipment/2020-12-15/docs-2.json @@ -582,7 +582,7 @@ "InferenceExecutionSummaries": { "base": null, "refs": { - "ListInferenceExecutionsResponse$InferenceExecutionSummaries": "

Provides an array of information about the individual inference executions returned from the ListInferenceExecutions operation, including model used, inference scheduler, data configuration, and so on.

" + "ListInferenceExecutionsResponse$InferenceExecutionSummaries": "

Provides an array of information about the individual inference executions returned from the ListInferenceExecutions operation, including model used, inference scheduler, data configuration, and so on.

If you don't supply the InferenceSchedulerName request parameter, or if you supply the name of an inference scheduler that doesn't exist, ListInferenceExecutions returns an empty array in InferenceExecutionSummaries.

" } }, "InferenceExecutionSummary": { @@ -692,7 +692,7 @@ "base": "

Gives statistics about how many files have been ingested, and which files have not been ingested, for a particular ingestion job.

", "refs": { "DescribeDataIngestionJobResponse$IngestedFilesSummary": null, - "DescribeDatasetResponse$IngestedFilesSummary": "

IngestedFilesSummary associated with the given dataset for the latest successful associated ingestion job id.

" + "DescribeDatasetResponse$IngestedFilesSummary": "

IngestedFilesSummary associated with the given dataset for the latest successful associated ingestion job id.

" } }, "IngestionInputConfiguration": { @@ -762,7 +762,7 @@ "MissingCompleteSensorData$AffectedSensorCount": "

Indicates the number of sensors that have data missing completely.

", "MissingSensorData$AffectedSensorCount": "

Indicates the number of sensors that have atleast some data missing.

", "MissingSensorData$TotalNumberOfMissingValues": "

Indicates the total number of missing values across all the sensors.

", - "SensorsWithShortDateRange$AffectedSensorCount": "

Indicates the number of sensors that have less than 90 days of data.

", + "SensorsWithShortDateRange$AffectedSensorCount": "

Indicates the number of sensors that have less than 14 days of data.

", "UnsupportedTimestamps$TotalNumberOfUnsupportedTimestamps": "

Indicates the total number of unsupported timestamps across the ingested data.

" } }, @@ -818,7 +818,7 @@ "LabelSummary$LabelGroupName": "

The name of the label group.

", "LabelsInputConfiguration$LabelGroupName": "

The name of the label group to be used for label data.

", "ListLabelGroupsRequest$LabelGroupNameBeginsWith": "

The beginning of the name of the label groups to be listed.

", - "ListLabelsRequest$LabelGroupName": "

Retruns the name of the label group.

", + "ListLabelsRequest$LabelGroupName": "

Returns the name of the label group.

", "UpdateLabelGroupRequest$LabelGroupName": "

The name of the label group to be updated.

" } }, @@ -855,7 +855,7 @@ "LabelSummaries": { "base": null, "refs": { - "ListLabelsResponse$LabelSummaries": "

A summary of the items in the label group.

" + "ListLabelsResponse$LabelSummaries": "

A summary of the items in the label group.

If you don't supply the LabelGroupName request parameter, or if you supply the name of a label group that doesn't exist, ListLabels returns an empty array in LabelSummaries.

" } }, "LabelSummary": { @@ -1078,6 +1078,22 @@ "UpdateActiveModelVersionResponse$ModelArn": "

The Amazon Resource Name (ARN) of the machine learning model for which the active model version was set.

" } }, + "ModelDiagnosticsOutputConfiguration": { + "base": "

Output configuration information for the pointwise model diagnostics for an Amazon Lookout for Equipment model.

", + "refs": { + "CreateModelRequest$ModelDiagnosticsOutputConfiguration": "

The Amazon S3 location where you want Amazon Lookout for Equipment to save the pointwise model diagnostics. You must also specify the RoleArn request parameter.

", + "DescribeModelResponse$ModelDiagnosticsOutputConfiguration": "

Configuration information for the model's pointwise model diagnostics.

", + "DescribeModelVersionResponse$ModelDiagnosticsOutputConfiguration": "

The Amazon S3 location where Amazon Lookout for Equipment saves the pointwise model diagnostics for the model version.

", + "ModelSummary$ModelDiagnosticsOutputConfiguration": null, + "UpdateModelRequest$ModelDiagnosticsOutputConfiguration": "

The Amazon S3 location where you want Amazon Lookout for Equipment to save the pointwise model diagnostics for the model. You must also specify the RoleArn request parameter.

" + } + }, + "ModelDiagnosticsS3OutputConfiguration": { + "base": "

The Amazon S3 location for the pointwise model diagnostics for an Amazon Lookout for Equipment model.

", + "refs": { + "ModelDiagnosticsOutputConfiguration$S3OutputConfiguration": "

The Amazon S3 location for the pointwise model diagnostics.

" + } + }, "ModelMetrics": { "base": null, "refs": { @@ -1215,7 +1231,7 @@ "ModelVersionSummaries": { "base": null, "refs": { - "ListModelVersionsResponse$ModelVersionSummaries": "

Provides information on the specified model version, including the created time, model and dataset ARNs, and status.

" + "ListModelVersionsResponse$ModelVersionSummaries": "

Provides information on the specified model version, including the created time, model and dataset ARNs, and status.

If you don't supply the ModelName request parameter, or if you supply the name of a model that doesn't exist, ListModelVersions returns an empty array in ModelVersionSummaries.

" } }, "ModelVersionSummary": { @@ -1250,7 +1266,8 @@ "CreateModelRequest$ServerSideKmsKeyId": "

Provides the identifier of the KMS key used to encrypt model data by Amazon Lookout for Equipment.

", "ImportDatasetRequest$ServerSideKmsKeyId": "

Provides the identifier of the KMS key key used to encrypt model data by Amazon Lookout for Equipment.

", "ImportModelVersionRequest$ServerSideKmsKeyId": "

Provides the identifier of the KMS key key used to encrypt model data by Amazon Lookout for Equipment.

", - "InferenceOutputConfiguration$KmsKeyId": "

The ID number for the KMS key key used to encrypt the inference output.

" + "InferenceOutputConfiguration$KmsKeyId": "

The ID number for the KMS key key used to encrypt the inference output.

", + "ModelDiagnosticsOutputConfiguration$KmsKeyId": "

The Amazon Web Services Key Management Service (KMS) key identifier to encrypt the pointwise model diagnostics files.

" } }, "NextToken": { @@ -1368,6 +1385,7 @@ "InferenceS3OutputConfiguration$Bucket": "

The bucket containing the output results from the inference

", "IngestionS3InputConfiguration$Bucket": "

The name of the S3 bucket used for the input data for the data ingestion.

", "LabelsS3InputConfiguration$Bucket": "

The name of the S3 bucket holding the label data.

", + "ModelDiagnosticsS3OutputConfiguration$Bucket": "

The name of the Amazon S3 bucket where the pointwise model diagnostics are located. You must be the owner of the Amazon S3 bucket.

", "S3Object$Bucket": "

The name of the specific S3 bucket.

" } }, @@ -1380,6 +1398,7 @@ "S3Object": { "base": "

Contains information about an S3 bucket.

", "refs": { + "DescribeModelVersionResponse$ModelDiagnosticsResultsObject": "

The Amazon S3 output prefix for where Lookout for Equipment saves the pointwise model diagnostics for the model version.

", "InferenceExecutionSummary$CustomerResultObject": "

The S3 object that the inference execution results were uploaded to.

", "ListOfDiscardedFiles$member": null } @@ -1390,7 +1409,8 @@ "InferenceS3InputConfiguration$Prefix": "

The prefix for the S3 bucket used for the input data for the inference.

", "InferenceS3OutputConfiguration$Prefix": "

The prefix for the S3 bucket used for the output results from the inference.

", "IngestionS3InputConfiguration$Prefix": "

The prefix for the S3 location being used for the input data for the data ingestion.

", - "LabelsS3InputConfiguration$Prefix": "

The prefix for the S3 bucket used for the label data.

" + "LabelsS3InputConfiguration$Prefix": "

The prefix for the S3 bucket used for the label data.

", + "ModelDiagnosticsS3OutputConfiguration$Prefix": "

The Amazon S3 prefix for the location of the pointwise model diagnostics. The prefix specifies the folder and evaluation result file name. (bucket).

When you call CreateModel or UpdateModel, specify the path within the bucket that you want Lookout for Equipment to save the model to. During training, Lookout for Equipment creates the model evaluation model as a compressed JSON file with the name model_diagnostics_results.json.gz.

When you call DescribeModel or DescribeModelVersion, prefix contains the file path and filename of the model evaluation file.

" } }, "SensorName": { @@ -1414,7 +1434,7 @@ "SensorsWithShortDateRange": { "base": "

Entity that comprises information on sensors that have shorter date range.

", "refs": { - "InsufficientSensorData$SensorsWithShortDateRange": "

Parameter that describes the total number of sensors that have a short date range of less than 90 days of data overall.

" + "InsufficientSensorData$SensorsWithShortDateRange": "

Parameter that describes the total number of sensors that have a short date range of less than 14 days of data overall.

" } }, "ServiceQuotaExceededException": { diff --git a/models/apis/lookoutequipment/2020-12-15/endpoint-rule-set-1.json b/models/apis/lookoutequipment/2020-12-15/endpoint-rule-set-1.json index 00e0ece3871..e1ad53b092f 100644 --- a/models/apis/lookoutequipment/2020-12-15/endpoint-rule-set-1.json +++ b/models/apis/lookoutequipment/2020-12-15/endpoint-rule-set-1.json @@ -40,7 +40,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -83,7 +82,8 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -96,7 +96,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -110,7 +109,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -133,7 +131,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -168,7 +165,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -179,14 +175,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -200,14 +198,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -216,11 +212,11 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -231,14 +227,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -252,7 +250,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -272,7 +269,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], @@ -283,14 +279,16 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], @@ -301,9 +299,11 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], diff --git a/models/apis/qbusiness/2023-11-27/api-2.json b/models/apis/qbusiness/2023-11-27/api-2.json index 8e584da389f..632af1409a3 100644 --- a/models/apis/qbusiness/2023-11-27/api-2.json +++ b/models/apis/qbusiness/2023-11-27/api-2.json @@ -2301,6 +2301,12 @@ "box": true, "type": "boolean" }, + "BoostingDurationInSeconds": { + "box": true, + "max": 999999999, + "min": 0, + "type": "long" + }, "ChatSyncInput": { "members": { "applicationId": { @@ -2878,6 +2884,20 @@ }, "type": "list" }, + "DateAttributeBoostingConfiguration": { + "members": { + "boostingDurationInSeconds": { + "shape": "BoostingDurationInSeconds" + }, + "boostingLevel": { + "shape": "DocumentAttributeBoostingLevel" + } + }, + "required": [ + "boostingLevel" + ], + "type": "structure" + }, "DeleteApplicationRequest": { "members": { "applicationId": { @@ -3186,6 +3206,44 @@ ], "type": "structure" }, + "DocumentAttributeBoostingConfiguration": { + "members": { + "dateConfiguration": { + "shape": "DateAttributeBoostingConfiguration" + }, + "numberConfiguration": { + "shape": "NumberAttributeBoostingConfiguration" + }, + "stringConfiguration": { + "shape": "StringAttributeBoostingConfiguration" + }, + "stringListConfiguration": { + "shape": "StringListAttributeBoostingConfiguration" + } + }, + "type": "structure", + "union": true + }, + "DocumentAttributeBoostingLevel": { + "enum": [ + "NONE", + "LOW", + "MEDIUM", + "HIGH", + "VERY_HIGH" + ], + "type": "string" + }, + "DocumentAttributeBoostingOverrideMap": { + "key": { + "shape": "DocumentAttributeKey" + }, + "min": 1, + "type": "map", + "value": { + "shape": "DocumentAttributeBoostingConfiguration" + } + }, "DocumentAttributeCondition": { "members": { "key": { @@ -4883,7 +4941,11 @@ "FACTUALLY_CORRECT", "COMPLETE", "RELEVANT_SOURCES", - "HELPFUL" + "HELPFUL", + "NOT_BASED_ON_DOCUMENTS", + "NOT_COMPLETE", + "NOT_CONCISE", + "OTHER" ], "type": "string" }, @@ -4899,6 +4961,9 @@ }, "NativeIndexConfiguration": { "members": { + "boostingOverride": { + "shape": "DocumentAttributeBoostingOverrideMap" + }, "indexId": { "shape": "IndexId" } @@ -4913,6 +4978,27 @@ "min": 1, "type": "string" }, + "NumberAttributeBoostingConfiguration": { + "members": { + "boostingLevel": { + "shape": "DocumentAttributeBoostingLevel" + }, + "boostingType": { + "shape": "NumberAttributeBoostingType" + } + }, + "required": [ + "boostingLevel" + ], + "type": "structure" + }, + "NumberAttributeBoostingType": { + "enum": [ + "PRIORITIZE_LARGER_VALUES", + "PRIORITIZE_SMALLER_VALUES" + ], + "type": "string" + }, "OAuth2ClientCredentialConfiguration": { "members": { "roleArn": { @@ -5501,6 +5587,51 @@ "min": 1, "type": "string" }, + "StringAttributeBoostingConfiguration": { + "members": { + "attributeValueBoosting": { + "shape": "StringAttributeValueBoosting" + }, + "boostingLevel": { + "shape": "DocumentAttributeBoostingLevel" + } + }, + "required": [ + "boostingLevel" + ], + "type": "structure" + }, + "StringAttributeValueBoosting": { + "key": { + "shape": "String" + }, + "max": 10, + "min": 1, + "type": "map", + "value": { + "shape": "StringAttributeValueBoostingLevel" + } + }, + "StringAttributeValueBoostingLevel": { + "enum": [ + "LOW", + "MEDIUM", + "HIGH", + "VERY_HIGH" + ], + "type": "string" + }, + "StringListAttributeBoostingConfiguration": { + "members": { + "boostingLevel": { + "shape": "DocumentAttributeBoostingLevel" + } + }, + "required": [ + "boostingLevel" + ], + "type": "structure" + }, "SubnetId": { "max": 200, "min": 1, diff --git a/models/apis/qbusiness/2023-11-27/docs-2.json b/models/apis/qbusiness/2023-11-27/docs-2.json index f8ff1185d51..d37a72f5215 100644 --- a/models/apis/qbusiness/2023-11-27/docs-2.json +++ b/models/apis/qbusiness/2023-11-27/docs-2.json @@ -1,13 +1,13 @@ { "version": "2.0", - "service": "

", + "service": "

Amazon Q is in preview release and is subject to change.

This is the Amazon Q (for business use) API Reference. Amazon Q is a fully managed, generative-AI powered enterprise chat assistant that you can deploy within your organization. Amazon Q enhances employee productivity by supporting key tasks such as question-answering, knowledge discovery, writing email messages, summarizing text, drafting document outlines, and brainstorming ideas. Users ask questions of Amazon Q and get answers that are presented in a conversational manner. For an introduction to the service, see the Amazon Q (for business use) Developer Guide .

For an overview of the Amazon Q APIs, see Overview of Amazon Q API operations.

For information about the IAM access control permissions you need to use this API, see IAM roles for Amazon Q in the Amazon Q (for business use) Developer Guide.

You can use the following AWS SDKs to access Amazon Q APIs:

The following resources provide additional information about using the Amazon Q API:

", "operations": { "BatchDeleteDocument": "

Asynchronously deletes one or more documents added using the BatchPutDocument API from an Amazon Q index.

You can see the progress of the deletion, and any error messages related to the process, by using CloudWatch.

", "BatchPutDocument": "

Adds one or more documents to an Amazon Q index.

You use this API to:

You can see the progress of the deletion, and any error messages related to the process, by using CloudWatch.

", "ChatSync": "

Starts or continues a non-streaming Amazon Q conversation.

", "CreateApplication": "

Creates an Amazon Q application.

", "CreateDataSource": "

Creates a data source connector for an Amazon Q application.

CreateDataSource is a synchronous operation. The operation returns 200 if the data source was successfully created. Otherwise, an exception is raised.

", - "CreateIndex": "

Creates an Amazon Q index.

To determine if index creation has completed, check the Status field returned from a call to DescribeIndex. The Status field is set to ACTIVE when the index is ready to use.

Once the index is active, you can index your documents using the BatchPutDocument API or the CreateDataSource API.

", + "CreateIndex": "

Creates an Amazon Q index.

To determine if index creation has completed, check the Status field returned from a call to DescribeIndex. The Status field is set to ACTIVE when the index is ready to use.

Once the index is active, you can index your documents using the BatchPutDocument API or the CreateDataSource API.

", "CreatePlugin": "

Creates an Amazon Q plugin.

", "CreateRetriever": "

Adds a retriever to your Amazon Q application.

", "CreateUser": "

Creates a universally unique identifier (UUID) mapped to a list of local user ids within an application.

", @@ -328,7 +328,7 @@ } }, "AttributeFilter": { - "base": "

Enables filtering of Amazon Q web experience responses based on document attributes or metadata fields.

", + "base": "

Enables filtering of responses based on document attributes or metadata fields.

", "refs": { "AttributeFilter$notFilter": "

Performs a logical NOT operation on all supplied filters.

", "AttributeFilters$member": null, @@ -419,6 +419,12 @@ "ActionReviewPayloadField$required": "

Information about whether the field is required.

" } }, + "BoostingDurationInSeconds": { + "base": null, + "refs": { + "DateAttributeBoostingConfiguration$boostingDurationInSeconds": "

Specifies the duration, in seconds, of a boost applies to a DATE type document attribute.

" + } + }, "ChatSyncInput": { "base": null, "refs": { @@ -681,6 +687,12 @@ "ListDataSourcesResponse$dataSources": "

An array of summary information for one or more data source connector.

" } }, + "DateAttributeBoostingConfiguration": { + "base": "

Provides information on boosting DATE type document attributes.

For more information on how boosting document attributes work in Amazon Q, see Boosting using document attributes.

", + "refs": { + "DocumentAttributeBoostingConfiguration$dateConfiguration": "

Provides information on boosting DATE type document attributes.

" + } + }, "DeleteApplicationRequest": { "base": null, "refs": { @@ -826,8 +838,29 @@ "DocumentAttributes$member": null } }, + "DocumentAttributeBoostingConfiguration": { + "base": "

Provides information on boosting supported Amazon Q document attribute types. When an end user chat query matches document attributes that have been boosted, Amazon Q prioritizes generating responses from content that matches the boosted document attributes.

For STRING and STRING_LIST type document attributes to be used for boosting on the console and the API, they must be enabled for search using the DocumentAttributeConfiguration object of the UpdateIndex API. If you haven't enabled searching on these attributes, you can't boost attributes of these data types on either the console or the API.

For more information on how boosting document attributes work in Amazon Q, see Boosting using document attributes.

", + "refs": { + "DocumentAttributeBoostingOverrideMap$value": null + } + }, + "DocumentAttributeBoostingLevel": { + "base": null, + "refs": { + "DateAttributeBoostingConfiguration$boostingLevel": "

Specifies how much a document attribute is boosted.

", + "NumberAttributeBoostingConfiguration$boostingLevel": "

Specifies the duration, in seconds, of a boost applies to a NUMBER type document attribute.

", + "StringAttributeBoostingConfiguration$boostingLevel": "

Specifies how much a document attribute is boosted.

", + "StringListAttributeBoostingConfiguration$boostingLevel": "

Specifies how much a document attribute is boosted.

" + } + }, + "DocumentAttributeBoostingOverrideMap": { + "base": null, + "refs": { + "NativeIndexConfiguration$boostingOverride": "

Overrides the default boosts applied by Amazon Q to supported document attribute data types.

" + } + }, "DocumentAttributeCondition": { - "base": "

The condition used for the target document attribute or metadata field when ingesting documents into Amazon Q. You use this with DocumentAttributeTarget to apply the condition.

For example, you can create the 'Department' target field and have it prefill department names associated with the documents based on information in the 'Source_URI' field. Set the condition that if the 'Source_URI' field contains 'financial' in its URI value, then prefill the target field 'Department' with the target value 'Finance' for the document.

Amazon Q can't create a target field if it has not already been created as an index field. After you create your index field, you can create a document metadata field using DocumentAttributeTarget. Amazon Q then will map your newly created metadata field to your index field.

", + "base": "

The condition used for the target document attribute or metadata field when ingesting documents into Amazon Q. You use this with DocumentAttributeTarget to apply the condition.

For example, you can create the 'Department' target field and have it prefill department names associated with the documents based on information in the 'Source_URI' field. Set the condition that if the 'Source_URI' field contains 'financial' in its URI value, then prefill the target field 'Department' with the target value 'Finance' for the document.

Amazon Q can't create a target field if it has not already been created as an index field. After you create your index field, you can create a document metadata field using DocumentAttributeTarget. Amazon Q then will map your newly created metadata field to your index field.

", "refs": { "HookConfiguration$invocationCondition": "

The condition used for when a Lambda function should be invoked.

For example, you can specify a condition that if there are empty date-time values, then Amazon Q should invoke a function that inserts the current date-time.

", "InlineDocumentEnrichmentConfiguration$condition": null @@ -850,6 +883,7 @@ "base": null, "refs": { "DocumentAttribute$name": "

The identifier for the attribute.

", + "DocumentAttributeBoostingOverrideMap$key": null, "DocumentAttributeCondition$key": "

The identifier of the document attribute used for the condition.

For example, 'Source_URI' could be an identifier for the attribute or metadata field that contains source URIs associated with the documents.

Amazon Q currently doesn't support _document_body as an attribute key used for the condition.

", "DocumentAttributeTarget$key": "

The identifier of the target document attribute or metadata field. For example, 'Department' could be an identifier for the target attribute or metadata field that includes the department names associated with the documents.

" } @@ -861,7 +895,7 @@ } }, "DocumentAttributeTarget": { - "base": "

The target document attribute or metadata field you want to alter when ingesting documents into Amazon Q.

For example, you can delete all customer identification numbers associated with the documents, stored in the document metadata field called 'Customer_ID' by setting the target key as 'Customer_ID' and the deletion flag to TRUE. This removes all customer ID values in the field 'Customer_ID'. This would scrub personally identifiable information from each document's metadata.

Amazon Q can't create a target field if it has not already been created as an index field. After you create your index field, you can create a document metadata field using DocumentAttributeTarget . Amazon Q will then map your newly created document attribute to your index field.

You can also use this with DocumentAttributeCondition .

", + "base": "

The target document attribute or metadata field you want to alter when ingesting documents into Amazon Q.

For example, you can delete all customer identification numbers associated with the documents, stored in the document metadata field called 'Customer_ID' by setting the target key as 'Customer_ID' and the deletion flag to TRUE. This removes all customer ID values in the field 'Customer_ID'. This would scrub personally identifiable information from each document's metadata.

Amazon Q can't create a target field if it has not already been created as an index field. After you create your index field, you can create a document metadata field using DocumentAttributeTarget . Amazon Q will then map your newly created document attribute to your index field.

You can also use this with DocumentAttributeCondition .

", "refs": { "InlineDocumentEnrichmentConfiguration$target": null } @@ -1172,7 +1206,7 @@ } }, "HookConfiguration": { - "base": "

Provides the configuration information for invoking a Lambda function in Lambda to alter document metadata and content when ingesting documents into Amazon Q.

You can configure your Lambda function using PreExtractionHookConfiguration if you want to apply advanced alterations on the original or raw documents.

If you want to apply advanced alterations on the Amazon Q structured documents, you must configure your Lambda function using PostExtractionHookConfiguration.

You can only invoke one Lambda function. However, this function can invoke other functions it requires.

For more information, see Custom document enrichment.

", + "base": "

Provides the configuration information for invoking a Lambda function in Lambda to alter document metadata and content when ingesting documents into Amazon Q.

You can configure your Lambda function using PreExtractionHookConfiguration if you want to apply advanced alterations on the original or raw documents.

If you want to apply advanced alterations on the Amazon Q structured documents, you must configure your Lambda function using PostExtractionHookConfiguration.

You can only invoke one Lambda function. However, this function can invoke other functions it requires.

For more information, see Custom document enrichment.

", "refs": { "DocumentEnrichmentConfiguration$postExtractionHookConfiguration": null, "DocumentEnrichmentConfiguration$preExtractionHookConfiguration": null @@ -1275,7 +1309,7 @@ } }, "InlineDocumentEnrichmentConfiguration": { - "base": "

Provides the configuration information for applying basic logic to alter document metadata and content when ingesting documents into Amazon Q.

To apply advanced logic, to go beyond what you can do with basic logic, see HookConfiguration .

For more information, see Custom document enrichment.

", + "base": "

Provides the configuration information for applying basic logic to alter document metadata and content when ingesting documents into Amazon Q.

To apply advanced logic, to go beyond what you can do with basic logic, see HookConfiguration .

For more information, see Custom document enrichment.

", "refs": { "InlineDocumentEnrichmentConfigurations$member": null } @@ -1669,6 +1703,18 @@ "ListWebExperiencesResponse$nextToken": "

If the response is truncated, Amazon Q returns this token, which you can use in a later request to list the next set of messages.

" } }, + "NumberAttributeBoostingConfiguration": { + "base": "

Provides information on boosting NUMBER type document attributes.

For more information on how boosting document attributes work in Amazon Q, see Boosting using document attributes.

", + "refs": { + "DocumentAttributeBoostingConfiguration$numberConfiguration": "

Provides information on boosting NUMBER type document attributes.

" + } + }, + "NumberAttributeBoostingType": { + "base": null, + "refs": { + "NumberAttributeBoostingConfiguration$boostingType": "

Specifies how much a document attribute is boosted.

" + } + }, "OAuth2ClientCredentialConfiguration": { "base": "

Information about the OAuth 2.0 authentication credential/token used to configure a plugin.

", "refs": { @@ -1895,7 +1941,7 @@ "RuleType": { "base": null, "refs": { - "Rule$ruleType": "

The type fo rule.

" + "Rule$ruleType": "

The type of rule.

" } }, "Rules": { @@ -2028,6 +2074,7 @@ "SourceAttribution$snippet": "

The content extract from the document on which the generated response is based.

", "SourceAttribution$title": "

The title of the document which is the source for the Amazon Q generated response.

", "SourceAttribution$url": "

The URL of the document which is the source for the Amazon Q generated response.

", + "StringAttributeValueBoosting$key": null, "UpdateUserRequest$userId": "

The email id attached to the user.

", "UserAlias$userId": "

The identifier of the user id associated with the user aliases.

", "UserGroups$member": null, @@ -2036,6 +2083,30 @@ "ValidationExceptionField$name": "

The field name where the invalid entry was detected.

" } }, + "StringAttributeBoostingConfiguration": { + "base": "

Provides information on boosting STRING type document attributes.

For STRING and STRING_LIST type document attributes to be used for boosting on the console and the API, they must be enabled for search using the DocumentAttributeConfiguration object of the UpdateIndex API. If you haven't enabled searching on these attributes, you can't boost attributes of these data types on either the console or the API.

For more information on how boosting document attributes work in Amazon Q, see Boosting using document attributes.

", + "refs": { + "DocumentAttributeBoostingConfiguration$stringConfiguration": "

Provides information on boosting STRING type document attributes.

" + } + }, + "StringAttributeValueBoosting": { + "base": null, + "refs": { + "StringAttributeBoostingConfiguration$attributeValueBoosting": "

Specifies specific values of a STRING type document attribute being boosted.

" + } + }, + "StringAttributeValueBoostingLevel": { + "base": null, + "refs": { + "StringAttributeValueBoosting$value": null + } + }, + "StringListAttributeBoostingConfiguration": { + "base": "

Provides information on boosting STRING_LIST type document attributes.

For STRING and STRING_LIST type document attributes to be used for boosting on the console and the API, they must be enabled for search using the DocumentAttributeConfiguration object of the UpdateIndex API. If you haven't enabled searching on these attributes, you can't boost attributes of these data types on either the console or the API.

For more information on how boosting document attributes work in Amazon Q, see Boosting using document attributes.

", + "refs": { + "DocumentAttributeBoostingConfiguration$stringListConfiguration": "

Provides information on boosting STRING_LIST type document attributes.

" + } + }, "SubnetId": { "base": null, "refs": { @@ -2211,7 +2282,7 @@ "TopicDescription": { "base": null, "refs": { - "TopicConfiguration$description": "

A description for your topic control configuration. Use this outline how the large language model (LLM) should use this topic control configuration.

" + "TopicConfiguration$description": "

A description for your topic control configuration. Use this to outline how the large language model (LLM) should use this topic control configuration.

" } }, "UntagResourceRequest": { diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 8ed378172ba..4a8041be452 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -11569,9 +11569,12 @@ "endpoints" : { "ap-northeast-1" : { }, "ap-northeast-2" : { }, + "ap-northeast-3" : { }, "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-4" : { }, + "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, "eu-west-1" : { }, @@ -13288,6 +13291,13 @@ } } }, + "private-networks" : { + "endpoints" : { + "us-east-1" : { }, + "us-east-2" : { }, + "us-west-2" : { } + } + }, "profile" : { "endpoints" : { "af-south-1" : { }, @@ -26236,6 +26246,16 @@ } } }, + "api.pricing" : { + "defaults" : { + "credentialScope" : { + "service" : "pricing" + } + }, + "endpoints" : { + "us-iso-east-1" : { } + } + }, "api.sagemaker" : { "endpoints" : { "us-iso-east-1" : { } @@ -26267,6 +26287,11 @@ "us-iso-west-1" : { } } }, + "arc-zonal-shift" : { + "endpoints" : { + "us-iso-east-1" : { } + } + }, "athena" : { "endpoints" : { "us-iso-east-1" : { } @@ -27046,6 +27071,16 @@ } } }, + "api.pricing" : { + "defaults" : { + "credentialScope" : { + "service" : "pricing" + } + }, + "endpoints" : { + "us-isob-east-1" : { } + } + }, "api.sagemaker" : { "endpoints" : { "us-isob-east-1" : { } @@ -27069,6 +27104,11 @@ "us-isob-east-1" : { } } }, + "arc-zonal-shift" : { + "endpoints" : { + "us-isob-east-1" : { } + } + }, "autoscaling" : { "defaults" : { "protocols" : [ "http", "https" ] diff --git a/service/controltower/api.go b/service/controltower/api.go index 212b5ab8bbd..df4a2a7f370 100644 --- a/service/controltower/api.go +++ b/service/controltower/api.go @@ -110,6 +110,107 @@ func (c *ControlTower) DeleteLandingZoneWithContext(ctx aws.Context, input *Dele return out, req.Send() } +const opDisableBaseline = "DisableBaseline" + +// DisableBaselineRequest generates a "aws/request.Request" representing the +// client's request for the DisableBaseline 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 DisableBaseline for more information on using the DisableBaseline +// 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 DisableBaselineRequest method. +// req, resp := client.DisableBaselineRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/DisableBaseline +func (c *ControlTower) DisableBaselineRequest(input *DisableBaselineInput) (req *request.Request, output *DisableBaselineOutput) { + op := &request.Operation{ + Name: opDisableBaseline, + HTTPMethod: "POST", + HTTPPath: "/disable-baseline", + } + + if input == nil { + input = &DisableBaselineInput{} + } + + output = &DisableBaselineOutput{} + req = c.newRequest(op, input, output) + return +} + +// DisableBaseline API operation for AWS Control Tower. +// +// Disable an EnabledBaseline resource on the specified Target. This API starts +// an asynchronous operation to remove all resources deployed as part of the +// baseline enablement. The resource will vary depending on the enabled baseline. +// +// 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 Control Tower's +// API operation DisableBaseline for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ConflictException +// Updating or deleting the resource can cause an inconsistent state. +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. The limit is 10 concurrent +// operations. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/DisableBaseline +func (c *ControlTower) DisableBaseline(input *DisableBaselineInput) (*DisableBaselineOutput, error) { + req, out := c.DisableBaselineRequest(input) + return out, req.Send() +} + +// DisableBaselineWithContext is the same as DisableBaseline with the addition of +// the ability to pass a context and additional request options. +// +// See DisableBaseline 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 *ControlTower) DisableBaselineWithContext(ctx aws.Context, input *DisableBaselineInput, opts ...request.Option) (*DisableBaselineOutput, error) { + req, out := c.DisableBaselineRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDisableControl = "DisableControl" // DisableControlRequest generates a "aws/request.Request" representing the @@ -154,10 +255,10 @@ func (c *ControlTower) DisableControlRequest(input *DisableControlInput) (req *r // DisableControl API operation for AWS Control Tower. // // This API call turns off a control. It starts an asynchronous operation that -// deletes Amazon Web Services resources on the specified organizational unit -// and the accounts it contains. The resources will vary according to the control -// that you specify. For usage examples, see the Amazon Web Services Control -// Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// deletes AWS resources on the specified organizational unit and the accounts +// it contains. The resources will vary according to the control that you specify. +// For usage examples, see the Amazon Web Services Control Tower User Guide +// (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). // // 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 @@ -213,61 +314,58 @@ func (c *ControlTower) DisableControlWithContext(ctx aws.Context, input *Disable return out, req.Send() } -const opEnableControl = "EnableControl" +const opEnableBaseline = "EnableBaseline" -// EnableControlRequest generates a "aws/request.Request" representing the -// client's request for the EnableControl operation. The "output" return +// EnableBaselineRequest generates a "aws/request.Request" representing the +// client's request for the EnableBaseline 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 EnableControl for more information on using the EnableControl +// See EnableBaseline for more information on using the EnableBaseline // 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 EnableControlRequest method. -// req, resp := client.EnableControlRequest(params) +// // Example sending a request using the EnableBaselineRequest method. +// req, resp := client.EnableBaselineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnableControl -func (c *ControlTower) EnableControlRequest(input *EnableControlInput) (req *request.Request, output *EnableControlOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnableBaseline +func (c *ControlTower) EnableBaselineRequest(input *EnableBaselineInput) (req *request.Request, output *EnableBaselineOutput) { op := &request.Operation{ - Name: opEnableControl, + Name: opEnableBaseline, HTTPMethod: "POST", - HTTPPath: "/enable-control", + HTTPPath: "/enable-baseline", } if input == nil { - input = &EnableControlInput{} + input = &EnableBaselineInput{} } - output = &EnableControlOutput{} + output = &EnableBaselineOutput{} req = c.newRequest(op, input, output) return } -// EnableControl API operation for AWS Control Tower. +// EnableBaseline API operation for AWS Control Tower. // -// This API call activates a control. It starts an asynchronous operation that -// creates Amazon Web Services resources on the specified organizational unit -// and the accounts it contains. The resources created will vary according to -// the control that you specify. For usage examples, see the Amazon Web Services -// Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// Enable (apply) a Baseline to a Target. This API starts an asynchronous operation +// to deploy resources specified by the Baseline to the specified Target. // // 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 Control Tower's -// API operation EnableControl for usage and error information. +// API operation EnableBaseline for usage and error information. // // Returned Error Types: // @@ -294,82 +392,83 @@ func (c *ControlTower) EnableControlRequest(input *EnableControlInput) (req *req // - ResourceNotFoundException // The request references a resource that does not exist. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnableControl -func (c *ControlTower) EnableControl(input *EnableControlInput) (*EnableControlOutput, error) { - req, out := c.EnableControlRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnableBaseline +func (c *ControlTower) EnableBaseline(input *EnableBaselineInput) (*EnableBaselineOutput, error) { + req, out := c.EnableBaselineRequest(input) return out, req.Send() } -// EnableControlWithContext is the same as EnableControl with the addition of +// EnableBaselineWithContext is the same as EnableBaseline with the addition of // the ability to pass a context and additional request options. // -// See EnableControl for details on how to use this API operation. +// See EnableBaseline 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 *ControlTower) EnableControlWithContext(ctx aws.Context, input *EnableControlInput, opts ...request.Option) (*EnableControlOutput, error) { - req, out := c.EnableControlRequest(input) +func (c *ControlTower) EnableBaselineWithContext(ctx aws.Context, input *EnableBaselineInput, opts ...request.Option) (*EnableBaselineOutput, error) { + req, out := c.EnableBaselineRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetControlOperation = "GetControlOperation" +const opEnableControl = "EnableControl" -// GetControlOperationRequest generates a "aws/request.Request" representing the -// client's request for the GetControlOperation operation. The "output" return +// EnableControlRequest generates a "aws/request.Request" representing the +// client's request for the EnableControl 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 GetControlOperation for more information on using the GetControlOperation +// See EnableControl for more information on using the EnableControl // 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 GetControlOperationRequest method. -// req, resp := client.GetControlOperationRequest(params) +// // Example sending a request using the EnableControlRequest method. +// req, resp := client.EnableControlRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetControlOperation -func (c *ControlTower) GetControlOperationRequest(input *GetControlOperationInput) (req *request.Request, output *GetControlOperationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnableControl +func (c *ControlTower) EnableControlRequest(input *EnableControlInput) (req *request.Request, output *EnableControlOutput) { op := &request.Operation{ - Name: opGetControlOperation, + Name: opEnableControl, HTTPMethod: "POST", - HTTPPath: "/get-control-operation", + HTTPPath: "/enable-control", } if input == nil { - input = &GetControlOperationInput{} + input = &EnableControlInput{} } - output = &GetControlOperationOutput{} + output = &EnableControlOutput{} req = c.newRequest(op, input, output) return } -// GetControlOperation API operation for AWS Control Tower. +// EnableControl API operation for AWS Control Tower. // -// Returns the status of a particular EnableControl or DisableControl operation. -// Displays a message in case of error. Details for an operation are available -// for 90 days. For usage examples, see the Amazon Web Services Control Tower -// User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// This API call activates a control. It starts an asynchronous operation that +// creates Amazon Web Services resources on the specified organizational unit +// and the accounts it contains. The resources created will vary according to +// the control that you specify. For usage examples, see the Amazon Web Services +// Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). // // 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 Control Tower's -// API operation GetControlOperation for usage and error information. +// API operation EnableControl for usage and error information. // // Returned Error Types: // @@ -377,6 +476,13 @@ func (c *ControlTower) GetControlOperationRequest(input *GetControlOperationInpu // The input does not satisfy the constraints specified by an Amazon Web Services // service. // +// - ConflictException +// Updating or deleting the resource can cause an inconsistent state. +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. The limit is 10 concurrent +// operations. +// // - InternalServerException // An unexpected error occurred during processing of a request. // @@ -389,80 +495,79 @@ func (c *ControlTower) GetControlOperationRequest(input *GetControlOperationInpu // - ResourceNotFoundException // The request references a resource that does not exist. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetControlOperation -func (c *ControlTower) GetControlOperation(input *GetControlOperationInput) (*GetControlOperationOutput, error) { - req, out := c.GetControlOperationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/EnableControl +func (c *ControlTower) EnableControl(input *EnableControlInput) (*EnableControlOutput, error) { + req, out := c.EnableControlRequest(input) return out, req.Send() } -// GetControlOperationWithContext is the same as GetControlOperation with the addition of +// EnableControlWithContext is the same as EnableControl with the addition of // the ability to pass a context and additional request options. // -// See GetControlOperation for details on how to use this API operation. +// See EnableControl 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 *ControlTower) GetControlOperationWithContext(ctx aws.Context, input *GetControlOperationInput, opts ...request.Option) (*GetControlOperationOutput, error) { - req, out := c.GetControlOperationRequest(input) +func (c *ControlTower) EnableControlWithContext(ctx aws.Context, input *EnableControlInput, opts ...request.Option) (*EnableControlOutput, error) { + req, out := c.EnableControlRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetEnabledControl = "GetEnabledControl" +const opGetBaseline = "GetBaseline" -// GetEnabledControlRequest generates a "aws/request.Request" representing the -// client's request for the GetEnabledControl operation. The "output" return +// GetBaselineRequest generates a "aws/request.Request" representing the +// client's request for the GetBaseline 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 GetEnabledControl for more information on using the GetEnabledControl +// See GetBaseline for more information on using the GetBaseline // 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 GetEnabledControlRequest method. -// req, resp := client.GetEnabledControlRequest(params) +// // Example sending a request using the GetBaselineRequest method. +// req, resp := client.GetBaselineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledControl -func (c *ControlTower) GetEnabledControlRequest(input *GetEnabledControlInput) (req *request.Request, output *GetEnabledControlOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetBaseline +func (c *ControlTower) GetBaselineRequest(input *GetBaselineInput) (req *request.Request, output *GetBaselineOutput) { op := &request.Operation{ - Name: opGetEnabledControl, + Name: opGetBaseline, HTTPMethod: "POST", - HTTPPath: "/get-enabled-control", + HTTPPath: "/get-baseline", } if input == nil { - input = &GetEnabledControlInput{} + input = &GetBaselineInput{} } - output = &GetEnabledControlOutput{} + output = &GetBaselineOutput{} req = c.newRequest(op, input, output) return } -// GetEnabledControl API operation for AWS Control Tower. +// GetBaseline API operation for AWS Control Tower. // -// Retrieves details about an enabled control. For usage examples, see the Amazon -// Web Services Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// Retrieve details about an existing Baseline resource by specifying its identifier. // // 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 Control Tower's -// API operation GetEnabledControl for usage and error information. +// API operation GetBaseline for usage and error information. // // Returned Error Types: // @@ -482,80 +587,82 @@ func (c *ControlTower) GetEnabledControlRequest(input *GetEnabledControlInput) ( // - ResourceNotFoundException // The request references a resource that does not exist. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledControl -func (c *ControlTower) GetEnabledControl(input *GetEnabledControlInput) (*GetEnabledControlOutput, error) { - req, out := c.GetEnabledControlRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetBaseline +func (c *ControlTower) GetBaseline(input *GetBaselineInput) (*GetBaselineOutput, error) { + req, out := c.GetBaselineRequest(input) return out, req.Send() } -// GetEnabledControlWithContext is the same as GetEnabledControl with the addition of +// GetBaselineWithContext is the same as GetBaseline with the addition of // the ability to pass a context and additional request options. // -// See GetEnabledControl for details on how to use this API operation. +// See GetBaseline 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 *ControlTower) GetEnabledControlWithContext(ctx aws.Context, input *GetEnabledControlInput, opts ...request.Option) (*GetEnabledControlOutput, error) { - req, out := c.GetEnabledControlRequest(input) +func (c *ControlTower) GetBaselineWithContext(ctx aws.Context, input *GetBaselineInput, opts ...request.Option) (*GetBaselineOutput, error) { + req, out := c.GetBaselineRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opGetLandingZoneOperation = "GetLandingZoneOperation" +const opGetBaselineOperation = "GetBaselineOperation" -// GetLandingZoneOperationRequest generates a "aws/request.Request" representing the -// client's request for the GetLandingZoneOperation operation. The "output" return +// GetBaselineOperationRequest generates a "aws/request.Request" representing the +// client's request for the GetBaselineOperation 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 GetLandingZoneOperation for more information on using the GetLandingZoneOperation +// See GetBaselineOperation for more information on using the GetBaselineOperation // 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 GetLandingZoneOperationRequest method. -// req, resp := client.GetLandingZoneOperationRequest(params) +// // Example sending a request using the GetBaselineOperationRequest method. +// req, resp := client.GetBaselineOperationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetLandingZoneOperation -func (c *ControlTower) GetLandingZoneOperationRequest(input *GetLandingZoneOperationInput) (req *request.Request, output *GetLandingZoneOperationOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetBaselineOperation +func (c *ControlTower) GetBaselineOperationRequest(input *GetBaselineOperationInput) (req *request.Request, output *GetBaselineOperationOutput) { op := &request.Operation{ - Name: opGetLandingZoneOperation, + Name: opGetBaselineOperation, HTTPMethod: "POST", - HTTPPath: "/get-landingzone-operation", + HTTPPath: "/get-baseline-operation", } if input == nil { - input = &GetLandingZoneOperationInput{} + input = &GetBaselineOperationInput{} } - output = &GetLandingZoneOperationOutput{} + output = &GetBaselineOperationOutput{} req = c.newRequest(op, input, output) return } -// GetLandingZoneOperation API operation for AWS Control Tower. +// GetBaselineOperation API operation for AWS Control Tower. // -// Returns the status of the specified landing zone operation. Details for an -// operation are available for 60 days. +// Returns the details of an asynchronous baseline operation, as initiated by +// any of these APIs: EnableBaseline, DisableBaseline, UpdateEnabledBaseline, +// ResetEnabledBaseline. A status message is displayed in case of operation +// failure. // // 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 Control Tower's -// API operation GetLandingZoneOperation for usage and error information. +// API operation GetBaselineOperation for usage and error information. // // Returned Error Types: // @@ -575,87 +682,82 @@ func (c *ControlTower) GetLandingZoneOperationRequest(input *GetLandingZoneOpera // - ResourceNotFoundException // The request references a resource that does not exist. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetLandingZoneOperation -func (c *ControlTower) GetLandingZoneOperation(input *GetLandingZoneOperationInput) (*GetLandingZoneOperationOutput, error) { - req, out := c.GetLandingZoneOperationRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetBaselineOperation +func (c *ControlTower) GetBaselineOperation(input *GetBaselineOperationInput) (*GetBaselineOperationOutput, error) { + req, out := c.GetBaselineOperationRequest(input) return out, req.Send() } -// GetLandingZoneOperationWithContext is the same as GetLandingZoneOperation with the addition of +// GetBaselineOperationWithContext is the same as GetBaselineOperation with the addition of // the ability to pass a context and additional request options. // -// See GetLandingZoneOperation for details on how to use this API operation. +// See GetBaselineOperation 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 *ControlTower) GetLandingZoneOperationWithContext(ctx aws.Context, input *GetLandingZoneOperationInput, opts ...request.Option) (*GetLandingZoneOperationOutput, error) { - req, out := c.GetLandingZoneOperationRequest(input) +func (c *ControlTower) GetBaselineOperationWithContext(ctx aws.Context, input *GetBaselineOperationInput, opts ...request.Option) (*GetBaselineOperationOutput, error) { + req, out := c.GetBaselineOperationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opListEnabledControls = "ListEnabledControls" +const opGetControlOperation = "GetControlOperation" -// ListEnabledControlsRequest generates a "aws/request.Request" representing the -// client's request for the ListEnabledControls operation. The "output" return +// GetControlOperationRequest generates a "aws/request.Request" representing the +// client's request for the GetControlOperation 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 ListEnabledControls for more information on using the ListEnabledControls +// See GetControlOperation for more information on using the GetControlOperation // 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 ListEnabledControlsRequest method. -// req, resp := client.ListEnabledControlsRequest(params) +// // Example sending a request using the GetControlOperationRequest method. +// req, resp := client.GetControlOperationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListEnabledControls -func (c *ControlTower) ListEnabledControlsRequest(input *ListEnabledControlsInput) (req *request.Request, output *ListEnabledControlsOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetControlOperation +func (c *ControlTower) GetControlOperationRequest(input *GetControlOperationInput) (req *request.Request, output *GetControlOperationOutput) { op := &request.Operation{ - Name: opListEnabledControls, + Name: opGetControlOperation, HTTPMethod: "POST", - HTTPPath: "/list-enabled-controls", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "maxResults", - TruncationToken: "", - }, + HTTPPath: "/get-control-operation", } if input == nil { - input = &ListEnabledControlsInput{} + input = &GetControlOperationInput{} } - output = &ListEnabledControlsOutput{} + output = &GetControlOperationOutput{} req = c.newRequest(op, input, output) return } -// ListEnabledControls API operation for AWS Control Tower. +// GetControlOperation API operation for AWS Control Tower. // -// Lists the controls enabled by Amazon Web Services Control Tower on the specified -// organizational unit and the accounts it contains. For usage examples, see -// the Amazon Web Services Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// Returns the status of a particular EnableControl or DisableControl operation. +// Displays a message in case of error. Details for an operation are available +// for 90 days. For usage examples, see the Amazon Web Services Control Tower +// User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). // // 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 Control Tower's -// API operation ListEnabledControls for usage and error information. +// API operation GetControlOperation for usage and error information. // // Returned Error Types: // @@ -675,140 +777,79 @@ func (c *ControlTower) ListEnabledControlsRequest(input *ListEnabledControlsInpu // - ResourceNotFoundException // The request references a resource that does not exist. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListEnabledControls -func (c *ControlTower) ListEnabledControls(input *ListEnabledControlsInput) (*ListEnabledControlsOutput, error) { - req, out := c.ListEnabledControlsRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetControlOperation +func (c *ControlTower) GetControlOperation(input *GetControlOperationInput) (*GetControlOperationOutput, error) { + req, out := c.GetControlOperationRequest(input) return out, req.Send() } -// ListEnabledControlsWithContext is the same as ListEnabledControls with the addition of +// GetControlOperationWithContext is the same as GetControlOperation with the addition of // the ability to pass a context and additional request options. // -// See ListEnabledControls for details on how to use this API operation. +// See GetControlOperation 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 *ControlTower) ListEnabledControlsWithContext(ctx aws.Context, input *ListEnabledControlsInput, opts ...request.Option) (*ListEnabledControlsOutput, error) { - req, out := c.ListEnabledControlsRequest(input) +func (c *ControlTower) GetControlOperationWithContext(ctx aws.Context, input *GetControlOperationInput, opts ...request.Option) (*GetControlOperationOutput, error) { + req, out := c.GetControlOperationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListEnabledControlsPages iterates over the pages of a ListEnabledControls operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListEnabledControls method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListEnabledControls operation. -// pageNum := 0 -// err := client.ListEnabledControlsPages(params, -// func(page *controltower.ListEnabledControlsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *ControlTower) ListEnabledControlsPages(input *ListEnabledControlsInput, fn func(*ListEnabledControlsOutput, bool) bool) error { - return c.ListEnabledControlsPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListEnabledControlsPagesWithContext same as ListEnabledControlsPages except -// it takes a Context and allows setting request options on the pages. -// -// 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 *ControlTower) ListEnabledControlsPagesWithContext(ctx aws.Context, input *ListEnabledControlsInput, fn func(*ListEnabledControlsOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListEnabledControlsInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListEnabledControlsRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListEnabledControlsOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListLandingZones = "ListLandingZones" +const opGetEnabledBaseline = "GetEnabledBaseline" -// ListLandingZonesRequest generates a "aws/request.Request" representing the -// client's request for the ListLandingZones operation. The "output" return +// GetEnabledBaselineRequest generates a "aws/request.Request" representing the +// client's request for the GetEnabledBaseline 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 ListLandingZones for more information on using the ListLandingZones +// See GetEnabledBaseline for more information on using the GetEnabledBaseline // 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 ListLandingZonesRequest method. -// req, resp := client.ListLandingZonesRequest(params) +// // Example sending a request using the GetEnabledBaselineRequest method. +// req, resp := client.GetEnabledBaselineRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListLandingZones -func (c *ControlTower) ListLandingZonesRequest(input *ListLandingZonesInput) (req *request.Request, output *ListLandingZonesOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledBaseline +func (c *ControlTower) GetEnabledBaselineRequest(input *GetEnabledBaselineInput) (req *request.Request, output *GetEnabledBaselineOutput) { op := &request.Operation{ - Name: opListLandingZones, + Name: opGetEnabledBaseline, HTTPMethod: "POST", - HTTPPath: "/list-landingzones", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "maxResults", - TruncationToken: "", - }, + HTTPPath: "/get-enabled-baseline", } if input == nil { - input = &ListLandingZonesInput{} + input = &GetEnabledBaselineInput{} } - output = &ListLandingZonesOutput{} + output = &GetEnabledBaselineOutput{} req = c.newRequest(op, input, output) return } -// ListLandingZones API operation for AWS Control Tower. -// -// Returns the landing zone ARN for the landing zone deployed in your managed -// account. This API also creates an ARN for existing accounts that do not yet -// have a landing zone ARN. +// GetEnabledBaseline API operation for AWS Control Tower. // -// Returns one landing zone ARN. +// Retrieve details of an EnabledBaseline resource by specifying its identifier. // // 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 Control Tower's -// API operation ListLandingZones for usage and error information. +// API operation GetEnabledBaseline for usage and error information. // // Returned Error Types: // @@ -825,131 +866,83 @@ func (c *ControlTower) ListLandingZonesRequest(input *ListLandingZonesInput) (re // - ThrottlingException // The request was denied due to request throttling. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListLandingZones -func (c *ControlTower) ListLandingZones(input *ListLandingZonesInput) (*ListLandingZonesOutput, error) { - req, out := c.ListLandingZonesRequest(input) +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledBaseline +func (c *ControlTower) GetEnabledBaseline(input *GetEnabledBaselineInput) (*GetEnabledBaselineOutput, error) { + req, out := c.GetEnabledBaselineRequest(input) return out, req.Send() } -// ListLandingZonesWithContext is the same as ListLandingZones with the addition of +// GetEnabledBaselineWithContext is the same as GetEnabledBaseline with the addition of // the ability to pass a context and additional request options. // -// See ListLandingZones for details on how to use this API operation. +// See GetEnabledBaseline 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 *ControlTower) ListLandingZonesWithContext(ctx aws.Context, input *ListLandingZonesInput, opts ...request.Option) (*ListLandingZonesOutput, error) { - req, out := c.ListLandingZonesRequest(input) +func (c *ControlTower) GetEnabledBaselineWithContext(ctx aws.Context, input *GetEnabledBaselineInput, opts ...request.Option) (*GetEnabledBaselineOutput, error) { + req, out := c.GetEnabledBaselineRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListLandingZonesPages iterates over the pages of a ListLandingZones operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListLandingZones method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListLandingZones operation. -// pageNum := 0 -// err := client.ListLandingZonesPages(params, -// func(page *controltower.ListLandingZonesOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -func (c *ControlTower) ListLandingZonesPages(input *ListLandingZonesInput, fn func(*ListLandingZonesOutput, bool) bool) error { - return c.ListLandingZonesPagesWithContext(aws.BackgroundContext(), input, fn) -} - -// ListLandingZonesPagesWithContext same as ListLandingZonesPages except -// it takes a Context and allows setting request options on the pages. -// -// 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 *ControlTower) ListLandingZonesPagesWithContext(ctx aws.Context, input *ListLandingZonesInput, fn func(*ListLandingZonesOutput, bool) bool, opts ...request.Option) error { - p := request.Pagination{ - NewRequest: func() (*request.Request, error) { - var inCpy *ListLandingZonesInput - if input != nil { - tmp := *input - inCpy = &tmp - } - req, _ := c.ListLandingZonesRequest(inCpy) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return req, nil - }, - } - - for p.Next() { - if !fn(p.Page().(*ListLandingZonesOutput), !p.HasNextPage()) { - break - } - } - - return p.Err() -} - -const opListTagsForResource = "ListTagsForResource" +const opGetEnabledControl = "GetEnabledControl" -// ListTagsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the ListTagsForResource operation. The "output" return +// GetEnabledControlRequest generates a "aws/request.Request" representing the +// client's request for the GetEnabledControl 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 ListTagsForResource for more information on using the ListTagsForResource +// See GetEnabledControl for more information on using the GetEnabledControl // 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 ListTagsForResourceRequest method. -// req, resp := client.ListTagsForResourceRequest(params) +// // Example sending a request using the GetEnabledControlRequest method. +// req, resp := client.GetEnabledControlRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListTagsForResource -func (c *ControlTower) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledControl +func (c *ControlTower) GetEnabledControlRequest(input *GetEnabledControlInput) (req *request.Request, output *GetEnabledControlOutput) { op := &request.Operation{ - Name: opListTagsForResource, - HTTPMethod: "GET", - HTTPPath: "/tags/{resourceArn}", + Name: opGetEnabledControl, + HTTPMethod: "POST", + HTTPPath: "/get-enabled-control", } if input == nil { - input = &ListTagsForResourceInput{} + input = &GetEnabledControlInput{} } - output = &ListTagsForResourceOutput{} + output = &GetEnabledControlOutput{} req = c.newRequest(op, input, output) return } -// ListTagsForResource API operation for AWS Control Tower. +// GetEnabledControl API operation for AWS Control Tower. // -// Returns a list of tags associated with the resource. For usage examples, -// see the Amazon Web Services Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// Retrieves details about an enabled control. For usage examples, see the Amazon +// Web Services Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). // // 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 Control Tower's -// API operation ListTagsForResource for usage and error information. +// API operation GetEnabledControl for usage and error information. // // Returned Error Types: // @@ -960,84 +953,89 @@ func (c *ControlTower) ListTagsForResourceRequest(input *ListTagsForResourceInpu // - InternalServerException // An unexpected error occurred during processing of a request. // +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// // - ResourceNotFoundException // The request references a resource that does not exist. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListTagsForResource -func (c *ControlTower) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { - req, out := c.ListTagsForResourceRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetEnabledControl +func (c *ControlTower) GetEnabledControl(input *GetEnabledControlInput) (*GetEnabledControlOutput, error) { + req, out := c.GetEnabledControlRequest(input) return out, req.Send() } -// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// GetEnabledControlWithContext is the same as GetEnabledControl with the addition of // the ability to pass a context and additional request options. // -// See ListTagsForResource for details on how to use this API operation. +// See GetEnabledControl 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 *ControlTower) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { - req, out := c.ListTagsForResourceRequest(input) +func (c *ControlTower) GetEnabledControlWithContext(ctx aws.Context, input *GetEnabledControlInput, opts ...request.Option) (*GetEnabledControlOutput, error) { + req, out := c.GetEnabledControlRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opResetLandingZone = "ResetLandingZone" +const opGetLandingZoneOperation = "GetLandingZoneOperation" -// ResetLandingZoneRequest generates a "aws/request.Request" representing the -// client's request for the ResetLandingZone operation. The "output" return +// GetLandingZoneOperationRequest generates a "aws/request.Request" representing the +// client's request for the GetLandingZoneOperation 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 ResetLandingZone for more information on using the ResetLandingZone +// See GetLandingZoneOperation for more information on using the GetLandingZoneOperation // 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 ResetLandingZoneRequest method. -// req, resp := client.ResetLandingZoneRequest(params) +// // Example sending a request using the GetLandingZoneOperationRequest method. +// req, resp := client.GetLandingZoneOperationRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ResetLandingZone -func (c *ControlTower) ResetLandingZoneRequest(input *ResetLandingZoneInput) (req *request.Request, output *ResetLandingZoneOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetLandingZoneOperation +func (c *ControlTower) GetLandingZoneOperationRequest(input *GetLandingZoneOperationInput) (req *request.Request, output *GetLandingZoneOperationOutput) { op := &request.Operation{ - Name: opResetLandingZone, + Name: opGetLandingZoneOperation, HTTPMethod: "POST", - HTTPPath: "/reset-landingzone", + HTTPPath: "/get-landingzone-operation", } if input == nil { - input = &ResetLandingZoneInput{} + input = &GetLandingZoneOperationInput{} } - output = &ResetLandingZoneOutput{} + output = &GetLandingZoneOperationOutput{} req = c.newRequest(op, input, output) return } -// ResetLandingZone API operation for AWS Control Tower. +// GetLandingZoneOperation API operation for AWS Control Tower. // -// This API call resets a landing zone. It starts an asynchronous operation -// that resets the landing zone to the parameters specified in its original -// configuration. +// Returns the status of the specified landing zone operation. Details for an +// operation are available for 60 days. // // 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 Control Tower's -// API operation ResetLandingZone for usage and error information. +// API operation GetLandingZoneOperation for usage and error information. // // Returned Error Types: // @@ -1045,9 +1043,6 @@ func (c *ControlTower) ResetLandingZoneRequest(input *ResetLandingZoneInput) (re // The input does not satisfy the constraints specified by an Amazon Web Services // service. // -// - ConflictException -// Updating or deleting the resource can cause an inconsistent state. -// // - InternalServerException // An unexpected error occurred during processing of a request. // @@ -1060,81 +1055,85 @@ func (c *ControlTower) ResetLandingZoneRequest(input *ResetLandingZoneInput) (re // - ResourceNotFoundException // The request references a resource that does not exist. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ResetLandingZone -func (c *ControlTower) ResetLandingZone(input *ResetLandingZoneInput) (*ResetLandingZoneOutput, error) { - req, out := c.ResetLandingZoneRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/GetLandingZoneOperation +func (c *ControlTower) GetLandingZoneOperation(input *GetLandingZoneOperationInput) (*GetLandingZoneOperationOutput, error) { + req, out := c.GetLandingZoneOperationRequest(input) return out, req.Send() } -// ResetLandingZoneWithContext is the same as ResetLandingZone with the addition of +// GetLandingZoneOperationWithContext is the same as GetLandingZoneOperation with the addition of // the ability to pass a context and additional request options. // -// See ResetLandingZone for details on how to use this API operation. +// See GetLandingZoneOperation 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 *ControlTower) ResetLandingZoneWithContext(ctx aws.Context, input *ResetLandingZoneInput, opts ...request.Option) (*ResetLandingZoneOutput, error) { - req, out := c.ResetLandingZoneRequest(input) +func (c *ControlTower) GetLandingZoneOperationWithContext(ctx aws.Context, input *GetLandingZoneOperationInput, opts ...request.Option) (*GetLandingZoneOperationOutput, error) { + req, out := c.GetLandingZoneOperationRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opTagResource = "TagResource" +const opListBaselines = "ListBaselines" -// TagResourceRequest generates a "aws/request.Request" representing the -// client's request for the TagResource operation. The "output" return +// ListBaselinesRequest generates a "aws/request.Request" representing the +// client's request for the ListBaselines 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 TagResource for more information on using the TagResource +// See ListBaselines for more information on using the ListBaselines // 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 TagResourceRequest method. -// req, resp := client.TagResourceRequest(params) +// // Example sending a request using the ListBaselinesRequest method. +// req, resp := client.ListBaselinesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/TagResource -func (c *ControlTower) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListBaselines +func (c *ControlTower) ListBaselinesRequest(input *ListBaselinesInput) (req *request.Request, output *ListBaselinesOutput) { op := &request.Operation{ - Name: opTagResource, + Name: opListBaselines, HTTPMethod: "POST", - HTTPPath: "/tags/{resourceArn}", + HTTPPath: "/list-baselines", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &TagResourceInput{} + input = &ListBaselinesInput{} } - output = &TagResourceOutput{} + output = &ListBaselinesOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// TagResource API operation for AWS Control Tower. +// ListBaselines API operation for AWS Control Tower. // -// Applies tags to a resource. For usage examples, see the Amazon Web Services -// Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// Returns a summary list of all available baselines. // // 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 Control Tower's -// API operation TagResource for usage and error information. +// API operation ListBaselines for usage and error information. // // Returned Error Types: // @@ -1145,84 +1144,144 @@ func (c *ControlTower) TagResourceRequest(input *TagResourceInput) (req *request // - InternalServerException // An unexpected error occurred during processing of a request. // -// - ResourceNotFoundException -// The request references a resource that does not exist. +// - AccessDeniedException +// You do not have sufficient access to perform this action. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/TagResource -func (c *ControlTower) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListBaselines +func (c *ControlTower) ListBaselines(input *ListBaselinesInput) (*ListBaselinesOutput, error) { + req, out := c.ListBaselinesRequest(input) return out, req.Send() } -// TagResourceWithContext is the same as TagResource with the addition of +// ListBaselinesWithContext is the same as ListBaselines with the addition of // the ability to pass a context and additional request options. // -// See TagResource for details on how to use this API operation. +// See ListBaselines 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 *ControlTower) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { - req, out := c.TagResourceRequest(input) +func (c *ControlTower) ListBaselinesWithContext(ctx aws.Context, input *ListBaselinesInput, opts ...request.Option) (*ListBaselinesOutput, error) { + req, out := c.ListBaselinesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opUntagResource = "UntagResource" +// ListBaselinesPages iterates over the pages of a ListBaselines operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListBaselines method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListBaselines operation. +// pageNum := 0 +// err := client.ListBaselinesPages(params, +// func(page *controltower.ListBaselinesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ControlTower) ListBaselinesPages(input *ListBaselinesInput, fn func(*ListBaselinesOutput, bool) bool) error { + return c.ListBaselinesPagesWithContext(aws.BackgroundContext(), input, fn) +} -// UntagResourceRequest generates a "aws/request.Request" representing the -// client's request for the UntagResource operation. The "output" return +// ListBaselinesPagesWithContext same as ListBaselinesPages except +// it takes a Context and allows setting request options on the pages. +// +// 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 *ControlTower) ListBaselinesPagesWithContext(ctx aws.Context, input *ListBaselinesInput, fn func(*ListBaselinesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListBaselinesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListBaselinesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListBaselinesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListEnabledBaselines = "ListEnabledBaselines" + +// ListEnabledBaselinesRequest generates a "aws/request.Request" representing the +// client's request for the ListEnabledBaselines 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 UntagResource for more information on using the UntagResource +// See ListEnabledBaselines for more information on using the ListEnabledBaselines // 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 UntagResourceRequest method. -// req, resp := client.UntagResourceRequest(params) +// // Example sending a request using the ListEnabledBaselinesRequest method. +// req, resp := client.ListEnabledBaselinesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/UntagResource -func (c *ControlTower) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListEnabledBaselines +func (c *ControlTower) ListEnabledBaselinesRequest(input *ListEnabledBaselinesInput) (req *request.Request, output *ListEnabledBaselinesOutput) { op := &request.Operation{ - Name: opUntagResource, - HTTPMethod: "DELETE", - HTTPPath: "/tags/{resourceArn}", + Name: opListEnabledBaselines, + HTTPMethod: "POST", + HTTPPath: "/list-enabled-baselines", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &UntagResourceInput{} + input = &ListEnabledBaselinesInput{} } - output = &UntagResourceOutput{} + output = &ListEnabledBaselinesOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UntagResource API operation for AWS Control Tower. +// ListEnabledBaselines API operation for AWS Control Tower. // -// Removes tags from a resource. For usage examples, see the Amazon Web Services -// Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// Returns a list of summaries describing EnabledBaseline resources. You can +// filter the list by the corresponding Baseline or Target of the EnabledBaseline +// resources. // // 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 Control Tower's -// API operation UntagResource for usage and error information. +// API operation ListEnabledBaselines for usage and error information. // // Returned Error Types: // @@ -1233,101 +1292,1456 @@ func (c *ControlTower) UntagResourceRequest(input *UntagResourceInput) (req *req // - InternalServerException // An unexpected error occurred during processing of a request. // -// - ResourceNotFoundException -// The request references a resource that does not exist. +// - AccessDeniedException +// You do not have sufficient access to perform this action. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/UntagResource -func (c *ControlTower) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListEnabledBaselines +func (c *ControlTower) ListEnabledBaselines(input *ListEnabledBaselinesInput) (*ListEnabledBaselinesOutput, error) { + req, out := c.ListEnabledBaselinesRequest(input) return out, req.Send() } -// UntagResourceWithContext is the same as UntagResource with the addition of +// ListEnabledBaselinesWithContext is the same as ListEnabledBaselines with the addition of // the ability to pass a context and additional request options. // -// See UntagResource for details on how to use this API operation. +// See ListEnabledBaselines 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 *ControlTower) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +func (c *ControlTower) ListEnabledBaselinesWithContext(ctx aws.Context, input *ListEnabledBaselinesInput, opts ...request.Option) (*ListEnabledBaselinesOutput, error) { + req, out := c.ListEnabledBaselinesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// You do not have sufficient access to perform this action. -type AccessDeniedException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` - - Message_ *string `locationName:"message" type:"string"` -} - -// String returns the string representation. +// ListEnabledBaselinesPages iterates over the pages of a ListEnabledBaselines operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. // -// 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 AccessDeniedException) String() string { - return awsutil.Prettify(s) +// See ListEnabledBaselines method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListEnabledBaselines operation. +// pageNum := 0 +// err := client.ListEnabledBaselinesPages(params, +// func(page *controltower.ListEnabledBaselinesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ControlTower) ListEnabledBaselinesPages(input *ListEnabledBaselinesInput, fn func(*ListEnabledBaselinesOutput, bool) bool) error { + return c.ListEnabledBaselinesPagesWithContext(aws.BackgroundContext(), input, fn) } -// GoString returns the string representation. +// ListEnabledBaselinesPagesWithContext same as ListEnabledBaselinesPages except +// it takes a Context and allows setting request options on the pages. // -// 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 AccessDeniedException) GoString() string { - return s.String() -} +// 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 *ControlTower) ListEnabledBaselinesPagesWithContext(ctx aws.Context, input *ListEnabledBaselinesInput, fn func(*ListEnabledBaselinesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnabledBaselinesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnabledBaselinesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } -func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { - return &AccessDeniedException{ - RespMetadata: v, + for p.Next() { + if !fn(p.Page().(*ListEnabledBaselinesOutput), !p.HasNextPage()) { + break + } } -} -// Code returns the exception type name. -func (s *AccessDeniedException) Code() string { - return "AccessDeniedException" + return p.Err() } -// Message returns the exception's message. -func (s *AccessDeniedException) Message() string { - if s.Message_ != nil { - return *s.Message_ +const opListEnabledControls = "ListEnabledControls" + +// ListEnabledControlsRequest generates a "aws/request.Request" representing the +// client's request for the ListEnabledControls 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 ListEnabledControls for more information on using the ListEnabledControls +// 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 ListEnabledControlsRequest method. +// req, resp := client.ListEnabledControlsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListEnabledControls +func (c *ControlTower) ListEnabledControlsRequest(input *ListEnabledControlsInput) (req *request.Request, output *ListEnabledControlsOutput) { + op := &request.Operation{ + Name: opListEnabledControls, + HTTPMethod: "POST", + HTTPPath: "/list-enabled-controls", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *AccessDeniedException) OrigErr() error { - return nil -} + if input == nil { + input = &ListEnabledControlsInput{} + } -func (s *AccessDeniedException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) + output = &ListEnabledControlsOutput{} + req = c.newRequest(op, input, output) + return } -// Status code returns the HTTP status code for the request's response error. -func (s *AccessDeniedException) StatusCode() int { - return s.RespMetadata.StatusCode +// ListEnabledControls API operation for AWS Control Tower. +// +// Lists the controls enabled by Amazon Web Services Control Tower on the specified +// organizational unit and the accounts it contains. For usage examples, see +// the Amazon Web Services Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// +// 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 Control Tower's +// API operation ListEnabledControls for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListEnabledControls +func (c *ControlTower) ListEnabledControls(input *ListEnabledControlsInput) (*ListEnabledControlsOutput, error) { + req, out := c.ListEnabledControlsRequest(input) + return out, req.Send() +} + +// ListEnabledControlsWithContext is the same as ListEnabledControls with the addition of +// the ability to pass a context and additional request options. +// +// See ListEnabledControls 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 *ControlTower) ListEnabledControlsWithContext(ctx aws.Context, input *ListEnabledControlsInput, opts ...request.Option) (*ListEnabledControlsOutput, error) { + req, out := c.ListEnabledControlsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListEnabledControlsPages iterates over the pages of a ListEnabledControls operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListEnabledControls method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListEnabledControls operation. +// pageNum := 0 +// err := client.ListEnabledControlsPages(params, +// func(page *controltower.ListEnabledControlsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ControlTower) ListEnabledControlsPages(input *ListEnabledControlsInput, fn func(*ListEnabledControlsOutput, bool) bool) error { + return c.ListEnabledControlsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListEnabledControlsPagesWithContext same as ListEnabledControlsPages except +// it takes a Context and allows setting request options on the pages. +// +// 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 *ControlTower) ListEnabledControlsPagesWithContext(ctx aws.Context, input *ListEnabledControlsInput, fn func(*ListEnabledControlsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListEnabledControlsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListEnabledControlsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListEnabledControlsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListLandingZones = "ListLandingZones" + +// ListLandingZonesRequest generates a "aws/request.Request" representing the +// client's request for the ListLandingZones 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 ListLandingZones for more information on using the ListLandingZones +// 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 ListLandingZonesRequest method. +// req, resp := client.ListLandingZonesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListLandingZones +func (c *ControlTower) ListLandingZonesRequest(input *ListLandingZonesInput) (req *request.Request, output *ListLandingZonesOutput) { + op := &request.Operation{ + Name: opListLandingZones, + HTTPMethod: "POST", + HTTPPath: "/list-landingzones", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListLandingZonesInput{} + } + + output = &ListLandingZonesOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListLandingZones API operation for AWS Control Tower. +// +// Returns the landing zone ARN for the landing zone deployed in your managed +// account. This API also creates an ARN for existing accounts that do not yet +// have a landing zone ARN. +// +// Returns one landing zone ARN. +// +// 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 Control Tower's +// API operation ListLandingZones for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListLandingZones +func (c *ControlTower) ListLandingZones(input *ListLandingZonesInput) (*ListLandingZonesOutput, error) { + req, out := c.ListLandingZonesRequest(input) + return out, req.Send() +} + +// ListLandingZonesWithContext is the same as ListLandingZones with the addition of +// the ability to pass a context and additional request options. +// +// See ListLandingZones 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 *ControlTower) ListLandingZonesWithContext(ctx aws.Context, input *ListLandingZonesInput, opts ...request.Option) (*ListLandingZonesOutput, error) { + req, out := c.ListLandingZonesRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListLandingZonesPages iterates over the pages of a ListLandingZones operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListLandingZones method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListLandingZones operation. +// pageNum := 0 +// err := client.ListLandingZonesPages(params, +// func(page *controltower.ListLandingZonesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *ControlTower) ListLandingZonesPages(input *ListLandingZonesInput, fn func(*ListLandingZonesOutput, bool) bool) error { + return c.ListLandingZonesPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListLandingZonesPagesWithContext same as ListLandingZonesPages except +// it takes a Context and allows setting request options on the pages. +// +// 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 *ControlTower) ListLandingZonesPagesWithContext(ctx aws.Context, input *ListLandingZonesInput, fn func(*ListLandingZonesOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListLandingZonesInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListLandingZonesRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListLandingZonesOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource 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 ListTagsForResource for more information on using the ListTagsForResource +// 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 ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListTagsForResource +func (c *ControlTower) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "GET", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for AWS Control Tower. +// +// Returns a list of tags associated with the resource. For usage examples, +// see the Amazon Web Services Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// +// 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 Control Tower's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ListTagsForResource +func (c *ControlTower) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + return out, req.Send() +} + +// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of +// the ability to pass a context and additional request options. +// +// See ListTagsForResource 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 *ControlTower) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) { + req, out := c.ListTagsForResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opResetEnabledBaseline = "ResetEnabledBaseline" + +// ResetEnabledBaselineRequest generates a "aws/request.Request" representing the +// client's request for the ResetEnabledBaseline 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 ResetEnabledBaseline for more information on using the ResetEnabledBaseline +// 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 ResetEnabledBaselineRequest method. +// req, resp := client.ResetEnabledBaselineRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ResetEnabledBaseline +func (c *ControlTower) ResetEnabledBaselineRequest(input *ResetEnabledBaselineInput) (req *request.Request, output *ResetEnabledBaselineOutput) { + op := &request.Operation{ + Name: opResetEnabledBaseline, + HTTPMethod: "POST", + HTTPPath: "/reset-enabled-baseline", + } + + if input == nil { + input = &ResetEnabledBaselineInput{} + } + + output = &ResetEnabledBaselineOutput{} + req = c.newRequest(op, input, output) + return +} + +// ResetEnabledBaseline API operation for AWS Control Tower. +// +// Re-enables an EnabledBaseline resource. For example, this API can re-apply +// the existing Baseline after a new member account is moved to the target OU. +// +// 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 Control Tower's +// API operation ResetEnabledBaseline for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ConflictException +// Updating or deleting the resource can cause an inconsistent state. +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. The limit is 10 concurrent +// operations. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ResetEnabledBaseline +func (c *ControlTower) ResetEnabledBaseline(input *ResetEnabledBaselineInput) (*ResetEnabledBaselineOutput, error) { + req, out := c.ResetEnabledBaselineRequest(input) + return out, req.Send() +} + +// ResetEnabledBaselineWithContext is the same as ResetEnabledBaseline with the addition of +// the ability to pass a context and additional request options. +// +// See ResetEnabledBaseline 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 *ControlTower) ResetEnabledBaselineWithContext(ctx aws.Context, input *ResetEnabledBaselineInput, opts ...request.Option) (*ResetEnabledBaselineOutput, error) { + req, out := c.ResetEnabledBaselineRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opResetLandingZone = "ResetLandingZone" + +// ResetLandingZoneRequest generates a "aws/request.Request" representing the +// client's request for the ResetLandingZone 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 ResetLandingZone for more information on using the ResetLandingZone +// 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 ResetLandingZoneRequest method. +// req, resp := client.ResetLandingZoneRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ResetLandingZone +func (c *ControlTower) ResetLandingZoneRequest(input *ResetLandingZoneInput) (req *request.Request, output *ResetLandingZoneOutput) { + op := &request.Operation{ + Name: opResetLandingZone, + HTTPMethod: "POST", + HTTPPath: "/reset-landingzone", + } + + if input == nil { + input = &ResetLandingZoneInput{} + } + + output = &ResetLandingZoneOutput{} + req = c.newRequest(op, input, output) + return +} + +// ResetLandingZone API operation for AWS Control Tower. +// +// This API call resets a landing zone. It starts an asynchronous operation +// that resets the landing zone to the parameters specified in its original +// configuration. +// +// 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 Control Tower's +// API operation ResetLandingZone for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ConflictException +// Updating or deleting the resource can cause an inconsistent state. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/ResetLandingZone +func (c *ControlTower) ResetLandingZone(input *ResetLandingZoneInput) (*ResetLandingZoneOutput, error) { + req, out := c.ResetLandingZoneRequest(input) + return out, req.Send() +} + +// ResetLandingZoneWithContext is the same as ResetLandingZone with the addition of +// the ability to pass a context and additional request options. +// +// See ResetLandingZone 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 *ControlTower) ResetLandingZoneWithContext(ctx aws.Context, input *ResetLandingZoneInput, opts ...request.Option) (*ResetLandingZoneOutput, error) { + req, out := c.ResetLandingZoneRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opTagResource = "TagResource" + +// TagResourceRequest generates a "aws/request.Request" representing the +// client's request for the TagResource 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 TagResource for more information on using the TagResource +// 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 TagResourceRequest method. +// req, resp := client.TagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/TagResource +func (c *ControlTower) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) { + op := &request.Operation{ + Name: opTagResource, + HTTPMethod: "POST", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &TagResourceInput{} + } + + output = &TagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// TagResource API operation for AWS Control Tower. +// +// Applies tags to a resource. For usage examples, see the Amazon Web Services +// Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// +// 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 Control Tower's +// API operation TagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/TagResource +func (c *ControlTower) TagResource(input *TagResourceInput) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + return out, req.Send() +} + +// TagResourceWithContext is the same as TagResource with the addition of +// the ability to pass a context and additional request options. +// +// See TagResource 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 *ControlTower) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) { + req, out := c.TagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUntagResource = "UntagResource" + +// UntagResourceRequest generates a "aws/request.Request" representing the +// client's request for the UntagResource 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 UntagResource for more information on using the UntagResource +// 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 UntagResourceRequest method. +// req, resp := client.UntagResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/UntagResource +func (c *ControlTower) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) { + op := &request.Operation{ + Name: opUntagResource, + HTTPMethod: "DELETE", + HTTPPath: "/tags/{resourceArn}", + } + + if input == nil { + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for AWS Control Tower. +// +// Removes tags from a resource. For usage examples, see the Amazon Web Services +// Control Tower User Guide (https://docs.aws.amazon.com/controltower/latest/userguide/control-api-examples-short.html). +// +// 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 Control Tower's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/UntagResource +func (c *ControlTower) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource 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 *ControlTower) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateEnabledBaseline = "UpdateEnabledBaseline" + +// UpdateEnabledBaselineRequest generates a "aws/request.Request" representing the +// client's request for the UpdateEnabledBaseline 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 UpdateEnabledBaseline for more information on using the UpdateEnabledBaseline +// 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 UpdateEnabledBaselineRequest method. +// req, resp := client.UpdateEnabledBaselineRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/UpdateEnabledBaseline +func (c *ControlTower) UpdateEnabledBaselineRequest(input *UpdateEnabledBaselineInput) (req *request.Request, output *UpdateEnabledBaselineOutput) { + op := &request.Operation{ + Name: opUpdateEnabledBaseline, + HTTPMethod: "POST", + HTTPPath: "/update-enabled-baseline", + } + + if input == nil { + input = &UpdateEnabledBaselineInput{} + } + + output = &UpdateEnabledBaselineOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateEnabledBaseline API operation for AWS Control Tower. +// +// Updates an EnabledBaseline resource's applied parameters or version. +// +// 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 Control Tower's +// API operation UpdateEnabledBaseline for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input does not satisfy the constraints specified by an Amazon Web Services +// service. +// +// - ConflictException +// Updating or deleting the resource can cause an inconsistent state. +// +// - ServiceQuotaExceededException +// The request would cause a service quota to be exceeded. The limit is 10 concurrent +// operations. +// +// - InternalServerException +// An unexpected error occurred during processing of a request. +// +// - AccessDeniedException +// You do not have sufficient access to perform this action. +// +// - ThrottlingException +// The request was denied due to request throttling. +// +// - ResourceNotFoundException +// The request references a resource that does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/UpdateEnabledBaseline +func (c *ControlTower) UpdateEnabledBaseline(input *UpdateEnabledBaselineInput) (*UpdateEnabledBaselineOutput, error) { + req, out := c.UpdateEnabledBaselineRequest(input) + return out, req.Send() +} + +// UpdateEnabledBaselineWithContext is the same as UpdateEnabledBaseline with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateEnabledBaseline 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 *ControlTower) UpdateEnabledBaselineWithContext(ctx aws.Context, input *UpdateEnabledBaselineInput, opts ...request.Option) (*UpdateEnabledBaselineOutput, error) { + req, out := c.UpdateEnabledBaselineRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// You do not have sufficient access to perform this action. +type AccessDeniedException 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 AccessDeniedException) 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 AccessDeniedException) GoString() string { + return s.String() +} + +func newErrorAccessDeniedException(v protocol.ResponseMetadata) error { + return &AccessDeniedException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *AccessDeniedException) Code() string { + return "AccessDeniedException" +} + +// Message returns the exception's message. +func (s *AccessDeniedException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *AccessDeniedException) OrigErr() error { + return nil +} + +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 +} + +// An object of shape BaselineOperation, returning details about the specified +// Baseline operation ID. +type BaselineOperation struct { + _ struct{} `type:"structure"` + + // The end time of the operation (if applicable), in ISO 8601 format. + EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` + + // The identifier of the specified operation. + OperationIdentifier *string `locationName:"operationIdentifier" min:"36" type:"string"` + + // An enumerated type (enum) with possible values of ENABLE_BASELINE, DISABLE_BASELINE, + // UPDATE_ENABLED_BASELINE, or RESET_ENABLED_BASELINE. + OperationType *string `locationName:"operationType" type:"string" enum:"BaselineOperationType"` + + // The start time of the operation, in ISO 8601 format. + StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` + + // An enumerated type (enum) with possible values of SUCCEEDED, FAILED, or IN_PROGRESS. + Status *string `locationName:"status" type:"string" enum:"BaselineOperationStatus"` + + // A status message that gives more information about the operation's status, + // if applicable. + StatusMessage *string `locationName:"statusMessage" 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 BaselineOperation) 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 BaselineOperation) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *BaselineOperation) SetEndTime(v time.Time) *BaselineOperation { + s.EndTime = &v + return s +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *BaselineOperation) SetOperationIdentifier(v string) *BaselineOperation { + s.OperationIdentifier = &v + return s +} + +// SetOperationType sets the OperationType field's value. +func (s *BaselineOperation) SetOperationType(v string) *BaselineOperation { + s.OperationType = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *BaselineOperation) SetStartTime(v time.Time) *BaselineOperation { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *BaselineOperation) SetStatus(v string) *BaselineOperation { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *BaselineOperation) SetStatusMessage(v string) *BaselineOperation { + s.StatusMessage = &v + return s +} + +// Returns a summary of information about a Baseline object. +type BaselineSummary struct { + _ struct{} `type:"structure"` + + // The full ARN of a Baseline. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // A summary description of a Baseline. + Description *string `locationName:"description" type:"string"` + + // The human-readable name of a Baseline. + // + // Name is a required field + Name *string `locationName:"name" 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 BaselineSummary) 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 BaselineSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *BaselineSummary) SetArn(v string) *BaselineSummary { + s.Arn = &v + return s +} + +// SetDescription sets the Description field's value. +func (s *BaselineSummary) SetDescription(v string) *BaselineSummary { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *BaselineSummary) SetName(v string) *BaselineSummary { + s.Name = &v + return s +} + +// Updating or deleting the resource can 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 *AccessDeniedException) RequestID() string { +func (s *ConflictException) RequestID() string { return s.RespMetadata.RequestID } -// Updating or deleting the resource can cause an inconsistent state. -type ConflictException struct { - _ struct{} `type:"structure"` - RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` +// An operation performed by the control. +type ControlOperation struct { + _ struct{} `type:"structure"` + + // The time that the operation finished. + EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` + + // One of ENABLE_CONTROL or DISABLE_CONTROL. + OperationType *string `locationName:"operationType" type:"string" enum:"ControlOperationType"` + + // The time that the operation began. + StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` + + // One of IN_PROGRESS, SUCEEDED, or FAILED. + Status *string `locationName:"status" type:"string" enum:"ControlOperationStatus"` + + // If the operation result is FAILED, this string contains a message explaining + // why the operation failed. + StatusMessage *string `locationName:"statusMessage" 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 ControlOperation) 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 ControlOperation) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *ControlOperation) SetEndTime(v time.Time) *ControlOperation { + s.EndTime = &v + return s +} + +// SetOperationType sets the OperationType field's value. +func (s *ControlOperation) SetOperationType(v string) *ControlOperation { + s.OperationType = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *ControlOperation) SetStartTime(v time.Time) *ControlOperation { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *ControlOperation) SetStatus(v string) *ControlOperation { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *ControlOperation) SetStatusMessage(v string) *ControlOperation { + s.StatusMessage = &v + return s +} + +type DeleteLandingZoneInput struct { + _ struct{} `type:"structure"` + + // The unique identifier of the landing zone. + // + // LandingZoneIdentifier is a required field + LandingZoneIdentifier *string `locationName:"landingZoneIdentifier" 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 DeleteLandingZoneInput) 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 DeleteLandingZoneInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteLandingZoneInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteLandingZoneInput"} + if s.LandingZoneIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("LandingZoneIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetLandingZoneIdentifier sets the LandingZoneIdentifier field's value. +func (s *DeleteLandingZoneInput) SetLandingZoneIdentifier(v string) *DeleteLandingZoneInput { + s.LandingZoneIdentifier = &v + return s +} + +type DeleteLandingZoneOutput struct { + _ struct{} `type:"structure"` + + // >A unique identifier assigned to a DeleteLandingZone operation. You can use + // this identifier as an input parameter of GetLandingZoneOperation to check + // the operation's status. + // + // OperationIdentifier is a required field + OperationIdentifier *string `locationName:"operationIdentifier" min:"36" 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 DeleteLandingZoneOutput) 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 DeleteLandingZoneOutput) GoString() string { + return s.String() +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *DeleteLandingZoneOutput) SetOperationIdentifier(v string) *DeleteLandingZoneOutput { + s.OperationIdentifier = &v + return s +} + +type DisableBaselineInput struct { + _ struct{} `type:"structure"` + + // Identifier of the EnabledBaseline resource to be deactivated, in ARN format. + // + // EnabledBaselineIdentifier is a required field + EnabledBaselineIdentifier *string `locationName:"enabledBaselineIdentifier" min:"20" 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 DisableBaselineInput) 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 DisableBaselineInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisableBaselineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisableBaselineInput"} + if s.EnabledBaselineIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnabledBaselineIdentifier")) + } + if s.EnabledBaselineIdentifier != nil && len(*s.EnabledBaselineIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("EnabledBaselineIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabledBaselineIdentifier sets the EnabledBaselineIdentifier field's value. +func (s *DisableBaselineInput) SetEnabledBaselineIdentifier(v string) *DisableBaselineInput { + s.EnabledBaselineIdentifier = &v + return s +} + +type DisableBaselineOutput struct { + _ struct{} `type:"structure"` + + // The ID (in UUID format) of the asynchronous DisableBaseline operation. This + // operationIdentifier is used to track status through calls to the GetBaselineOperation + // API. + // + // OperationIdentifier is a required field + OperationIdentifier *string `locationName:"operationIdentifier" min:"36" 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 DisableBaselineOutput) 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 DisableBaselineOutput) GoString() string { + return s.String() +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *DisableBaselineOutput) SetOperationIdentifier(v string) *DisableBaselineOutput { + s.OperationIdentifier = &v + return s +} + +type DisableControlInput struct { + _ struct{} `type:"structure"` + + // The ARN of the control. Only Strongly recommended and Elective controls are + // permitted, with the exception of the Region deny control. For information + // on how to find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). + // + // ControlIdentifier is a required field + ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string" required:"true"` - Message_ *string `locationName:"message" type:"string"` + // The ARN of the organizational unit. For information on how to find the targetIdentifier, + // see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). + // + // TargetIdentifier is a required field + TargetIdentifier *string `locationName:"targetIdentifier" min:"20" type:"string" required:"true"` } // String returns the string representation. @@ -1335,7 +2749,7 @@ type ConflictException struct { // 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 { +func (s DisableControlInput) String() string { return awsutil.Prettify(s) } @@ -1344,67 +2758,52 @@ func (s ConflictException) String() string { // 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 { +func (s DisableControlInput) GoString() string { return s.String() } -func newErrorConflictException(v protocol.ResponseMetadata) error { - return &ConflictException{ - RespMetadata: v, +// Validate inspects the fields of the type to determine if they are valid. +func (s *DisableControlInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DisableControlInput"} + if s.ControlIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ControlIdentifier")) } -} - -// 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_ + if s.ControlIdentifier != nil && len(*s.ControlIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ControlIdentifier", 20)) + } + if s.TargetIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("TargetIdentifier")) + } + if s.TargetIdentifier != nil && len(*s.TargetIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("TargetIdentifier", 20)) } - return "" -} -// OrigErr always returns nil, satisfies awserr.Error interface. -func (s *ConflictException) OrigErr() error { + if invalidParams.Len() > 0 { + return invalidParams + } 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 +// SetControlIdentifier sets the ControlIdentifier field's value. +func (s *DisableControlInput) SetControlIdentifier(v string) *DisableControlInput { + s.ControlIdentifier = &v + return s } -// RequestID returns the service's response RequestID for request. -func (s *ConflictException) RequestID() string { - return s.RespMetadata.RequestID +// SetTargetIdentifier sets the TargetIdentifier field's value. +func (s *DisableControlInput) SetTargetIdentifier(v string) *DisableControlInput { + s.TargetIdentifier = &v + return s } -// An operation performed by the control. -type ControlOperation struct { +type DisableControlOutput struct { _ struct{} `type:"structure"` - // The time that the operation finished. - EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` - - // One of ENABLE_CONTROL or DISABLE_CONTROL. - OperationType *string `locationName:"operationType" type:"string" enum:"ControlOperationType"` - - // The time that the operation began. - StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` - - // One of IN_PROGRESS, SUCEEDED, or FAILED. - Status *string `locationName:"status" type:"string" enum:"ControlOperationStatus"` - - // If the operation result is FAILED, this string contains a message explaining - // why the operation failed. - StatusMessage *string `locationName:"statusMessage" type:"string"` + // The ID of the asynchronous operation, which is used to track status. The + // operation is available for 90 days. + // + // OperationIdentifier is a required field + OperationIdentifier *string `locationName:"operationIdentifier" min:"36" type:"string" required:"true"` } // String returns the string representation. @@ -1412,7 +2811,7 @@ type ControlOperation struct { // 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 ControlOperation) String() string { +func (s DisableControlOutput) String() string { return awsutil.Prettify(s) } @@ -1421,47 +2820,88 @@ func (s ControlOperation) String() string { // 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 ControlOperation) GoString() string { +func (s DisableControlOutput) GoString() string { return s.String() } -// SetEndTime sets the EndTime field's value. -func (s *ControlOperation) SetEndTime(v time.Time) *ControlOperation { - s.EndTime = &v +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *DisableControlOutput) SetOperationIdentifier(v string) *DisableControlOutput { + s.OperationIdentifier = &v return s } -// SetOperationType sets the OperationType field's value. -func (s *ControlOperation) SetOperationType(v string) *ControlOperation { - s.OperationType = &v - return s +// The drift summary of the enabled control. +// +// Amazon Web Services Control Tower expects the enabled control configuration +// to include all supported and governed Regions. If the enabled control differs +// from the expected configuration, it is defined to be in a state of drift. +// You can repair this drift by resetting the enabled control. +type DriftStatusSummary struct { + _ struct{} `type:"structure"` + + // The drift status of the enabled control. + // + // Valid values: + // + // * DRIFTED: The enabledControl deployed in this configuration doesn’t + // match the configuration that Amazon Web Services Control Tower expected. + // + // * IN_SYNC: The enabledControl deployed in this configuration matches the + // configuration that Amazon Web Services Control Tower expected. + // + // * NOT_CHECKING: Amazon Web Services Control Tower does not check drift + // for this enabled control. Drift is not supported for the control type. + // + // * UNKNOWN: Amazon Web Services Control Tower is not able to check the + // drift status for the enabled control. + DriftStatus *string `locationName:"driftStatus" type:"string" enum:"DriftStatus"` } -// SetStartTime sets the StartTime field's value. -func (s *ControlOperation) SetStartTime(v time.Time) *ControlOperation { - s.StartTime = &v - return s +// 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 DriftStatusSummary) String() string { + return awsutil.Prettify(s) } -// SetStatus sets the Status field's value. -func (s *ControlOperation) SetStatus(v string) *ControlOperation { - s.Status = &v - return 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 DriftStatusSummary) GoString() string { + return s.String() } -// SetStatusMessage sets the StatusMessage field's value. -func (s *ControlOperation) SetStatusMessage(v string) *ControlOperation { - s.StatusMessage = &v +// SetDriftStatus sets the DriftStatus field's value. +func (s *DriftStatusSummary) SetDriftStatus(v string) *DriftStatusSummary { + s.DriftStatus = &v return s } -type DeleteLandingZoneInput struct { +type EnableBaselineInput struct { _ struct{} `type:"structure"` - // The unique identifier of the landing zone. + // The ARN of the baseline to be enabled. // - // LandingZoneIdentifier is a required field - LandingZoneIdentifier *string `locationName:"landingZoneIdentifier" type:"string" required:"true"` + // BaselineIdentifier is a required field + BaselineIdentifier *string `locationName:"baselineIdentifier" min:"20" type:"string" required:"true"` + + // The specific version to be enabled of the specified baseline. + // + // BaselineVersion is a required field + BaselineVersion *string `locationName:"baselineVersion" min:"1" type:"string" required:"true"` + + // Tags associated with input to EnableBaseline. + Tags map[string]*string `locationName:"tags" type:"map"` + + // The ARN of the target on which the baseline will be enabled. Only OUs are + // supported as targets. + // + // TargetIdentifier is a required field + TargetIdentifier *string `locationName:"targetIdentifier" min:"20" type:"string" required:"true"` } // String returns the string representation. @@ -1469,7 +2909,7 @@ type DeleteLandingZoneInput struct { // 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 DeleteLandingZoneInput) String() string { +func (s EnableBaselineInput) String() string { return awsutil.Prettify(s) } @@ -1478,15 +2918,30 @@ func (s DeleteLandingZoneInput) String() string { // 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 DeleteLandingZoneInput) GoString() string { +func (s EnableBaselineInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DeleteLandingZoneInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DeleteLandingZoneInput"} - if s.LandingZoneIdentifier == nil { - invalidParams.Add(request.NewErrParamRequired("LandingZoneIdentifier")) +func (s *EnableBaselineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EnableBaselineInput"} + if s.BaselineIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("BaselineIdentifier")) + } + if s.BaselineIdentifier != nil && len(*s.BaselineIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("BaselineIdentifier", 20)) + } + if s.BaselineVersion == nil { + invalidParams.Add(request.NewErrParamRequired("BaselineVersion")) + } + if s.BaselineVersion != nil && len(*s.BaselineVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BaselineVersion", 1)) + } + if s.TargetIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("TargetIdentifier")) + } + if s.TargetIdentifier != nil && len(*s.TargetIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("TargetIdentifier", 20)) } if invalidParams.Len() > 0 { @@ -1495,18 +2950,41 @@ func (s *DeleteLandingZoneInput) Validate() error { return nil } -// SetLandingZoneIdentifier sets the LandingZoneIdentifier field's value. -func (s *DeleteLandingZoneInput) SetLandingZoneIdentifier(v string) *DeleteLandingZoneInput { - s.LandingZoneIdentifier = &v +// SetBaselineIdentifier sets the BaselineIdentifier field's value. +func (s *EnableBaselineInput) SetBaselineIdentifier(v string) *EnableBaselineInput { + s.BaselineIdentifier = &v return s } -type DeleteLandingZoneOutput struct { +// SetBaselineVersion sets the BaselineVersion field's value. +func (s *EnableBaselineInput) SetBaselineVersion(v string) *EnableBaselineInput { + s.BaselineVersion = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *EnableBaselineInput) SetTags(v map[string]*string) *EnableBaselineInput { + s.Tags = v + return s +} + +// SetTargetIdentifier sets the TargetIdentifier field's value. +func (s *EnableBaselineInput) SetTargetIdentifier(v string) *EnableBaselineInput { + s.TargetIdentifier = &v + return s +} + +type EnableBaselineOutput struct { _ struct{} `type:"structure"` - // >A unique identifier assigned to a DeleteLandingZone operation. You can use - // this identifier as an input parameter of GetLandingZoneOperation to check - // the operation's status. + // The ARN of the EnabledBaseline resource. + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The ID (in UUID format) of the asynchronous EnableBaseline operation. This + // operationIdentifier is used to track status through calls to the GetBaselineOperation + // API. // // OperationIdentifier is a required field OperationIdentifier *string `locationName:"operationIdentifier" min:"36" type:"string" required:"true"` @@ -1517,7 +2995,7 @@ type DeleteLandingZoneOutput struct { // 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 DeleteLandingZoneOutput) String() string { +func (s EnableBaselineOutput) String() string { return awsutil.Prettify(s) } @@ -1526,26 +3004,35 @@ func (s DeleteLandingZoneOutput) String() string { // 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 DeleteLandingZoneOutput) GoString() string { +func (s EnableBaselineOutput) GoString() string { return s.String() } +// SetArn sets the Arn field's value. +func (s *EnableBaselineOutput) SetArn(v string) *EnableBaselineOutput { + s.Arn = &v + return s +} + // SetOperationIdentifier sets the OperationIdentifier field's value. -func (s *DeleteLandingZoneOutput) SetOperationIdentifier(v string) *DeleteLandingZoneOutput { +func (s *EnableBaselineOutput) SetOperationIdentifier(v string) *EnableBaselineOutput { s.OperationIdentifier = &v return s } -type DisableControlInput struct { +type EnableControlInput struct { _ struct{} `type:"structure"` // The ARN of the control. Only Strongly recommended and Elective controls are - // permitted, with the exception of the landing zone Region deny control. For - // information on how to find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). + // permitted, with the exception of the Region deny control. For information + // on how to find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). // // ControlIdentifier is a required field ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string" required:"true"` + // Tags to be applied to the EnabledControl resource. + Tags map[string]*string `locationName:"tags" type:"map"` + // The ARN of the organizational unit. For information on how to find the targetIdentifier, // see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). // @@ -1558,7 +3045,7 @@ type DisableControlInput struct { // 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 DisableControlInput) String() string { +func (s EnableControlInput) String() string { return awsutil.Prettify(s) } @@ -1567,13 +3054,13 @@ func (s DisableControlInput) String() string { // 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 DisableControlInput) GoString() string { +func (s EnableControlInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *DisableControlInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "DisableControlInput"} +func (s *EnableControlInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EnableControlInput"} if s.ControlIdentifier == nil { invalidParams.Add(request.NewErrParamRequired("ControlIdentifier")) } @@ -1594,20 +3081,29 @@ func (s *DisableControlInput) Validate() error { } // SetControlIdentifier sets the ControlIdentifier field's value. -func (s *DisableControlInput) SetControlIdentifier(v string) *DisableControlInput { +func (s *EnableControlInput) SetControlIdentifier(v string) *EnableControlInput { s.ControlIdentifier = &v return s } +// SetTags sets the Tags field's value. +func (s *EnableControlInput) SetTags(v map[string]*string) *EnableControlInput { + s.Tags = v + return s +} + // SetTargetIdentifier sets the TargetIdentifier field's value. -func (s *DisableControlInput) SetTargetIdentifier(v string) *DisableControlInput { +func (s *EnableControlInput) SetTargetIdentifier(v string) *EnableControlInput { s.TargetIdentifier = &v return s } -type DisableControlOutput struct { +type EnableControlOutput struct { _ struct{} `type:"structure"` + // The ARN of the EnabledControl resource. + Arn *string `locationName:"arn" min:"20" type:"string"` + // The ID of the asynchronous operation, which is used to track status. The // operation is available for 90 days. // @@ -1620,7 +3116,7 @@ type DisableControlOutput struct { // 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 DisableControlOutput) String() string { +func (s EnableControlOutput) String() string { return awsutil.Prettify(s) } @@ -1629,41 +3125,48 @@ func (s DisableControlOutput) String() string { // 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 DisableControlOutput) GoString() string { +func (s EnableControlOutput) GoString() string { return s.String() } -// SetOperationIdentifier sets the OperationIdentifier field's value. -func (s *DisableControlOutput) SetOperationIdentifier(v string) *DisableControlOutput { - s.OperationIdentifier = &v +// SetArn sets the Arn field's value. +func (s *EnableControlOutput) SetArn(v string) *EnableControlOutput { + s.Arn = &v return s } -// The drift summary of the enabled control. -// -// Amazon Web Services Control Tower expects the enabled control configuration -// to include all supported and governed Regions. If the enabled control differs -// from the expected configuration, it is defined to be in a state of drift. -// You can repair this drift by resetting the enabled control. -type DriftStatusSummary struct { +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *EnableControlOutput) SetOperationIdentifier(v string) *EnableControlOutput { + s.OperationIdentifier = &v + return s +} + +// Details of the EnabledBaseline resource. +type EnabledBaselineDetails struct { _ struct{} `type:"structure"` - // The drift status of the enabled control. - // - // Valid values: + // The ARN of the EnabledBaseline resource. // - // * DRIFTED: The enabledControl deployed in this configuration doesn’t - // match the configuration that Amazon Web Services Control Tower expected. + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` + + // The specific Baseline enabled as part of the EnabledBaseline resource. // - // * IN_SYNC: The enabledControl deployed in this configuration matches the - // configuration that Amazon Web Services Control Tower expected. + // BaselineIdentifier is a required field + BaselineIdentifier *string `locationName:"baselineIdentifier" type:"string" required:"true"` + + // The enabled version of the Baseline. + BaselineVersion *string `locationName:"baselineVersion" type:"string"` + + // The deployment summary of the enabled control. // - // * NOT_CHECKING: Amazon Web Services Control Tower does not check drift - // for this enabled control. Drift is not supported for the control type. + // StatusSummary is a required field + StatusSummary *EnablementStatusSummary `locationName:"statusSummary" type:"structure" required:"true"` + + // The target on which to enable the Baseline. // - // * UNKNOWN: Amazon Web Services Control Tower is not able to check the - // drift status for the enabled control. - DriftStatus *string `locationName:"driftStatus" type:"string" enum:"DriftStatus"` + // TargetIdentifier is a required field + TargetIdentifier *string `locationName:"targetIdentifier" type:"string" required:"true"` } // String returns the string representation. @@ -1671,7 +3174,7 @@ type DriftStatusSummary struct { // 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 DriftStatusSummary) String() string { +func (s EnabledBaselineDetails) String() string { return awsutil.Prettify(s) } @@ -1680,34 +3183,51 @@ func (s DriftStatusSummary) String() string { // 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 DriftStatusSummary) GoString() string { +func (s EnabledBaselineDetails) GoString() string { return s.String() } -// SetDriftStatus sets the DriftStatus field's value. -func (s *DriftStatusSummary) SetDriftStatus(v string) *DriftStatusSummary { - s.DriftStatus = &v +// SetArn sets the Arn field's value. +func (s *EnabledBaselineDetails) SetArn(v string) *EnabledBaselineDetails { + s.Arn = &v return s } -type EnableControlInput struct { - _ struct{} `type:"structure"` +// SetBaselineIdentifier sets the BaselineIdentifier field's value. +func (s *EnabledBaselineDetails) SetBaselineIdentifier(v string) *EnabledBaselineDetails { + s.BaselineIdentifier = &v + return s +} - // The ARN of the control. Only Strongly recommended and Elective controls are - // permitted, with the exception of the landing zone Region deny control. For - // information on how to find the controlIdentifier, see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). - // - // ControlIdentifier is a required field - ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string" required:"true"` +// SetBaselineVersion sets the BaselineVersion field's value. +func (s *EnabledBaselineDetails) SetBaselineVersion(v string) *EnabledBaselineDetails { + s.BaselineVersion = &v + return s +} - // Tags to be applied to the EnabledControl resource. - Tags map[string]*string `locationName:"tags" type:"map"` +// SetStatusSummary sets the StatusSummary field's value. +func (s *EnabledBaselineDetails) SetStatusSummary(v *EnablementStatusSummary) *EnabledBaselineDetails { + s.StatusSummary = v + return s +} - // The ARN of the organizational unit. For information on how to find the targetIdentifier, - // see the overview page (https://docs.aws.amazon.com/controltower/latest/APIReference/Welcome.html). - // - // TargetIdentifier is a required field - TargetIdentifier *string `locationName:"targetIdentifier" min:"20" type:"string" required:"true"` +// SetTargetIdentifier sets the TargetIdentifier field's value. +func (s *EnabledBaselineDetails) SetTargetIdentifier(v string) *EnabledBaselineDetails { + s.TargetIdentifier = &v + return s +} + +// A filter applied on the ListEnabledBaseline operation. Allowed filters are +// baselineIdentifiers and targetIdentifiers. The filter can be applied for +// either, or both. +type EnabledBaselineFilter struct { + _ struct{} `type:"structure"` + + // Identifiers for the Baseline objects returned as part of the filter operation. + BaselineIdentifiers []*string `locationName:"baselineIdentifiers" min:"1" type:"list"` + + // Identifiers for the targets of the Baseline filter operation. + TargetIdentifiers []*string `locationName:"targetIdentifiers" min:"1" type:"list"` } // String returns the string representation. @@ -1715,7 +3235,7 @@ type EnableControlInput struct { // 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 EnableControlInput) String() string { +func (s EnabledBaselineFilter) String() string { return awsutil.Prettify(s) } @@ -1724,24 +3244,18 @@ func (s EnableControlInput) String() string { // 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 EnableControlInput) GoString() string { +func (s EnabledBaselineFilter) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *EnableControlInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "EnableControlInput"} - if s.ControlIdentifier == nil { - invalidParams.Add(request.NewErrParamRequired("ControlIdentifier")) - } - if s.ControlIdentifier != nil && len(*s.ControlIdentifier) < 20 { - invalidParams.Add(request.NewErrParamMinLen("ControlIdentifier", 20)) +func (s *EnabledBaselineFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "EnabledBaselineFilter"} + if s.BaselineIdentifiers != nil && len(s.BaselineIdentifiers) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BaselineIdentifiers", 1)) } - if s.TargetIdentifier == nil { - invalidParams.Add(request.NewErrParamRequired("TargetIdentifier")) - } - if s.TargetIdentifier != nil && len(*s.TargetIdentifier) < 20 { - invalidParams.Add(request.NewErrParamMinLen("TargetIdentifier", 20)) + if s.TargetIdentifiers != nil && len(s.TargetIdentifiers) < 1 { + invalidParams.Add(request.NewErrParamMinLen("TargetIdentifiers", 1)) } if invalidParams.Len() > 0 { @@ -1750,35 +3264,44 @@ func (s *EnableControlInput) Validate() error { return nil } -// SetControlIdentifier sets the ControlIdentifier field's value. -func (s *EnableControlInput) SetControlIdentifier(v string) *EnableControlInput { - s.ControlIdentifier = &v - return s -} - -// SetTags sets the Tags field's value. -func (s *EnableControlInput) SetTags(v map[string]*string) *EnableControlInput { - s.Tags = v +// SetBaselineIdentifiers sets the BaselineIdentifiers field's value. +func (s *EnabledBaselineFilter) SetBaselineIdentifiers(v []*string) *EnabledBaselineFilter { + s.BaselineIdentifiers = v return s } -// SetTargetIdentifier sets the TargetIdentifier field's value. -func (s *EnableControlInput) SetTargetIdentifier(v string) *EnableControlInput { - s.TargetIdentifier = &v +// SetTargetIdentifiers sets the TargetIdentifiers field's value. +func (s *EnabledBaselineFilter) SetTargetIdentifiers(v []*string) *EnabledBaselineFilter { + s.TargetIdentifiers = v return s } -type EnableControlOutput struct { +// Returns a summary of information about an EnabledBaseline object. +type EnabledBaselineSummary struct { _ struct{} `type:"structure"` - // The ARN of the EnabledControl resource. - Arn *string `locationName:"arn" min:"20" type:"string"` + // The ARN of the EnabledBaseline resource + // + // Arn is a required field + Arn *string `locationName:"arn" min:"20" type:"string" required:"true"` - // The ID of the asynchronous operation, which is used to track status. The - // operation is available for 90 days. + // The specific baseline that is enabled as part of the EnabledBaseline resource. // - // OperationIdentifier is a required field - OperationIdentifier *string `locationName:"operationIdentifier" min:"36" type:"string" required:"true"` + // BaselineIdentifier is a required field + BaselineIdentifier *string `locationName:"baselineIdentifier" type:"string" required:"true"` + + // The enabled version of the baseline. + BaselineVersion *string `locationName:"baselineVersion" type:"string"` + + // The deployment summary of the enabled control. + // + // StatusSummary is a required field + StatusSummary *EnablementStatusSummary `locationName:"statusSummary" type:"structure" required:"true"` + + // The target upon which the baseline is enabled. + // + // TargetIdentifier is a required field + TargetIdentifier *string `locationName:"targetIdentifier" type:"string" required:"true"` } // String returns the string representation. @@ -1786,7 +3309,7 @@ type EnableControlOutput struct { // 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 EnableControlOutput) String() string { +func (s EnabledBaselineSummary) String() string { return awsutil.Prettify(s) } @@ -1795,19 +3318,37 @@ func (s EnableControlOutput) String() string { // 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 EnableControlOutput) GoString() string { +func (s EnabledBaselineSummary) GoString() string { return s.String() } // SetArn sets the Arn field's value. -func (s *EnableControlOutput) SetArn(v string) *EnableControlOutput { +func (s *EnabledBaselineSummary) SetArn(v string) *EnabledBaselineSummary { s.Arn = &v return s } -// SetOperationIdentifier sets the OperationIdentifier field's value. -func (s *EnableControlOutput) SetOperationIdentifier(v string) *EnableControlOutput { - s.OperationIdentifier = &v +// SetBaselineIdentifier sets the BaselineIdentifier field's value. +func (s *EnabledBaselineSummary) SetBaselineIdentifier(v string) *EnabledBaselineSummary { + s.BaselineIdentifier = &v + return s +} + +// SetBaselineVersion sets the BaselineVersion field's value. +func (s *EnabledBaselineSummary) SetBaselineVersion(v string) *EnabledBaselineSummary { + s.BaselineVersion = &v + return s +} + +// SetStatusSummary sets the StatusSummary field's value. +func (s *EnabledBaselineSummary) SetStatusSummary(v *EnablementStatusSummary) *EnabledBaselineSummary { + s.StatusSummary = v + return s +} + +// SetTargetIdentifier sets the TargetIdentifier field's value. +func (s *EnabledBaselineSummary) SetTargetIdentifier(v string) *EnabledBaselineSummary { + s.TargetIdentifier = &v return s } @@ -1973,8 +3514,185 @@ type EnablementStatusSummary struct { // // * UNDER_CHANGE: The enabledControl configuration is changing. // - // * FAILED: The enabledControl configuration failed to deploy. - Status *string `locationName:"status" type:"string" enum:"EnablementStatus"` + // * FAILED: The enabledControl configuration failed to deploy. + Status *string `locationName:"status" type:"string" enum:"EnablementStatus"` +} + +// 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 EnablementStatusSummary) 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 EnablementStatusSummary) GoString() string { + return s.String() +} + +// SetLastOperationIdentifier sets the LastOperationIdentifier field's value. +func (s *EnablementStatusSummary) SetLastOperationIdentifier(v string) *EnablementStatusSummary { + s.LastOperationIdentifier = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *EnablementStatusSummary) SetStatus(v string) *EnablementStatusSummary { + s.Status = &v + return s +} + +type GetBaselineInput struct { + _ struct{} `type:"structure"` + + // The ARN of the Baseline resource to be retrieved. + // + // BaselineIdentifier is a required field + BaselineIdentifier *string `locationName:"baselineIdentifier" 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 GetBaselineInput) 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 GetBaselineInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetBaselineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetBaselineInput"} + if s.BaselineIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("BaselineIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBaselineIdentifier sets the BaselineIdentifier field's value. +func (s *GetBaselineInput) SetBaselineIdentifier(v string) *GetBaselineInput { + s.BaselineIdentifier = &v + return s +} + +type GetBaselineOperationInput struct { + _ struct{} `type:"structure"` + + // The operation ID returned from mutating asynchronous APIs (Enable, Disable, + // Update, Reset). + // + // OperationIdentifier is a required field + OperationIdentifier *string `locationName:"operationIdentifier" min:"36" 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 GetBaselineOperationInput) 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 GetBaselineOperationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetBaselineOperationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetBaselineOperationInput"} + if s.OperationIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("OperationIdentifier")) + } + if s.OperationIdentifier != nil && len(*s.OperationIdentifier) < 36 { + invalidParams.Add(request.NewErrParamMinLen("OperationIdentifier", 36)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *GetBaselineOperationInput) SetOperationIdentifier(v string) *GetBaselineOperationInput { + s.OperationIdentifier = &v + return s +} + +type GetBaselineOperationOutput struct { + _ struct{} `type:"structure"` + + // A baselineOperation object that shows information about the specified operation + // ID. + // + // BaselineOperation is a required field + BaselineOperation *BaselineOperation `locationName:"baselineOperation" 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 GetBaselineOperationOutput) 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 GetBaselineOperationOutput) GoString() string { + return s.String() +} + +// SetBaselineOperation sets the BaselineOperation field's value. +func (s *GetBaselineOperationOutput) SetBaselineOperation(v *BaselineOperation) *GetBaselineOperationOutput { + s.BaselineOperation = v + return s +} + +type GetBaselineOutput struct { + _ struct{} `type:"structure"` + + // The baseline ARN. + // + // Arn is a required field + Arn *string `locationName:"arn" type:"string" required:"true"` + + // A description of the baseline. + Description *string `locationName:"description" type:"string"` + + // A user-friendly name for the baseline. + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` } // String returns the string representation. @@ -1982,7 +3700,7 @@ type EnablementStatusSummary struct { // 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 EnablementStatusSummary) String() string { +func (s GetBaselineOutput) String() string { return awsutil.Prettify(s) } @@ -1991,19 +3709,25 @@ func (s EnablementStatusSummary) String() string { // 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 EnablementStatusSummary) GoString() string { +func (s GetBaselineOutput) GoString() string { return s.String() } -// SetLastOperationIdentifier sets the LastOperationIdentifier field's value. -func (s *EnablementStatusSummary) SetLastOperationIdentifier(v string) *EnablementStatusSummary { - s.LastOperationIdentifier = &v +// SetArn sets the Arn field's value. +func (s *GetBaselineOutput) SetArn(v string) *GetBaselineOutput { + s.Arn = &v return s } -// SetStatus sets the Status field's value. -func (s *EnablementStatusSummary) SetStatus(v string) *EnablementStatusSummary { - s.Status = &v +// SetDescription sets the Description field's value. +func (s *GetBaselineOutput) SetDescription(v string) *GetBaselineOutput { + s.Description = &v + return s +} + +// SetName sets the Name field's value. +func (s *GetBaselineOutput) SetName(v string) *GetBaselineOutput { + s.Name = &v return s } @@ -2090,6 +3814,86 @@ func (s *GetControlOperationOutput) SetControlOperation(v *ControlOperation) *Ge return s } +type GetEnabledBaselineInput struct { + _ struct{} `type:"structure"` + + // Identifier of the EnabledBaseline resource to be retrieved, in ARN format. + // + // EnabledBaselineIdentifier is a required field + EnabledBaselineIdentifier *string `locationName:"enabledBaselineIdentifier" min:"20" 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 GetEnabledBaselineInput) 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 GetEnabledBaselineInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetEnabledBaselineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetEnabledBaselineInput"} + if s.EnabledBaselineIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnabledBaselineIdentifier")) + } + if s.EnabledBaselineIdentifier != nil && len(*s.EnabledBaselineIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("EnabledBaselineIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabledBaselineIdentifier sets the EnabledBaselineIdentifier field's value. +func (s *GetEnabledBaselineInput) SetEnabledBaselineIdentifier(v string) *GetEnabledBaselineInput { + s.EnabledBaselineIdentifier = &v + return s +} + +type GetEnabledBaselineOutput struct { + _ struct{} `type:"structure"` + + // Details of the EnabledBaseline resource. + EnabledBaselineDetails *EnabledBaselineDetails `locationName:"enabledBaselineDetails" 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 GetEnabledBaselineOutput) 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 GetEnabledBaselineOutput) GoString() string { + return s.String() +} + +// SetEnabledBaselineDetails sets the EnabledBaselineDetails field's value. +func (s *GetEnabledBaselineOutput) SetEnabledBaselineDetails(v *EnabledBaselineDetails) *GetEnabledBaselineOutput { + s.EnabledBaselineDetails = v + return s +} + type GetEnabledControlInput struct { _ struct{} `type:"structure"` @@ -2304,55 +4108,245 @@ func (s *InternalServerException) OrigErr() error { return nil } -func (s *InternalServerException) Error() string { - return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +func (s *InternalServerException) 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 *InternalServerException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InternalServerException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Information about a landing zone operation. +type LandingZoneOperationDetail struct { + _ struct{} `type:"structure"` + + // The landing zone operation end time. + EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` + + // The landing zone operation type. + // + // Valid values: + // + // * DELETE: The DeleteLandingZone operation. + // + // * CREATE: The CreateLandingZone operation. + // + // * UPDATE: The UpdateLandingZone operation. + // + // * RESET: The ResetLandingZone operation. + OperationType *string `locationName:"operationType" type:"string" enum:"LandingZoneOperationType"` + + // The landing zone operation start time. + StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` + + // Valid values: + // + // * SUCCEEDED: The landing zone operation succeeded. + // + // * IN_PROGRESS: The landing zone operation is in progress. + // + // * FAILED: The landing zone operation failed. + Status *string `locationName:"status" type:"string" enum:"LandingZoneOperationStatus"` + + // If the operation result is FAILED, this string contains a message explaining + // why the operation failed. + StatusMessage *string `locationName:"statusMessage" 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 LandingZoneOperationDetail) 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 LandingZoneOperationDetail) GoString() string { + return s.String() +} + +// SetEndTime sets the EndTime field's value. +func (s *LandingZoneOperationDetail) SetEndTime(v time.Time) *LandingZoneOperationDetail { + s.EndTime = &v + return s +} + +// SetOperationType sets the OperationType field's value. +func (s *LandingZoneOperationDetail) SetOperationType(v string) *LandingZoneOperationDetail { + s.OperationType = &v + return s +} + +// SetStartTime sets the StartTime field's value. +func (s *LandingZoneOperationDetail) SetStartTime(v time.Time) *LandingZoneOperationDetail { + s.StartTime = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *LandingZoneOperationDetail) SetStatus(v string) *LandingZoneOperationDetail { + s.Status = &v + return s +} + +// SetStatusMessage sets the StatusMessage field's value. +func (s *LandingZoneOperationDetail) SetStatusMessage(v string) *LandingZoneOperationDetail { + s.StatusMessage = &v + return s +} + +// Returns a summary of information about a landing zone. +type LandingZoneSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the landing zone. + Arn *string `locationName:"arn" min:"20" 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 LandingZoneSummary) 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 LandingZoneSummary) GoString() string { + return s.String() +} + +// SetArn sets the Arn field's value. +func (s *LandingZoneSummary) SetArn(v string) *LandingZoneSummary { + s.Arn = &v + return s +} + +type ListBaselinesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of results to be shown. + MaxResults *int64 `locationName:"maxResults" min:"4" type:"integer"` + + // A pagination token. + NextToken *string `locationName:"nextToken" 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 ListBaselinesInput) 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 ListBaselinesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListBaselinesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListBaselinesInput"} + if s.MaxResults != nil && *s.MaxResults < 4 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 4)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListBaselinesInput) SetMaxResults(v int64) *ListBaselinesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListBaselinesInput) SetNextToken(v string) *ListBaselinesInput { + s.NextToken = &v + return s +} + +type ListBaselinesOutput struct { + _ struct{} `type:"structure"` + + // A list of Baseline object details. + // + // Baselines is a required field + Baselines []*BaselineSummary `locationName:"baselines" type:"list" required:"true"` + + // A pagination token. + NextToken *string `locationName:"nextToken" 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 ListBaselinesOutput) 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 ListBaselinesOutput) GoString() string { + return s.String() } -// Status code returns the HTTP status code for the request's response error. -func (s *InternalServerException) StatusCode() int { - return s.RespMetadata.StatusCode +// SetBaselines sets the Baselines field's value. +func (s *ListBaselinesOutput) SetBaselines(v []*BaselineSummary) *ListBaselinesOutput { + s.Baselines = v + return s } -// RequestID returns the service's response RequestID for request. -func (s *InternalServerException) RequestID() string { - return s.RespMetadata.RequestID +// SetNextToken sets the NextToken field's value. +func (s *ListBaselinesOutput) SetNextToken(v string) *ListBaselinesOutput { + s.NextToken = &v + return s } -// Information about a landing zone operation. -type LandingZoneOperationDetail struct { +type ListEnabledBaselinesInput struct { _ struct{} `type:"structure"` - // The landing zone operation end time. - EndTime *time.Time `locationName:"endTime" type:"timestamp" timestampFormat:"iso8601"` - - // The landing zone operation type. - // - // Valid values: - // - // * DELETE: The DeleteLandingZone operation. - // - // * CREATE: The CreateLandingZone operation. - // - // * UPDATE: The UpdateLandingZone operation. - // - // * RESET: The ResetLandingZone operation. - OperationType *string `locationName:"operationType" type:"string" enum:"LandingZoneOperationType"` - - // The landing zone operation start time. - StartTime *time.Time `locationName:"startTime" type:"timestamp" timestampFormat:"iso8601"` + // A filter applied on the ListEnabledBaseline operation. Allowed filters are + // baselineIdentifiers and targetIdentifiers. The filter can be applied for + // either, or both. + Filter *EnabledBaselineFilter `locationName:"filter" type:"structure"` - // Valid values: - // - // * SUCCEEDED: The landing zone operation succeeded. - // - // * IN_PROGRESS: The landing zone operation is in progress. - // - // * FAILED: The landing zone operation failed. - Status *string `locationName:"status" type:"string" enum:"LandingZoneOperationStatus"` + // The maximum number of results to be shown. + MaxResults *int64 `locationName:"maxResults" min:"5" type:"integer"` - // If the operation result is FAILED, this string contains a message explaining - // why the operation failed. - StatusMessage *string `locationName:"statusMessage" type:"string"` + // A pagination token. + NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -2360,7 +4354,7 @@ type LandingZoneOperationDetail struct { // 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 LandingZoneOperationDetail) String() string { +func (s ListEnabledBaselinesInput) String() string { return awsutil.Prettify(s) } @@ -2369,46 +4363,56 @@ func (s LandingZoneOperationDetail) String() string { // 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 LandingZoneOperationDetail) GoString() string { +func (s ListEnabledBaselinesInput) GoString() string { return s.String() } -// SetEndTime sets the EndTime field's value. -func (s *LandingZoneOperationDetail) SetEndTime(v time.Time) *LandingZoneOperationDetail { - s.EndTime = &v - return s -} +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnabledBaselinesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnabledBaselinesInput"} + if s.MaxResults != nil && *s.MaxResults < 5 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 5)) + } + if s.Filter != nil { + if err := s.Filter.Validate(); err != nil { + invalidParams.AddNested("Filter", err.(request.ErrInvalidParams)) + } + } -// SetOperationType sets the OperationType field's value. -func (s *LandingZoneOperationDetail) SetOperationType(v string) *LandingZoneOperationDetail { - s.OperationType = &v - return s + if invalidParams.Len() > 0 { + return invalidParams + } + return nil } -// SetStartTime sets the StartTime field's value. -func (s *LandingZoneOperationDetail) SetStartTime(v time.Time) *LandingZoneOperationDetail { - s.StartTime = &v +// SetFilter sets the Filter field's value. +func (s *ListEnabledBaselinesInput) SetFilter(v *EnabledBaselineFilter) *ListEnabledBaselinesInput { + s.Filter = v return s } -// SetStatus sets the Status field's value. -func (s *LandingZoneOperationDetail) SetStatus(v string) *LandingZoneOperationDetail { - s.Status = &v +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnabledBaselinesInput) SetMaxResults(v int64) *ListEnabledBaselinesInput { + s.MaxResults = &v return s } -// SetStatusMessage sets the StatusMessage field's value. -func (s *LandingZoneOperationDetail) SetStatusMessage(v string) *LandingZoneOperationDetail { - s.StatusMessage = &v +// SetNextToken sets the NextToken field's value. +func (s *ListEnabledBaselinesInput) SetNextToken(v string) *ListEnabledBaselinesInput { + s.NextToken = &v return s } -// Returns a summary of information about a landing zone. -type LandingZoneSummary struct { +type ListEnabledBaselinesOutput struct { _ struct{} `type:"structure"` - // The ARN of the landing zone. - Arn *string `locationName:"arn" min:"20" type:"string"` + // Retuens a list of summaries of EnabledBaseline resources. + // + // EnabledBaselines is a required field + EnabledBaselines []*EnabledBaselineSummary `locationName:"enabledBaselines" type:"list" required:"true"` + + // A pagination token. + NextToken *string `locationName:"nextToken" type:"string"` } // String returns the string representation. @@ -2416,7 +4420,7 @@ type LandingZoneSummary struct { // 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 LandingZoneSummary) String() string { +func (s ListEnabledBaselinesOutput) String() string { return awsutil.Prettify(s) } @@ -2425,13 +4429,19 @@ func (s LandingZoneSummary) String() string { // 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 LandingZoneSummary) GoString() string { +func (s ListEnabledBaselinesOutput) GoString() string { return s.String() } -// SetArn sets the Arn field's value. -func (s *LandingZoneSummary) SetArn(v string) *LandingZoneSummary { - s.Arn = &v +// SetEnabledBaselines sets the EnabledBaselines field's value. +func (s *ListEnabledBaselinesOutput) SetEnabledBaselines(v []*EnabledBaselineSummary) *ListEnabledBaselinesOutput { + s.EnabledBaselines = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnabledBaselinesOutput) SetNextToken(v string) *ListEnabledBaselinesOutput { + s.NextToken = &v return s } @@ -2765,6 +4775,91 @@ func (s *Region) SetName(v string) *Region { return s } +type ResetEnabledBaselineInput struct { + _ struct{} `type:"structure"` + + // Specifies the ID of the EnabledBaseline resource to be re-enabled, in ARN + // format. + // + // EnabledBaselineIdentifier is a required field + EnabledBaselineIdentifier *string `locationName:"enabledBaselineIdentifier" min:"20" 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 ResetEnabledBaselineInput) 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 ResetEnabledBaselineInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ResetEnabledBaselineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ResetEnabledBaselineInput"} + if s.EnabledBaselineIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnabledBaselineIdentifier")) + } + if s.EnabledBaselineIdentifier != nil && len(*s.EnabledBaselineIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("EnabledBaselineIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetEnabledBaselineIdentifier sets the EnabledBaselineIdentifier field's value. +func (s *ResetEnabledBaselineInput) SetEnabledBaselineIdentifier(v string) *ResetEnabledBaselineInput { + s.EnabledBaselineIdentifier = &v + return s +} + +type ResetEnabledBaselineOutput struct { + _ struct{} `type:"structure"` + + // The ID (in UUID format) of the asynchronous ResetEnabledBaseline operation. + // This operationIdentifier is used to track status through calls to the GetBaselineOperation + // API. + // + // OperationIdentifier is a required field + OperationIdentifier *string `locationName:"operationIdentifier" min:"36" 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 ResetEnabledBaselineOutput) 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 ResetEnabledBaselineOutput) GoString() string { + return s.String() +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *ResetEnabledBaselineOutput) SetOperationIdentifier(v string) *ResetEnabledBaselineOutput { + s.OperationIdentifier = &v + return s +} + type ResetLandingZoneInput struct { _ struct{} `type:"structure"` @@ -3070,7 +5165,7 @@ type ThrottlingException struct { // The ID of the service quota that was exceeded. QuotaCode *string `locationName:"quotaCode" type:"string"` - // The number of seconds to wait before retrying. + // The number of seconds the caller should wait before retrying. RetryAfterSeconds *int64 `location:"header" locationName:"Retry-After" type:"integer"` // The ID of the service that is associated with the error. @@ -3218,6 +5313,108 @@ func (s UntagResourceOutput) GoString() string { return s.String() } +type UpdateEnabledBaselineInput struct { + _ struct{} `type:"structure"` + + // Specifies the new Baseline version, to which the EnabledBaseline should be + // updated. + // + // BaselineVersion is a required field + BaselineVersion *string `locationName:"baselineVersion" min:"1" type:"string" required:"true"` + + // Specifies the EnabledBaseline resource to be updated. + // + // EnabledBaselineIdentifier is a required field + EnabledBaselineIdentifier *string `locationName:"enabledBaselineIdentifier" min:"20" 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 UpdateEnabledBaselineInput) 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 UpdateEnabledBaselineInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateEnabledBaselineInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateEnabledBaselineInput"} + if s.BaselineVersion == nil { + invalidParams.Add(request.NewErrParamRequired("BaselineVersion")) + } + if s.BaselineVersion != nil && len(*s.BaselineVersion) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BaselineVersion", 1)) + } + if s.EnabledBaselineIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("EnabledBaselineIdentifier")) + } + if s.EnabledBaselineIdentifier != nil && len(*s.EnabledBaselineIdentifier) < 20 { + invalidParams.Add(request.NewErrParamMinLen("EnabledBaselineIdentifier", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBaselineVersion sets the BaselineVersion field's value. +func (s *UpdateEnabledBaselineInput) SetBaselineVersion(v string) *UpdateEnabledBaselineInput { + s.BaselineVersion = &v + return s +} + +// SetEnabledBaselineIdentifier sets the EnabledBaselineIdentifier field's value. +func (s *UpdateEnabledBaselineInput) SetEnabledBaselineIdentifier(v string) *UpdateEnabledBaselineInput { + s.EnabledBaselineIdentifier = &v + return s +} + +type UpdateEnabledBaselineOutput struct { + _ struct{} `type:"structure"` + + // The ID (in UUID format) of the asynchronous UpdateEnabledBaseline operation. + // This operationIdentifier is used to track status through calls to the GetBaselineOperation + // API. + // + // OperationIdentifier is a required field + OperationIdentifier *string `locationName:"operationIdentifier" min:"36" 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 UpdateEnabledBaselineOutput) 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 UpdateEnabledBaselineOutput) GoString() string { + return s.String() +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *UpdateEnabledBaselineOutput) SetOperationIdentifier(v string) *UpdateEnabledBaselineOutput { + s.OperationIdentifier = &v + return s +} + // The input does not satisfy the constraints specified by an Amazon Web Services // service. type ValidationException struct { @@ -3283,6 +5480,50 @@ func (s *ValidationException) RequestID() string { return s.RespMetadata.RequestID } +const ( + // BaselineOperationStatusSucceeded is a BaselineOperationStatus enum value + BaselineOperationStatusSucceeded = "SUCCEEDED" + + // BaselineOperationStatusFailed is a BaselineOperationStatus enum value + BaselineOperationStatusFailed = "FAILED" + + // BaselineOperationStatusInProgress is a BaselineOperationStatus enum value + BaselineOperationStatusInProgress = "IN_PROGRESS" +) + +// BaselineOperationStatus_Values returns all elements of the BaselineOperationStatus enum +func BaselineOperationStatus_Values() []string { + return []string{ + BaselineOperationStatusSucceeded, + BaselineOperationStatusFailed, + BaselineOperationStatusInProgress, + } +} + +const ( + // BaselineOperationTypeEnableBaseline is a BaselineOperationType enum value + BaselineOperationTypeEnableBaseline = "ENABLE_BASELINE" + + // BaselineOperationTypeDisableBaseline is a BaselineOperationType enum value + BaselineOperationTypeDisableBaseline = "DISABLE_BASELINE" + + // BaselineOperationTypeUpdateEnabledBaseline is a BaselineOperationType enum value + BaselineOperationTypeUpdateEnabledBaseline = "UPDATE_ENABLED_BASELINE" + + // BaselineOperationTypeResetEnabledBaseline is a BaselineOperationType enum value + BaselineOperationTypeResetEnabledBaseline = "RESET_ENABLED_BASELINE" +) + +// BaselineOperationType_Values returns all elements of the BaselineOperationType enum +func BaselineOperationType_Values() []string { + return []string{ + BaselineOperationTypeEnableBaseline, + BaselineOperationTypeDisableBaseline, + BaselineOperationTypeUpdateEnabledBaseline, + BaselineOperationTypeResetEnabledBaseline, + } +} + const ( // ControlOperationStatusSucceeded is a ControlOperationStatus enum value ControlOperationStatusSucceeded = "SUCCEEDED" diff --git a/service/controltower/controltoweriface/interface.go b/service/controltower/controltoweriface/interface.go index 0489c8b7531..44706c015f4 100644 --- a/service/controltower/controltoweriface/interface.go +++ b/service/controltower/controltoweriface/interface.go @@ -64,18 +64,38 @@ type ControlTowerAPI interface { DeleteLandingZoneWithContext(aws.Context, *controltower.DeleteLandingZoneInput, ...request.Option) (*controltower.DeleteLandingZoneOutput, error) DeleteLandingZoneRequest(*controltower.DeleteLandingZoneInput) (*request.Request, *controltower.DeleteLandingZoneOutput) + DisableBaseline(*controltower.DisableBaselineInput) (*controltower.DisableBaselineOutput, error) + DisableBaselineWithContext(aws.Context, *controltower.DisableBaselineInput, ...request.Option) (*controltower.DisableBaselineOutput, error) + DisableBaselineRequest(*controltower.DisableBaselineInput) (*request.Request, *controltower.DisableBaselineOutput) + DisableControl(*controltower.DisableControlInput) (*controltower.DisableControlOutput, error) DisableControlWithContext(aws.Context, *controltower.DisableControlInput, ...request.Option) (*controltower.DisableControlOutput, error) DisableControlRequest(*controltower.DisableControlInput) (*request.Request, *controltower.DisableControlOutput) + EnableBaseline(*controltower.EnableBaselineInput) (*controltower.EnableBaselineOutput, error) + EnableBaselineWithContext(aws.Context, *controltower.EnableBaselineInput, ...request.Option) (*controltower.EnableBaselineOutput, error) + EnableBaselineRequest(*controltower.EnableBaselineInput) (*request.Request, *controltower.EnableBaselineOutput) + EnableControl(*controltower.EnableControlInput) (*controltower.EnableControlOutput, error) EnableControlWithContext(aws.Context, *controltower.EnableControlInput, ...request.Option) (*controltower.EnableControlOutput, error) EnableControlRequest(*controltower.EnableControlInput) (*request.Request, *controltower.EnableControlOutput) + GetBaseline(*controltower.GetBaselineInput) (*controltower.GetBaselineOutput, error) + GetBaselineWithContext(aws.Context, *controltower.GetBaselineInput, ...request.Option) (*controltower.GetBaselineOutput, error) + GetBaselineRequest(*controltower.GetBaselineInput) (*request.Request, *controltower.GetBaselineOutput) + + GetBaselineOperation(*controltower.GetBaselineOperationInput) (*controltower.GetBaselineOperationOutput, error) + GetBaselineOperationWithContext(aws.Context, *controltower.GetBaselineOperationInput, ...request.Option) (*controltower.GetBaselineOperationOutput, error) + GetBaselineOperationRequest(*controltower.GetBaselineOperationInput) (*request.Request, *controltower.GetBaselineOperationOutput) + GetControlOperation(*controltower.GetControlOperationInput) (*controltower.GetControlOperationOutput, error) GetControlOperationWithContext(aws.Context, *controltower.GetControlOperationInput, ...request.Option) (*controltower.GetControlOperationOutput, error) GetControlOperationRequest(*controltower.GetControlOperationInput) (*request.Request, *controltower.GetControlOperationOutput) + GetEnabledBaseline(*controltower.GetEnabledBaselineInput) (*controltower.GetEnabledBaselineOutput, error) + GetEnabledBaselineWithContext(aws.Context, *controltower.GetEnabledBaselineInput, ...request.Option) (*controltower.GetEnabledBaselineOutput, error) + GetEnabledBaselineRequest(*controltower.GetEnabledBaselineInput) (*request.Request, *controltower.GetEnabledBaselineOutput) + GetEnabledControl(*controltower.GetEnabledControlInput) (*controltower.GetEnabledControlOutput, error) GetEnabledControlWithContext(aws.Context, *controltower.GetEnabledControlInput, ...request.Option) (*controltower.GetEnabledControlOutput, error) GetEnabledControlRequest(*controltower.GetEnabledControlInput) (*request.Request, *controltower.GetEnabledControlOutput) @@ -84,6 +104,20 @@ type ControlTowerAPI interface { GetLandingZoneOperationWithContext(aws.Context, *controltower.GetLandingZoneOperationInput, ...request.Option) (*controltower.GetLandingZoneOperationOutput, error) GetLandingZoneOperationRequest(*controltower.GetLandingZoneOperationInput) (*request.Request, *controltower.GetLandingZoneOperationOutput) + ListBaselines(*controltower.ListBaselinesInput) (*controltower.ListBaselinesOutput, error) + ListBaselinesWithContext(aws.Context, *controltower.ListBaselinesInput, ...request.Option) (*controltower.ListBaselinesOutput, error) + ListBaselinesRequest(*controltower.ListBaselinesInput) (*request.Request, *controltower.ListBaselinesOutput) + + ListBaselinesPages(*controltower.ListBaselinesInput, func(*controltower.ListBaselinesOutput, bool) bool) error + ListBaselinesPagesWithContext(aws.Context, *controltower.ListBaselinesInput, func(*controltower.ListBaselinesOutput, bool) bool, ...request.Option) error + + ListEnabledBaselines(*controltower.ListEnabledBaselinesInput) (*controltower.ListEnabledBaselinesOutput, error) + ListEnabledBaselinesWithContext(aws.Context, *controltower.ListEnabledBaselinesInput, ...request.Option) (*controltower.ListEnabledBaselinesOutput, error) + ListEnabledBaselinesRequest(*controltower.ListEnabledBaselinesInput) (*request.Request, *controltower.ListEnabledBaselinesOutput) + + ListEnabledBaselinesPages(*controltower.ListEnabledBaselinesInput, func(*controltower.ListEnabledBaselinesOutput, bool) bool) error + ListEnabledBaselinesPagesWithContext(aws.Context, *controltower.ListEnabledBaselinesInput, func(*controltower.ListEnabledBaselinesOutput, bool) bool, ...request.Option) error + ListEnabledControls(*controltower.ListEnabledControlsInput) (*controltower.ListEnabledControlsOutput, error) ListEnabledControlsWithContext(aws.Context, *controltower.ListEnabledControlsInput, ...request.Option) (*controltower.ListEnabledControlsOutput, error) ListEnabledControlsRequest(*controltower.ListEnabledControlsInput) (*request.Request, *controltower.ListEnabledControlsOutput) @@ -102,6 +136,10 @@ type ControlTowerAPI interface { ListTagsForResourceWithContext(aws.Context, *controltower.ListTagsForResourceInput, ...request.Option) (*controltower.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*controltower.ListTagsForResourceInput) (*request.Request, *controltower.ListTagsForResourceOutput) + ResetEnabledBaseline(*controltower.ResetEnabledBaselineInput) (*controltower.ResetEnabledBaselineOutput, error) + ResetEnabledBaselineWithContext(aws.Context, *controltower.ResetEnabledBaselineInput, ...request.Option) (*controltower.ResetEnabledBaselineOutput, error) + ResetEnabledBaselineRequest(*controltower.ResetEnabledBaselineInput) (*request.Request, *controltower.ResetEnabledBaselineOutput) + ResetLandingZone(*controltower.ResetLandingZoneInput) (*controltower.ResetLandingZoneOutput, error) ResetLandingZoneWithContext(aws.Context, *controltower.ResetLandingZoneInput, ...request.Option) (*controltower.ResetLandingZoneOutput, error) ResetLandingZoneRequest(*controltower.ResetLandingZoneInput) (*request.Request, *controltower.ResetLandingZoneOutput) @@ -113,6 +151,10 @@ type ControlTowerAPI interface { UntagResource(*controltower.UntagResourceInput) (*controltower.UntagResourceOutput, error) UntagResourceWithContext(aws.Context, *controltower.UntagResourceInput, ...request.Option) (*controltower.UntagResourceOutput, error) UntagResourceRequest(*controltower.UntagResourceInput) (*request.Request, *controltower.UntagResourceOutput) + + UpdateEnabledBaseline(*controltower.UpdateEnabledBaselineInput) (*controltower.UpdateEnabledBaselineOutput, error) + UpdateEnabledBaselineWithContext(aws.Context, *controltower.UpdateEnabledBaselineInput, ...request.Option) (*controltower.UpdateEnabledBaselineOutput, error) + UpdateEnabledBaselineRequest(*controltower.UpdateEnabledBaselineInput) (*request.Request, *controltower.UpdateEnabledBaselineOutput) } var _ ControlTowerAPI = (*controltower.ControlTower)(nil) diff --git a/service/lookoutequipment/api.go b/service/lookoutequipment/api.go index d30f5cbd4ea..4b193f335ce 100644 --- a/service/lookoutequipment/api.go +++ b/service/lookoutequipment/api.go @@ -6451,6 +6451,11 @@ type CreateModelInput struct { // model that's being created. LabelsInputConfiguration *LabelsInputConfiguration `type:"structure"` + // The Amazon S3 location where you want Amazon Lookout for Equipment to save + // the pointwise model diagnostics. You must also specify the RoleArn request + // parameter. + ModelDiagnosticsOutputConfiguration *ModelDiagnosticsOutputConfiguration `type:"structure"` + // The name for the machine learning model to be created. // // ModelName is a required field @@ -6531,6 +6536,11 @@ func (s *CreateModelInput) Validate() error { invalidParams.AddNested("LabelsInputConfiguration", err.(request.ErrInvalidParams)) } } + if s.ModelDiagnosticsOutputConfiguration != nil { + if err := s.ModelDiagnosticsOutputConfiguration.Validate(); err != nil { + invalidParams.AddNested("ModelDiagnosticsOutputConfiguration", err.(request.ErrInvalidParams)) + } + } if s.Tags != nil { for i, v := range s.Tags { if v == nil { @@ -6590,6 +6600,12 @@ func (s *CreateModelInput) SetLabelsInputConfiguration(v *LabelsInputConfigurati return s } +// SetModelDiagnosticsOutputConfiguration sets the ModelDiagnosticsOutputConfiguration field's value. +func (s *CreateModelInput) SetModelDiagnosticsOutputConfiguration(v *ModelDiagnosticsOutputConfiguration) *CreateModelInput { + s.ModelDiagnosticsOutputConfiguration = v + return s +} + // SetModelName sets the ModelName field's value. func (s *CreateModelInput) SetModelName(v string) *CreateModelInput { s.ModelName = &v @@ -8722,6 +8738,9 @@ type DescribeModelOutput struct { // The Amazon Resource Name (ARN) of the machine learning model being described. ModelArn *string `min:"20" type:"string"` + // Configuration information for the model's pointwise model diagnostics. + ModelDiagnosticsOutputConfiguration *ModelDiagnosticsOutputConfiguration `type:"structure"` + // The Model Metrics show an aggregated summary of the model's performance within // the evaluation time range. This is the JSON content of the metrics created // when evaluating the model. @@ -8943,6 +8962,12 @@ func (s *DescribeModelOutput) SetModelArn(v string) *DescribeModelOutput { return s } +// SetModelDiagnosticsOutputConfiguration sets the ModelDiagnosticsOutputConfiguration field's value. +func (s *DescribeModelOutput) SetModelDiagnosticsOutputConfiguration(v *ModelDiagnosticsOutputConfiguration) *DescribeModelOutput { + s.ModelDiagnosticsOutputConfiguration = v + return s +} + // SetModelMetrics sets the ModelMetrics field's value. func (s *DescribeModelOutput) SetModelMetrics(v aws.JSONValue) *DescribeModelOutput { s.ModelMetrics = v @@ -9195,6 +9220,14 @@ type DescribeModelVersionOutput struct { // this version belong to. ModelArn *string `min:"20" type:"string"` + // The Amazon S3 location where Amazon Lookout for Equipment saves the pointwise + // model diagnostics for the model version. + ModelDiagnosticsOutputConfiguration *ModelDiagnosticsOutputConfiguration `type:"structure"` + + // The Amazon S3 output prefix for where Lookout for Equipment saves the pointwise + // model diagnostics for the model version. + ModelDiagnosticsResultsObject *S3Object `type:"structure"` + // Shows an aggregated summary, in JSON format, of the model's performance within // the evaluation time range. These metrics are created when evaluating the // model. @@ -9370,6 +9403,18 @@ func (s *DescribeModelVersionOutput) SetModelArn(v string) *DescribeModelVersion return s } +// SetModelDiagnosticsOutputConfiguration sets the ModelDiagnosticsOutputConfiguration field's value. +func (s *DescribeModelVersionOutput) SetModelDiagnosticsOutputConfiguration(v *ModelDiagnosticsOutputConfiguration) *DescribeModelVersionOutput { + s.ModelDiagnosticsOutputConfiguration = v + return s +} + +// SetModelDiagnosticsResultsObject sets the ModelDiagnosticsResultsObject field's value. +func (s *DescribeModelVersionOutput) SetModelDiagnosticsResultsObject(v *S3Object) *DescribeModelVersionOutput { + s.ModelDiagnosticsResultsObject = v + return s +} + // SetModelMetrics sets the ModelMetrics field's value. func (s *DescribeModelVersionOutput) SetModelMetrics(v string) *DescribeModelVersionOutput { s.ModelMetrics = &v @@ -11025,7 +11070,7 @@ type InsufficientSensorData struct { MissingCompleteSensorData *MissingCompleteSensorData `type:"structure" required:"true"` // Parameter that describes the total number of sensors that have a short date - // range of less than 90 days of data overall. + // range of less than 14 days of data overall. // // SensorsWithShortDateRange is a required field SensorsWithShortDateRange *SensorsWithShortDateRange `type:"structure" required:"true"` @@ -11985,6 +12030,10 @@ type ListInferenceExecutionsOutput struct { // Provides an array of information about the individual inference executions // returned from the ListInferenceExecutions operation, including model used, // inference scheduler, data configuration, and so on. + // + // If you don't supply the InferenceSchedulerName request parameter, or if you + // supply the name of an inference scheduler that doesn't exist, ListInferenceExecutions + // returns an empty array in InferenceExecutionSummaries. InferenceExecutionSummaries []*InferenceExecutionSummary `type:"list"` // An opaque pagination token indicating where to continue the listing of inference @@ -12275,7 +12324,7 @@ type ListLabelsInput struct { // given. IntervalStartTime *time.Time `type:"timestamp"` - // Retruns the name of the label group. + // Returns the name of the label group. // // LabelGroupName is a required field LabelGroupName *string `min:"1" type:"string" required:"true"` @@ -12377,6 +12426,10 @@ type ListLabelsOutput struct { _ struct{} `type:"structure"` // A summary of the items in the label group. + // + // If you don't supply the LabelGroupName request parameter, or if you supply + // the name of a label group that doesn't exist, ListLabels returns an empty + // array in LabelSummaries. LabelSummaries []*LabelSummary `type:"list"` // An opaque pagination token indicating where to continue the listing of datasets. @@ -12552,6 +12605,10 @@ type ListModelVersionsOutput struct { // Provides information on the specified model version, including the created // time, model and dataset ARNs, and status. + // + // If you don't supply the ModelName request parameter, or if you supply the + // name of a model that doesn't exist, ListModelVersions returns an empty array + // in ModelVersionSummaries. ModelVersionSummaries []*ModelVersionSummary `type:"list"` // If the total number of results exceeds the limit that the response can display, @@ -13127,6 +13184,142 @@ func (s *MissingSensorData) SetTotalNumberOfMissingValues(v int64) *MissingSenso return s } +// Output configuration information for the pointwise model diagnostics for +// an Amazon Lookout for Equipment model. +type ModelDiagnosticsOutputConfiguration struct { + _ struct{} `type:"structure"` + + // The Amazon Web Services Key Management Service (KMS) key identifier to encrypt + // the pointwise model diagnostics files. + KmsKeyId *string `min:"1" type:"string"` + + // The Amazon S3 location for the pointwise model diagnostics. + // + // S3OutputConfiguration is a required field + S3OutputConfiguration *ModelDiagnosticsS3OutputConfiguration `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 ModelDiagnosticsOutputConfiguration) 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 ModelDiagnosticsOutputConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ModelDiagnosticsOutputConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ModelDiagnosticsOutputConfiguration"} + if s.KmsKeyId != nil && len(*s.KmsKeyId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyId", 1)) + } + if s.S3OutputConfiguration == nil { + invalidParams.Add(request.NewErrParamRequired("S3OutputConfiguration")) + } + if s.S3OutputConfiguration != nil { + if err := s.S3OutputConfiguration.Validate(); err != nil { + invalidParams.AddNested("S3OutputConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *ModelDiagnosticsOutputConfiguration) SetKmsKeyId(v string) *ModelDiagnosticsOutputConfiguration { + s.KmsKeyId = &v + return s +} + +// SetS3OutputConfiguration sets the S3OutputConfiguration field's value. +func (s *ModelDiagnosticsOutputConfiguration) SetS3OutputConfiguration(v *ModelDiagnosticsS3OutputConfiguration) *ModelDiagnosticsOutputConfiguration { + s.S3OutputConfiguration = v + return s +} + +// The Amazon S3 location for the pointwise model diagnostics for an Amazon +// Lookout for Equipment model. +type ModelDiagnosticsS3OutputConfiguration struct { + _ struct{} `type:"structure"` + + // The name of the Amazon S3 bucket where the pointwise model diagnostics are + // located. You must be the owner of the Amazon S3 bucket. + // + // Bucket is a required field + Bucket *string `min:"3" type:"string" required:"true"` + + // The Amazon S3 prefix for the location of the pointwise model diagnostics. + // The prefix specifies the folder and evaluation result file name. (bucket). + // + // When you call CreateModel or UpdateModel, specify the path within the bucket + // that you want Lookout for Equipment to save the model to. During training, + // Lookout for Equipment creates the model evaluation model as a compressed + // JSON file with the name model_diagnostics_results.json.gz. + // + // When you call DescribeModel or DescribeModelVersion, prefix contains the + // file path and filename of the model evaluation file. + Prefix *string `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 ModelDiagnosticsS3OutputConfiguration) 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 ModelDiagnosticsS3OutputConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ModelDiagnosticsS3OutputConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ModelDiagnosticsS3OutputConfiguration"} + if s.Bucket == nil { + invalidParams.Add(request.NewErrParamRequired("Bucket")) + } + if s.Bucket != nil && len(*s.Bucket) < 3 { + invalidParams.Add(request.NewErrParamMinLen("Bucket", 3)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBucket sets the Bucket field's value. +func (s *ModelDiagnosticsS3OutputConfiguration) SetBucket(v string) *ModelDiagnosticsS3OutputConfiguration { + s.Bucket = &v + return s +} + +// SetPrefix sets the Prefix field's value. +func (s *ModelDiagnosticsS3OutputConfiguration) SetPrefix(v string) *ModelDiagnosticsS3OutputConfiguration { + s.Prefix = &v + return s +} + // Provides information about the specified machine learning model, including // dataset and model names and ARNs, as well as status. type ModelSummary struct { @@ -13161,6 +13354,10 @@ type ModelSummary struct { // The Amazon Resource Name (ARN) of the machine learning model. ModelArn *string `min:"20" type:"string"` + // Output configuration information for the pointwise model diagnostics for + // an Amazon Lookout for Equipment model. + ModelDiagnosticsOutputConfiguration *ModelDiagnosticsOutputConfiguration `type:"structure"` + // The name of the machine learning model. ModelName *string `min:"1" type:"string"` @@ -13248,6 +13445,12 @@ func (s *ModelSummary) SetModelArn(v string) *ModelSummary { return s } +// SetModelDiagnosticsOutputConfiguration sets the ModelDiagnosticsOutputConfiguration field's value. +func (s *ModelSummary) SetModelDiagnosticsOutputConfiguration(v *ModelDiagnosticsOutputConfiguration) *ModelSummary { + s.ModelDiagnosticsOutputConfiguration = v + return s +} + // SetModelName sets the ModelName field's value. func (s *ModelSummary) SetModelName(v string) *ModelSummary { s.ModelName = &v @@ -13915,7 +14118,7 @@ func (s *SensorStatisticsSummary) SetSensorName(v string) *SensorStatisticsSumma type SensorsWithShortDateRange struct { _ struct{} `type:"structure"` - // Indicates the number of sensors that have less than 90 days of data. + // Indicates the number of sensors that have less than 14 days of data. // // AffectedSensorCount is a required field AffectedSensorCount *int64 `type:"integer" required:"true"` @@ -15310,6 +15513,11 @@ type UpdateModelInput struct { // hold label data. LabelsInputConfiguration *LabelsInputConfiguration `type:"structure"` + // The Amazon S3 location where you want Amazon Lookout for Equipment to save + // the pointwise model diagnostics for the model. You must also specify the + // RoleArn request parameter. + ModelDiagnosticsOutputConfiguration *ModelDiagnosticsOutputConfiguration `type:"structure"` + // The name of the model to update. // // ModelName is a required field @@ -15354,6 +15562,11 @@ func (s *UpdateModelInput) Validate() error { invalidParams.AddNested("LabelsInputConfiguration", err.(request.ErrInvalidParams)) } } + if s.ModelDiagnosticsOutputConfiguration != nil { + if err := s.ModelDiagnosticsOutputConfiguration.Validate(); err != nil { + invalidParams.AddNested("ModelDiagnosticsOutputConfiguration", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -15367,6 +15580,12 @@ func (s *UpdateModelInput) SetLabelsInputConfiguration(v *LabelsInputConfigurati return s } +// SetModelDiagnosticsOutputConfiguration sets the ModelDiagnosticsOutputConfiguration field's value. +func (s *UpdateModelInput) SetModelDiagnosticsOutputConfiguration(v *ModelDiagnosticsOutputConfiguration) *UpdateModelInput { + s.ModelDiagnosticsOutputConfiguration = v + return s +} + // SetModelName sets the ModelName field's value. func (s *UpdateModelInput) SetModelName(v string) *UpdateModelInput { s.ModelName = &v diff --git a/service/qbusiness/api.go b/service/qbusiness/api.go index cb4fbf02f97..8972579777a 100644 --- a/service/qbusiness/api.go +++ b/service/qbusiness/api.go @@ -495,8 +495,8 @@ func (c *QBusiness) CreateIndexRequest(input *CreateIndexInput) (req *request.Re // index is ready to use. // // Once the index is active, you can index your documents using the BatchPutDocument -// (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_BatchPutDocument.html) -// API or the CreateDataSource (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CreateDataSource.html) +// (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_BatchPutDocument.html) +// API or the CreateDataSource (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_CreateDataSource.html) // API. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -6812,8 +6812,7 @@ func (s *AttachmentsConfiguration) SetAttachmentsControlMode(v string) *Attachme return s } -// Enables filtering of Amazon Q web experience responses based on document -// attributes or metadata fields. +// Enables filtering of responses based on document attributes or metadata fields. type AttributeFilter struct { _ struct{} `type:"structure"` @@ -9206,6 +9205,66 @@ func (s *DataSourceVpcConfiguration) SetSubnetIds(v []*string) *DataSourceVpcCon return s } +// Provides information on boosting DATE type document attributes. +// +// For more information on how boosting document attributes work in Amazon Q, +// see Boosting using document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/metadata-boosting.html). +type DateAttributeBoostingConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies the duration, in seconds, of a boost applies to a DATE type document + // attribute. + BoostingDurationInSeconds *int64 `locationName:"boostingDurationInSeconds" type:"long"` + + // Specifies how much a document attribute is boosted. + // + // BoostingLevel is a required field + BoostingLevel *string `locationName:"boostingLevel" type:"string" required:"true" enum:"DocumentAttributeBoostingLevel"` +} + +// 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 DateAttributeBoostingConfiguration) 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 DateAttributeBoostingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DateAttributeBoostingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DateAttributeBoostingConfiguration"} + if s.BoostingLevel == nil { + invalidParams.Add(request.NewErrParamRequired("BoostingLevel")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBoostingDurationInSeconds sets the BoostingDurationInSeconds field's value. +func (s *DateAttributeBoostingConfiguration) SetBoostingDurationInSeconds(v int64) *DateAttributeBoostingConfiguration { + s.BoostingDurationInSeconds = &v + return s +} + +// SetBoostingLevel sets the BoostingLevel field's value. +func (s *DateAttributeBoostingConfiguration) SetBoostingLevel(v string) *DateAttributeBoostingConfiguration { + s.BoostingLevel = &v + return s +} + type DeleteApplicationInput struct { _ struct{} `type:"structure" nopayload:"true"` @@ -10379,9 +10438,111 @@ func (s *DocumentAttribute) SetValue(v *DocumentAttributeValue) *DocumentAttribu return s } +// Provides information on boosting supported Amazon Q document attribute types. +// When an end user chat query matches document attributes that have been boosted, +// Amazon Q prioritizes generating responses from content that matches the boosted +// document attributes. +// +// For STRING and STRING_LIST type document attributes to be used for boosting +// on the console and the API, they must be enabled for search using the DocumentAttributeConfiguration +// (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeConfiguration.html) +// object of the UpdateIndex (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_UpdateIndex.html) +// API. If you haven't enabled searching on these attributes, you can't boost +// attributes of these data types on either the console or the API. +// +// For more information on how boosting document attributes work in Amazon Q, +// see Boosting using document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/metadata-boosting.html). +type DocumentAttributeBoostingConfiguration struct { + _ struct{} `type:"structure"` + + // Provides information on boosting DATE type document attributes. + DateConfiguration *DateAttributeBoostingConfiguration `locationName:"dateConfiguration" type:"structure"` + + // Provides information on boosting NUMBER type document attributes. + NumberConfiguration *NumberAttributeBoostingConfiguration `locationName:"numberConfiguration" type:"structure"` + + // Provides information on boosting STRING type document attributes. + StringConfiguration *StringAttributeBoostingConfiguration `locationName:"stringConfiguration" type:"structure"` + + // Provides information on boosting STRING_LIST type document attributes. + StringListConfiguration *StringListAttributeBoostingConfiguration `locationName:"stringListConfiguration" 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 DocumentAttributeBoostingConfiguration) 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 DocumentAttributeBoostingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DocumentAttributeBoostingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DocumentAttributeBoostingConfiguration"} + if s.DateConfiguration != nil { + if err := s.DateConfiguration.Validate(); err != nil { + invalidParams.AddNested("DateConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.NumberConfiguration != nil { + if err := s.NumberConfiguration.Validate(); err != nil { + invalidParams.AddNested("NumberConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.StringConfiguration != nil { + if err := s.StringConfiguration.Validate(); err != nil { + invalidParams.AddNested("StringConfiguration", err.(request.ErrInvalidParams)) + } + } + if s.StringListConfiguration != nil { + if err := s.StringListConfiguration.Validate(); err != nil { + invalidParams.AddNested("StringListConfiguration", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDateConfiguration sets the DateConfiguration field's value. +func (s *DocumentAttributeBoostingConfiguration) SetDateConfiguration(v *DateAttributeBoostingConfiguration) *DocumentAttributeBoostingConfiguration { + s.DateConfiguration = v + return s +} + +// SetNumberConfiguration sets the NumberConfiguration field's value. +func (s *DocumentAttributeBoostingConfiguration) SetNumberConfiguration(v *NumberAttributeBoostingConfiguration) *DocumentAttributeBoostingConfiguration { + s.NumberConfiguration = v + return s +} + +// SetStringConfiguration sets the StringConfiguration field's value. +func (s *DocumentAttributeBoostingConfiguration) SetStringConfiguration(v *StringAttributeBoostingConfiguration) *DocumentAttributeBoostingConfiguration { + s.StringConfiguration = v + return s +} + +// SetStringListConfiguration sets the StringListConfiguration field's value. +func (s *DocumentAttributeBoostingConfiguration) SetStringListConfiguration(v *StringListAttributeBoostingConfiguration) *DocumentAttributeBoostingConfiguration { + s.StringListConfiguration = v + return s +} + // The condition used for the target document attribute or metadata field when // ingesting documents into Amazon Q. You use this with DocumentAttributeTarget -// (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeTarget.html) +// (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeTarget.html) // to apply the condition. // // For example, you can create the 'Department' target field and have it prefill @@ -10558,11 +10719,11 @@ func (s *DocumentAttributeConfiguration) SetType(v string) *DocumentAttributeCon // // Amazon Q can't create a target field if it has not already been created as // an index field. After you create your index field, you can create a document -// metadata field using DocumentAttributeTarget (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeTarget.html). +// metadata field using DocumentAttributeTarget (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeTarget.html). // Amazon Q will then map your newly created document attribute to your index // field. // -// You can also use this with DocumentAttributeCondition (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeCondition.html). +// You can also use this with DocumentAttributeCondition (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeCondition.html). type DocumentAttributeTarget struct { _ struct{} `type:"structure"` @@ -10844,12 +11005,12 @@ type DocumentEnrichmentConfiguration struct { // Amazon Q. // // You can configure your Lambda function using PreExtractionHookConfiguration - // (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html) + // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html) // if you want to apply advanced alterations on the original or raw documents. // // If you want to apply advanced alterations on the Amazon Q structured documents, // you must configure your Lambda function using PostExtractionHookConfiguration - // (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html). + // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html). // // You can only invoke one Lambda function. However, this function can invoke // other functions it requires. @@ -10862,12 +11023,12 @@ type DocumentEnrichmentConfiguration struct { // Amazon Q. // // You can configure your Lambda function using PreExtractionHookConfiguration - // (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html) + // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html) // if you want to apply advanced alterations on the original or raw documents. // // If you want to apply advanced alterations on the Amazon Q structured documents, // you must configure your Lambda function using PostExtractionHookConfiguration - // (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html). + // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html). // // You can only invoke one Lambda function. However, this function can invoke // other functions it requires. @@ -12877,12 +13038,12 @@ func (s *GroupSummary) SetGroupName(v string) *GroupSummary { // Amazon Q. // // You can configure your Lambda function using PreExtractionHookConfiguration -// (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html) +// (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html) // if you want to apply advanced alterations on the original or raw documents. // // If you want to apply advanced alterations on the Amazon Q structured documents, // you must configure your Lambda function using PostExtractionHookConfiguration -// (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_CustomDocumentEnrichmentConfiguration.html). +// (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentEnrichmentConfiguration.html). // // You can only invoke one Lambda function. However, this function can invoke // other functions it requires. @@ -13126,7 +13287,7 @@ func (s *IndexStatistics) SetTextDocumentStatistics(v *TextDocumentStatistics) * // document metadata and content when ingesting documents into Amazon Q. // // To apply advanced logic, to go beyond what you can do with basic logic, see -// HookConfiguration (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_HookConfiguration.html). +// HookConfiguration (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_HookConfiguration.html). // // For more information, see Custom document enrichment (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/custom-document-enrichment.html). type InlineDocumentEnrichmentConfiguration struct { @@ -13134,7 +13295,7 @@ type InlineDocumentEnrichmentConfiguration struct { // The condition used for the target document attribute or metadata field when // ingesting documents into Amazon Q. You use this with DocumentAttributeTarget - // (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeTarget.html) + // (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeTarget.html) // to apply the condition. // // For example, you can create the 'Department' target field and have it prefill @@ -13164,11 +13325,11 @@ type InlineDocumentEnrichmentConfiguration struct { // // Amazon Q can't create a target field if it has not already been created as // an index field. After you create your index field, you can create a document - // metadata field using DocumentAttributeTarget (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeTarget.html). + // metadata field using DocumentAttributeTarget (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeTarget.html). // Amazon Q will then map your newly created document attribute to your index // field. // - // You can also use this with DocumentAttributeCondition (https://docs.aws.amazon.com/enterpriseq/latest/APIReference/API_DocumentAttributeCondition.html). + // You can also use this with DocumentAttributeCondition (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeCondition.html). Target *DocumentAttributeTarget `locationName:"target" type:"structure"` } @@ -15249,6 +15410,10 @@ func (s *MessageUsefulnessFeedback) SetUsefulness(v string) *MessageUsefulnessFe type NativeIndexConfiguration struct { _ struct{} `type:"structure"` + // Overrides the default boosts applied by Amazon Q to supported document attribute + // data types. + BoostingOverride map[string]*DocumentAttributeBoostingConfiguration `locationName:"boostingOverride" min:"1" type:"map"` + // The identifier for the Amazon Q index. // // IndexId is a required field @@ -15276,12 +15441,25 @@ func (s NativeIndexConfiguration) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *NativeIndexConfiguration) Validate() error { invalidParams := request.ErrInvalidParams{Context: "NativeIndexConfiguration"} + if s.BoostingOverride != nil && len(s.BoostingOverride) < 1 { + invalidParams.Add(request.NewErrParamMinLen("BoostingOverride", 1)) + } if s.IndexId == nil { invalidParams.Add(request.NewErrParamRequired("IndexId")) } if s.IndexId != nil && len(*s.IndexId) < 36 { invalidParams.Add(request.NewErrParamMinLen("IndexId", 36)) } + if s.BoostingOverride != nil { + for i, v := range s.BoostingOverride { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "BoostingOverride", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -15289,12 +15467,78 @@ func (s *NativeIndexConfiguration) Validate() error { return nil } +// SetBoostingOverride sets the BoostingOverride field's value. +func (s *NativeIndexConfiguration) SetBoostingOverride(v map[string]*DocumentAttributeBoostingConfiguration) *NativeIndexConfiguration { + s.BoostingOverride = v + return s +} + // SetIndexId sets the IndexId field's value. func (s *NativeIndexConfiguration) SetIndexId(v string) *NativeIndexConfiguration { s.IndexId = &v return s } +// Provides information on boosting NUMBER type document attributes. +// +// For more information on how boosting document attributes work in Amazon Q, +// see Boosting using document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/metadata-boosting.html). +type NumberAttributeBoostingConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies the duration, in seconds, of a boost applies to a NUMBER type document + // attribute. + // + // BoostingLevel is a required field + BoostingLevel *string `locationName:"boostingLevel" type:"string" required:"true" enum:"DocumentAttributeBoostingLevel"` + + // Specifies how much a document attribute is boosted. + BoostingType *string `locationName:"boostingType" type:"string" enum:"NumberAttributeBoostingType"` +} + +// 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 NumberAttributeBoostingConfiguration) 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 NumberAttributeBoostingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *NumberAttributeBoostingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "NumberAttributeBoostingConfiguration"} + if s.BoostingLevel == nil { + invalidParams.Add(request.NewErrParamRequired("BoostingLevel")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBoostingLevel sets the BoostingLevel field's value. +func (s *NumberAttributeBoostingConfiguration) SetBoostingLevel(v string) *NumberAttributeBoostingConfiguration { + s.BoostingLevel = &v + return s +} + +// SetBoostingType sets the BoostingType field's value. +func (s *NumberAttributeBoostingConfiguration) SetBoostingType(v string) *NumberAttributeBoostingConfiguration { + s.BoostingType = &v + return s +} + // Information about the OAuth 2.0 authentication credential/token used to configure // a plugin. type OAuth2ClientCredentialConfiguration struct { @@ -16238,7 +16482,7 @@ type Rule struct { // The configuration information for a rule. RuleConfiguration *RuleConfiguration `locationName:"ruleConfiguration" type:"structure"` - // The type fo rule. + // The type of rule. // // RuleType is a required field RuleType *string `locationName:"ruleType" type:"string" required:"true" enum:"RuleType"` @@ -16900,6 +17144,132 @@ func (s StopDataSourceSyncJobOutput) GoString() string { return s.String() } +// Provides information on boosting STRING type document attributes. +// +// For STRING and STRING_LIST type document attributes to be used for boosting +// on the console and the API, they must be enabled for search using the DocumentAttributeConfiguration +// (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeConfiguration.html) +// object of the UpdateIndex (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_UpdateIndex.html) +// API. If you haven't enabled searching on these attributes, you can't boost +// attributes of these data types on either the console or the API. +// +// For more information on how boosting document attributes work in Amazon Q, +// see Boosting using document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/metadata-boosting.html). +type StringAttributeBoostingConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies specific values of a STRING type document attribute being boosted. + AttributeValueBoosting map[string]*string `locationName:"attributeValueBoosting" min:"1" type:"map"` + + // Specifies how much a document attribute is boosted. + // + // BoostingLevel is a required field + BoostingLevel *string `locationName:"boostingLevel" type:"string" required:"true" enum:"DocumentAttributeBoostingLevel"` +} + +// 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 StringAttributeBoostingConfiguration) 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 StringAttributeBoostingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StringAttributeBoostingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StringAttributeBoostingConfiguration"} + if s.AttributeValueBoosting != nil && len(s.AttributeValueBoosting) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AttributeValueBoosting", 1)) + } + if s.BoostingLevel == nil { + invalidParams.Add(request.NewErrParamRequired("BoostingLevel")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAttributeValueBoosting sets the AttributeValueBoosting field's value. +func (s *StringAttributeBoostingConfiguration) SetAttributeValueBoosting(v map[string]*string) *StringAttributeBoostingConfiguration { + s.AttributeValueBoosting = v + return s +} + +// SetBoostingLevel sets the BoostingLevel field's value. +func (s *StringAttributeBoostingConfiguration) SetBoostingLevel(v string) *StringAttributeBoostingConfiguration { + s.BoostingLevel = &v + return s +} + +// Provides information on boosting STRING_LIST type document attributes. +// +// For STRING and STRING_LIST type document attributes to be used for boosting +// on the console and the API, they must be enabled for search using the DocumentAttributeConfiguration +// (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_DocumentAttributeConfiguration.html) +// object of the UpdateIndex (https://docs.aws.amazon.com/amazonq/latest/api-reference/API_UpdateIndex.html) +// API. If you haven't enabled searching on these attributes, you can't boost +// attributes of these data types on either the console or the API. +// +// For more information on how boosting document attributes work in Amazon Q, +// see Boosting using document attributes (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/metadata-boosting.html). +type StringListAttributeBoostingConfiguration struct { + _ struct{} `type:"structure"` + + // Specifies how much a document attribute is boosted. + // + // BoostingLevel is a required field + BoostingLevel *string `locationName:"boostingLevel" type:"string" required:"true" enum:"DocumentAttributeBoostingLevel"` +} + +// 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 StringListAttributeBoostingConfiguration) 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 StringListAttributeBoostingConfiguration) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *StringListAttributeBoostingConfiguration) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "StringListAttributeBoostingConfiguration"} + if s.BoostingLevel == nil { + invalidParams.Add(request.NewErrParamRequired("BoostingLevel")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBoostingLevel sets the BoostingLevel field's value. +func (s *StringListAttributeBoostingConfiguration) SetBoostingLevel(v string) *StringListAttributeBoostingConfiguration { + s.BoostingLevel = &v + return s +} + // A list of key/value pairs that identify an index, FAQ, or data source. Tag // keys and values can consist of Unicode letters, digits, white space, and // any of the following symbols: _ . : / = + - @. @@ -17219,7 +17589,7 @@ func (s *ThrottlingException) RequestID() string { type TopicConfiguration struct { _ struct{} `type:"structure"` - // A description for your topic control configuration. Use this outline how + // A description for your topic control configuration. Use this to outline how // the large language model (LLM) should use this topic control configuration. Description *string `locationName:"description" type:"string"` @@ -19131,6 +19501,34 @@ func DataSourceSyncJobStatus_Values() []string { } } +const ( + // DocumentAttributeBoostingLevelNone is a DocumentAttributeBoostingLevel enum value + DocumentAttributeBoostingLevelNone = "NONE" + + // DocumentAttributeBoostingLevelLow is a DocumentAttributeBoostingLevel enum value + DocumentAttributeBoostingLevelLow = "LOW" + + // DocumentAttributeBoostingLevelMedium is a DocumentAttributeBoostingLevel enum value + DocumentAttributeBoostingLevelMedium = "MEDIUM" + + // DocumentAttributeBoostingLevelHigh is a DocumentAttributeBoostingLevel enum value + DocumentAttributeBoostingLevelHigh = "HIGH" + + // DocumentAttributeBoostingLevelVeryHigh is a DocumentAttributeBoostingLevel enum value + DocumentAttributeBoostingLevelVeryHigh = "VERY_HIGH" +) + +// DocumentAttributeBoostingLevel_Values returns all elements of the DocumentAttributeBoostingLevel enum +func DocumentAttributeBoostingLevel_Values() []string { + return []string{ + DocumentAttributeBoostingLevelNone, + DocumentAttributeBoostingLevelLow, + DocumentAttributeBoostingLevelMedium, + DocumentAttributeBoostingLevelHigh, + DocumentAttributeBoostingLevelVeryHigh, + } +} + const ( // DocumentContentOperatorDelete is a DocumentContentOperator enum value DocumentContentOperatorDelete = "DELETE" @@ -19403,6 +19801,18 @@ const ( // MessageUsefulnessReasonHelpful is a MessageUsefulnessReason enum value MessageUsefulnessReasonHelpful = "HELPFUL" + + // MessageUsefulnessReasonNotBasedOnDocuments is a MessageUsefulnessReason enum value + MessageUsefulnessReasonNotBasedOnDocuments = "NOT_BASED_ON_DOCUMENTS" + + // MessageUsefulnessReasonNotComplete is a MessageUsefulnessReason enum value + MessageUsefulnessReasonNotComplete = "NOT_COMPLETE" + + // MessageUsefulnessReasonNotConcise is a MessageUsefulnessReason enum value + MessageUsefulnessReasonNotConcise = "NOT_CONCISE" + + // MessageUsefulnessReasonOther is a MessageUsefulnessReason enum value + MessageUsefulnessReasonOther = "OTHER" ) // MessageUsefulnessReason_Values returns all elements of the MessageUsefulnessReason enum @@ -19416,6 +19826,26 @@ func MessageUsefulnessReason_Values() []string { MessageUsefulnessReasonComplete, MessageUsefulnessReasonRelevantSources, MessageUsefulnessReasonHelpful, + MessageUsefulnessReasonNotBasedOnDocuments, + MessageUsefulnessReasonNotComplete, + MessageUsefulnessReasonNotConcise, + MessageUsefulnessReasonOther, + } +} + +const ( + // NumberAttributeBoostingTypePrioritizeLargerValues is a NumberAttributeBoostingType enum value + NumberAttributeBoostingTypePrioritizeLargerValues = "PRIORITIZE_LARGER_VALUES" + + // NumberAttributeBoostingTypePrioritizeSmallerValues is a NumberAttributeBoostingType enum value + NumberAttributeBoostingTypePrioritizeSmallerValues = "PRIORITIZE_SMALLER_VALUES" +) + +// NumberAttributeBoostingType_Values returns all elements of the NumberAttributeBoostingType enum +func NumberAttributeBoostingType_Values() []string { + return []string{ + NumberAttributeBoostingTypePrioritizeLargerValues, + NumberAttributeBoostingTypePrioritizeSmallerValues, } } @@ -19559,6 +19989,30 @@ func Status_Values() []string { } } +const ( + // StringAttributeValueBoostingLevelLow is a StringAttributeValueBoostingLevel enum value + StringAttributeValueBoostingLevelLow = "LOW" + + // StringAttributeValueBoostingLevelMedium is a StringAttributeValueBoostingLevel enum value + StringAttributeValueBoostingLevelMedium = "MEDIUM" + + // StringAttributeValueBoostingLevelHigh is a StringAttributeValueBoostingLevel enum value + StringAttributeValueBoostingLevelHigh = "HIGH" + + // StringAttributeValueBoostingLevelVeryHigh is a StringAttributeValueBoostingLevel enum value + StringAttributeValueBoostingLevelVeryHigh = "VERY_HIGH" +) + +// StringAttributeValueBoostingLevel_Values returns all elements of the StringAttributeValueBoostingLevel enum +func StringAttributeValueBoostingLevel_Values() []string { + return []string{ + StringAttributeValueBoostingLevelLow, + StringAttributeValueBoostingLevelMedium, + StringAttributeValueBoostingLevelHigh, + StringAttributeValueBoostingLevelVeryHigh, + } +} + const ( // ValidationExceptionReasonCannotParse is a ValidationExceptionReason enum value ValidationExceptionReasonCannotParse = "CANNOT_PARSE" diff --git a/service/qbusiness/doc.go b/service/qbusiness/doc.go index f4bd5ee7632..5236888dad6 100644 --- a/service/qbusiness/doc.go +++ b/service/qbusiness/doc.go @@ -3,6 +3,49 @@ // Package qbusiness provides the client and types for making API // requests to QBusiness. // +// Amazon Q is in preview release and is subject to change. +// +// This is the Amazon Q (for business use) API Reference. Amazon Q is a fully +// managed, generative-AI powered enterprise chat assistant that you can deploy +// within your organization. Amazon Q enhances employee productivity by supporting +// key tasks such as question-answering, knowledge discovery, writing email +// messages, summarizing text, drafting document outlines, and brainstorming +// ideas. Users ask questions of Amazon Q and get answers that are presented +// in a conversational manner. For an introduction to the service, see the Amazon +// Q (for business use) Developer Guide (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/what-is.html). +// +// For an overview of the Amazon Q APIs, see Overview of Amazon Q API operations +// (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/api-ref.html#api-overview). +// +// For information about the IAM access control permissions you need to use +// this API, see IAM roles for Amazon Q (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/iam-roles.html) +// in the Amazon Q (for business use) Developer Guide. +// +// You can use the following AWS SDKs to access Amazon Q APIs: +// +// - AWS SDK for C++ (https://docs.aws.amazon.com/sdk-for-cpp) +// +// - AWS SDK for Go (https://docs.aws.amazon.com/sdk-for-go) +// +// - AWS SDK for Java (https://docs.aws.amazon.com/sdk-for-java) +// +// - AWS SDK for JavaScript (https://docs.aws.amazon.com/sdk-for-javascript) +// +// - AWS SDK for .NET (https://docs.aws.amazon.com/sdk-for-net) +// +// - AWS SDK for Python (Boto3) (https://docs.aws.amazon.com/pythonsdk) +// +// - AWS SDK for Ruby (https://docs.aws.amazon.com/sdk-for-ruby) +// +// The following resources provide additional information about using the Amazon +// Q API: +// +// - Setting up for Amazon Q (https://docs.aws.amazon.com/amazonq/latest/business-use-dg/setting-up.html) +// +// - Amazon Q CLI Reference (https://awscli.amazonaws.com/v2/documentation/api/latest/reference/qbusiness/index.html) +// +// - Amazon Web Services General Reference (https://docs.aws.amazon.com/general/latest/gr/amazonq.html) +// // See https://docs.aws.amazon.com/goto/WebAPI/qbusiness-2023-11-27 for more information on this service. // // See qbusiness package documentation for more information.