diff --git a/CHANGELOG.md b/CHANGELOG.md index 0ed44fe16b..93bfaf21b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +Release v1.44.90 (2022-09-01) +=== + +### Service Client Updates +* `service/codeguru-reviewer`: Updates service documentation +* `service/controltower`: Adds new service +* `service/route53`: Updates service documentation + * Documentation updates for Amazon Route 53. + Release v1.44.89 (2022-08-31) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 9e3122306f..668f1c97ff 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -2941,6 +2941,9 @@ var awsPartition = partition{ endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-3", + }: endpoint{}, endpointKey{ Region: "ca-central-1", }: endpoint{}, @@ -5855,6 +5858,115 @@ var awsPartition = partition{ }: endpoint{}, }, }, + "controltower": service{ + Endpoints: serviceEndpoints{ + endpointKey{ + Region: "ap-northeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-northeast-2", + }: endpoint{}, + endpointKey{ + Region: "ap-south-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-1", + }: endpoint{}, + endpointKey{ + Region: "ap-southeast-2", + }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "controltower-fips.ca-central-1.amazonaws.com", + }, + endpointKey{ + Region: "ca-central-1-fips", + }: endpoint{ + Hostname: "controltower-fips.ca-central-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ca-central-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "eu-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-north-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-1", + }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + }: endpoint{}, + endpointKey{ + Region: "eu-west-3", + }: endpoint{}, + endpointKey{ + Region: "sa-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + }: endpoint{}, + endpointKey{ + Region: "us-east-1", + Variant: fipsVariant, + }: endpoint{ + Hostname: "controltower-fips.us-east-1.amazonaws.com", + }, + endpointKey{ + Region: "us-east-1-fips", + }: endpoint{ + Hostname: "controltower-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "us-east-2", + }: endpoint{}, + endpointKey{ + Region: "us-east-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "controltower-fips.us-east-2.amazonaws.com", + }, + endpointKey{ + Region: "us-east-2-fips", + }: endpoint{ + Hostname: "controltower-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + Deprecated: boxedTrue, + }, + endpointKey{ + Region: "us-west-2", + }: endpoint{}, + endpointKey{ + Region: "us-west-2", + Variant: fipsVariant, + }: endpoint{ + Hostname: "controltower-fips.us-west-2.amazonaws.com", + }, + endpointKey{ + Region: "us-west-2-fips", + }: endpoint{ + Hostname: "controltower-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + Deprecated: boxedTrue, + }, + }, + }, "cur": service{ Endpoints: serviceEndpoints{ endpointKey{ diff --git a/aws/version.go b/aws/version.go index d275181d41..d4c130f68d 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.44.89" +const SDKVersion = "1.44.90" diff --git a/models/apis/codeguru-reviewer/2019-09-19/docs-2.json b/models/apis/codeguru-reviewer/2019-09-19/docs-2.json index bb275dd458..2d92260d26 100644 --- a/models/apis/codeguru-reviewer/2019-09-19/docs-2.json +++ b/models/apis/codeguru-reviewer/2019-09-19/docs-2.json @@ -1,19 +1,19 @@ { "version": "2.0", - "service": "

This section provides documentation for the Amazon CodeGuru Reviewer API operations. CodeGuru Reviewer is a service that uses program analysis and machine learning to detect potential defects that are difficult for developers to find and recommends fixes in your Java and Python code.

By proactively detecting and providing recommendations for addressing code defects and implementing best practices, CodeGuru Reviewer improves the overall quality and maintainability of your code base during the code review stage. For more information about CodeGuru Reviewer, see the Amazon CodeGuru Reviewer User Guide.

To improve the security of your CodeGuru Reviewer API calls, you can establish a private connection between your VPC and CodeGuru Reviewer by creating an interface VPC endpoint. For more information, see CodeGuru Reviewer and interface VPC endpoints (Amazon Web Services PrivateLink) in the Amazon CodeGuru Reviewer User Guide.

", + "service": "

This section provides documentation for the Amazon CodeGuru Reviewer API operations. CodeGuru Reviewer is a service that uses program analysis and machine learning to detect potential defects that are difficult for developers to find and recommends fixes in your Java and Python code.

By proactively detecting and providing recommendations for addressing code defects and implementing best practices, CodeGuru Reviewer improves the overall quality and maintainability of your code base during the code review stage. For more information about CodeGuru Reviewer, see the Amazon CodeGuru Reviewer User Guide.

To improve the security of your CodeGuru Reviewer API calls, you can establish a private connection between your VPC and CodeGuru Reviewer by creating an interface VPC endpoint. For more information, see CodeGuru Reviewer and interface VPC endpoints (Amazon Web Services PrivateLink) in the Amazon CodeGuru Reviewer User Guide.

", "operations": { - "AssociateRepository": "

Use to associate an Amazon Web Services CodeCommit repository or a repostory managed by Amazon Web Services CodeStar Connections with Amazon CodeGuru Reviewer. When you associate a repository, CodeGuru Reviewer reviews source code changes in the repository's pull requests and provides automatic recommendations. You can view recommendations using the CodeGuru Reviewer console. For more information, see Recommendations in Amazon CodeGuru Reviewer in the Amazon CodeGuru Reviewer User Guide.

If you associate a CodeCommit or S3 repository, it must be in the same Amazon Web Services Region and Amazon Web Services account where its CodeGuru Reviewer code reviews are configured.

Bitbucket and GitHub Enterprise Server repositories are managed by Amazon Web Services CodeStar Connections to connect to CodeGuru Reviewer. For more information, see Associate a repository in the Amazon CodeGuru Reviewer User Guide.

You cannot use the CodeGuru Reviewer SDK or the Amazon Web Services CLI to associate a GitHub repository with Amazon CodeGuru Reviewer. To associate a GitHub repository, use the console. For more information, see Getting started with CodeGuru Reviewer in the CodeGuru Reviewer User Guide.

", - "CreateCodeReview": "

Use to create a code review with a CodeReviewType of RepositoryAnalysis. This type of code review analyzes all code under a specified branch in an associated repository. PullRequest code reviews are automatically triggered by a pull request.

", - "DescribeCodeReview": "

Returns the metadata associated with the code review along with its status.

", - "DescribeRecommendationFeedback": "

Describes the customer feedback for a CodeGuru Reviewer recommendation.

", - "DescribeRepositoryAssociation": "

Returns a RepositoryAssociation object that contains information about the requested repository association.

", + "AssociateRepository": "

Use to associate an Amazon Web Services CodeCommit repository or a repository managed by Amazon Web Services CodeStar Connections with Amazon CodeGuru Reviewer. When you associate a repository, CodeGuru Reviewer reviews source code changes in the repository's pull requests and provides automatic recommendations. You can view recommendations using the CodeGuru Reviewer console. For more information, see Recommendations in Amazon CodeGuru Reviewer in the Amazon CodeGuru Reviewer User Guide.

If you associate a CodeCommit or S3 repository, it must be in the same Amazon Web Services Region and Amazon Web Services account where its CodeGuru Reviewer code reviews are configured.

Bitbucket and GitHub Enterprise Server repositories are managed by Amazon Web Services CodeStar Connections to connect to CodeGuru Reviewer. For more information, see Associate a repository in the Amazon CodeGuru Reviewer User Guide.

You cannot use the CodeGuru Reviewer SDK or the Amazon Web Services CLI to associate a GitHub repository with Amazon CodeGuru Reviewer. To associate a GitHub repository, use the console. For more information, see Getting started with CodeGuru Reviewer in the CodeGuru Reviewer User Guide.

", + "CreateCodeReview": "

Use to create a code review with a CodeReviewType of RepositoryAnalysis. This type of code review analyzes all code under a specified branch in an associated repository. PullRequest code reviews are automatically triggered by a pull request.

", + "DescribeCodeReview": "

Returns the metadata associated with the code review along with its status.

", + "DescribeRecommendationFeedback": "

Describes the customer feedback for a CodeGuru Reviewer recommendation.

", + "DescribeRepositoryAssociation": "

Returns a RepositoryAssociation object that contains information about the requested repository association.

", "DisassociateRepository": "

Removes the association between Amazon CodeGuru Reviewer and a repository.

", - "ListCodeReviews": "

Lists all the code reviews that the customer has created in the past 90 days.

", - "ListRecommendationFeedback": "

Returns a list of RecommendationFeedbackSummary objects that contain customer recommendation feedback for all CodeGuru Reviewer users.

", - "ListRecommendations": "

Returns the list of all recommendations for a completed code review.

", - "ListRepositoryAssociations": "

Returns a list of RepositoryAssociationSummary objects that contain summary information about a repository association. You can filter the returned list by ProviderType , Name , State , and Owner .

", + "ListCodeReviews": "

Lists all the code reviews that the customer has created in the past 90 days.

", + "ListRecommendationFeedback": "

Returns a list of RecommendationFeedbackSummary objects that contain customer recommendation feedback for all CodeGuru Reviewer users.

", + "ListRecommendations": "

Returns the list of all recommendations for a completed code review.

", + "ListRepositoryAssociations": "

Returns a list of RepositoryAssociationSummary objects that contain summary information about a repository association. You can filter the returned list by ProviderType, Name, State, and Owner.

", "ListTagsForResource": "

Returns the list of tags associated with an associated repository resource.

", - "PutRecommendationFeedback": "

Stores customer feedback for a CodeGuru Reviewer recommendation. When this API is called again with different reactions the previous feedback is overwritten.

", + "PutRecommendationFeedback": "

Stores customer feedback for a CodeGuru Reviewer recommendation. When this API is called again with different reactions the previous feedback is overwritten.

", "TagResource": "

Adds one or more tags to an associated repository.

", "UntagResource": "

Removes a tag from an associated repository.

" }, @@ -39,16 +39,16 @@ "Arn": { "base": null, "refs": { - "CodeReview$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", - "CodeReviewSummary$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", - "DescribeCodeReviewRequest$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", - "DescribeRecommendationFeedbackRequest$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", - "ListRecommendationFeedbackRequest$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", - "ListRecommendationsRequest$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", - "PutRecommendationFeedbackRequest$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", - "RecommendationFeedback$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", + "CodeReview$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", + "CodeReviewSummary$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", + "DescribeCodeReviewRequest$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", + "DescribeRecommendationFeedbackRequest$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", + "ListRecommendationFeedbackRequest$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", + "ListRecommendationsRequest$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", + "PutRecommendationFeedbackRequest$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", + "RecommendationFeedback$CodeReviewArn": "

The Amazon Resource Name (ARN) of the CodeReview object.

", "RepositoryAssociation$AssociationArn": "

The Amazon Resource Name (ARN) identifying the repository association.

", - "RepositoryAssociationSummary$AssociationArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations .

" + "RepositoryAssociationSummary$AssociationArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations.

" } }, "AssociateRepositoryRequest": { @@ -64,26 +64,26 @@ "AssociationArn": { "base": null, "refs": { - "CodeReview$AssociationArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation that contains the reviewed source code. You can retrieve associated repository ARNs by calling ListRepositoryAssociations .

", - "CreateCodeReviewRequest$RepositoryAssociationArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations .

A code review can only be created on an associated repository. This is the ARN of the associated repository.

", - "DescribeRepositoryAssociationRequest$AssociationArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations .

", - "DisassociateRepositoryRequest$AssociationArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations .

", - "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations .

", - "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations .

", - "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations .

" + "CodeReview$AssociationArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation that contains the reviewed source code. You can retrieve associated repository ARNs by calling ListRepositoryAssociations.

", + "CreateCodeReviewRequest$RepositoryAssociationArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations.

A code review can only be created on an associated repository. This is the ARN of the associated repository.

", + "DescribeRepositoryAssociationRequest$AssociationArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations.

", + "DisassociateRepositoryRequest$AssociationArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations.

", + "ListTagsForResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations.

", + "TagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations.

", + "UntagResourceRequest$resourceArn": "

The Amazon Resource Name (ARN) of the RepositoryAssociation object. You can retrieve this ARN by calling ListRepositoryAssociations.

" } }, "AssociationId": { "base": null, "refs": { "RepositoryAssociation$AssociationId": "

The ID of the repository association.

", - "RepositoryAssociationSummary$AssociationId": "

The repository association ID.

" + "RepositoryAssociationSummary$AssociationId": "

The repository association ID.

" } }, "BranchDiffSourceCodeType": { - "base": "

A type of SourceCodeType that specifies a code diff between a source and destination branch in an associated repository.

", + "base": "

A type of SourceCodeType that specifies a code diff between a source and destination branch in an associated repository.

", "refs": { - "SourceCodeType$BranchDiff": "

A type of SourceCodeType that specifies a source branch name and a destination branch name in an associated repository.

" + "SourceCodeType$BranchDiff": "

A type of SourceCodeType that specifies a source branch name and a destination branch name in an associated repository.

" } }, "BranchName": { @@ -91,7 +91,7 @@ "refs": { "BranchDiffSourceCodeType$SourceBranchName": "

The source branch for a diff in an associated repository.

", "BranchDiffSourceCodeType$DestinationBranchName": "

The destination branch for a diff in an associated repository.

", - "RepositoryHeadSourceCodeType$BranchName": "

The name of the branch in an associated repository. The RepositoryHeadSourceCodeType specifies the tip of this branch.

" + "RepositoryHeadSourceCodeType$BranchName": "

The name of the branch in an associated repository. The RepositoryHeadSourceCodeType specifies the tip of this branch.

" } }, "BuildArtifactsObjectKey": { @@ -103,14 +103,14 @@ "ClientRequestToken": { "base": null, "refs": { - "AssociateRepositoryRequest$ClientRequestToken": "

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation of duplicate repository associations if there are failures and retries.

", - "CreateCodeReviewRequest$ClientRequestToken": "

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation of duplicate code reviews if there are failures and retries.

" + "AssociateRepositoryRequest$ClientRequestToken": "

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation of duplicate repository associations if there are failures and retries.

", + "CreateCodeReviewRequest$ClientRequestToken": "

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation of duplicate code reviews if there are failures and retries.

" } }, "CodeArtifacts": { "base": "

Code artifacts are source code artifacts and build artifacts used in a repository analysis or a pull request review.

", "refs": { - "S3RepositoryDetails$CodeArtifacts": "

A CodeArtifacts object. The CodeArtifacts object includes the S3 object key for a source code .zip file and for a build artifacts .zip file that contains .jar or .class files.

" + "S3RepositoryDetails$CodeArtifacts": "

A CodeArtifacts object. The CodeArtifacts object includes the S3 object key for a source code .zip file and for a build artifacts .zip file that contains .jar or .class files.

" } }, "CodeCommitRepository": { @@ -120,47 +120,47 @@ } }, "CodeReview": { - "base": "

Information about a code review. A code review belongs to the associated repository that contains the reviewed code.

", + "base": "

Information about a code review. A code review belongs to the associated repository that contains the reviewed code.

", "refs": { "CreateCodeReviewResponse$CodeReview": null, - "DescribeCodeReviewResponse$CodeReview": "

Information about the code review.

" + "DescribeCodeReviewResponse$CodeReview": "

Information about the code review.

" } }, "CodeReviewName": { "base": null, "refs": { - "CreateCodeReviewRequest$Name": "

The name of the code review. The name of each code review in your Amazon Web Services account must be unique.

" + "CreateCodeReviewRequest$Name": "

The name of the code review. The name of each code review in your Amazon Web Services account must be unique.

" } }, "CodeReviewSummaries": { "base": null, "refs": { - "ListCodeReviewsResponse$CodeReviewSummaries": "

A list of code reviews that meet the criteria of the request.

" + "ListCodeReviewsResponse$CodeReviewSummaries": "

A list of code reviews that meet the criteria of the request.

" } }, "CodeReviewSummary": { - "base": "

Information about the summary of the code review.

", + "base": "

Information about the summary of the code review.

", "refs": { "CodeReviewSummaries$member": null } }, "CodeReviewType": { - "base": "

The type of a code review. There are two code review types:

", + "base": "

The type of a code review. There are two code review types:

", "refs": { - "CreateCodeReviewRequest$Type": "

The type of code review to create. This is specified using a CodeReviewType object. You can create a code review only of type RepositoryAnalysis.

" + "CreateCodeReviewRequest$Type": "

The type of code review to create. This is specified using a CodeReviewType object. You can create a code review only of type RepositoryAnalysis.

" } }, "CommitDiffSourceCodeType": { - "base": "

A type of SourceCodeType that specifies the commit diff for a pull request on an associated repository. The SourceCommit and DestinationCommit fields are required to do a pull request code review.

", + "base": "

A type of SourceCodeType that specifies the commit diff for a pull request on an associated repository. The SourceCommit and DestinationCommit fields are required to do a pull request code review.

", "refs": { - "SourceCodeType$CommitDiff": "

A SourceCodeType that specifies a commit diff created by a pull request on an associated repository.

" + "SourceCodeType$CommitDiff": "

A SourceCodeType that specifies a commit diff created by a pull request on an associated repository.

" } }, "CommitId": { "base": null, "refs": { - "CommitDiffSourceCodeType$SourceCommit": "

The SHA of the source commit used to generate a commit diff. This field is required for a pull request code review.

", - "CommitDiffSourceCodeType$DestinationCommit": "

The SHA of the destination commit used to generate a commit diff. This field is required for a pull request code review.

", + "CommitDiffSourceCodeType$SourceCommit": "

The SHA of the source commit used to generate a commit diff. This field is required for a pull request code review.

", + "CommitDiffSourceCodeType$DestinationCommit": "

The SHA of the destination commit used to generate a commit diff. This field is required for a pull request code review.

", "CommitDiffSourceCodeType$MergeBaseCommit": "

The SHA of the merge base of a commit.

" } }, @@ -178,9 +178,9 @@ "ConnectionArn": { "base": null, "refs": { - "RepositoryAssociation$ConnectionArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar Connections connection. Its format is arn:aws:codestar-connections:region-id:aws-account_id:connection/connection-id. For more information, see Connection in the Amazon Web Services CodeStar Connections API Reference.

", - "RepositoryAssociationSummary$ConnectionArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar Connections connection. Its format is arn:aws:codestar-connections:region-id:aws-account_id:connection/connection-id. For more information, see Connection in the Amazon Web Services CodeStar Connections API Reference.

", - "ThirdPartySourceRepository$ConnectionArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar Connections connection. Its format is arn:aws:codestar-connections:region-id:aws-account_id:connection/connection-id. For more information, see Connection in the Amazon Web Services CodeStar Connections API Reference.

" + "RepositoryAssociation$ConnectionArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar Connections connection. Its format is arn:aws:codestar-connections:region-id:aws-account_id:connection/connection-id. For more information, see Connection in the Amazon Web Services CodeStar Connections API Reference.

", + "RepositoryAssociationSummary$ConnectionArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar Connections connection. Its format is arn:aws:codestar-connections:region-id:aws-account_id:connection/connection-id. For more information, see Connection in the Amazon Web Services CodeStar Connections API Reference.

", + "ThirdPartySourceRepository$ConnectionArn": "

The Amazon Resource Name (ARN) of an Amazon Web Services CodeStar Connections connection. Its format is arn:aws:codestar-connections:region-id:aws-account_id:connection/connection-id. For more information, see Connection in the Amazon Web Services CodeStar Connections API Reference.

" } }, "CreateCodeReviewRequest": { @@ -278,8 +278,8 @@ "FindingsCount": { "base": null, "refs": { - "Metrics$FindingsCount": "

Total number of recommendations found in the code review.

", - "MetricsSummary$FindingsCount": "

Total number of recommendations found in the code review.

" + "Metrics$FindingsCount": "

Total number of recommendations found in the code review.

", + "MetricsSummary$FindingsCount": "

Total number of recommendations found in the code review.

" } }, "InternalServerException": { @@ -290,50 +290,50 @@ "JobState": { "base": null, "refs": { - "CodeReview$State": "

The valid code review states are:

", - "CodeReviewSummary$State": "

The state of the code review.

The valid code review states are:

", + "CodeReview$State": "

The valid code review states are:

", + "CodeReviewSummary$State": "

The state of the code review.

The valid code review states are:

", "JobStates$member": null } }, "JobStates": { "base": null, "refs": { - "ListCodeReviewsRequest$States": "

List of states for filtering that needs to be applied before displaying the result. For example, states=[Pending] lists code reviews in the Pending state.

The valid code review states are:

" + "ListCodeReviewsRequest$States": "

List of states for filtering that needs to be applied before displaying the result. For example, states=[Pending] lists code reviews in the Pending state.

The valid code review states are:

" } }, "KMSKeyDetails": { - "base": "

An object that contains:

", + "base": "

An object that contains:

", "refs": { - "AssociateRepositoryRequest$KMSKeyDetails": "

A KMSKeyDetails object that contains:

", - "RepositoryAssociation$KMSKeyDetails": "

A KMSKeyDetails object that contains:

" + "AssociateRepositoryRequest$KMSKeyDetails": "

A KMSKeyDetails object that contains:

", + "RepositoryAssociation$KMSKeyDetails": "

A KMSKeyDetails object that contains:

" } }, "KMSKeyId": { "base": null, "refs": { - "KMSKeyDetails$KMSKeyId": "

The ID of the Amazon Web Services KMS key that is associated with a respository association.

" + "KMSKeyDetails$KMSKeyId": "

The ID of the Amazon Web Services KMS key that is associated with a repository association.

" } }, "LineNumber": { "base": null, "refs": { - "RecommendationSummary$StartLine": "

Start line from where the recommendation is applicable in the source commit or source branch.

", - "RecommendationSummary$EndLine": "

Last line where the recommendation is applicable in the source commit or source branch. For a single line comment the start line and end line values are the same.

" + "RecommendationSummary$StartLine": "

Start line from where the recommendation is applicable in the source commit or source branch.

", + "RecommendationSummary$EndLine": "

Last line where the recommendation is applicable in the source commit or source branch. For a single line comment the start line and end line values are the same.

" } }, "LinesOfCodeCount": { "base": null, "refs": { - "Metrics$MeteredLinesOfCodeCount": "

MeteredLinesOfCodeCount is the number of lines of code in the repository where the code review happened. This does not include non-code lines such as comments and blank lines.

", + "Metrics$MeteredLinesOfCodeCount": "

MeteredLinesOfCodeCount is the number of lines of code in the repository where the code review happened. This does not include non-code lines such as comments and blank lines.

", "Metrics$SuppressedLinesOfCodeCount": "

SuppressedLinesOfCodeCount is the number of lines of code in the repository where the code review happened that CodeGuru Reviewer did not analyze. The lines suppressed in the analysis is based on the excludeFiles variable in the aws-codeguru-reviewer.yml file. This number does not include non-code lines such as comments and blank lines.

", - "MetricsSummary$MeteredLinesOfCodeCount": "

Lines of code metered in the code review. For the initial code review pull request and all subsequent revisions, this includes all lines of code in the files added to the pull request. In subsequent revisions, for files that already existed in the pull request, this includes only the changed lines of code. In both cases, this does not include non-code lines such as comments and import statements. For example, if you submit a pull request containing 5 files, each with 500 lines of code, and in a subsequent revision you added a new file with 200 lines of code, and also modified a total of 25 lines across the initial 5 files, MeteredLinesOfCodeCount includes the first 5 files (5 * 500 = 2,500 lines), the new file (200 lines) and the 25 changed lines of code for a total of 2,725 lines of code.

", + "MetricsSummary$MeteredLinesOfCodeCount": "

Lines of code metered in the code review. For the initial code review pull request and all subsequent revisions, this includes all lines of code in the files added to the pull request. In subsequent revisions, for files that already existed in the pull request, this includes only the changed lines of code. In both cases, this does not include non-code lines such as comments and import statements. For example, if you submit a pull request containing 5 files, each with 500 lines of code, and in a subsequent revision you added a new file with 200 lines of code, and also modified a total of 25 lines across the initial 5 files, MeteredLinesOfCodeCount includes the first 5 files (5 * 500 = 2,500 lines), the new file (200 lines) and the 25 changed lines of code for a total of 2,725 lines of code.

", "MetricsSummary$SuppressedLinesOfCodeCount": "

Lines of code suppressed in the code review based on the excludeFiles element in the aws-codeguru-reviewer.yml file. For full repository analyses, this number includes all lines of code in the files that are suppressed. For pull requests, this number only includes the changed lines of code that are suppressed. In both cases, this number does not include non-code lines such as comments and import statements. For example, if you initiate a full repository analysis on a repository containing 5 files, each file with 100 lines of code, and 2 files are listed as excluded in the aws-codeguru-reviewer.yml file, then SuppressedLinesOfCodeCount returns 200 (2 * 100) as the total number of lines of code suppressed. However, if you submit a pull request for the same repository, then SuppressedLinesOfCodeCount only includes the lines in the 2 files that changed. If only 1 of the 2 files changed in the pull request, then SuppressedLinesOfCodeCount returns 100 (1 * 100) as the total number of lines of code suppressed.

" } }, "ListCodeReviewsMaxResults": { "base": null, "refs": { - "ListCodeReviewsRequest$MaxResults": "

The maximum number of results that are returned per call. The default is 100.

" + "ListCodeReviewsRequest$MaxResults": "

The maximum number of results that are returned per call. The default is 100.

" } }, "ListCodeReviewsRequest": { @@ -359,7 +359,7 @@ "ListRecommendationsMaxResults": { "base": null, "refs": { - "ListRecommendationsRequest$MaxResults": "

The maximum number of results that are returned per call. The default is 100.

" + "ListRecommendationsRequest$MaxResults": "

The maximum number of results that are returned per call. The default is 100.

" } }, "ListRecommendationsRequest": { @@ -401,37 +401,37 @@ "MaxResults": { "base": null, "refs": { - "ListRecommendationFeedbackRequest$MaxResults": "

The maximum number of results that are returned per call. The default is 100.

", + "ListRecommendationFeedbackRequest$MaxResults": "

The maximum number of results that are returned per call. The default is 100.

", "ListRepositoryAssociationsRequest$MaxResults": "

The maximum number of repository association results returned by ListRepositoryAssociations in paginated output. When this parameter is used, ListRepositoryAssociations only returns maxResults results in a single page with a nextToken response element. The remaining results of the initial request can be seen by sending another ListRepositoryAssociations request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, ListRepositoryAssociations returns up to 100 results and a nextToken value if applicable.

" } }, "Metrics": { - "base": "

Information about the statistics from the code review.

", + "base": "

Information about the statistics from the code review.

", "refs": { - "CodeReview$Metrics": "

The statistics from the code review.

" + "CodeReview$Metrics": "

The statistics from the code review.

" } }, "MetricsSummary": { - "base": "

Information about metrics summaries.

", + "base": "

Information about metrics summaries.

", "refs": { - "CodeReviewSummary$MetricsSummary": "

The statistics from the code review.

" + "CodeReviewSummary$MetricsSummary": "

The statistics from the code review.

" } }, "Name": { "base": null, "refs": { "CodeCommitRepository$Name": "

The name of the Amazon Web Services CodeCommit repository. For more information, see repositoryName in the Amazon Web Services CodeCommit API Reference.

", - "CodeReview$Name": "

The name of the code review.

", - "CodeReview$RepositoryName": "

The name of the repository.

", - "CodeReviewSummary$Name": "

The name of the code review.

", - "CodeReviewSummary$RepositoryName": "

The name of the repository.

", + "CodeReview$Name": "

The name of the code review.

", + "CodeReview$RepositoryName": "

The name of the repository.

", + "CodeReviewSummary$Name": "

The name of the code review.

", + "CodeReviewSummary$RepositoryName": "

The name of the repository.

", "Names$member": null, "RepositoryAssociation$Name": "

The name of the repository.

", "RepositoryAssociationSummary$Name": "

The name of the repository association.

", "RepositoryNames$member": null, - "S3BucketRepository$Name": "

The name of the repository when the ProviderType is S3Bucket.

", - "S3Repository$Name": "

The name of the repository in the S3 bucket.

", - "ThirdPartySourceRepository$Name": "

The name of the third party source repository.

" + "S3BucketRepository$Name": "

The name of the repository when the ProviderType is S3Bucket.

", + "S3Repository$Name": "

The name of the repository in the S3 bucket.

", + "ThirdPartySourceRepository$Name": "

The name of the third party source repository.

" } }, "Names": { @@ -443,12 +443,12 @@ "NextToken": { "base": null, "refs": { - "ListCodeReviewsRequest$NextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

", - "ListCodeReviewsResponse$NextToken": "

Pagination token.

", - "ListRecommendationFeedbackRequest$NextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

", - "ListRecommendationFeedbackResponse$NextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

", - "ListRecommendationsRequest$NextToken": "

Pagination token.

", - "ListRecommendationsResponse$NextToken": "

Pagination token.

", + "ListCodeReviewsRequest$NextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

", + "ListCodeReviewsResponse$NextToken": "

Pagination token.

", + "ListRecommendationFeedbackRequest$NextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

", + "ListRecommendationFeedbackResponse$NextToken": "

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

", + "ListRecommendationsRequest$NextToken": "

Pagination token.

", + "ListRecommendationsResponse$NextToken": "

Pagination token.

", "ListRepositoryAssociationsRequest$NextToken": "

The nextToken value returned from a previous paginated ListRepositoryAssociations request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

Treat this token as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

", "ListRepositoryAssociationsResponse$NextToken": "

The nextToken value to include in a future ListRecommendations request. When the results of a ListRecommendations request exceed maxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

" } @@ -466,7 +466,7 @@ "Owners$member": null, "RepositoryAssociation$Owner": "

The owner of the repository. For an Amazon Web Services CodeCommit repository, this is the Amazon Web Services account ID of the account that owns the repository. For a GitHub, GitHub Enterprise Server, or Bitbucket repository, this is the username for the account that owns the repository. For an S3 repository, it can be the username or Amazon Web Services account ID.

", "RepositoryAssociationSummary$Owner": "

The owner of the repository. For an Amazon Web Services CodeCommit repository, this is the Amazon Web Services account ID of the account that owns the repository. For a GitHub, GitHub Enterprise Server, or Bitbucket repository, this is the username for the account that owns the repository. For an S3 repository, it can be the username or Amazon Web Services account ID.

", - "ThirdPartySourceRepository$Owner": "

The owner of the repository. For a GitHub, GitHub Enterprise, or Bitbucket repository, this is the username for the account that owns the repository. For an S3 repository, this can be the username or Amazon Web Services account ID.

" + "ThirdPartySourceRepository$Owner": "

The owner of the repository. For a GitHub, GitHub Enterprise, or Bitbucket repository, this is the username for the account that owns the repository. For an S3 repository, this can be the username or Amazon Web Services account ID

" } }, "Owners": { @@ -478,8 +478,8 @@ "ProviderType": { "base": null, "refs": { - "CodeReview$ProviderType": "

The type of repository that contains the reviewed code (for example, GitHub or Bitbucket).

", - "CodeReviewSummary$ProviderType": "

The provider type of the repository association.

", + "CodeReview$ProviderType": "

The type of repository that contains the reviewed code (for example, GitHub or Bitbucket).

", + "CodeReviewSummary$ProviderType": "

The provider type of the repository association.

", "ProviderTypes$member": null, "RepositoryAssociation$ProviderType": "

The provider type of the repository association.

", "RepositoryAssociationSummary$ProviderType": "

The provider type of the repository association.

" @@ -488,15 +488,15 @@ "ProviderTypes": { "base": null, "refs": { - "ListCodeReviewsRequest$ProviderTypes": "

List of provider types for filtering that needs to be applied before displaying the result. For example, providerTypes=[GitHub] lists code reviews from GitHub.

", + "ListCodeReviewsRequest$ProviderTypes": "

List of provider types for filtering that needs to be applied before displaying the result. For example, providerTypes=[GitHub] lists code reviews from GitHub.

", "ListRepositoryAssociationsRequest$ProviderTypes": "

List of provider types to use as a filter.

" } }, "PullRequestId": { "base": null, "refs": { - "CodeReview$PullRequestId": "

The pull request ID for the code review.

", - "CodeReviewSummary$PullRequestId": "

The pull request ID for the code review.

" + "CodeReview$PullRequestId": "

The pull request ID for the code review.

", + "CodeReviewSummary$PullRequestId": "

The pull request ID for the code review.

" } }, "PutRecommendationFeedbackRequest": { @@ -518,9 +518,9 @@ "Reactions": { "base": null, "refs": { - "PutRecommendationFeedbackRequest$Reactions": "

List for storing reactions. Reactions are utf-8 text code for emojis. If you send an empty list it clears all your feedback.

", - "RecommendationFeedback$Reactions": "

List for storing reactions. Reactions are utf-8 text code for emojis. You can send an empty list to clear off all your feedback.

", - "RecommendationFeedbackSummary$Reactions": "

List for storing reactions. Reactions are utf-8 text code for emojis.

" + "PutRecommendationFeedbackRequest$Reactions": "

List for storing reactions. Reactions are utf-8 text code for emojis. If you send an empty list it clears all your feedback.

", + "RecommendationFeedback$Reactions": "

List for storing reactions. Reactions are utf-8 text code for emojis. You can send an empty list to clear off all your feedback.

", + "RecommendationFeedbackSummary$Reactions": "

List for storing reactions. Reactions are utf-8 text code for emojis.

" } }, "RecommendationCategory": { @@ -530,19 +530,19 @@ } }, "RecommendationFeedback": { - "base": "

Information about the recommendation feedback.

", + "base": "

Information about the recommendation feedback.

", "refs": { - "DescribeRecommendationFeedbackResponse$RecommendationFeedback": "

The recommendation feedback given by the user.

" + "DescribeRecommendationFeedbackResponse$RecommendationFeedback": "

The recommendation feedback given by the user.

" } }, "RecommendationFeedbackSummaries": { "base": null, "refs": { - "ListRecommendationFeedbackResponse$RecommendationFeedbackSummaries": "

Recommendation feedback summaries corresponding to the code review ARN.

" + "ListRecommendationFeedbackResponse$RecommendationFeedbackSummaries": "

Recommendation feedback summaries corresponding to the code review ARN.

" } }, "RecommendationFeedbackSummary": { - "base": "

Information about recommendation feedback summaries.

", + "base": "

Information about recommendation feedback summaries.

", "refs": { "RecommendationFeedbackSummaries$member": null } @@ -550,46 +550,46 @@ "RecommendationId": { "base": null, "refs": { - "DescribeRecommendationFeedbackRequest$RecommendationId": "

The recommendation ID that can be used to track the provided recommendations and then to collect the feedback.

", - "PutRecommendationFeedbackRequest$RecommendationId": "

The recommendation ID that can be used to track the provided recommendations and then to collect the feedback.

", - "RecommendationFeedback$RecommendationId": "

The recommendation ID that can be used to track the provided recommendations. Later on it can be used to collect the feedback.

", - "RecommendationFeedbackSummary$RecommendationId": "

The recommendation ID that can be used to track the provided recommendations. Later on it can be used to collect the feedback.

", + "DescribeRecommendationFeedbackRequest$RecommendationId": "

The recommendation ID that can be used to track the provided recommendations and then to collect the feedback.

", + "PutRecommendationFeedbackRequest$RecommendationId": "

The recommendation ID that can be used to track the provided recommendations and then to collect the feedback.

", + "RecommendationFeedback$RecommendationId": "

The recommendation ID that can be used to track the provided recommendations. Later on it can be used to collect the feedback.

", + "RecommendationFeedbackSummary$RecommendationId": "

The recommendation ID that can be used to track the provided recommendations. Later on it can be used to collect the feedback.

", "RecommendationIds$member": null, - "RecommendationSummary$RecommendationId": "

The recommendation ID that can be used to track the provided recommendations. Later on it can be used to collect the feedback.

" + "RecommendationSummary$RecommendationId": "

The recommendation ID that can be used to track the provided recommendations. Later on it can be used to collect the feedback.

" } }, "RecommendationIds": { "base": null, "refs": { - "ListRecommendationFeedbackRequest$RecommendationIds": "

Used to query the recommendation feedback for a given recommendation.

" + "ListRecommendationFeedbackRequest$RecommendationIds": "

Used to query the recommendation feedback for a given recommendation.

" } }, "RecommendationSummaries": { "base": null, "refs": { - "ListRecommendationsResponse$RecommendationSummaries": "

List of recommendations for the requested code review.

" + "ListRecommendationsResponse$RecommendationSummaries": "

List of recommendations for the requested code review.

" } }, "RecommendationSummary": { - "base": "

Information about recommendations.

", + "base": "

Information about recommendations.

", "refs": { "RecommendationSummaries$member": null } }, "Repository": { - "base": "

Information about an associated Amazon Web Services CodeCommit repository or an associated repository that is managed by Amazon Web Services CodeStar Connections (for example, Bitbucket). This Repository object is not used if your source code is in an associated GitHub repository.

", + "base": "

Information about an associated Amazon Web Services CodeCommit repository or an associated repository that is managed by Amazon Web Services CodeStar Connections (for example, Bitbucket). This Repository object is not used if your source code is in an associated GitHub repository.

", "refs": { "AssociateRepositoryRequest$Repository": "

The repository to associate.

" } }, "RepositoryAnalysis": { - "base": "

A code review type that analyzes all code under a specified branch in an associated repository. The associated repository is specified using its ARN when you call CreateCodeReview .

", + "base": "

A code review type that analyzes all code under a specified branch in an associated repository. The associated repository is specified using its ARN when you call CreateCodeReview.

", "refs": { - "CodeReviewType$RepositoryAnalysis": "

A code review that analyzes all code under a specified branch in an associated repository. The associated repository is specified using its ARN in CreateCodeReview .

" + "CodeReviewType$RepositoryAnalysis": "

A code review that analyzes all code under a specified branch in an associated repository. The associated repository is specified using its ARN in CreateCodeReview.

" } }, "RepositoryAssociation": { - "base": "

Information about a repository association. The DescribeRepositoryAssociation operation returns a RepositoryAssociation object.

", + "base": "

Information about a repository association. The DescribeRepositoryAssociation operation returns a RepositoryAssociation object.

", "refs": { "AssociateRepositoryResponse$RepositoryAssociation": "

Information about the repository association.

", "DescribeRepositoryAssociationResponse$RepositoryAssociation": "

Information about the repository association.

", @@ -599,15 +599,15 @@ "RepositoryAssociationState": { "base": null, "refs": { - "RepositoryAssociation$State": "

The state of the repository association.

The valid repository association states are:

", + "RepositoryAssociation$State": "

The state of the repository association.

The valid repository association states are:

", "RepositoryAssociationStates$member": null, - "RepositoryAssociationSummary$State": "

The state of the repository association.

The valid repository association states are:

" + "RepositoryAssociationSummary$State": "

The state of the repository association.

The valid repository association states are:

" } }, "RepositoryAssociationStates": { "base": null, "refs": { - "ListRepositoryAssociationsRequest$States": "

List of repository association states to use as a filter.

The valid repository association states are:

" + "ListRepositoryAssociationsRequest$States": "

List of repository association states to use as a filter.

The valid repository association states are:

" } }, "RepositoryAssociationSummaries": { @@ -617,22 +617,22 @@ } }, "RepositoryAssociationSummary": { - "base": "

Summary information about a repository association. The ListRepositoryAssociations operation returns a list of RepositoryAssociationSummary objects.

", + "base": "

Summary information about a repository association. The ListRepositoryAssociations operation returns a list of RepositoryAssociationSummary objects.

", "refs": { "RepositoryAssociationSummaries$member": null } }, "RepositoryHeadSourceCodeType": { - "base": "

A SourceCodeType that specifies the tip of a branch in an associated repository.

", + "base": "

A SourceCodeType that specifies the tip of a branch in an associated repository.

", "refs": { - "RepositoryAnalysis$RepositoryHead": "

A SourceCodeType that specifies the tip of a branch in an associated repository.

", + "RepositoryAnalysis$RepositoryHead": "

A SourceCodeType that specifies the tip of a branch in an associated repository.

", "SourceCodeType$RepositoryHead": null } }, "RepositoryNames": { "base": null, "refs": { - "ListCodeReviewsRequest$RepositoryNames": "

List of repository names for filtering that needs to be applied before displaying the result.

" + "ListCodeReviewsRequest$RepositoryNames": "

List of repository names for filtering that needs to be applied before displaying the result.

" } }, "RequestId": { @@ -644,7 +644,7 @@ "RequestMetadata": { "base": "

Metadata that is associated with a code review. This applies to both pull request and repository analysis code reviews.

", "refs": { - "SourceCodeType$RequestMetadata": "

Metadata that is associated with a code review. This applies to any type of code review supported by CodeGuru Reviewer. The RequestMetadaa field captures any event metadata. For example, it might capture metadata associated with an event trigger, such as a push or a pull request.

" + "SourceCodeType$RequestMetadata": "

Metadata that is associated with a code review. This applies to any type of code review supported by CodeGuru Reviewer. The RequestMetadaa field captures any event metadata. For example, it might capture metadata associated with an event trigger, such as a push or a pull request.

" } }, "Requester": { @@ -696,22 +696,22 @@ } }, "S3BucketRepository": { - "base": "

Information about an associated repository in an S3 bucket. The associated repository contains a source code .zip file and a build artifacts .zip file that contains .jar or .class files.

", + "base": "

Information about an associated repository in an S3 bucket. The associated repository contains a source code .zip file and a build artifacts .zip file that contains .jar or .class files.

", "refs": { - "SourceCodeType$S3BucketRepository": "

Information about an associated repository in an S3 bucket that includes its name and an S3RepositoryDetails object. The S3RepositoryDetails object includes the name of an S3 bucket, an S3 key for a source code .zip file, and an S3 key for a build artifacts .zip file. S3BucketRepository is required in SourceCodeType for S3BucketRepository based code reviews.

" + "SourceCodeType$S3BucketRepository": "

Information about an associated repository in an S3 bucket that includes its name and an S3RepositoryDetails object. The S3RepositoryDetails object includes the name of an S3 bucket, an S3 key for a source code .zip file, and an S3 key for a build artifacts .zip file. S3BucketRepository is required in SourceCodeType for S3BucketRepository based code reviews.

" } }, "S3Repository": { - "base": "

Information about a repository in an S3 bucket.

", + "base": "

Information about a repository in an S3 bucket.

", "refs": { "Repository$S3Bucket": null } }, "S3RepositoryDetails": { - "base": "

Specifies the name of an S3 bucket and a CodeArtifacts object that contains the S3 object keys for a source code .zip file and for a build artifacts .zip file that contains .jar or .class files.

", + "base": "

Specifies the name of an S3 bucket and a CodeArtifacts object that contains the S3 object keys for a source code .zip file and for a build artifacts .zip file that contains .jar or .class files.

", "refs": { "RepositoryAssociation$S3RepositoryDetails": null, - "S3BucketRepository$Details": "

An S3RepositoryDetails object that specifies the name of an S3 bucket and a CodeArtifacts object. The CodeArtifacts object includes the S3 object keys for a source code .zip file and for a build artifacts .zip file.

" + "S3BucketRepository$Details": "

An S3RepositoryDetails object that specifies the name of an S3 bucket and a CodeArtifacts object. The CodeArtifacts object includes the S3 object keys for a source code .zip file and for a build artifacts .zip file.

" } }, "Severity": { @@ -733,9 +733,9 @@ } }, "SourceCodeType": { - "base": "

Specifies the source code that is analyzed in a code review.

", + "base": "

Specifies the source code that is analyzed in a code review.

", "refs": { - "CodeReview$SourceCodeType": "

The type of the source code for the code review.

", + "CodeReview$SourceCodeType": "

The type of the source code for the code review.

", "CodeReviewSummary$SourceCodeType": null, "RepositoryAnalysis$SourceCodeType": null } @@ -743,7 +743,7 @@ "StateReason": { "base": null, "refs": { - "CodeReview$StateReason": "

The reason for the state of the code review.

", + "CodeReview$StateReason": "

The reason for the state of the code review.

", "RepositoryAssociation$StateReason": "

A description of why the repository association is in the current state.

" } }, @@ -763,12 +763,12 @@ "TagMap": { "base": null, "refs": { - "AssociateRepositoryRequest$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

", - "AssociateRepositoryResponse$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

", - "DescribeRepositoryAssociationResponse$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

", - "DisassociateRepositoryResponse$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

", - "ListTagsForResourceResponse$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

", - "TagResourceRequest$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

" + "AssociateRepositoryRequest$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

", + "AssociateRepositoryResponse$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

", + "DescribeRepositoryAssociationResponse$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

", + "DisassociateRepositoryResponse$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

", + "ListTagsForResourceResponse$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

", + "TagResourceRequest$Tags": "

An array of key-value pairs used to tag an associated repository. A tag is a custom attribute label with two parts:

" } }, "TagResourceRequest": { @@ -790,14 +790,14 @@ "Text": { "base": null, "refs": { - "RecommendationSummary$Description": "

A description of the recommendation generated by CodeGuru Reviewer for the lines of code between the start line and the end line.

" + "RecommendationSummary$Description": "

A description of the recommendation generated by CodeGuru Reviewer for the lines of code between the start line and the end line.

" } }, "ThirdPartySourceRepository": { - "base": "

Information about a third-party source repository connected to CodeGuru Reviewer.

", + "base": "

Information about a third-party source repository connected to CodeGuru Reviewer.

", "refs": { "Repository$Bitbucket": "

Information about a Bitbucket repository.

", - "Repository$GitHubEnterpriseServer": "

Information about a GitHub Enterprise Server repository.

" + "Repository$GitHubEnterpriseServer": "

Information about a GitHub Enterprise Server repository.

" } }, "ThrottlingException": { @@ -808,23 +808,23 @@ "TimeStamp": { "base": null, "refs": { - "CodeReview$CreatedTimeStamp": "

The time, in milliseconds since the epoch, when the code review was created.

", - "CodeReview$LastUpdatedTimeStamp": "

The time, in milliseconds since the epoch, when the code review was last updated.

", - "CodeReviewSummary$CreatedTimeStamp": "

The time, in milliseconds since the epoch, when the code review was created.

", - "CodeReviewSummary$LastUpdatedTimeStamp": "

The time, in milliseconds since the epoch, when the code review was last updated.

", - "RecommendationFeedback$CreatedTimeStamp": "

The time at which the feedback was created.

", - "RecommendationFeedback$LastUpdatedTimeStamp": "

The time at which the feedback was last updated.

", + "CodeReview$CreatedTimeStamp": "

The time, in milliseconds since the epoch, when the code review was created.

", + "CodeReview$LastUpdatedTimeStamp": "

The time, in milliseconds since the epoch, when the code review was last updated.

", + "CodeReviewSummary$CreatedTimeStamp": "

The time, in milliseconds since the epoch, when the code review was created.

", + "CodeReviewSummary$LastUpdatedTimeStamp": "

The time, in milliseconds since the epoch, when the code review was last updated.

", + "RecommendationFeedback$CreatedTimeStamp": "

The time at which the feedback was created.

", + "RecommendationFeedback$LastUpdatedTimeStamp": "

The time at which the feedback was last updated.

", "RepositoryAssociation$LastUpdatedTimeStamp": "

The time, in milliseconds since the epoch, when the repository association was last updated.

", "RepositoryAssociation$CreatedTimeStamp": "

The time, in milliseconds since the epoch, when the repository association was created.

", - "RepositoryAssociationSummary$LastUpdatedTimeStamp": "

The time, in milliseconds since the epoch, since the repository association was last updated.

" + "RepositoryAssociationSummary$LastUpdatedTimeStamp": "

The time, in milliseconds since the epoch, since the repository association was last updated.

" } }, "Type": { "base": null, "refs": { - "CodeReview$Type": "

The type of code review.

", - "CodeReviewSummary$Type": "

The type of the code review.

", - "ListCodeReviewsRequest$Type": "

The type of code reviews to list in the response.

" + "CodeReview$Type": "

The type of code review.

", + "CodeReviewSummary$Type": "

The type of the code review.

", + "ListCodeReviewsRequest$Type": "

The type of code reviews to list in the response.

" } }, "UntagResourceRequest": { @@ -840,16 +840,16 @@ "UserId": { "base": null, "refs": { - "DescribeRecommendationFeedbackRequest$UserId": "

Optional parameter to describe the feedback for a given user. If this is not supplied, it defaults to the user making the request.

The UserId is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For more information, see Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.

", - "RecommendationFeedback$UserId": "

The ID of the user that made the API call.

The UserId is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For more information, see Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.

", - "RecommendationFeedbackSummary$UserId": "

The ID of the user that gave the feedback.

The UserId is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For more information, see Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.

", + "DescribeRecommendationFeedbackRequest$UserId": "

Optional parameter to describe the feedback for a given user. If this is not supplied, it defaults to the user making the request.

The UserId is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For more information, see Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.

", + "RecommendationFeedback$UserId": "

The ID of the user that made the API call.

The UserId is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For more information, see Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.

", + "RecommendationFeedbackSummary$UserId": "

The ID of the user that gave the feedback.

The UserId is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For more information, see Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.

", "UserIds$member": null } }, "UserIds": { "base": null, "refs": { - "ListRecommendationFeedbackRequest$UserIds": "

An Amazon Web Services user's account ID or Amazon Resource Name (ARN). Use this ID to query the recommendation feedback for a code review from that user.

The UserId is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For more information, see Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.

" + "ListRecommendationFeedbackRequest$UserIds": "

An Amazon Web Services user's account ID or Amazon Resource Name (ARN). Use this ID to query the recommendation feedback for a code review from that user.

The UserId is an IAM principal that can be specified as an Amazon Web Services account ID or an Amazon Resource Name (ARN). For more information, see Specifying a Principal in the Amazon Web Services Identity and Access Management User Guide.

" } }, "ValidationException": { @@ -860,7 +860,7 @@ "VendorName": { "base": null, "refs": { - "RequestMetadata$VendorName": "

The name of the repository vendor used to upload code to an S3 bucket for a CI/CD code review. For example, if code and artifacts are uploaded to an S3 bucket for a CI/CD code review by GitHub scripts from a GitHub repository, then the repository association's ProviderType is S3Bucket and the CI/CD repository vendor name is GitHub. For more information, see the definition for ProviderType in RepositoryAssociation.

" + "RequestMetadata$VendorName": "

The name of the repository vendor used to upload code to an S3 bucket for a CI/CD code review. For example, if code and artifacts are uploaded to an S3 bucket for a CI/CD code review by GitHub scripts from a GitHub repository, then the repository association's ProviderType is S3Bucket and the CI/CD repository vendor name is GitHub. For more information, see the definition for ProviderType in RepositoryAssociation.

" } } } diff --git a/models/apis/controltower/2018-05-10/api-2.json b/models/apis/controltower/2018-05-10/api-2.json new file mode 100644 index 0000000000..a26519419d --- /dev/null +++ b/models/apis/controltower/2018-05-10/api-2.json @@ -0,0 +1,316 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2018-05-10", + "endpointPrefix":"controltower", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"AWS Control Tower", + "serviceId":"ControlTower", + "signatureVersion":"v4", + "signingName":"controltower", + "uid":"controltower-2018-05-10" + }, + "operations":{ + "DisableControl":{ + "name":"DisableControl", + "http":{ + "method":"POST", + "requestUri":"/disable-control", + "responseCode":200 + }, + "input":{"shape":"DisableControlInput"}, + "output":{"shape":"DisableControlOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "EnableControl":{ + "name":"EnableControl", + "http":{ + "method":"POST", + "requestUri":"/enable-control", + "responseCode":200 + }, + "input":{"shape":"EnableControlInput"}, + "output":{"shape":"EnableControlOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "GetControlOperation":{ + "name":"GetControlOperation", + "http":{ + "method":"POST", + "requestUri":"/get-control-operation", + "responseCode":200 + }, + "input":{"shape":"GetControlOperationInput"}, + "output":{"shape":"GetControlOperationOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"} + ] + }, + "ListEnabledControls":{ + "name":"ListEnabledControls", + "http":{ + "method":"POST", + "requestUri":"/list-enabled-controls", + "responseCode":200 + }, + "input":{"shape":"ListEnabledControlsInput"}, + "output":{"shape":"ListEnabledControlsOutput"}, + "errors":[ + {"shape":"ValidationException"}, + {"shape":"InternalServerException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"}, + {"shape":"ResourceNotFoundException"} + ] + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "ControlIdentifier":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws[0-9a-zA-Z_\\-:\\/]+$" + }, + "ControlOperation":{ + "type":"structure", + "members":{ + "endTime":{"shape":"SyntheticTimestamp_date_time"}, + "operationType":{"shape":"ControlOperationType"}, + "startTime":{"shape":"SyntheticTimestamp_date_time"}, + "status":{"shape":"ControlOperationStatus"}, + "statusMessage":{"shape":"String"} + } + }, + "ControlOperationStatus":{ + "type":"string", + "enum":[ + "SUCCEEDED", + "FAILED", + "IN_PROGRESS" + ] + }, + "ControlOperationType":{ + "type":"string", + "enum":[ + "ENABLE_CONTROL", + "DISABLE_CONTROL" + ] + }, + "DisableControlInput":{ + "type":"structure", + "required":[ + "controlIdentifier", + "targetIdentifier" + ], + "members":{ + "controlIdentifier":{"shape":"ControlIdentifier"}, + "targetIdentifier":{"shape":"TargetIdentifier"} + } + }, + "DisableControlOutput":{ + "type":"structure", + "required":["operationIdentifier"], + "members":{ + "operationIdentifier":{"shape":"OperationIdentifier"} + } + }, + "EnableControlInput":{ + "type":"structure", + "required":[ + "controlIdentifier", + "targetIdentifier" + ], + "members":{ + "controlIdentifier":{"shape":"ControlIdentifier"}, + "targetIdentifier":{"shape":"TargetIdentifier"} + } + }, + "EnableControlOutput":{ + "type":"structure", + "required":["operationIdentifier"], + "members":{ + "operationIdentifier":{"shape":"OperationIdentifier"} + } + }, + "EnabledControlSummary":{ + "type":"structure", + "members":{ + "controlIdentifier":{"shape":"ControlIdentifier"} + } + }, + "EnabledControls":{ + "type":"list", + "member":{"shape":"EnabledControlSummary"} + }, + "GetControlOperationInput":{ + "type":"structure", + "required":["operationIdentifier"], + "members":{ + "operationIdentifier":{"shape":"OperationIdentifier"} + } + }, + "GetControlOperationOutput":{ + "type":"structure", + "required":["controlOperation"], + "members":{ + "controlOperation":{"shape":"ControlOperation"} + } + }, + "Integer":{ + "type":"integer", + "box":true + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "ListEnabledControlsInput":{ + "type":"structure", + "required":["targetIdentifier"], + "members":{ + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"String"}, + "targetIdentifier":{"shape":"TargetIdentifier"} + } + }, + "ListEnabledControlsOutput":{ + "type":"structure", + "required":["enabledControls"], + "members":{ + "enabledControls":{"shape":"EnabledControls"}, + "nextToken":{"shape":"String"} + } + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":100, + "min":1 + }, + "OperationIdentifier":{ + "type":"string", + "max":36, + "min":36, + "pattern":"^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$" + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "String":{"type":"string"}, + "SyntheticTimestamp_date_time":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "TargetIdentifier":{ + "type":"string", + "max":2048, + "min":20, + "pattern":"^arn:aws[0-9a-zA-Z_\\-:\\/]+$" + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "quotaCode":{"shape":"String"}, + "retryAfterSeconds":{ + "shape":"Integer", + "location":"header", + "locationName":"Retry-After" + }, + "serviceCode":{"shape":"String"} + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":true} + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"} + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + } + } +} diff --git a/models/apis/controltower/2018-05-10/docs-2.json b/models/apis/controltower/2018-05-10/docs-2.json new file mode 100644 index 0000000000..3dfb67bd1f --- /dev/null +++ b/models/apis/controltower/2018-05-10/docs-2.json @@ -0,0 +1,177 @@ +{ + "version": "2.0", + "service": "

These interfaces allow you to apply the AWS library of pre-defined controls to your organizational units, programmatically. In this context, controls are the same as AWS Control Tower guardrails.

To call these APIs, you'll need to know:

To get the ControlARN for your AWS Control Tower guardrail:

The ControlARN contains the control name which is specified in each guardrail. For a list of control names for Strongly recommended and Elective guardrails, see Resource identifiers for APIs and guardrails in the Automating tasks section of the AWS Control Tower User Guide. Remember that Mandatory guardrails cannot be added or removed.

ARN format: arn:aws:controltower:{REGION}::control/{CONTROL_NAME}

Example:

arn:aws:controltower:us-west-2::control/AWS-GR_AUTOSCALING_LAUNCH_CONFIG_PUBLIC_IP_DISABLED

To get the ARN for an OU:

In the AWS Organizations console, you can find the ARN for the OU on the Organizational unit details page associated with that OU.

OU ARN format:

arn:${Partition}:organizations::${MasterAccountId}:ou/o-${OrganizationId}/ou-${OrganizationalUnitId}

Details and examples

To view the open source resource repository on GitHub, see aws-cloudformation/aws-cloudformation-resource-providers-controltower

Recording API Requests

AWS Control Tower supports AWS CloudTrail, a service that records AWS API calls for your AWS account and delivers log files to an Amazon S3 bucket. By using information collected by CloudTrail, you can determine which requests the AWS Control Tower service received, who made the request and when, and so on. For more about AWS Control Tower and its support for CloudTrail, see Logging AWS Control Tower Actions with AWS CloudTrail in the AWS Control Tower User Guide. To learn more about CloudTrail, including how to turn it on and find your log files, see the AWS CloudTrail User Guide.

", + "operations": { + "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.

", + "EnableControl": "

This API call activates a control. It starts an asynchronous operation that creates AWS resources on the specified organizational unit and the accounts it contains. The resources created will vary according to the control that you specify.

", + "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.

", + "ListEnabledControls": "

Lists the controls enabled by AWS Control Tower on the specified organizational unit and the accounts it contains.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

User does not have sufficient access to perform this action.

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

Updating or deleting a resource can cause an inconsistent state.

", + "refs": { + } + }, + "ControlIdentifier": { + "base": null, + "refs": { + "DisableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny guardrail.

", + "EnableControlInput$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny guardrail.

", + "EnabledControlSummary$controlIdentifier": "

The ARN of the control. Only Strongly recommended and Elective controls are permitted, with the exception of the Region deny guardrail.

" + } + }, + "ControlOperation": { + "base": "

An operation performed by the control.

", + "refs": { + "GetControlOperationOutput$controlOperation": "

" + } + }, + "ControlOperationStatus": { + "base": null, + "refs": { + "ControlOperation$status": "

One of IN_PROGRESS, SUCEEDED, or FAILED.

" + } + }, + "ControlOperationType": { + "base": null, + "refs": { + "ControlOperation$operationType": "

One of ENABLE_CONTROL or DISABLE_CONTROL.

" + } + }, + "DisableControlInput": { + "base": null, + "refs": { + } + }, + "DisableControlOutput": { + "base": null, + "refs": { + } + }, + "EnableControlInput": { + "base": null, + "refs": { + } + }, + "EnableControlOutput": { + "base": null, + "refs": { + } + }, + "EnabledControlSummary": { + "base": "

A summary of enabled controls.

", + "refs": { + "EnabledControls$member": null + } + }, + "EnabledControls": { + "base": null, + "refs": { + "ListEnabledControlsOutput$enabledControls": "

Lists the controls enabled by AWS Control Tower on the specified organizational unit and the accounts it contains.

" + } + }, + "GetControlOperationInput": { + "base": null, + "refs": { + } + }, + "GetControlOperationOutput": { + "base": null, + "refs": { + } + }, + "Integer": { + "base": null, + "refs": { + "ThrottlingException$retryAfterSeconds": "

The number of seconds the caller should wait before retrying.

" + } + }, + "InternalServerException": { + "base": "

Unexpected error during processing of request.

", + "refs": { + } + }, + "ListEnabledControlsInput": { + "base": null, + "refs": { + } + }, + "ListEnabledControlsOutput": { + "base": null, + "refs": { + } + }, + "MaxResults": { + "base": null, + "refs": { + "ListEnabledControlsInput$maxResults": "

How many results to return per API call.

" + } + }, + "OperationIdentifier": { + "base": null, + "refs": { + "DisableControlOutput$operationIdentifier": "

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

", + "EnableControlOutput$operationIdentifier": "

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

", + "GetControlOperationInput$operationIdentifier": "

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

" + } + }, + "ResourceNotFoundException": { + "base": "

Request references a resource which does not exist.

", + "refs": { + } + }, + "ServiceQuotaExceededException": { + "base": "

Request would cause a service quota to be exceeded. The limit is 10 concurrent operations.

", + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "ControlOperation$statusMessage": "

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

", + "InternalServerException$message": null, + "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 current response is the end of the results.

", + "ResourceNotFoundException$message": null, + "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.

", + "ValidationException$message": null + } + }, + "SyntheticTimestamp_date_time": { + "base": null, + "refs": { + "ControlOperation$endTime": "

The time that the operation finished.

", + "ControlOperation$startTime": "

The time that the operation began.

" + } + }, + "TargetIdentifier": { + "base": null, + "refs": { + "DisableControlInput$targetIdentifier": "

The ARN of the organizational unit.

", + "EnableControlInput$targetIdentifier": "

The ARN of the organizational unit.

", + "ListEnabledControlsInput$targetIdentifier": "

The ARN of the organizational unit.

" + } + }, + "ThrottlingException": { + "base": "

Request was denied due to request throttling.

", + "refs": { + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by an AWS service.

", + "refs": { + } + } + } +} diff --git a/models/apis/controltower/2018-05-10/examples-1.json b/models/apis/controltower/2018-05-10/examples-1.json new file mode 100644 index 0000000000..0ea7e3b0bb --- /dev/null +++ b/models/apis/controltower/2018-05-10/examples-1.json @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff --git a/models/apis/controltower/2018-05-10/paginators-1.json b/models/apis/controltower/2018-05-10/paginators-1.json new file mode 100644 index 0000000000..3d1220dffd --- /dev/null +++ b/models/apis/controltower/2018-05-10/paginators-1.json @@ -0,0 +1,10 @@ +{ + "pagination": { + "ListEnabledControls": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "enabledControls" + } + } +} diff --git a/models/apis/route53/2013-04-01/docs-2.json b/models/apis/route53/2013-04-01/docs-2.json index 946604e139..4ead4b3fbf 100644 --- a/models/apis/route53/2013-04-01/docs-2.json +++ b/models/apis/route53/2013-04-01/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "

Amazon Route 53 is a highly available and scalable Domain Name System (DNS) web service.

", + "service": "

Amazon Route 53 is a highly available and scalable Domain Name System (DNS) web service.

You can use Route 53 to:

", "operations": { "ActivateKeySigningKey": "

Activates a key-signing key (KSK) so that it can be used for signing by DNSSEC. This operation changes the KSK status to ACTIVE.

", "AssociateVPCWithHostedZone": "

Associates an Amazon VPC with a private hosted zone.

To perform the association, the VPC and the private hosted zone must already exist. You can't convert a public hosted zone into a private hosted zone.

If you want to associate a VPC that was created by using one Amazon Web Services account with a private hosted zone that was created by using a different account, the Amazon Web Services account that created the private hosted zone must first submit a CreateVPCAssociationAuthorization request. Then the account that created the VPC must submit an AssociateVPCWithHostedZone request.

When granting access, the hosted zone and the Amazon VPC must belong to the same partition. A partition is a group of Amazon Web Services Regions. Each Amazon Web Services account is scoped to one partition.

The following are the supported partitions:

For more information, see Access Management in the Amazon Web Services General Reference.

", @@ -130,9 +130,9 @@ } }, "AliasTarget": { - "base": "

Alias resource record sets only: Information about the Amazon Web Services resource, such as a CloudFront distribution or an Amazon S3 bucket, that you want to route traffic to.

When creating resource record sets for a private hosted zone, note the following:

", + "base": "

Alias resource record sets only: Information about the Amazon Web Services resource, such as a CloudFront distribution or an Amazon S3 bucket, that you want to route traffic to.

When creating resource record sets for a private hosted zone, note the following:

", "refs": { - "ResourceRecordSet$AliasTarget": "

Alias resource record sets only: Information about the Amazon Web Services resource, such as a CloudFront distribution or an Amazon S3 bucket, that you want to route traffic to.

If you're creating resource records sets for a private hosted zone, note the following:

" + "ResourceRecordSet$AliasTarget": "

Alias resource record sets only: Information about the Amazon Web Services resource, such as a CloudFront distribution or an Amazon S3 bucket, that you want to route traffic to.

If you're creating resource records sets for a private hosted zone, note the following:

" } }, "AssociateVPCComment": { diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 0e85f90e5a..89063fd6ca 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -1645,6 +1645,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, @@ -3243,6 +3244,73 @@ "us-west-2" : { } } }, + "controltower" : { + "endpoints" : { + "ap-northeast-1" : { }, + "ap-northeast-2" : { }, + "ap-south-1" : { }, + "ap-southeast-1" : { }, + "ap-southeast-2" : { }, + "ca-central-1" : { + "variants" : [ { + "hostname" : "controltower-fips.ca-central-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "ca-central-1-fips" : { + "credentialScope" : { + "region" : "ca-central-1" + }, + "deprecated" : true, + "hostname" : "controltower-fips.ca-central-1.amazonaws.com" + }, + "eu-central-1" : { }, + "eu-north-1" : { }, + "eu-west-1" : { }, + "eu-west-2" : { }, + "eu-west-3" : { }, + "sa-east-1" : { }, + "us-east-1" : { + "variants" : [ { + "hostname" : "controltower-fips.us-east-1.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-1-fips" : { + "credentialScope" : { + "region" : "us-east-1" + }, + "deprecated" : true, + "hostname" : "controltower-fips.us-east-1.amazonaws.com" + }, + "us-east-2" : { + "variants" : [ { + "hostname" : "controltower-fips.us-east-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-east-2-fips" : { + "credentialScope" : { + "region" : "us-east-2" + }, + "deprecated" : true, + "hostname" : "controltower-fips.us-east-2.amazonaws.com" + }, + "us-west-2" : { + "variants" : [ { + "hostname" : "controltower-fips.us-west-2.amazonaws.com", + "tags" : [ "fips" ] + } ] + }, + "us-west-2-fips" : { + "credentialScope" : { + "region" : "us-west-2" + }, + "deprecated" : true, + "hostname" : "controltower-fips.us-west-2.amazonaws.com" + } + } + }, "cur" : { "endpoints" : { "us-east-1" : { } diff --git a/service/codegurureviewer/api.go b/service/codegurureviewer/api.go index 20ce29c9d8..62259e76cd 100644 --- a/service/codegurureviewer/api.go +++ b/service/codegurureviewer/api.go @@ -56,7 +56,7 @@ func (c *CodeGuruReviewer) AssociateRepositoryRequest(input *AssociateRepository // AssociateRepository API operation for Amazon CodeGuru Reviewer. // -// Use to associate an Amazon Web Services CodeCommit repository or a repostory +// Use to associate an Amazon Web Services CodeCommit repository or a repository // managed by Amazon Web Services CodeStar Connections with Amazon CodeGuru // Reviewer. When you associate a repository, CodeGuru Reviewer reviews source // code changes in the repository's pull requests and provides automatic recommendations. @@ -1614,7 +1614,7 @@ type AssociateRepositoryInput struct { // or customer managed (CUSTOMER_MANAGED_CMK). // // * The ID of the Amazon Web Services KMS key that is associated with this - // respository association. + // repository association. KMSKeyDetails *KMSKeyDetails `type:"structure"` // The repository to associate. @@ -3156,7 +3156,7 @@ func (s *InternalServerException) RequestID() string { // customer managed (CUSTOMER_MANAGED_CMK). // // - The ID of the Amazon Web Services KMS key that is associated with a -// respository association. +// repository association. type KMSKeyDetails struct { _ struct{} `type:"structure"` @@ -3165,7 +3165,7 @@ type KMSKeyDetails struct { // managed (CUSTOMER_MANAGED_CMK). EncryptionOption *string `type:"string" enum:"EncryptionOption"` - // The ID of the Amazon Web Services KMS key that is associated with a respository + // The ID of the Amazon Web Services KMS key that is associated with a repository // association. KMSKeyId *string `min:"1" type:"string"` } @@ -3699,7 +3699,7 @@ type ListRepositoryAssociationsInput struct { // * Disassociated: CodeGuru Reviewer successfully disassociated the repository. // You can create a new association with this repository if you want to review // source code in it later. You can control access to code reviews created - // in an associated repository with tags after it has been disassociated. + // in anassociated repository with tags after it has been disassociated. // For more information, see Using tags to control access to associated repositories // (https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html) // in the Amazon CodeGuru Reviewer User Guide. @@ -4646,7 +4646,7 @@ type RepositoryAssociation struct { // or customer managed (CUSTOMER_MANAGED_CMK). // // * The ID of the Amazon Web Services KMS key that is associated with this - // respository association. + // repository association. KMSKeyDetails *KMSKeyDetails `type:"structure"` // The time, in milliseconds since the epoch, when the repository association @@ -4694,7 +4694,7 @@ type RepositoryAssociation struct { // * Disassociated: CodeGuru Reviewer successfully disassociated the repository. // You can create a new association with this repository if you want to review // source code in it later. You can control access to code reviews created - // in an associated repository with tags after it has been disassociated. + // in anassociated repository with tags after it has been disassociated. // For more information, see Using tags to control access to associated repositories // (https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html) // in the Amazon CodeGuru Reviewer User Guide. @@ -4853,7 +4853,7 @@ type RepositoryAssociationSummary struct { // * Disassociated: CodeGuru Reviewer successfully disassociated the repository. // You can create a new association with this repository if you want to review // source code in it later. You can control access to code reviews created - // in an associated repository with tags after it has been disassociated. + // in anassociated repository with tags after it has been disassociated. // For more information, see Using tags to control access to associated repositories // (https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/auth-and-access-control-using-tags.html) // in the Amazon CodeGuru Reviewer User Guide. @@ -5633,7 +5633,7 @@ type ThirdPartySourceRepository struct { // The owner of the repository. For a GitHub, GitHub Enterprise, or Bitbucket // repository, this is the username for the account that owns the repository. // For an S3 repository, this can be the username or Amazon Web Services account - // ID. + // ID // // Owner is a required field Owner *string `min:"1" type:"string" required:"true"` diff --git a/service/controltower/api.go b/service/controltower/api.go new file mode 100644 index 0000000000..f883f69f9f --- /dev/null +++ b/service/controltower/api.go @@ -0,0 +1,1451 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package controltower + +import ( + "fmt" + "time" + + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/awsutil" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/private/protocol" +) + +const opDisableControl = "DisableControl" + +// DisableControlRequest generates a "aws/request.Request" representing the +// client's request for the DisableControl 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 DisableControl for more information on using the DisableControl +// 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 DisableControlRequest method. +// req, resp := client.DisableControlRequest(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/DisableControl +func (c *ControlTower) DisableControlRequest(input *DisableControlInput) (req *request.Request, output *DisableControlOutput) { + op := &request.Operation{ + Name: opDisableControl, + HTTPMethod: "POST", + HTTPPath: "/disable-control", + } + + if input == nil { + input = &DisableControlInput{} + } + + output = &DisableControlOutput{} + req = c.newRequest(op, input, output) + return +} + +// DisableControl API operation for AWS Control Tower. +// +// 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. +// +// 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 DisableControl for usage and error information. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ServiceQuotaExceededException +// Request would cause a service quota to be exceeded. The limit is 10 concurrent +// operations. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - ResourceNotFoundException +// Request references a resource which does not exist. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10/DisableControl +func (c *ControlTower) DisableControl(input *DisableControlInput) (*DisableControlOutput, error) { + req, out := c.DisableControlRequest(input) + return out, req.Send() +} + +// DisableControlWithContext is the same as DisableControl with the addition of +// the ability to pass a context and additional request options. +// +// See DisableControl 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) DisableControlWithContext(ctx aws.Context, input *DisableControlInput, opts ...request.Option) (*DisableControlOutput, error) { + req, out := c.DisableControlRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opEnableControl = "EnableControl" + +// 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 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 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/EnableControl +func (c *ControlTower) EnableControlRequest(input *EnableControlInput) (req *request.Request, output *EnableControlOutput) { + op := &request.Operation{ + Name: opEnableControl, + HTTPMethod: "POST", + HTTPPath: "/enable-control", + } + + if input == nil { + input = &EnableControlInput{} + } + + output = &EnableControlOutput{} + req = c.newRequest(op, input, output) + return +} + +// EnableControl API operation for AWS Control Tower. +// +// This API call activates a control. It starts an asynchronous operation that +// creates AWS resources on the specified organizational unit and the accounts +// it contains. The resources created will vary according to the control that +// you specify. +// +// 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. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - ConflictException +// Updating or deleting a resource can cause an inconsistent state. +// +// - ServiceQuotaExceededException +// Request would cause a service quota to be exceeded. The limit is 10 concurrent +// operations. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - ResourceNotFoundException +// Request references a resource which 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) + return out, req.Send() +} + +// EnableControlWithContext is the same as EnableControl 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. +// +// 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) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opGetControlOperation = "GetControlOperation" + +// 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 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 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/GetControlOperation +func (c *ControlTower) GetControlOperationRequest(input *GetControlOperationInput) (req *request.Request, output *GetControlOperationOutput) { + op := &request.Operation{ + Name: opGetControlOperation, + HTTPMethod: "POST", + HTTPPath: "/get-control-operation", + } + + if input == nil { + input = &GetControlOperationInput{} + } + + output = &GetControlOperationOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetControlOperation 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. +// +// 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. +// +// Returned Error Types: +// +// - ValidationException +// The input fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - ResourceNotFoundException +// Request references a resource which 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) + return out, req.Send() +} + +// GetControlOperationWithContext is the same as GetControlOperation 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. +// +// 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) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +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: "", + }, + } + + if input == nil { + input = &ListEnabledControlsInput{} + } + + output = &ListEnabledControlsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListEnabledControls API operation for AWS Control Tower. +// +// Lists the controls enabled by AWS Control Tower on the specified organizational +// unit and the accounts it contains. +// +// 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 fails to satisfy the constraints specified by an AWS service. +// +// - InternalServerException +// Unexpected error during processing of request. +// +// - AccessDeniedException +// User does not have sufficient access to perform this action. +// +// - ThrottlingException +// Request was denied due to request throttling. +// +// - ResourceNotFoundException +// Request references a resource which 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() +} + +// User does 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 +} + +// Updating or deleting a 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 *ConflictException) RequestID() string { + return s.RespMetadata.RequestID +} + +// 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 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 guardrail. + // + // ControlIdentifier is a required field + ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string" required:"true"` + + // The ARN of the organizational unit. + // + // TargetIdentifier is a required field + TargetIdentifier *string `locationName:"targetIdentifier" 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 DisableControlInput) 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 DisableControlInput) 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"} + if s.ControlIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("ControlIdentifier")) + } + 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)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetControlIdentifier sets the ControlIdentifier field's value. +func (s *DisableControlInput) SetControlIdentifier(v string) *DisableControlInput { + s.ControlIdentifier = &v + return s +} + +// SetTargetIdentifier sets the TargetIdentifier field's value. +func (s *DisableControlInput) SetTargetIdentifier(v string) *DisableControlInput { + s.TargetIdentifier = &v + return s +} + +type DisableControlOutput struct { + _ struct{} `type:"structure"` + + // 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. +// +// 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 { + 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 DisableControlOutput) GoString() string { + return s.String() +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *DisableControlOutput) SetOperationIdentifier(v string) *DisableControlOutput { + s.OperationIdentifier = &v + return s +} + +type EnableControlInput struct { + _ struct{} `type:"structure"` + + // The ARN of the control. Only Strongly recommended and Elective controls are + // permitted, with the exception of the Region deny guardrail. + // + // ControlIdentifier is a required field + ControlIdentifier *string `locationName:"controlIdentifier" min:"20" type:"string" required:"true"` + + // The ARN of the organizational unit. + // + // TargetIdentifier is a required field + TargetIdentifier *string `locationName:"targetIdentifier" 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 EnableControlInput) 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 EnableControlInput) 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)) + } + 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 { + return invalidParams + } + return nil +} + +// SetControlIdentifier sets the ControlIdentifier field's value. +func (s *EnableControlInput) SetControlIdentifier(v string) *EnableControlInput { + s.ControlIdentifier = &v + return s +} + +// SetTargetIdentifier sets the TargetIdentifier field's value. +func (s *EnableControlInput) SetTargetIdentifier(v string) *EnableControlInput { + s.TargetIdentifier = &v + return s +} + +type EnableControlOutput struct { + _ struct{} `type:"structure"` + + // 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. +// +// 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 { + 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 EnableControlOutput) GoString() string { + return s.String() +} + +// SetOperationIdentifier sets the OperationIdentifier field's value. +func (s *EnableControlOutput) SetOperationIdentifier(v string) *EnableControlOutput { + s.OperationIdentifier = &v + return s +} + +// A summary of enabled controls. +type EnabledControlSummary struct { + _ struct{} `type:"structure"` + + // The ARN of the control. Only Strongly recommended and Elective controls are + // permitted, with the exception of the Region deny guardrail. + ControlIdentifier *string `locationName:"controlIdentifier" 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 EnabledControlSummary) 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 EnabledControlSummary) GoString() string { + return s.String() +} + +// SetControlIdentifier sets the ControlIdentifier field's value. +func (s *EnabledControlSummary) SetControlIdentifier(v string) *EnabledControlSummary { + s.ControlIdentifier = &v + return s +} + +type GetControlOperationInput struct { + _ struct{} `type:"structure"` + + // 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. +// +// 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 GetControlOperationInput) 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 GetControlOperationInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetControlOperationInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetControlOperationInput"} + 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 *GetControlOperationInput) SetOperationIdentifier(v string) *GetControlOperationInput { + s.OperationIdentifier = &v + return s +} + +type GetControlOperationOutput struct { + _ struct{} `type:"structure"` + + // An operation performed by the control. + // + // ControlOperation is a required field + ControlOperation *ControlOperation `locationName:"controlOperation" 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 GetControlOperationOutput) 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 GetControlOperationOutput) GoString() string { + return s.String() +} + +// SetControlOperation sets the ControlOperation field's value. +func (s *GetControlOperationOutput) SetControlOperation(v *ControlOperation) *GetControlOperationOutput { + s.ControlOperation = v + return s +} + +// Unexpected error during processing of request. +type InternalServerException 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 InternalServerException) 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 InternalServerException) GoString() string { + return s.String() +} + +func newErrorInternalServerException(v protocol.ResponseMetadata) error { + return &InternalServerException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InternalServerException) Code() string { + return "InternalServerException" +} + +// Message returns the exception's message. +func (s *InternalServerException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InternalServerException) OrigErr() error { + return nil +} + +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 +} + +type ListEnabledControlsInput struct { + _ struct{} `type:"structure"` + + // How many results to return per API call. + MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"` + + // The token to continue the list from a previous API call with the same parameters. + NextToken *string `locationName:"nextToken" type:"string"` + + // The ARN of the organizational unit. + // + // TargetIdentifier is a required field + TargetIdentifier *string `locationName:"targetIdentifier" 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 ListEnabledControlsInput) 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 ListEnabledControlsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListEnabledControlsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListEnabledControlsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 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 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListEnabledControlsInput) SetMaxResults(v int64) *ListEnabledControlsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnabledControlsInput) SetNextToken(v string) *ListEnabledControlsInput { + s.NextToken = &v + return s +} + +// SetTargetIdentifier sets the TargetIdentifier field's value. +func (s *ListEnabledControlsInput) SetTargetIdentifier(v string) *ListEnabledControlsInput { + s.TargetIdentifier = &v + return s +} + +type ListEnabledControlsOutput struct { + _ struct{} `type:"structure"` + + // Lists the controls enabled by AWS Control Tower on the specified organizational + // unit and the accounts it contains. + // + // EnabledControls is a required field + EnabledControls []*EnabledControlSummary `locationName:"enabledControls" type:"list" required:"true"` + + // Retrieves the next page of results. If the string is empty, the current response + // is the end of the results. + 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 ListEnabledControlsOutput) 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 ListEnabledControlsOutput) GoString() string { + return s.String() +} + +// SetEnabledControls sets the EnabledControls field's value. +func (s *ListEnabledControlsOutput) SetEnabledControls(v []*EnabledControlSummary) *ListEnabledControlsOutput { + s.EnabledControls = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListEnabledControlsOutput) SetNextToken(v string) *ListEnabledControlsOutput { + s.NextToken = &v + return s +} + +// Request references a resource which does not exist. +type ResourceNotFoundException 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 ResourceNotFoundException) 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 ResourceNotFoundException) GoString() string { + return s.String() +} + +func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error { + return &ResourceNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ResourceNotFoundException) Code() string { + return "ResourceNotFoundException" +} + +// Message returns the exception's message. +func (s *ResourceNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ResourceNotFoundException) OrigErr() error { + return nil +} + +func (s *ResourceNotFoundException) 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 *ResourceNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ResourceNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Request would cause a service quota to be exceeded. The limit is 10 concurrent +// operations. +type ServiceQuotaExceededException 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 ServiceQuotaExceededException) 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 ServiceQuotaExceededException) GoString() string { + return s.String() +} + +func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error { + return &ServiceQuotaExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ServiceQuotaExceededException) Code() string { + return "ServiceQuotaExceededException" +} + +// Message returns the exception's message. +func (s *ServiceQuotaExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ServiceQuotaExceededException) OrigErr() error { + return nil +} + +func (s *ServiceQuotaExceededException) 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 *ServiceQuotaExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ServiceQuotaExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Request was denied due to request throttling. +type ThrottlingException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` + + // The ID of the service quota that was exceeded. + QuotaCode *string `locationName:"quotaCode" type:"string"` + + // 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. + ServiceCode *string `locationName:"serviceCode" 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 ThrottlingException) 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 ThrottlingException) GoString() string { + return s.String() +} + +func newErrorThrottlingException(v protocol.ResponseMetadata) error { + return &ThrottlingException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ThrottlingException) Code() string { + return "ThrottlingException" +} + +// Message returns the exception's message. +func (s *ThrottlingException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ThrottlingException) OrigErr() error { + return nil +} + +func (s *ThrottlingException) Error() string { + return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *ThrottlingException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ThrottlingException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The input fails to satisfy the constraints specified by an AWS service. +type ValidationException 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 ValidationException) 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 ValidationException) GoString() string { + return s.String() +} + +func newErrorValidationException(v protocol.ResponseMetadata) error { + return &ValidationException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *ValidationException) Code() string { + return "ValidationException" +} + +// Message returns the exception's message. +func (s *ValidationException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *ValidationException) OrigErr() error { + return nil +} + +func (s *ValidationException) 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 *ValidationException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *ValidationException) RequestID() string { + return s.RespMetadata.RequestID +} + +const ( + // ControlOperationStatusSucceeded is a ControlOperationStatus enum value + ControlOperationStatusSucceeded = "SUCCEEDED" + + // ControlOperationStatusFailed is a ControlOperationStatus enum value + ControlOperationStatusFailed = "FAILED" + + // ControlOperationStatusInProgress is a ControlOperationStatus enum value + ControlOperationStatusInProgress = "IN_PROGRESS" +) + +// ControlOperationStatus_Values returns all elements of the ControlOperationStatus enum +func ControlOperationStatus_Values() []string { + return []string{ + ControlOperationStatusSucceeded, + ControlOperationStatusFailed, + ControlOperationStatusInProgress, + } +} + +const ( + // ControlOperationTypeEnableControl is a ControlOperationType enum value + ControlOperationTypeEnableControl = "ENABLE_CONTROL" + + // ControlOperationTypeDisableControl is a ControlOperationType enum value + ControlOperationTypeDisableControl = "DISABLE_CONTROL" +) + +// ControlOperationType_Values returns all elements of the ControlOperationType enum +func ControlOperationType_Values() []string { + return []string{ + ControlOperationTypeEnableControl, + ControlOperationTypeDisableControl, + } +} diff --git a/service/controltower/controltoweriface/interface.go b/service/controltower/controltoweriface/interface.go new file mode 100644 index 0000000000..28095971ca --- /dev/null +++ b/service/controltower/controltoweriface/interface.go @@ -0,0 +1,83 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package controltoweriface provides an interface to enable mocking the AWS Control Tower service client +// for testing your code. +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. +package controltoweriface + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/service/controltower" +) + +// ControlTowerAPI provides an interface to enable mocking the +// controltower.ControlTower service client's API operation, +// paginators, and waiters. This make unit testing your code that calls out +// to the SDK's service client's calls easier. +// +// The best way to use this interface is so the SDK's service client's calls +// can be stubbed out for unit testing your code with the SDK without needing +// to inject custom request handlers into the SDK's request pipeline. +// +// // myFunc uses an SDK service client to make a request to +// // AWS Control Tower. +// func myFunc(svc controltoweriface.ControlTowerAPI) bool { +// // Make svc.DisableControl request +// } +// +// func main() { +// sess := session.New() +// svc := controltower.New(sess) +// +// myFunc(svc) +// } +// +// In your _test.go file: +// +// // Define a mock struct to be used in your unit tests of myFunc. +// type mockControlTowerClient struct { +// controltoweriface.ControlTowerAPI +// } +// func (m *mockControlTowerClient) DisableControl(input *controltower.DisableControlInput) (*controltower.DisableControlOutput, error) { +// // mock response/functionality +// } +// +// func TestMyFunc(t *testing.T) { +// // Setup Test +// mockSvc := &mockControlTowerClient{} +// +// myfunc(mockSvc) +// +// // Verify myFunc's functionality +// } +// +// It is important to note that this interface will have breaking changes +// when the service model is updated and adds new API operations, paginators, +// and waiters. Its suggested to use the pattern above for testing, or using +// tooling to generate mocks to satisfy the interfaces. +type ControlTowerAPI interface { + DisableControl(*controltower.DisableControlInput) (*controltower.DisableControlOutput, error) + DisableControlWithContext(aws.Context, *controltower.DisableControlInput, ...request.Option) (*controltower.DisableControlOutput, error) + DisableControlRequest(*controltower.DisableControlInput) (*request.Request, *controltower.DisableControlOutput) + + EnableControl(*controltower.EnableControlInput) (*controltower.EnableControlOutput, error) + EnableControlWithContext(aws.Context, *controltower.EnableControlInput, ...request.Option) (*controltower.EnableControlOutput, error) + EnableControlRequest(*controltower.EnableControlInput) (*request.Request, *controltower.EnableControlOutput) + + GetControlOperation(*controltower.GetControlOperationInput) (*controltower.GetControlOperationOutput, error) + GetControlOperationWithContext(aws.Context, *controltower.GetControlOperationInput, ...request.Option) (*controltower.GetControlOperationOutput, error) + GetControlOperationRequest(*controltower.GetControlOperationInput) (*request.Request, *controltower.GetControlOperationOutput) + + ListEnabledControls(*controltower.ListEnabledControlsInput) (*controltower.ListEnabledControlsOutput, error) + ListEnabledControlsWithContext(aws.Context, *controltower.ListEnabledControlsInput, ...request.Option) (*controltower.ListEnabledControlsOutput, error) + ListEnabledControlsRequest(*controltower.ListEnabledControlsInput) (*request.Request, *controltower.ListEnabledControlsOutput) + + ListEnabledControlsPages(*controltower.ListEnabledControlsInput, func(*controltower.ListEnabledControlsOutput, bool) bool) error + ListEnabledControlsPagesWithContext(aws.Context, *controltower.ListEnabledControlsInput, func(*controltower.ListEnabledControlsOutput, bool) bool, ...request.Option) error +} + +var _ ControlTowerAPI = (*controltower.ControlTower)(nil) diff --git a/service/controltower/doc.go b/service/controltower/doc.go new file mode 100644 index 0000000000..6ec2d54fdd --- /dev/null +++ b/service/controltower/doc.go @@ -0,0 +1,84 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +// Package controltower provides the client and types for making API +// requests to AWS Control Tower. +// +// These interfaces allow you to apply the AWS library of pre-defined controls +// to your organizational units, programmatically. In this context, controls +// are the same as AWS Control Tower guardrails. +// +// To call these APIs, you'll need to know: +// +// - the ControlARN for the control--that is, the guardrail--you are targeting, +// +// - and the ARN associated with the target organizational unit (OU). +// +// To get the ControlARN for your AWS Control Tower guardrail: +// +// The ControlARN contains the control name which is specified in each guardrail. +// For a list of control names for Strongly recommended and Elective guardrails, +// see Resource identifiers for APIs and guardrails (https://docs.aws.amazon.com/controltower/latest/userguide/control-identifiers.html.html) +// in the Automating tasks section (https://docs.aws.amazon.com/controltower/latest/userguide/automating-tasks.html) +// of the AWS Control Tower User Guide. Remember that Mandatory guardrails cannot +// be added or removed. +// +// ARN format: arn:aws:controltower:{REGION}::control/{CONTROL_NAME} +// +// Example: +// +// arn:aws:controltower:us-west-2::control/AWS-GR_AUTOSCALING_LAUNCH_CONFIG_PUBLIC_IP_DISABLED +// +// To get the ARN for an OU: +// +// In the AWS Organizations console, you can find the ARN for the OU on the +// Organizational unit details page associated with that OU. +// +// OU ARN format: +// +// arn:${Partition}:organizations::${MasterAccountId}:ou/o-${OrganizationId}/ou-${OrganizationalUnitId} +// +// Details and examples +// +// - List of resource identifiers for APIs and guardrails (https://docs.aws.amazon.com/controltower/latest/userguide/control-identifiers.html) +// +// - Guardrail API examples (CLI) (https://docs.aws.amazon.com/controltower/latest/userguide/guardrail-api-examples-short.html) +// +// - Enable controls with AWS CloudFormation (https://docs.aws.amazon.com/controltower/latest/userguide/enable-controls.html) +// +// - Creating AWS Control Tower resources with AWS CloudFormation (https://docs.aws.amazon.com/controltower/latest/userguide/creating-resources-with-cloudformation.html) +// +// To view the open source resource repository on GitHub, see aws-cloudformation/aws-cloudformation-resource-providers-controltower +// (https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-controltower) +// +// # Recording API Requests +// +// AWS Control Tower supports AWS CloudTrail, a service that records AWS API +// calls for your AWS account and delivers log files to an Amazon S3 bucket. +// By using information collected by CloudTrail, you can determine which requests +// the AWS Control Tower service received, who made the request and when, and +// so on. For more about AWS Control Tower and its support for CloudTrail, see +// Logging AWS Control Tower Actions with AWS CloudTrail (https://docs.aws.amazon.com/controltower/latest/userguide/logging-using-cloudtrail.html) +// in the AWS Control Tower User Guide. To learn more about CloudTrail, including +// how to turn it on and find your log files, see the AWS CloudTrail User Guide. +// +// See https://docs.aws.amazon.com/goto/WebAPI/controltower-2018-05-10 for more information on this service. +// +// See controltower package documentation for more information. +// https://docs.aws.amazon.com/sdk-for-go/api/service/controltower/ +// +// # Using the Client +// +// To contact AWS Control Tower with the SDK use the New function to create +// a new service client. With that client you can make API requests to the service. +// These clients are safe to use concurrently. +// +// See the SDK's documentation for more information on how to use the SDK. +// https://docs.aws.amazon.com/sdk-for-go/api/ +// +// See aws.Config documentation for more information on configuring SDK clients. +// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config +// +// See the AWS Control Tower client ControlTower for more +// information on creating client for this service. +// https://docs.aws.amazon.com/sdk-for-go/api/service/controltower/#New +package controltower diff --git a/service/controltower/errors.go b/service/controltower/errors.go new file mode 100644 index 0000000000..b83fc0234c --- /dev/null +++ b/service/controltower/errors.go @@ -0,0 +1,63 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package controltower + +import ( + "github.com/aws/aws-sdk-go/private/protocol" +) + +const ( + + // ErrCodeAccessDeniedException for service response error code + // "AccessDeniedException". + // + // User does not have sufficient access to perform this action. + ErrCodeAccessDeniedException = "AccessDeniedException" + + // ErrCodeConflictException for service response error code + // "ConflictException". + // + // Updating or deleting a resource can cause an inconsistent state. + ErrCodeConflictException = "ConflictException" + + // ErrCodeInternalServerException for service response error code + // "InternalServerException". + // + // Unexpected error during processing of request. + ErrCodeInternalServerException = "InternalServerException" + + // ErrCodeResourceNotFoundException for service response error code + // "ResourceNotFoundException". + // + // Request references a resource which does not exist. + ErrCodeResourceNotFoundException = "ResourceNotFoundException" + + // ErrCodeServiceQuotaExceededException for service response error code + // "ServiceQuotaExceededException". + // + // Request would cause a service quota to be exceeded. The limit is 10 concurrent + // operations. + ErrCodeServiceQuotaExceededException = "ServiceQuotaExceededException" + + // ErrCodeThrottlingException for service response error code + // "ThrottlingException". + // + // Request was denied due to request throttling. + ErrCodeThrottlingException = "ThrottlingException" + + // ErrCodeValidationException for service response error code + // "ValidationException". + // + // The input fails to satisfy the constraints specified by an AWS service. + ErrCodeValidationException = "ValidationException" +) + +var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ + "AccessDeniedException": newErrorAccessDeniedException, + "ConflictException": newErrorConflictException, + "InternalServerException": newErrorInternalServerException, + "ResourceNotFoundException": newErrorResourceNotFoundException, + "ServiceQuotaExceededException": newErrorServiceQuotaExceededException, + "ThrottlingException": newErrorThrottlingException, + "ValidationException": newErrorValidationException, +} diff --git a/service/controltower/service.go b/service/controltower/service.go new file mode 100644 index 0000000000..06becc76bc --- /dev/null +++ b/service/controltower/service.go @@ -0,0 +1,106 @@ +// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. + +package controltower + +import ( + "github.com/aws/aws-sdk-go/aws" + "github.com/aws/aws-sdk-go/aws/client" + "github.com/aws/aws-sdk-go/aws/client/metadata" + "github.com/aws/aws-sdk-go/aws/request" + "github.com/aws/aws-sdk-go/aws/signer/v4" + "github.com/aws/aws-sdk-go/private/protocol" + "github.com/aws/aws-sdk-go/private/protocol/restjson" +) + +// ControlTower provides the API operation methods for making requests to +// AWS Control Tower. See this package's package overview docs +// for details on the service. +// +// ControlTower methods are safe to use concurrently. It is not safe to +// modify mutate any of the struct's properties though. +type ControlTower struct { + *client.Client +} + +// Used for custom client initialization logic +var initClient func(*client.Client) + +// Used for custom request initialization logic +var initRequest func(*request.Request) + +// Service information constants +const ( + ServiceName = "ControlTower" // Name of service. + EndpointsID = "controltower" // ID to lookup a service endpoint with. + ServiceID = "ControlTower" // ServiceID is a unique identifier of a specific service. +) + +// New creates a new instance of the ControlTower client with a session. +// If additional configuration is needed for the client instance use the optional +// aws.Config parameter to add your extra config. +// +// Example: +// +// mySession := session.Must(session.NewSession()) +// +// // Create a ControlTower client from just a session. +// svc := controltower.New(mySession) +// +// // Create a ControlTower client with additional configuration +// svc := controltower.New(mySession, aws.NewConfig().WithRegion("us-west-2")) +func New(p client.ConfigProvider, cfgs ...*aws.Config) *ControlTower { + c := p.ClientConfig(EndpointsID, cfgs...) + if c.SigningNameDerived || len(c.SigningName) == 0 { + c.SigningName = "controltower" + } + return newClient(*c.Config, c.Handlers, c.PartitionID, c.Endpoint, c.SigningRegion, c.SigningName, c.ResolvedRegion) +} + +// newClient creates, initializes and returns a new service client instance. +func newClient(cfg aws.Config, handlers request.Handlers, partitionID, endpoint, signingRegion, signingName, resolvedRegion string) *ControlTower { + svc := &ControlTower{ + Client: client.New( + cfg, + metadata.ClientInfo{ + ServiceName: ServiceName, + ServiceID: ServiceID, + SigningName: signingName, + SigningRegion: signingRegion, + PartitionID: partitionID, + Endpoint: endpoint, + APIVersion: "2018-05-10", + ResolvedRegion: resolvedRegion, + }, + handlers, + ), + } + + // Handlers + svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler) + svc.Handlers.Build.PushBackNamed(restjson.BuildHandler) + svc.Handlers.Unmarshal.PushBackNamed(restjson.UnmarshalHandler) + svc.Handlers.UnmarshalMeta.PushBackNamed(restjson.UnmarshalMetaHandler) + svc.Handlers.UnmarshalError.PushBackNamed( + protocol.NewUnmarshalErrorHandler(restjson.NewUnmarshalTypedError(exceptionFromCode)).NamedHandler(), + ) + + // Run custom client initialization if present + if initClient != nil { + initClient(svc.Client) + } + + return svc +} + +// newRequest creates a new request for a ControlTower operation and runs any +// custom request initialization. +func (c *ControlTower) newRequest(op *request.Operation, params, data interface{}) *request.Request { + req := c.NewRequest(op, params, data) + + // Run custom request initialization if present + if initRequest != nil { + initRequest(req) + } + + return req +} diff --git a/service/route53/api.go b/service/route53/api.go index a471d2ecb8..64c1d20d1c 100644 --- a/service/route53/api.go +++ b/service/route53/api.go @@ -7824,9 +7824,6 @@ func (s *AlarmIdentifier) SetRegion(v string) *AlarmIdentifier { // // When creating resource record sets for a private hosted zone, note the following: // -// - Creating geolocation alias resource record sets or latency alias resource -// record sets in a private hosted zone is unsupported. -// // - For information about creating failover resource record sets in a private // hosted zone, see Configuring Failover in a Private Hosted Zone (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html). type AliasTarget struct { @@ -18053,9 +18050,6 @@ type ResourceRecordSet struct { // * You can't create an alias resource record set in a private hosted zone // to route traffic to a CloudFront distribution. // - // * Creating geolocation alias resource record sets or latency alias resource - // record sets in a private hosted zone is unsupported. - // // * For information about creating failover resource record sets in a private // hosted zone, see Configuring Failover in a Private Hosted Zone (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html) // in the Amazon Route 53 Developer Guide. diff --git a/service/route53/doc.go b/service/route53/doc.go index e8efe56f1c..09a352bb6b 100644 --- a/service/route53/doc.go +++ b/service/route53/doc.go @@ -6,6 +6,18 @@ // Amazon Route 53 is a highly available and scalable Domain Name System (DNS) // web service. // +// You can use Route 53 to: +// +// - Register domain names. For more information, see How domain registration +// works (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/welcome-domain-registration.html). +// +// - Route internet traffic to the resources for your domain For more information, +// see How internet traffic is routed to your website or web application +// (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/welcome-dns-service.html). +// +// - Check the health of your resources. For more information, see How Route +// 53 checks the health of your resources (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/welcome-health-checks.html). +// // See https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01 for more information on this service. // // See route53 package documentation for more information.