From 1c523acd14df796236f8977e5eded42f69325bee Mon Sep 17 00:00:00 2001 From: awssdkgo Date: Tue, 16 Aug 2022 18:15:46 +0000 Subject: [PATCH] Release v1.44.78 (2022-08-16) === ### Service Client Updates * `service/rekognition`: Updates service API, documentation, paginators, and examples * This release adds APIs which support copying an Amazon Rekognition Custom Labels model and managing project policies across AWS account. * `service/servicecatalog`: Updates service documentation * Documentation updates for Service Catalog --- CHANGELOG.md | 9 + aws/endpoints/defaults.go | 12 + aws/version.go | 2 +- models/apis/rekognition/2016-06-27/api-2.json | 213 ++- .../apis/rekognition/2016-06-27/docs-2.json | 121 +- .../rekognition/2016-06-27/examples-1.json | 103 ++ .../rekognition/2016-06-27/paginators-1.json | 6 + .../servicecatalog/2015-12-10/docs-2.json | 108 +- models/endpoints/endpoints.json | 4 + service/rekognition/api.go | 1516 +++++++++++++++-- service/rekognition/doc.go | 10 + service/rekognition/errors.go | 15 + service/rekognition/examples_test.go | 194 +++ .../rekognition/rekognitioniface/interface.go | 19 + service/servicecatalog/api.go | 367 ++-- service/servicecatalog/doc.go | 8 +- service/servicecatalog/errors.go | 4 +- 17 files changed, 2368 insertions(+), 343 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fbd0276658..3e6b9fe767 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +Release v1.44.78 (2022-08-16) +=== + +### Service Client Updates +* `service/rekognition`: Updates service API, documentation, paginators, and examples + * This release adds APIs which support copying an Amazon Rekognition Custom Labels model and managing project policies across AWS account. +* `service/servicecatalog`: Updates service documentation + * Documentation updates for Service Catalog + Release v1.44.77 (2022-08-15) === diff --git a/aws/endpoints/defaults.go b/aws/endpoints/defaults.go index 65f81eeba3..685ec004fd 100644 --- a/aws/endpoints/defaults.go +++ b/aws/endpoints/defaults.go @@ -3928,6 +3928,9 @@ var awsPartition = partition{ endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-3", + }: endpoint{}, endpointKey{ Region: "ca-central-1", }: endpoint{}, @@ -24465,9 +24468,18 @@ var awsPartition = partition{ endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ca-central-1", + }: endpoint{}, + endpointKey{ + Region: "eu-central-1", + }: endpoint{}, endpointKey{ Region: "eu-west-1", }: endpoint{}, + endpointKey{ + Region: "eu-west-2", + }: endpoint{}, endpointKey{ Region: "us-east-1", }: endpoint{}, diff --git a/aws/version.go b/aws/version.go index 0383dfe46a..750227daea 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.77" +const SDKVersion = "1.44.78" diff --git a/models/apis/rekognition/2016-06-27/api-2.json b/models/apis/rekognition/2016-06-27/api-2.json index 8df98b502e..87a521f3cd 100644 --- a/models/apis/rekognition/2016-06-27/api-2.json +++ b/models/apis/rekognition/2016-06-27/api-2.json @@ -31,6 +31,26 @@ {"shape":"InvalidImageFormatException"} ] }, + "CopyProjectVersion":{ + "name":"CopyProjectVersion", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CopyProjectVersionRequest"}, + "output":{"shape":"CopyProjectVersionResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerError"}, + {"shape":"InvalidParameterException"}, + {"shape":"LimitExceededException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"ResourceInUseException"} + ] + }, "CreateCollection":{ "name":"CreateCollection", "http":{ @@ -197,6 +217,24 @@ {"shape":"ProvisionedThroughputExceededException"} ] }, + "DeleteProjectPolicy":{ + "name":"DeleteProjectPolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteProjectPolicyRequest"}, + "output":{"shape":"DeleteProjectPolicyResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerError"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InvalidPolicyRevisionIdException"} + ] + }, "DeleteProjectVersion":{ "name":"DeleteProjectVersion", "http":{ @@ -713,6 +751,24 @@ {"shape":"ResourceNotFoundException"} ] }, + "ListProjectPolicies":{ + "name":"ListProjectPolicies", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ListProjectPoliciesRequest"}, + "output":{"shape":"ListProjectPoliciesResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerError"}, + {"shape":"InvalidParameterException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ThrottlingException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"InvalidPaginationTokenException"} + ] + }, "ListStreamProcessors":{ "name":"ListStreamProcessors", "http":{ @@ -747,6 +803,28 @@ {"shape":"ProvisionedThroughputExceededException"} ] }, + "PutProjectPolicy":{ + "name":"PutProjectPolicy", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"PutProjectPolicyRequest"}, + "output":{"shape":"PutProjectPolicyResponse"}, + "errors":[ + {"shape":"AccessDeniedException"}, + {"shape":"InternalServerError"}, + {"shape":"InvalidParameterException"}, + {"shape":"InvalidPolicyRevisionIdException"}, + {"shape":"MalformedPolicyDocumentException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ResourceAlreadyExistsException"}, + {"shape":"ThrottlingException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ProvisionedThroughputExceededException"}, + {"shape":"LimitExceededException"} + ] + }, "RecognizeCelebrities":{ "name":"RecognizeCelebrities", "http":{ @@ -1387,6 +1465,31 @@ "TIMESTAMP" ] }, + "CopyProjectVersionRequest":{ + "type":"structure", + "required":[ + "SourceProjectArn", + "SourceProjectVersionArn", + "DestinationProjectArn", + "VersionName", + "OutputConfig" + ], + "members":{ + "SourceProjectArn":{"shape":"ProjectArn"}, + "SourceProjectVersionArn":{"shape":"ProjectVersionArn"}, + "DestinationProjectArn":{"shape":"ProjectArn"}, + "VersionName":{"shape":"VersionName"}, + "OutputConfig":{"shape":"OutputConfig"}, + "Tags":{"shape":"TagMap"}, + "KmsKeyId":{"shape":"KmsKeyId"} + } + }, + "CopyProjectVersionResponse":{ + "type":"structure", + "members":{ + "ProjectVersionArn":{"shape":"ProjectVersionArn"} + } + }, "CoversBodyPart":{ "type":"structure", "members":{ @@ -1674,6 +1777,23 @@ "DeletedFaces":{"shape":"FaceIdList"} } }, + "DeleteProjectPolicyRequest":{ + "type":"structure", + "required":[ + "ProjectArn", + "PolicyName" + ], + "members":{ + "ProjectArn":{"shape":"ProjectArn"}, + "PolicyName":{"shape":"ProjectPolicyName"}, + "PolicyRevisionId":{"shape":"ProjectPolicyRevisionId"} + } + }, + "DeleteProjectPolicyResponse":{ + "type":"structure", + "members":{ + } + }, "DeleteProjectRequest":{ "type":"structure", "required":["ProjectArn"], @@ -2490,6 +2610,12 @@ }, "exception":true }, + "InvalidPolicyRevisionIdException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "InvalidS3ObjectException":{ "type":"structure", "members":{ @@ -2725,6 +2851,27 @@ "FaceModelVersion":{"shape":"String"} } }, + "ListProjectPoliciesPageSize":{ + "type":"integer", + "max":5, + "min":1 + }, + "ListProjectPoliciesRequest":{ + "type":"structure", + "required":["ProjectArn"], + "members":{ + "ProjectArn":{"shape":"ProjectArn"}, + "NextToken":{"shape":"ExtendedPaginationToken"}, + "MaxResults":{"shape":"ListProjectPoliciesPageSize"} + } + }, + "ListProjectPoliciesResponse":{ + "type":"structure", + "members":{ + "ProjectPolicies":{"shape":"ProjectPolicies"}, + "NextToken":{"shape":"ExtendedPaginationToken"} + } + }, "ListStreamProcessorsRequest":{ "type":"structure", "members":{ @@ -2752,6 +2899,12 @@ "Tags":{"shape":"TagMap"} } }, + "MalformedPolicyDocumentException":{ + "type":"structure", + "members":{ + }, + "exception":true + }, "MaxDurationInSecondsULong":{ "type":"long", "max":120, @@ -2946,6 +3099,38 @@ "max":10, "min":1 }, + "ProjectPolicies":{ + "type":"list", + "member":{"shape":"ProjectPolicy"} + }, + "ProjectPolicy":{ + "type":"structure", + "members":{ + "ProjectArn":{"shape":"ProjectArn"}, + "PolicyName":{"shape":"ProjectPolicyName"}, + "PolicyRevisionId":{"shape":"ProjectPolicyRevisionId"}, + "PolicyDocument":{"shape":"ProjectPolicyDocument"}, + "CreationTimestamp":{"shape":"DateTime"}, + "LastUpdatedTimestamp":{"shape":"DateTime"} + } + }, + "ProjectPolicyDocument":{ + "type":"string", + "max":2000, + "min":1, + "pattern":"[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+" + }, + "ProjectPolicyName":{ + "type":"string", + "max":128, + "min":1, + "pattern":"[a-zA-Z0-9_.\\-]+" + }, + "ProjectPolicyRevisionId":{ + "type":"string", + "max":64, + "pattern":"[0-9A-Fa-f]+" + }, "ProjectStatus":{ "type":"string", "enum":[ @@ -2976,7 +3161,8 @@ "EvaluationResult":{"shape":"EvaluationResult"}, "ManifestSummary":{"shape":"GroundTruthManifest"}, "KmsKeyId":{"shape":"KmsKeyId"}, - "MaxInferenceUnits":{"shape":"InferenceUnits"} + "MaxInferenceUnits":{"shape":"InferenceUnits"}, + "SourceProjectVersionArn":{"shape":"ProjectVersionArn"} } }, "ProjectVersionDescriptions":{ @@ -2994,7 +3180,10 @@ "FAILED", "STOPPING", "STOPPED", - "DELETING" + "DELETING", + "COPYING_IN_PROGRESS", + "COPYING_COMPLETED", + "COPYING_FAILED" ] }, "ProjectVersionsPageSize":{ @@ -3069,6 +3258,26 @@ }, "exception":true }, + "PutProjectPolicyRequest":{ + "type":"structure", + "required":[ + "ProjectArn", + "PolicyName", + "PolicyDocument" + ], + "members":{ + "ProjectArn":{"shape":"ProjectArn"}, + "PolicyName":{"shape":"ProjectPolicyName"}, + "PolicyRevisionId":{"shape":"ProjectPolicyRevisionId"}, + "PolicyDocument":{"shape":"ProjectPolicyDocument"} + } + }, + "PutProjectPolicyResponse":{ + "type":"structure", + "members":{ + "PolicyRevisionId":{"shape":"ProjectPolicyRevisionId"} + } + }, "QualityFilter":{ "type":"string", "enum":[ diff --git a/models/apis/rekognition/2016-06-27/docs-2.json b/models/apis/rekognition/2016-06-27/docs-2.json index 6e9377f76e..6e538ac5bd 100644 --- a/models/apis/rekognition/2016-06-27/docs-2.json +++ b/models/apis/rekognition/2016-06-27/docs-2.json @@ -1,8 +1,9 @@ { "version": "2.0", - "service": "

This is the API Reference for Amazon Rekognition Image, Amazon Rekognition Custom Labels, Amazon Rekognition Stored Video, Amazon Rekognition Streaming Video. It provides descriptions of actions, data types, common parameters, and common errors.

Amazon Rekognition Image

Amazon Rekognition Custom Labels

Amazon Rekognition Video Stored Video

Amazon Rekognition Video Streaming Video

", + "service": "

This is the API Reference for Amazon Rekognition Image, Amazon Rekognition Custom Labels, Amazon Rekognition Stored Video, Amazon Rekognition Streaming Video. It provides descriptions of actions, data types, common parameters, and common errors.

Amazon Rekognition Image

Amazon Rekognition Custom Labels

Amazon Rekognition Video Stored Video

Amazon Rekognition Video Streaming Video

", "operations": { "CompareFaces": "

Compares a face in the source input image with each of the 100 largest faces detected in the target input image.

If the source image contains multiple faces, the service detects the largest face and compares it with each face detected in the target image.

CompareFaces uses machine learning algorithms, which are probabilistic. A false negative is an incorrect prediction that a face in the target image has a low similarity confidence score when compared to the face in the source image. To reduce the probability of false negatives, we recommend that you compare the target image against multiple source images. If you plan to use CompareFaces to make a decision that impacts an individual's rights, privacy, or access to services, we recommend that you pass the result to a human for review and further validation before taking action.

You pass the input and target images either as base64-encoded image bytes or as references to images in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes isn't supported. The image must be formatted as a PNG or JPEG file.

In response, the operation returns an array of face matches ordered by similarity score in descending order. For each face match, the response provides a bounding box of the face, facial landmarks, pose details (pitch, roll, and yaw), quality (brightness and sharpness), and confidence value (indicating the level of confidence that the bounding box contains a face). The response also provides a similarity score, which indicates how closely the faces match.

By default, only faces with a similarity score of greater than or equal to 80% are returned in the response. You can change this value by specifying the SimilarityThreshold parameter.

CompareFaces also returns an array of faces that don't match the source image. For each face, it returns a bounding box, confidence value, landmarks, pose details, and quality. The response also returns information about the face in the source image, including the bounding box of the face and confidence value.

The QualityFilter input parameter allows you to filter out detected faces that don’t meet a required quality bar. The quality bar is based on a variety of common use cases. Use QualityFilter to set the quality bar by specifying LOW, MEDIUM, or HIGH. If you do not want to filter detected faces, specify NONE. The default value is NONE.

If the image doesn't contain Exif metadata, CompareFaces returns orientation information for the source and target images. Use these values to display the images with the correct image orientation.

If no faces are detected in the source or target images, CompareFaces returns an InvalidParameterException error.

This is a stateless API operation. That is, data returned by this operation doesn't persist.

For an example, see Comparing Faces in Images in the Amazon Rekognition Developer Guide.

This operation requires permissions to perform the rekognition:CompareFaces action.

", + "CopyProjectVersion": "

Copies a version of an Amazon Rekognition Custom Labels model from a source project to a destination project. The source and destination projects can be in different AWS accounts but must be in the same AWS Region. You can't copy a model to another AWS service.

To copy a model version to a different AWS account, you need to create a resource-based policy known as a project policy. You attach the project policy to the source project by calling PutProjectPolicy. The project policy gives permission to copy the model version from a trusting AWS account to a trusted account.

For more information creating and attaching a project policy, see Attaching a project policy (SDK) in the Amazon Rekognition Custom Labels Developer Guide.

If you are copying a model version to a project in the same AWS account, you don't need to create a project policy.

To copy a model, the destination project, source project, and source model version must already exist.

Copying a model version takes a while to complete. To get the current status, call DescribeProjectVersions and check the value of Status in the ProjectVersionDescription object. The copy operation has finished when the value of Status is COPYING_COMPLETED.

", "CreateCollection": "

Creates a collection in an AWS Region. You can add faces to the collection using the IndexFaces operation.

For example, you might create collections, one for each of your application users. A user can then index faces using the IndexFaces operation and persist results in a specific collection. Then, a user can search the collection for faces in the user-specific container.

When you create a collection, it is associated with the latest version of the face model version.

Collection names are case-sensitive.

This operation requires permissions to perform the rekognition:CreateCollection action. If you want to tag your collection, you also require permission to perform the rekognition:TagResource operation.

", "CreateDataset": "

Creates a new Amazon Rekognition Custom Labels dataset. You can create a dataset by using an Amazon Sagemaker format manifest file or by copying an existing Amazon Rekognition Custom Labels dataset.

To create a training dataset for a project, specify train for the value of DatasetType. To create the test dataset for a project, specify test for the value of DatasetType.

The response from CreateDataset is the Amazon Resource Name (ARN) for the dataset. Creating a dataset takes a while to complete. Use DescribeDataset to check the current status. The dataset created successfully if the value of Status is CREATE_COMPLETE.

To check if any non-terminal errors occurred, call ListDatasetEntries and check for the presence of errors lists in the JSON Lines.

Dataset creation fails if a terminal error occurs (Status = CREATE_FAILED). Currently, you can't access the terminal error information.

For more information, see Creating dataset in the Amazon Rekognition Custom Labels Developer Guide.

This operation requires permissions to perform the rekognition:CreateDataset action. If you want to copy an existing dataset, you also require permission to perform the rekognition:ListDatasetEntries action.

", "CreateProject": "

Creates a new Amazon Rekognition Custom Labels project. A project is a group of resources (datasets, model versions) that you use to create and manage Amazon Rekognition Custom Labels models.

This operation requires permissions to perform the rekognition:CreateProject action.

", @@ -11,7 +12,8 @@ "DeleteCollection": "

Deletes the specified collection. Note that this operation removes all faces in the collection. For an example, see Deleting a collection.

This operation requires permissions to perform the rekognition:DeleteCollection action.

", "DeleteDataset": "

Deletes an existing Amazon Rekognition Custom Labels dataset. Deleting a dataset might take while. Use DescribeDataset to check the current status. The dataset is still deleting if the value of Status is DELETE_IN_PROGRESS. If you try to access the dataset after it is deleted, you get a ResourceNotFoundException exception.

You can't delete a dataset while it is creating (Status = CREATE_IN_PROGRESS) or if the dataset is updating (Status = UPDATE_IN_PROGRESS).

This operation requires permissions to perform the rekognition:DeleteDataset action.

", "DeleteFaces": "

Deletes faces from a collection. You specify a collection ID and an array of face IDs to remove from the collection.

This operation requires permissions to perform the rekognition:DeleteFaces action.

", - "DeleteProject": "

Deletes an Amazon Rekognition Custom Labels project. To delete a project you must first delete all models associated with the project. To delete a model, see DeleteProjectVersion.

DeleteProject is an asynchronous operation. To check if the project is deleted, call DescribeProjects. The project is deleted when the project no longer appears in the response.

This operation requires permissions to perform the rekognition:DeleteProject action.

", + "DeleteProject": "

Deletes an Amazon Rekognition Custom Labels project. To delete a project you must first delete all models associated with the project. To delete a model, see DeleteProjectVersion.

DeleteProject is an asynchronous operation. To check if the project is deleted, call DescribeProjects. The project is deleted when the project no longer appears in the response. Be aware that deleting a given project will also delete any ProjectPolicies associated with that project.

This operation requires permissions to perform the rekognition:DeleteProject action.

", + "DeleteProjectPolicy": "

Deletes an existing project policy.

To get a list of project policies attached to a project, call ListProjectPolicies. To attach a project policy to a project, call PutProjectPolicy.

", "DeleteProjectVersion": "

Deletes an Amazon Rekognition Custom Labels model.

You can't delete a model if it is running or if it is training. To check the status of a model, use the Status field returned from DescribeProjectVersions. To stop a running model call StopProjectVersion. If the model is training, wait until it finishes.

This operation requires permissions to perform the rekognition:DeleteProjectVersion action.

", "DeleteStreamProcessor": "

Deletes the stream processor identified by Name. You assign the value for Name when you create the stream processor with CreateStreamProcessor. You might not be able to use the same name for a stream processor for a few seconds after calling DeleteStreamProcessor.

", "DescribeCollection": "

Describes the specified collection. You can use DescribeCollection to get information, such as the number of faces indexed into a collection and the version of the model used by the collection for face detection.

For more information, see Describing a Collection in the Amazon Rekognition Developer Guide.

", @@ -40,8 +42,10 @@ "ListDatasetEntries": "

Lists the entries (images) within a dataset. An entry is a JSON Line that contains the information for a single image, including the image location, assigned labels, and object location bounding boxes. For more information, see Creating a manifest file.

JSON Lines in the response include information about non-terminal errors found in the dataset. Non terminal errors are reported in errors lists within each JSON Line. The same information is reported in the training and testing validation result manifests that Amazon Rekognition Custom Labels creates during model training.

You can filter the response in variety of ways, such as choosing which labels to return and returning JSON Lines created after a specific date.

This operation requires permissions to perform the rekognition:ListDatasetEntries action.

", "ListDatasetLabels": "

Lists the labels in a dataset. Amazon Rekognition Custom Labels uses labels to describe images. For more information, see Labeling images.

Lists the labels in a dataset. Amazon Rekognition Custom Labels uses labels to describe images. For more information, see Labeling images in the Amazon Rekognition Custom Labels Developer Guide.

", "ListFaces": "

Returns metadata for faces in the specified collection. This metadata includes information such as the bounding box coordinates, the confidence (that the bounding box contains a face), and face ID. For an example, see Listing Faces in a Collection in the Amazon Rekognition Developer Guide.

This operation requires permissions to perform the rekognition:ListFaces action.

", + "ListProjectPolicies": "

Gets a list of the project policies attached to a project.

To attach a project policy to a project, call PutProjectPolicy. To remove a project policy from a project, call DeleteProjectPolicy.

", "ListStreamProcessors": "

Gets a list of stream processors that you have created with CreateStreamProcessor.

", "ListTagsForResource": "

Returns a list of tags in an Amazon Rekognition collection, stream processor, or Custom Labels model.

This operation requires permissions to perform the rekognition:ListTagsForResource action.

", + "PutProjectPolicy": "

Attaches a project policy to a Amazon Rekognition Custom Labels project in a trusting AWS account. A project policy specifies that a trusted AWS account can copy a model version from a trusting AWS account to a project in the trusted AWS account. To copy a model version you use the CopyProjectVersion operation.

For more information about the format of a project policy document, see Attaching a project policy (SDK) in the Amazon Rekognition Custom Labels Developer Guide.

The response from PutProjectPolicy is a revision ID for the project policy. You can attach multiple project policies to a project. You can also update an existing project policy by specifying the policy revision ID of the existing policy.

To remove a project policy from a project, call DeleteProjectPolicy. To get a list of project policies attached to a project, call ListProjectPolicies.

You copy a model version by calling CopyProjectVersion.

", "RecognizeCelebrities": "

Returns an array of celebrities recognized in the input image. For more information, see Recognizing celebrities in the Amazon Rekognition Developer Guide.

RecognizeCelebrities returns the 64 largest faces in the image. It lists the recognized celebrities in the CelebrityFaces array and any unrecognized faces in the UnrecognizedFaces array. RecognizeCelebrities doesn't return celebrities whose faces aren't among the largest 64 faces in the image.

For each celebrity recognized, RecognizeCelebrities returns a Celebrity object. The Celebrity object contains the celebrity name, ID, URL links to additional information, match confidence, and a ComparedFace object that you can use to locate the celebrity's face on the image.

Amazon Rekognition doesn't retain information about which images a celebrity has been recognized in. Your application must store this information and use the Celebrity ID property as a unique identifier for the celebrity. If you don't store the celebrity name or additional information URLs returned by RecognizeCelebrities, you will need the ID to identify the celebrity in a call to the GetCelebrityInfo operation.

You pass the input image either as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes is not supported. The image must be either a PNG or JPEG formatted file.

For an example, see Recognizing celebrities in an image in the Amazon Rekognition Developer Guide.

This operation requires permissions to perform the rekognition:RecognizeCelebrities operation.

", "SearchFaces": "

For a given input face ID, searches for matching faces in the collection the face belongs to. You get a face ID when you add a face to the collection using the IndexFaces operation. The operation compares the features of the input face with faces in the specified collection.

You can also search faces without indexing faces by using the SearchFacesByImage operation.

The operation response returns an array of faces that match, ordered by similarity score with the highest similarity first. More specifically, it is an array of metadata for each face match that is found. Along with the metadata, the response also includes a confidence value for each face match, indicating the confidence that the specific face matches the input face.

For an example, see Searching for a face using its face ID in the Amazon Rekognition Developer Guide.

This operation requires permissions to perform the rekognition:SearchFaces action.

", "SearchFacesByImage": "

For a given input image, first detects the largest face in the image, and then searches the specified collection for matching faces. The operation compares the features of the input face with faces in the specified collection.

To search for all faces in an input image, you might first call the IndexFaces operation, and then use the face IDs returned in subsequent calls to the SearchFaces operation.

You can also call the DetectFaces operation and use the bounding boxes in the response to make face crops, which then you can pass in to the SearchFacesByImage operation.

You pass the input image either as base64-encoded image bytes or as a reference to an image in an Amazon S3 bucket. If you use the AWS CLI to call Amazon Rekognition operations, passing image bytes is not supported. The image must be either a PNG or JPEG formatted file.

The response returns an array of faces that match, ordered by similarity score with the highest similarity first. More specifically, it is an array of metadata for each face match found. Along with the metadata, the response also includes a similarity indicating how similar the face is to the input face. In the response, the operation also returns the bounding box (and a confidence level that the bounding box contains a face) of the face that Amazon Rekognition used for the input image.

If no faces are detected in the input image, SearchFacesByImage returns an InvalidParameterException error.

For an example, Searching for a Face Using an Image in the Amazon Rekognition Developer Guide.

The QualityFilter input parameter allows you to filter out detected faces that don’t meet a required quality bar. The quality bar is based on a variety of common use cases. Use QualityFilter to set the quality bar for filtering by specifying LOW, MEDIUM, or HIGH. If you do not want to filter detected faces, specify NONE. The default value is NONE.

To use quality filtering, you need a collection associated with version 3 of the face model or higher. To get the version of the face model associated with a collection, call DescribeCollection.

This operation requires permissions to perform the rekognition:SearchFacesByImage action.

", @@ -356,6 +360,16 @@ "GetContentModerationRequest$SortBy": "

Sort to use for elements in the ModerationLabelDetections array. Use TIMESTAMP to sort array elements by the time labels are detected. Use NAME to alphabetically group elements for a label together. Within each label group, the array element are sorted by detection confidence. The default sort is by TIMESTAMP.

" } }, + "CopyProjectVersionRequest": { + "base": null, + "refs": { + } + }, + "CopyProjectVersionResponse": { + "base": null, + "refs": { + } + }, "CoversBodyPart": { "base": "

Information about an item of Personal Protective Equipment covering a corresponding body part. For more information, see DetectProtectiveEquipment.

", "refs": { @@ -548,6 +562,8 @@ "DescribeStreamProcessorResponse$CreationTimestamp": "

Date and time the stream processor was created

", "DescribeStreamProcessorResponse$LastUpdateTimestamp": "

The time, in Unix format, the stream processor was last updated. For example, when the stream processor moves from a running state to a failed state, or when the user starts or stops the stream processor.

", "ProjectDescription$CreationTimestamp": "

The Unix timestamp for the date and time that the project was created.

", + "ProjectPolicy$CreationTimestamp": "

The Unix datetime for the creation of the project policy.

", + "ProjectPolicy$LastUpdatedTimestamp": "

The Unix datetime for when the project policy was last updated.

", "ProjectVersionDescription$CreationTimestamp": "

The Unix datetime for the date and time that training started.

", "ProjectVersionDescription$TrainingEndTimestamp": "

The Unix date and time that training of the model ended.

" } @@ -590,6 +606,16 @@ "refs": { } }, + "DeleteProjectPolicyRequest": { + "base": null, + "refs": { + } + }, + "DeleteProjectPolicyResponse": { + "base": null, + "refs": { + } + }, "DeleteProjectRequest": { "base": null, "refs": { @@ -812,7 +838,9 @@ "ListDatasetEntriesRequest$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", "ListDatasetEntriesResponse$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", "ListDatasetLabelsRequest$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", - "ListDatasetLabelsResponse$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

" + "ListDatasetLabelsResponse$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", + "ListProjectPoliciesRequest$NextToken": "

If the previous response was incomplete (because there is more results to retrieve), Amazon Rekognition Custom Labels returns a pagination token in the response. You can use this pagination token to retrieve the next set of results.

", + "ListProjectPoliciesResponse$NextToken": "

If the response is truncated, Amazon Rekognition returns this token that you can use in the subsequent request to retrieve the next set of project policies.

" } }, "ExternalImageId": { @@ -1250,6 +1278,11 @@ "refs": { } }, + "InvalidPolicyRevisionIdException": { + "base": "

The supplied revision id for the project policy is invalid.

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

Amazon Rekognition is unable to access the S3 object specified in the request.

", "refs": { @@ -1334,6 +1367,7 @@ "KmsKeyId": { "base": null, "refs": { + "CopyProjectVersionRequest$KmsKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). You can supply the Amazon Resource Name (ARN) of your KMS key, the ID of your KMS key, an alias for your KMS key, or an alias ARN. The key is used to encrypt training results and manifest files written to the output Amazon S3 bucket (OutputConfig).

If you choose to use your own KMS key, you need the following permissions on the KMS key.

If you don't specify a value for KmsKeyId, images copied into the service are encrypted using a key that AWS owns and manages.

", "CreateProjectVersionRequest$KmsKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). You can supply the Amazon Resource Name (ARN) of your KMS key, the ID of your KMS key, an alias for your KMS key, or an alias ARN. The key is used to encrypt training and test images copied into the service for model training. Your source images are unaffected. The key is also used to encrypt training results and manifest files written to the output Amazon S3 bucket (OutputConfig).

If you choose to use your own KMS key, you need the following permissions on the KMS key.

If you don't specify a value for KmsKeyId, images copied into the service are encrypted using a key that AWS owns and manages.

", "CreateStreamProcessorRequest$KmsKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). This is an optional parameter for label detection stream processors and should not be used to create a face search stream processor. You can supply the Amazon Resource Name (ARN) of your KMS key, the ID of your KMS key, an alias for your KMS key, or an alias ARN. The key is used to encrypt results and data published to your Amazon S3 bucket, which includes image frames and hero images. Your source images are unaffected.

", "DescribeStreamProcessorResponse$KmsKeyId": "

The identifier for your AWS Key Management Service key (AWS KMS key). This is an optional parameter for label detection stream processors.

", @@ -1461,6 +1495,22 @@ "refs": { } }, + "ListProjectPoliciesPageSize": { + "base": null, + "refs": { + "ListProjectPoliciesRequest$MaxResults": "

The maximum number of results to return per paginated call. The largest value you can specify is 5. If you specify a value greater than 5, a ValidationException error occurs. The default value is 5.

" + } + }, + "ListProjectPoliciesRequest": { + "base": null, + "refs": { + } + }, + "ListProjectPoliciesResponse": { + "base": null, + "refs": { + } + }, "ListStreamProcessorsRequest": { "base": null, "refs": { @@ -1481,6 +1531,11 @@ "refs": { } }, + "MalformedPolicyDocumentException": { + "base": "

The format of the project policy document that you supplied to PutProjectPolicy is incorrect.

", + "refs": { + } + }, "MaxDurationInSecondsULong": { "base": null, "refs": { @@ -1578,6 +1633,7 @@ "OutputConfig": { "base": "

The S3 bucket and folder location where training output is placed.

", "refs": { + "CopyProjectVersionRequest$OutputConfig": "

The S3 bucket and folder location where the training output for the source model version is placed.

", "CreateProjectVersionRequest$OutputConfig": "

The Amazon S3 bucket location to store the results of training. The S3 bucket can be in any AWS account as long as the caller has s3:PutObject permissions on the S3 bucket.

", "ProjectVersionDescription$OutputConfig": "

The location where training results are saved.

" } @@ -1739,12 +1795,18 @@ "ProjectArn": { "base": null, "refs": { + "CopyProjectVersionRequest$SourceProjectArn": "

The ARN of the source project in the trusting AWS account.

", + "CopyProjectVersionRequest$DestinationProjectArn": "

The ARN of the project in the trusted AWS account that you want to copy the model version to.

", "CreateDatasetRequest$ProjectArn": "

The ARN of the Amazon Rekognition Custom Labels project to which you want to asssign the dataset.

", "CreateProjectResponse$ProjectArn": "

The Amazon Resource Name (ARN) of the new project. You can use the ARN to configure IAM access to the project.

", "CreateProjectVersionRequest$ProjectArn": "

The ARN of the Amazon Rekognition Custom Labels project that manages the model that you want to train.

", + "DeleteProjectPolicyRequest$ProjectArn": "

The Amazon Resource Name (ARN) of the project that the project policy you want to delete is attached to.

", "DeleteProjectRequest$ProjectArn": "

The Amazon Resource Name (ARN) of the project that you want to delete.

", "DescribeProjectVersionsRequest$ProjectArn": "

The Amazon Resource Name (ARN) of the project that contains the models you want to describe.

", - "ProjectDescription$ProjectArn": "

The Amazon Resource Name (ARN) of the project.

" + "ListProjectPoliciesRequest$ProjectArn": "

The ARN of the project for which you want to list the project policies.

", + "ProjectDescription$ProjectArn": "

The Amazon Resource Name (ARN) of the project.

", + "ProjectPolicy$ProjectArn": "

The Amazon Resource Name (ARN) of the project to which the project policy is attached.

", + "PutProjectPolicyRequest$ProjectArn": "

The Amazon Resource Name (ARN) of the project that the project policy is attached to.

" } }, "ProjectDescription": { @@ -1772,6 +1834,42 @@ "DescribeProjectsRequest$ProjectNames": "

A list of the projects that you want Amazon Rekognition Custom Labels to describe. If you don't specify a value, the response includes descriptions for all the projects in your AWS account.

" } }, + "ProjectPolicies": { + "base": null, + "refs": { + "ListProjectPoliciesResponse$ProjectPolicies": "

A list of project policies attached to the project.

" + } + }, + "ProjectPolicy": { + "base": "

Describes a project policy in the response from ListProjectPolicies.

", + "refs": { + "ProjectPolicies$member": null + } + }, + "ProjectPolicyDocument": { + "base": null, + "refs": { + "ProjectPolicy$PolicyDocument": "

The JSON document for the project policy.

", + "PutProjectPolicyRequest$PolicyDocument": "

A resource policy to add to the model. The policy is a JSON structure that contains one or more statements that define the policy. The policy must follow the IAM syntax. For more information about the contents of a JSON policy document, see IAM JSON policy reference.

" + } + }, + "ProjectPolicyName": { + "base": null, + "refs": { + "DeleteProjectPolicyRequest$PolicyName": "

The name of the policy that you want to delete.

", + "ProjectPolicy$PolicyName": "

The name of the project policy.

", + "PutProjectPolicyRequest$PolicyName": "

A name for the policy.

" + } + }, + "ProjectPolicyRevisionId": { + "base": null, + "refs": { + "DeleteProjectPolicyRequest$PolicyRevisionId": "

The ID of the project policy revision that you want to delete.

", + "ProjectPolicy$PolicyRevisionId": "

The revision ID of the project policy.

", + "PutProjectPolicyRequest$PolicyRevisionId": "

The revision ID for the Project Policy. Each time you modify a policy, Amazon Rekognition Custom Labels generates and assigns a new PolicyRevisionId and then deletes the previous version of the policy.

", + "PutProjectPolicyResponse$PolicyRevisionId": "

The ID of the project policy.

" + } + }, "ProjectStatus": { "base": null, "refs": { @@ -1782,10 +1880,13 @@ "ProjectVersionArn": { "base": null, "refs": { + "CopyProjectVersionRequest$SourceProjectVersionArn": "

The ARN of the model version in the source project that you want to copy to a destination project.

", + "CopyProjectVersionResponse$ProjectVersionArn": "

The ARN of the copied model version in the destination project.

", "CreateProjectVersionResponse$ProjectVersionArn": "

The ARN of the model version that was created. Use DescribeProjectVersion to get the current status of the training operation.

", "DeleteProjectVersionRequest$ProjectVersionArn": "

The Amazon Resource Name (ARN) of the model version that you want to delete.

", "DetectCustomLabelsRequest$ProjectVersionArn": "

The ARN of the model version that you want to use.

", "ProjectVersionDescription$ProjectVersionArn": "

The Amazon Resource Name (ARN) of the model version.

", + "ProjectVersionDescription$SourceProjectVersionArn": "

If the model version was copied from a different project, SourceProjectVersionArn contains the ARN of the source model version.

", "StartProjectVersionRequest$ProjectVersionArn": "

The Amazon Resource Name(ARN) of the model version that you want to start.

", "StopProjectVersionRequest$ProjectVersionArn": "

The Amazon Resource Name (ARN) of the model version that you want to delete.

This operation requires permissions to perform the rekognition:StopProjectVersion action.

" } @@ -1879,6 +1980,16 @@ "refs": { } }, + "PutProjectPolicyRequest": { + "base": null, + "refs": { + } + }, + "PutProjectPolicyResponse": { + "base": null, + "refs": { + } + }, "QualityFilter": { "base": null, "refs": { @@ -2447,6 +2558,7 @@ "TagMap": { "base": null, "refs": { + "CopyProjectVersionRequest$Tags": "

The key-value tags to assign to the model version.

", "CreateCollectionRequest$Tags": "

A set of tags (key-value pairs) that you want to attach to the collection.

", "CreateProjectVersionRequest$Tags": "

A set of tags (key-value pairs) that you want to attach to the model.

", "CreateStreamProcessorRequest$Tags": "

A set of tags (key-value pairs) that you want to attach to the stream processor.

", @@ -2674,6 +2786,7 @@ "VersionName": { "base": null, "refs": { + "CopyProjectVersionRequest$VersionName": "

A name for the version of the model that's copied to the destination project.

", "CreateProjectVersionRequest$VersionName": "

A name for the version of the model. This value must be unique.

", "VersionNames$member": null } diff --git a/models/apis/rekognition/2016-06-27/examples-1.json b/models/apis/rekognition/2016-06-27/examples-1.json index 039e04d60f..5249693f31 100644 --- a/models/apis/rekognition/2016-06-27/examples-1.json +++ b/models/apis/rekognition/2016-06-27/examples-1.json @@ -54,6 +54,36 @@ "title": "To compare two images" } ], + "CopyProjectVersion": [ + { + "input": { + "DestinationProjectArn": "arn:aws:rekognition:us-east-1:555555555555:project/DestinationProject/1656705098765", + "KmsKeyId": "arn:1234abcd-12ab-34cd-56ef-1234567890ab", + "OutputConfig": { + "S3Bucket": "bucket-name", + "S3KeyPrefix": "path_to_folder" + }, + "SourceProjectArn": "arn:aws:rekognition:us-east-1:111122223333:project/SourceProject/16565123456", + "SourceProjectVersionArn": "arn:aws:rekognition:us-east-1:111122223333:project/SourceProject/version/model_1/1656611123456", + "Tags": { + "key1": "val1" + }, + "VersionName": "DestinationVersionName_cross_account" + }, + "output": { + "ProjectVersionArn": "arn:aws:rekognition:us-east-1:555555555555:project/DestinationProject/version/DestinationVersionName_cross_account/16567050987651" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation copies a version of an Amazon Rekognition Custom Labels model from a source project to a destination project.", + "id": "copyprojectversion-1658203943815", + "title": "CopyProjectVersion" + } + ], "CreateCollection": [ { "input": { @@ -117,6 +147,26 @@ "title": "To delete a face" } ], + "DeleteProjectPolicy": [ + { + "input": { + "PolicyName": "testPolicy1", + "PolicyRevisionId": "3b274c25e9203a56a99e00e3ff205fbc", + "ProjectArn": "arn:aws:rekognition:us-east-1:111122223333:project/SourceProject/1656557123456" + }, + "output": { + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation deletes a revision of an existing project policy from an Amazon Rekognition Custom Labels project.", + "id": "deleteprojectpolicy-1658204413810", + "title": "DeleteProjectPolicy" + } + ], "DetectFaces": [ { "input": { @@ -532,6 +582,59 @@ "title": "To list the faces in a collection" } ], + "ListProjectPolicies": [ + { + "input": { + "MaxResults": 5, + "NextToken": "", + "ProjectArn": "arn:aws:rekognition:us-east-1:111122223333:project/my-sdk-project/1656557051929" + }, + "output": { + "NextToken": "", + "ProjectPolicies": [ + { + "CreationTimestamp": "2022-07-01T11:51:27.086000-07:00", + "LastUpdatedTimestamp": "2022-07-01T11:51:27.086000-07:00", + "PolicyDocument": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"Statemented1\",\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"arn:aws:iam::111122223333:root\"},\"Action\":\"rekognition:CopyProjectVersion\",\"Resource\":\"*\"}]}", + "PolicyName": "testPolicy", + "PolicyRevisionId": "3b274c25e9203a56a99e00e3ff205fbc", + "ProjectArn": "arn:aws:rekognition:us-east-1:111122223333:project/my-sdk-project/1656557051929" + } + ] + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation lists the project policies that are attached to an Amazon Rekognition Custom Labels project.", + "id": "listprojectpolicies-1658202290173", + "title": "ListProjectPolicies" + } + ], + "PutProjectPolicy": [ + { + "input": { + "PolicyDocument": "'{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"ALLOW\",\"Principal\":{\"AWS\":\"principal\"},\"Action\":\"rekognition:CopyProjectVersion\",\"Resource\":\"arn:aws:rekognition:us-east-1:123456789012:project/my-sdk-project/version/DestinationVersionName/1627045542080\"}]}'", + "PolicyName": "SamplePolicy", + "PolicyRevisionId": "0123456789abcdef", + "ProjectArn": "arn:aws:rekognition:us-east-1:111122223333:project/my-sdk-project/1656557051929" + }, + "output": { + "PolicyRevisionId": "0123456789abcdef" + }, + "comments": { + "input": { + }, + "output": { + } + }, + "description": "This operation attaches a project policy to a Amazon Rekognition Custom Labels project in a trusting AWS account.", + "id": "putprojectpolicy-1658201727623", + "title": "PutProjectPolicy" + } + ], "SearchFaces": [ { "input": { diff --git a/models/apis/rekognition/2016-06-27/paginators-1.json b/models/apis/rekognition/2016-06-27/paginators-1.json index 57b297a6d8..8874e7e7f4 100644 --- a/models/apis/rekognition/2016-06-27/paginators-1.json +++ b/models/apis/rekognition/2016-06-27/paginators-1.json @@ -76,6 +76,12 @@ "output_token": "NextToken", "result_key": "Faces" }, + "ListProjectPolicies": { + "input_token": "NextToken", + "limit_key": "MaxResults", + "output_token": "NextToken", + "result_key": "ProjectPolicies" + }, "ListStreamProcessors": { "input_token": "NextToken", "limit_key": "MaxResults", diff --git a/models/apis/servicecatalog/2015-12-10/docs-2.json b/models/apis/servicecatalog/2015-12-10/docs-2.json index 0d9edac809..1a93f48de7 100644 --- a/models/apis/servicecatalog/2015-12-10/docs-2.json +++ b/models/apis/servicecatalog/2015-12-10/docs-2.json @@ -1,6 +1,6 @@ { "version": "2.0", - "service": "AWS Service Catalog

AWS Service Catalog enables organizations to create and manage catalogs of IT services that are approved for AWS. To get the most out of this documentation, you should be familiar with the terminology discussed in AWS Service Catalog Concepts.

", + "service": "AWS Service Catalog

Service Catalog enables organizations to create and manage catalogs of IT services that are approved for Amazon Web Services. To get the most out of this documentation, you should be familiar with the terminology discussed in Service Catalog Concepts.

", "operations": { "AcceptPortfolioShare": "

Accepts an offer to share the specified portfolio.

", "AssociateBudgetWithResource": "

Associates the specified budget with the specified resource.

", @@ -10,12 +10,12 @@ "AssociateTagOptionWithResource": "

Associate the specified TagOption with the specified portfolio or product.

", "BatchAssociateServiceActionWithProvisioningArtifact": "

Associates multiple self-service actions with provisioning artifacts.

", "BatchDisassociateServiceActionFromProvisioningArtifact": "

Disassociates a batch of self-service actions from the specified provisioning artifact.

", - "CopyProduct": "

Copies the specified source product to the specified target product or a new product.

You can copy a product to the same account or another account. You can copy a product to the same region or another region.

This operation is performed asynchronously. To track the progress of the operation, use DescribeCopyProductStatus.

", + "CopyProduct": "

Copies the specified source product to the specified target product or a new product.

You can copy a product to the same account or another account. You can copy a product to the same Region or another Region. If you copy a product to another account, you must first share the product in a portfolio using CreatePortfolioShare.

This operation is performed asynchronously. To track the progress of the operation, use DescribeCopyProductStatus.

", "CreateConstraint": "

Creates a constraint.

A delegated admin is authorized to invoke this command.

", "CreatePortfolio": "

Creates a portfolio.

A delegated admin is authorized to invoke this command.

", "CreatePortfolioShare": "

Shares the specified portfolio with the specified account or organization node. Shares to an organization node can only be created by the management account of an organization or by a delegated administrator. You can share portfolios to an organization, an organizational unit, or a specific account.

Note that if a delegated admin is de-registered, they can no longer create portfolio shares.

AWSOrganizationsAccess must be enabled in order to create a portfolio share to an organization node.

You can't share a shared resource, including portfolios that contain a shared product.

If the portfolio share with the specified account or organization node already exists, this action will have no effect and will not return an error. To update an existing share, you must use the UpdatePortfolioShare API instead.

", "CreateProduct": "

Creates a product.

A delegated admin is authorized to invoke this command.

The user or role that performs this operation must have the cloudformation:GetTemplate IAM policy permission. This policy permission is required when using the ImportFromPhysicalId template source in the information data section.

", - "CreateProvisionedProductPlan": "

Creates a plan. A plan includes the list of resources to be created (when provisioning a new product) or modified (when updating a provisioned product) when the plan is executed.

You can create one plan per provisioned product. To create a plan for an existing provisioned product, the product status must be AVAILBLE or TAINTED.

To view the resource changes in the change set, use DescribeProvisionedProductPlan. To create or modify the provisioned product, use ExecuteProvisionedProductPlan.

", + "CreateProvisionedProductPlan": "

Creates a plan.

A plan includes the list of resources to be created (when provisioning a new product) or modified (when updating a provisioned product) when the plan is executed.

You can create one plan for each provisioned product. To create a plan for an existing provisioned product, the product status must be AVAILABLE or TAINTED.

To view the resource changes in the change set, use DescribeProvisionedProductPlan. To create or modify the provisioned product, use ExecuteProvisionedProductPlan.

", "CreateProvisioningArtifact": "

Creates a provisioning artifact (also known as a version) for the specified product.

You cannot create a provisioning artifact for a product that was shared with you.

The user or role that performs this operation must have the cloudformation:GetTemplate IAM policy permission. This policy permission is required when using the ImportFromPhysicalId template source in the information data section.

", "CreateServiceAction": "

Creates a self-service action.

", "CreateTagOption": "

Creates a TagOption.

", @@ -43,18 +43,18 @@ "DescribeServiceAction": "

Describes a self-service action.

", "DescribeServiceActionExecutionParameters": "

Finds the default parameters for a specific self-service action on a specific provisioned product and returns a map of the results to the user.

", "DescribeTagOption": "

Gets information about the specified TagOption.

", - "DisableAWSOrganizationsAccess": "

Disable portfolio sharing through AWS Organizations feature. This feature will not delete your current shares but it will prevent you from creating new shares throughout your organization. Current shares will not be in sync with your organization structure if it changes after calling this API. This API can only be called by the management account in the organization.

This API can't be invoked if there are active delegated administrators in the organization.

Note that a delegated administrator is not authorized to invoke DisableAWSOrganizationsAccess.

", + "DisableAWSOrganizationsAccess": "

Disable portfolio sharing through the Organizations service. This command will not delete your current shares, but prevents you from creating new shares throughout your organization. Current shares are not kept in sync with your organization structure if the structure changes after calling this API. Only the management account in the organization can call this API.

You cannot call this API if there are active delegated administrators in the organization.

Note that a delegated administrator is not authorized to invoke DisableAWSOrganizationsAccess.

If you share an Service Catalog portfolio in an organization within Organizations, and then disable Organizations access for Service Catalog, the portfolio access permissions will not sync with the latest changes to the organization structure. Specifically, accounts that you removed from the organization after disabling Service Catalog access will retain access to the previously shared portfolio.

", "DisassociateBudgetFromResource": "

Disassociates the specified budget from the specified resource.

", "DisassociatePrincipalFromPortfolio": "

Disassociates a previously associated principal ARN from a specified portfolio.

", "DisassociateProductFromPortfolio": "

Disassociates the specified product from the specified portfolio.

A delegated admin is authorized to invoke this command.

", "DisassociateServiceActionFromProvisioningArtifact": "

Disassociates the specified self-service action association from the specified provisioning artifact.

", "DisassociateTagOptionFromResource": "

Disassociates the specified TagOption from the specified resource.

", - "EnableAWSOrganizationsAccess": "

Enable portfolio sharing feature through AWS Organizations. This API will allow Service Catalog to receive updates on your organization in order to sync your shares with the current structure. This API can only be called by the management account in the organization.

By calling this API Service Catalog will make a call to organizations:EnableAWSServiceAccess on your behalf so that your shares can be in sync with any changes in your AWS Organizations structure.

Note that a delegated administrator is not authorized to invoke EnableAWSOrganizationsAccess.

", + "EnableAWSOrganizationsAccess": "

Enable portfolio sharing feature through Organizations. This API will allow Service Catalog to receive updates on your organization in order to sync your shares with the current structure. This API can only be called by the management account in the organization.

When you call this API, Service Catalog calls organizations:EnableAWSServiceAccess on your behalf so that your shares stay in sync with any changes in your Organizations structure.

Note that a delegated administrator is not authorized to invoke EnableAWSOrganizationsAccess.

If you have previously disabled Organizations access for Service Catalog, and then enable access again, the portfolio access permissions might not sync with the latest changes to the organization structure. Specifically, accounts that you removed from the organization after disabling Service Catalog access, and before you enabled access again, can retain access to the previously shared portfolio. As a result, an account that has been removed from the organization might still be able to create or manage Amazon Web Services resources when it is no longer authorized to do so. Amazon Web Services is working to resolve this issue.

", "ExecuteProvisionedProductPlan": "

Provisions or modifies a product based on the resource changes for the specified plan.

", "ExecuteProvisionedProductServiceAction": "

Executes a self-service action against a provisioned product.

", - "GetAWSOrganizationsAccessStatus": "

Get the Access Status for AWS Organization portfolio share feature. This API can only be called by the management account in the organization or by a delegated admin.

", + "GetAWSOrganizationsAccessStatus": "

Get the Access Status for Organizations portfolio share feature. This API can only be called by the management account in the organization or by a delegated admin.

", "GetProvisionedProductOutputs": "

This API takes either a ProvisonedProductId or a ProvisionedProductName, along with a list of one or more output keys, and responds with the key/value pairs of those outputs.

", - "ImportAsProvisionedProduct": "

Requests the import of a resource as a Service Catalog provisioned product that is associated to a Service Catalog product and provisioning artifact. Once imported, all supported Service Catalog governance actions are supported on the provisioned product.

Resource import only supports CloudFormation stack ARNs. CloudFormation StackSets and non-root nested stacks are not supported.

The CloudFormation stack must have one of the following statuses to be imported: CREATE_COMPLETE, UPDATE_COMPLETE, UPDATE_ROLLBACK_COMPLETE, IMPORT_COMPLETE, IMPORT_ROLLBACK_COMPLETE.

Import of the resource requires that the CloudFormation stack template matches the associated Service Catalog product provisioning artifact.

The user or role that performs this operation must have the cloudformation:GetTemplate and cloudformation:DescribeStacks IAM policy permissions.

", + "ImportAsProvisionedProduct": "

Requests the import of a resource as a Amazon Web Services Service Catalog provisioned product that is associated to a Amazon Web Services Service Catalog product and provisioning artifact. Once imported, all supported Amazon Web Services Service Catalog governance actions are supported on the provisioned product.

Resource import only supports CloudFormation stack ARNs. CloudFormation StackSets and non-root nested stacks are not supported.

The CloudFormation stack must have one of the following statuses to be imported: CREATE_COMPLETE, UPDATE_COMPLETE, UPDATE_ROLLBACK_COMPLETE, IMPORT_COMPLETE, IMPORT_ROLLBACK_COMPLETE.

Import of the resource requires that the CloudFormation stack template matches the associated Amazon Web Services Service Catalog product provisioning artifact.

The user or role that performs this operation must have the cloudformation:GetTemplate and cloudformation:DescribeStacks IAM policy permissions.

", "ListAcceptedPortfolioShares": "

Lists all imported portfolios for which account-to-account shares were accepted by this account. By specifying the PortfolioShareType, you can list portfolios for which organizational shares were accepted by this account.

", "ListBudgetsForResource": "

Lists all the budgets associated to the specified resource.

", "ListConstraintsForPortfolio": "

Lists the constraints for the specified portfolio and product.

", @@ -71,14 +71,14 @@ "ListResourcesForTagOption": "

Lists the resources associated with the specified TagOption.

", "ListServiceActions": "

Lists all self-service actions.

", "ListServiceActionsForProvisioningArtifact": "

Returns a paginated list of self-service actions associated with the specified Product ID and Provisioning Artifact ID.

", - "ListStackInstancesForProvisionedProduct": "

Returns summary information about stack instances that are associated with the specified CFN_STACKSET type provisioned product. You can filter for stack instances that are associated with a specific AWS account name or region.

", + "ListStackInstancesForProvisionedProduct": "

Returns summary information about stack instances that are associated with the specified CFN_STACKSET type provisioned product. You can filter for stack instances that are associated with a specific Amazon Web Services account name or Region.

", "ListTagOptions": "

Lists the specified TagOptions or all TagOptions.

", "ProvisionProduct": "

Provisions the specified product.

A provisioned product is a resourced instance of a product. For example, provisioning a product based on a CloudFormation template launches a CloudFormation stack and its underlying resources. You can check the status of this request using DescribeRecord.

If the request contains a tag key with an empty list of values, there is a tag conflict for that key. Do not include conflicted keys as tags, or this causes the error \"Parameter validation failed: Missing required parameter in Tags[N]:Value\".

", "RejectPortfolioShare": "

Rejects an offer to share the specified portfolio.

", "ScanProvisionedProducts": "

Lists the provisioned products that are available (not terminated).

To use additional filtering, see SearchProvisionedProducts.

", "SearchProducts": "

Gets information about the products to which the caller has access.

", "SearchProductsAsAdmin": "

Gets information about the products for the specified portfolio or all products.

", - "SearchProvisionedProducts": "

Gets information about the provisioned products that meet the specified criteria.

", + "SearchProvisionedProducts": "

Gets information about the provisioned products that meet the specified criteria.

To ensure a complete list of provisioned products and remove duplicate products, use sort-by createdTime.

Here is a CLI example:

aws servicecatalog search-provisioned-products --sort-by createdTime

", "TerminateProvisionedProduct": "

Terminates the specified provisioned product.

This operation does not delete any records associated with the provisioned product.

You can check the status of this request using DescribeRecord.

", "UpdateConstraint": "

Updates the specified constraint.

", "UpdatePortfolio": "

Updates the specified portfolio.

You cannot update a product that was shared with you.

", @@ -210,19 +210,19 @@ "refs": { "AccountIds$member": null, "ConstraintDetail$Owner": "

The owner of the constraint.

", - "CreatePortfolioShareInput$AccountId": "

The AWS account ID. For example, 123456789012.

", - "DeletePortfolioShareInput$AccountId": "

The AWS account ID.

", + "CreatePortfolioShareInput$AccountId": "

The Amazon Web Services account ID. For example, 123456789012.

", + "DeletePortfolioShareInput$AccountId": "

The Amazon Web Services account ID.

", "Namespaces$member": null, - "StackInstance$Account": "

The name of the AWS account that the stack instance is associated with.

", + "StackInstance$Account": "

The name of the Amazon Web Services account that the stack instance is associated with.

", "StackSetAccounts$member": null, "SuccessfulShares$member": null, - "UpdatePortfolioShareInput$AccountId": "

The AWS Account Id of the recipient account. This field is required when updating an external account to account type share.

" + "UpdatePortfolioShareInput$AccountId": "

The Amazon Web Services account Id of the recipient account. This field is required when updating an external account to account type share.

" } }, "AccountIds": { "base": null, "refs": { - "ListPortfolioAccessOutput$AccountIds": "

Information about the AWS accounts with access to the portfolio.

" + "ListPortfolioAccessOutput$AccountIds": "

Information about the Amazon Web Services accounts with access to the portfolio.

" } }, "AddTags": { @@ -410,10 +410,10 @@ "ConstraintParameters": { "base": null, "refs": { - "CreateConstraintInput$Parameters": "

The constraint parameters, in JSON format. The syntax depends on the constraint type as follows:

LAUNCH

You are required to specify either the RoleArn or the LocalRoleName but can't use both.

Specify the RoleArn property as follows:

{\"RoleArn\" : \"arn:aws:iam::123456789012:role/LaunchRole\"}

Specify the LocalRoleName property as follows:

{\"LocalRoleName\": \"SCBasicLaunchRole\"}

If you specify the LocalRoleName property, when an account uses the launch constraint, the IAM role with that name in the account will be used. This allows launch-role constraints to be account-agnostic so the administrator can create fewer resources per shared account.

The given role name must exist in the account used to create the launch constraint and the account of the user who launches a product with this launch constraint.

You cannot have both a LAUNCH and a STACKSET constraint.

You also cannot have more than one LAUNCH constraint on a product and portfolio.

NOTIFICATION

Specify the NotificationArns property as follows:

{\"NotificationArns\" : [\"arn:aws:sns:us-east-1:123456789012:Topic\"]}

RESOURCE_UPDATE

Specify the TagUpdatesOnProvisionedProduct property as follows:

{\"Version\":\"2.0\",\"Properties\":{\"TagUpdateOnProvisionedProduct\":\"String\"}}

The TagUpdatesOnProvisionedProduct property accepts a string value of ALLOWED or NOT_ALLOWED.

STACKSET

Specify the Parameters property as follows:

{\"Version\": \"String\", \"Properties\": {\"AccountList\": [ \"String\" ], \"RegionList\": [ \"String\" ], \"AdminRole\": \"String\", \"ExecutionRole\": \"String\"}}

You cannot have both a LAUNCH and a STACKSET constraint.

You also cannot have more than one STACKSET constraint on a product and portfolio.

Products with a STACKSET constraint will launch an AWS CloudFormation stack set.

TEMPLATE

Specify the Rules property. For more information, see Template Constraint Rules.

", + "CreateConstraintInput$Parameters": "

The constraint parameters, in JSON format. The syntax depends on the constraint type as follows:

LAUNCH

You are required to specify either the RoleArn or the LocalRoleName but can't use both.

Specify the RoleArn property as follows:

{\"RoleArn\" : \"arn:aws:iam::123456789012:role/LaunchRole\"}

Specify the LocalRoleName property as follows:

{\"LocalRoleName\": \"SCBasicLaunchRole\"}

If you specify the LocalRoleName property, when an account uses the launch constraint, the IAM role with that name in the account will be used. This allows launch-role constraints to be account-agnostic so the administrator can create fewer resources per shared account.

The given role name must exist in the account used to create the launch constraint and the account of the user who launches a product with this launch constraint.

You cannot have both a LAUNCH and a STACKSET constraint.

You also cannot have more than one LAUNCH constraint on a product and portfolio.

NOTIFICATION

Specify the NotificationArns property as follows:

{\"NotificationArns\" : [\"arn:aws:sns:us-east-1:123456789012:Topic\"]}

RESOURCE_UPDATE

Specify the TagUpdatesOnProvisionedProduct property as follows:

{\"Version\":\"2.0\",\"Properties\":{\"TagUpdateOnProvisionedProduct\":\"String\"}}

The TagUpdatesOnProvisionedProduct property accepts a string value of ALLOWED or NOT_ALLOWED.

STACKSET

Specify the Parameters property as follows:

{\"Version\": \"String\", \"Properties\": {\"AccountList\": [ \"String\" ], \"RegionList\": [ \"String\" ], \"AdminRole\": \"String\", \"ExecutionRole\": \"String\"}}

You cannot have both a LAUNCH and a STACKSET constraint.

You also cannot have more than one STACKSET constraint on a product and portfolio.

Products with a STACKSET constraint will launch an CloudFormation stack set.

TEMPLATE

Specify the Rules property. For more information, see Template Constraint Rules.

", "CreateConstraintOutput$ConstraintParameters": "

The constraint parameters.

", "DescribeConstraintOutput$ConstraintParameters": "

The constraint parameters.

", - "UpdateConstraintInput$Parameters": "

The constraint parameters, in JSON format. The syntax depends on the constraint type as follows:

LAUNCH

You are required to specify either the RoleArn or the LocalRoleName but can't use both.

Specify the RoleArn property as follows:

{\"RoleArn\" : \"arn:aws:iam::123456789012:role/LaunchRole\"}

Specify the LocalRoleName property as follows:

{\"LocalRoleName\": \"SCBasicLaunchRole\"}

If you specify the LocalRoleName property, when an account uses the launch constraint, the IAM role with that name in the account will be used. This allows launch-role constraints to be account-agnostic so the administrator can create fewer resources per shared account.

The given role name must exist in the account used to create the launch constraint and the account of the user who launches a product with this launch constraint.

You cannot have both a LAUNCH and a STACKSET constraint.

You also cannot have more than one LAUNCH constraint on a product and portfolio.

NOTIFICATION

Specify the NotificationArns property as follows:

{\"NotificationArns\" : [\"arn:aws:sns:us-east-1:123456789012:Topic\"]}

RESOURCE_UPDATE

Specify the TagUpdatesOnProvisionedProduct property as follows:

{\"Version\":\"2.0\",\"Properties\":{\"TagUpdateOnProvisionedProduct\":\"String\"}}

The TagUpdatesOnProvisionedProduct property accepts a string value of ALLOWED or NOT_ALLOWED.

STACKSET

Specify the Parameters property as follows:

{\"Version\": \"String\", \"Properties\": {\"AccountList\": [ \"String\" ], \"RegionList\": [ \"String\" ], \"AdminRole\": \"String\", \"ExecutionRole\": \"String\"}}

You cannot have both a LAUNCH and a STACKSET constraint.

You also cannot have more than one STACKSET constraint on a product and portfolio.

Products with a STACKSET constraint will launch an AWS CloudFormation stack set.

TEMPLATE

Specify the Rules property. For more information, see Template Constraint Rules.

", + "UpdateConstraintInput$Parameters": "

The constraint parameters, in JSON format. The syntax depends on the constraint type as follows:

LAUNCH

You are required to specify either the RoleArn or the LocalRoleName but can't use both.

Specify the RoleArn property as follows:

{\"RoleArn\" : \"arn:aws:iam::123456789012:role/LaunchRole\"}

Specify the LocalRoleName property as follows:

{\"LocalRoleName\": \"SCBasicLaunchRole\"}

If you specify the LocalRoleName property, when an account uses the launch constraint, the IAM role with that name in the account will be used. This allows launch-role constraints to be account-agnostic so the administrator can create fewer resources per shared account.

The given role name must exist in the account used to create the launch constraint and the account of the user who launches a product with this launch constraint.

You cannot have both a LAUNCH and a STACKSET constraint.

You also cannot have more than one LAUNCH constraint on a product and portfolio.

NOTIFICATION

Specify the NotificationArns property as follows:

{\"NotificationArns\" : [\"arn:aws:sns:us-east-1:123456789012:Topic\"]}

RESOURCE_UPDATE

Specify the TagUpdatesOnProvisionedProduct property as follows:

{\"Version\":\"2.0\",\"Properties\":{\"TagUpdateOnProvisionedProduct\":\"String\"}}

The TagUpdatesOnProvisionedProduct property accepts a string value of ALLOWED or NOT_ALLOWED.

STACKSET

Specify the Parameters property as follows:

{\"Version\": \"String\", \"Properties\": {\"AccountList\": [ \"String\" ], \"RegionList\": [ \"String\" ], \"AdminRole\": \"String\", \"ExecutionRole\": \"String\"}}

You cannot have both a LAUNCH and a STACKSET constraint.

You also cannot have more than one STACKSET constraint on a product and portfolio.

Products with a STACKSET constraint will launch an CloudFormation stack set.

TEMPLATE

Specify the Rules property. For more information, see Template Constraint Rules.

", "UpdateConstraintOutput$ConstraintParameters": "

The constraint parameters.

" } }, @@ -836,7 +836,7 @@ "DisableTemplateValidation": { "base": null, "refs": { - "ProvisioningArtifactProperties$DisableTemplateValidation": "

If set to true, AWS Service Catalog stops validating the specified provisioning artifact even if it is invalid.

" + "ProvisioningArtifactProperties$DisableTemplateValidation": "

If set to true, Amazon Web Services Service Catalog stops validating the specified provisioning artifact even if it is invalid.

" } }, "DisassociateBudgetFromResourceInput": { @@ -964,7 +964,7 @@ "ExecutionParameterMap": { "base": null, "refs": { - "ExecuteProvisionedProductServiceActionInput$Parameters": "

A map of all self-service action parameters and their values. If a provided parameter is of a special type, such as TARGET, the provided value will override the default value generated by AWS Service Catalog. If the parameters field is not provided, no additional parameters are passed and default values will be used for any special parameters such as TARGET.

" + "ExecuteProvisionedProductServiceActionInput$Parameters": "

A map of all self-service action parameters and their values. If a provided parameter is of a special type, such as TARGET, the provided value will override the default value generated by Service Catalog. If the parameters field is not provided, no additional parameters are passed and default values will be used for any special parameters such as TARGET.

" } }, "ExecutionParameterType": { @@ -1205,8 +1205,8 @@ "IgnoreErrors": { "base": null, "refs": { - "DeleteProvisionedProductPlanInput$IgnoreErrors": "

If set to true, AWS Service Catalog stops managing the specified provisioned product even if it cannot delete the underlying resources.

", - "TerminateProvisionedProductInput$IgnoreErrors": "

If set to true, AWS Service Catalog stops managing the specified provisioned product even if it cannot delete the underlying resources.

" + "DeleteProvisionedProductPlanInput$IgnoreErrors": "

If set to true, Service Catalog stops managing the specified provisioned product even if it cannot delete the underlying resources.

", + "TerminateProvisionedProductInput$IgnoreErrors": "

If set to true, Service Catalog stops managing the specified provisioned product even if it cannot delete the underlying resources.

" } }, "ImportAsProvisionedProductInput": { @@ -1520,7 +1520,7 @@ "OrganizationNode": { "base": "

Information about the organization node.

", "refs": { - "CreatePortfolioShareInput$OrganizationNode": "

The organization node to whom you are going to share. If OrganizationNode is passed in, PortfolioShare will be created for the node an ListOrganizationPortfolioAccessd its children (when applies), and a PortfolioShareToken will be returned in the output in order for the administrator to monitor the status of the PortfolioShare creation process.

", + "CreatePortfolioShareInput$OrganizationNode": "

The organization node to whom you are going to share. When you pass OrganizationNode, it creates PortfolioShare for all of the Amazon Web Services accounts that are associated to the OrganizationNode. The output returns a PortfolioShareToken, which enables the administrator to monitor the status of the PortfolioShare creation process.

", "DeletePortfolioShareInput$OrganizationNode": "

The organization node to whom you are going to stop sharing.

", "OrganizationNodes$member": null, "UpdatePortfolioShareInput$OrganizationNode": null @@ -1574,7 +1574,7 @@ "Owner": { "base": null, "refs": { - "TagOptionDetail$Owner": "

The AWS account Id of the owner account that created the TagOption.

" + "TagOptionDetail$Owner": "

The Amazon Web Services account Id of the owner account that created the TagOption.

" } }, "PageSize": { @@ -1819,7 +1819,7 @@ "base": null, "refs": { "CreateProductInput$ProductType": "

The type of product.

", - "ProductViewSummary$Type": "

The product type. Contact the product administrator for the significance of this value. If this value is MARKETPLACE, the product was created by AWS Marketplace.

" + "ProductViewSummary$Type": "

The product type. Contact the product administrator for the significance of this value. If this value is MARKETPLACE, the product was created by Amazon Web Services Marketplace.

" } }, "ProductViewAggregationType": { @@ -2025,12 +2025,12 @@ "ProvisionedProductName": { "base": null, "refs": { - "CreateProvisionedProductPlanInput$ProvisionedProductName": "

A user-friendly name for the provisioned product. This value must be unique for the AWS account and cannot be updated after the product is provisioned.

", + "CreateProvisionedProductPlanInput$ProvisionedProductName": "

A user-friendly name for the provisioned product. This value must be unique for the Amazon Web Services account and cannot be updated after the product is provisioned.

", "CreateProvisionedProductPlanOutput$ProvisionedProductName": "

The user-friendly name of the provisioned product.

", "DescribeProvisionedProductInput$Name": "

The name of the provisioned product. You must provide the name or ID, but not both.

If you do not provide a name or ID, or you provide both name and ID, an InvalidParametersException will occur.

", "GetProvisionedProductOutputsInput$ProvisionedProductName": "

The name of the provisioned product that you want the outputs from.

", - "ImportAsProvisionedProductInput$ProvisionedProductName": "

The user-friendly name of the provisioned product. The value must be unique for the AWS account. The name cannot be updated after the product is provisioned.

", - "ProvisionProductInput$ProvisionedProductName": "

A user-friendly name for the provisioned product. This value must be unique for the AWS account and cannot be updated after the product is provisioned.

", + "ImportAsProvisionedProductInput$ProvisionedProductName": "

The user-friendly name of the provisioned product. The value must be unique for the Amazon Web Services account. The name cannot be updated after the product is provisioned.

", + "ProvisionProductInput$ProvisionedProductName": "

A user-friendly name for the provisioned product. This value must be unique for the Amazon Web Services account and cannot be updated after the product is provisioned.

", "ProvisionedProductPlanDetails$ProvisionProductName": "

The user-friendly name of the provisioned product.

", "ProvisionedProductPlanSummary$ProvisionProductName": "

The user-friendly name of the provisioned product.

", "RecordDetail$ProvisionedProductName": "

The user-friendly name of the provisioned product.

" @@ -2091,7 +2091,7 @@ "ProvisionedProductProperties": { "base": null, "refs": { - "UpdateProvisionedProductPropertiesInput$ProvisionedProductProperties": "

A map that contains the provisioned product properties to be updated.

The LAUNCH_ROLE key accepts role ARNs. This key allows an administrator to call UpdateProvisionedProductProperties to update the launch role that is associated with a provisioned product. This role is used when an end user calls a provisioning operation such as UpdateProvisionedProduct, TerminateProvisionedProduct, or ExecuteProvisionedProductServiceAction. Only a role ARN is valid. A user ARN is invalid.

The OWNER key accepts user ARNs and role ARNs. The owner is the user that has permission to see, update, terminate, and execute service actions in the provisioned product.

The administrator can change the owner of a provisioned product to another IAM user within the same account. Both end user owners and administrators can see ownership history of the provisioned product using the ListRecordHistory API. The new owner can describe all past records for the provisioned product using the DescribeRecord API. The previous owner can no longer use DescribeRecord, but can still see the product's history from when he was an owner using ListRecordHistory.

If a provisioned product ownership is assigned to an end user, they can see and perform any action through the API or Service Catalog console such as update, terminate, and execute service actions. If an end user provisions a product and the owner is updated to someone else, they will no longer be able to see or perform any actions through API or the Service Catalog console on that provisioned product.

", + "UpdateProvisionedProductPropertiesInput$ProvisionedProductProperties": "

A map that contains the provisioned product properties to be updated.

The LAUNCH_ROLE key accepts role ARNs. This key allows an administrator to call UpdateProvisionedProductProperties to update the launch role that is associated with a provisioned product. This role is used when an end user calls a provisioning operation such as UpdateProvisionedProduct, TerminateProvisionedProduct, or ExecuteProvisionedProductServiceAction. Only a role ARN is valid. A user ARN is invalid.

The OWNER key accepts IAM user ARNs, IAM role ARNs, and STS assumed-role ARNs. The owner is the user that has permission to see, update, terminate, and execute service actions in the provisioned product.

The administrator can change the owner of a provisioned product to another IAM or STS entity within the same account. Both end user owners and administrators can see ownership history of the provisioned product using the ListRecordHistory API. The new owner can describe all past records for the provisioned product using the DescribeRecord API. The previous owner can no longer use DescribeRecord, but can still see the product's history from when he was an owner using ListRecordHistory.

If a provisioned product ownership is assigned to an end user, they can see and perform any action through the API or Service Catalog console such as update, terminate, and execute service actions. If an end user provisions a product and the owner is updated to someone else, they will no longer be able to see or perform any actions through API or the Service Catalog console on that provisioned product.

", "UpdateProvisionedProductPropertiesOutput$ProvisionedProductProperties": "

A map that contains the properties updated.

" } }, @@ -2192,11 +2192,11 @@ "ProvisioningArtifactInfo": { "base": null, "refs": { - "CreateProvisioningArtifactOutput$Info": "

Specify the template source with one of the following options, but not both. Keys accepted: [ LoadTemplateFromURL, ImportFromPhysicalId ].

The URL of the CloudFormation template in Amazon S3, in JSON format.

LoadTemplateFromURL

Use the URL of the CloudFormation template in Amazon S3 in JSON format.

ImportFromPhysicalId

Use the physical id of the resource that contains the template; currently supports CloudFormation stack ARN.

", - "DescribeProvisioningArtifactOutput$Info": "

The URL of the CloudFormation template in Amazon S3.

", - "ProvisioningArtifactProperties$Info": "

Specify the template source with one of the following options, but not both. Keys accepted: [ LoadTemplateFromURL, ImportFromPhysicalId ]

The URL of the CloudFormation template in Amazon S3. Specify the URL in JSON format as follows:

\"LoadTemplateFromURL\": \"https://s3.amazonaws.com/cf-templates-ozkq9d3hgiq2-us-east-1/...\"

ImportFromPhysicalId: The physical id of the resource that contains the template. Currently only supports CloudFormation stack arn. Specify the physical id in JSON format as follows: ImportFromPhysicalId: “arn:aws:cloudformation:[us-east-1]:[accountId]:stack/[StackName]/[resourceId]

", - "ProvisioningArtifactSummary$ProvisioningArtifactMetadata": "

The metadata for the provisioning artifact. This is used with AWS Marketplace products.

", - "UpdateProvisioningArtifactOutput$Info": "

The URL of the CloudFormation template in Amazon S3.

" + "CreateProvisioningArtifactOutput$Info": "

Specify the template source with one of the following options, but not both. Keys accepted: [ LoadTemplateFromURL, ImportFromPhysicalId ].

The URL of the CloudFormation template in Amazon S3, Amazon Web Services CodeCommit, or GitHub in JSON format.

LoadTemplateFromURL

Use the URL of the CloudFormation template in Amazon S3, Amazon Web Services CodeCommit, or GitHub in JSON format.

ImportFromPhysicalId

Use the physical id of the resource that contains the template; currently supports CloudFormation stack ARN.

", + "DescribeProvisioningArtifactOutput$Info": "

The URL of the CloudFormation template in Amazon S3, Amazon Web Services CodeCommit, or GitHub in JSON format.

", + "ProvisioningArtifactProperties$Info": "

Specify the template source with one of the following options, but not both. Keys accepted: [ LoadTemplateFromURL, ImportFromPhysicalId ]

The URL of the CloudFormation template in Amazon S3, Amazon Web Services CodeCommit, or GitHub in JSON format. Specify the URL in JSON format as follows:

\"LoadTemplateFromURL\": \"https://s3.amazonaws.com/cf-templates-ozkq9d3hgiq2-us-east-1/...\"

ImportFromPhysicalId: The physical id of the resource that contains the template. Currently only supports CloudFormation stack arn. Specify the physical id in JSON format as follows: ImportFromPhysicalId: “arn:aws:cloudformation:[us-east-1]:[accountId]:stack/[StackName]/[resourceId]

", + "ProvisioningArtifactSummary$ProvisioningArtifactMetadata": "

The metadata for the provisioning artifact. This is used with Amazon Web Services Marketplace products.

", + "UpdateProvisioningArtifactOutput$Info": "

The URL of the CloudFormation template in Amazon S3, Amazon Web Services CodeCommit, or GitHub in JSON format.

" } }, "ProvisioningArtifactInfoKey": { @@ -2259,9 +2259,9 @@ } }, "ProvisioningArtifactPreferences": { - "base": "

The user-defined preferences that will be applied during product provisioning, unless overridden by ProvisioningPreferences or UpdateProvisioningPreferences.

For more information on maximum concurrent accounts and failure tolerance, see Stack set operation options in the AWS CloudFormation User Guide.

", + "base": "

The user-defined preferences that will be applied during product provisioning, unless overridden by ProvisioningPreferences or UpdateProvisioningPreferences.

For more information on maximum concurrent accounts and failure tolerance, see Stack set operation options in the CloudFormation User Guide.

", "refs": { - "DescribeProvisioningParametersOutput$ProvisioningArtifactPreferences": "

An object that contains information about preferences, such as regions and accounts, for the provisioning artifact.

" + "DescribeProvisioningParametersOutput$ProvisioningArtifactPreferences": "

An object that contains information about preferences, such as Regions and accounts, for the provisioning artifact.

" } }, "ProvisioningArtifactProperties": { @@ -2298,8 +2298,8 @@ "ProvisioningArtifactType": { "base": null, "refs": { - "ProvisioningArtifactDetail$Type": "

The type of provisioning artifact.

", - "ProvisioningArtifactProperties$Type": "

The type of provisioning artifact.

" + "ProvisioningArtifactDetail$Type": "

The type of provisioning artifact.

", + "ProvisioningArtifactProperties$Type": "

The type of provisioning artifact.

" } }, "ProvisioningArtifactView": { @@ -2334,7 +2334,7 @@ } }, "ProvisioningPreferences": { - "base": "

The user-defined preferences that will be applied when updating a provisioned product. Not all preferences are applicable to all provisioned product type

One or more AWS accounts that will have access to the provisioned product.

Applicable only to a CFN_STACKSET provisioned product type.

The AWS accounts specified should be within the list of accounts in the STACKSET constraint. To get the list of accounts in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all accounts from the STACKSET constraint.

", + "base": "

The user-defined preferences that will be applied when updating a provisioned product. Not all preferences are applicable to all provisioned product type

One or more Amazon Web Services accounts that will have access to the provisioned product.

Applicable only to a CFN_STACKSET provisioned product type.

The Amazon Web Services accounts specified should be within the list of accounts in the STACKSET constraint. To get the list of accounts in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all accounts from the STACKSET constraint.

", "refs": { "ProvisionProductInput$ProvisioningPreferences": "

An object that contains information about the provisioning preferences for a stack set.

" } @@ -2423,7 +2423,7 @@ "Region": { "base": null, "refs": { - "StackInstance$Region": "

The name of the AWS region that the stack instance is associated with.

", + "StackInstance$Region": "

The name of the Amazon Web Services Region that the stack instance is associated with.

", "StackSetRegions$member": null } }, @@ -2669,7 +2669,7 @@ "ServiceActionDefinitionMap": { "base": null, "refs": { - "CreateServiceActionInput$Definition": "

The self-service action definition. Can be one of the following:

Name

The name of the AWS Systems Manager document (SSM document). For example, AWS-RestartEC2Instance.

If you are using a shared SSM document, you must provide the ARN instead of the name.

Version

The AWS Systems Manager automation document version. For example, \"Version\": \"1\"

AssumeRole

The Amazon Resource Name (ARN) of the role that performs the self-service actions on your behalf. For example, \"AssumeRole\": \"arn:aws:iam::12345678910:role/ActionRole\".

To reuse the provisioned product launch role, set to \"AssumeRole\": \"LAUNCH_ROLE\".

Parameters

The list of parameters in JSON format.

For example: [{\\\"Name\\\":\\\"InstanceId\\\",\\\"Type\\\":\\\"TARGET\\\"}] or [{\\\"Name\\\":\\\"InstanceId\\\",\\\"Type\\\":\\\"TEXT_VALUE\\\"}].

", + "CreateServiceActionInput$Definition": "

The self-service action definition. Can be one of the following:

Name

The name of the Amazon Web Services Systems Manager document (SSM document). For example, AWS-RestartEC2Instance.

If you are using a shared SSM document, you must provide the ARN instead of the name.

Version

The Amazon Web Services Systems Manager automation document version. For example, \"Version\": \"1\"

AssumeRole

The Amazon Resource Name (ARN) of the role that performs the self-service actions on your behalf. For example, \"AssumeRole\": \"arn:aws:iam::12345678910:role/ActionRole\".

To reuse the provisioned product launch role, set to \"AssumeRole\": \"LAUNCH_ROLE\".

Parameters

The list of parameters in JSON format.

For example: [{\\\"Name\\\":\\\"InstanceId\\\",\\\"Type\\\":\\\"TARGET\\\"}] or [{\\\"Name\\\":\\\"InstanceId\\\",\\\"Type\\\":\\\"TEXT_VALUE\\\"}].

", "ServiceActionDetail$Definition": "

A map that defines the self-service action.

", "UpdateServiceActionInput$Definition": "

A map that defines the self-service action.

" } @@ -2777,7 +2777,7 @@ } }, "StackInstance": { - "base": "

An AWS CloudFormation stack, in a specific account and region, that's part of a stack set operation. A stack instance is a reference to an attempted or actual stack in a given account within a given region. A stack instance can exist without a stack—for example, if the stack couldn't be created for some reason. A stack instance is associated with only one stack set. Each stack instance contains the ID of its associated stack set, as well as the ID of the actual stack and the stack status.

", + "base": "

An CloudFormation stack, in a specific account and Region, that's part of a stack set operation. A stack instance is a reference to an attempted or actual stack in a given account within a given Region. A stack instance can exist without a stack—for example, if the stack couldn't be created for some reason. A stack instance is associated with only one stack set. Each stack instance contains the ID of its associated stack set, as well as the ID of the actual stack and the stack status.

", "refs": { "StackInstances$member": null } @@ -2797,23 +2797,23 @@ "StackSetAccounts": { "base": null, "refs": { - "ProvisioningArtifactPreferences$StackSetAccounts": "

One or more AWS accounts where stack instances are deployed from the stack set. These accounts can be scoped in ProvisioningPreferences$StackSetAccounts and UpdateProvisioningPreferences$StackSetAccounts.

Applicable only to a CFN_STACKSET provisioned product type.

", - "ProvisioningPreferences$StackSetAccounts": "

One or more AWS accounts where the provisioned product will be available.

Applicable only to a CFN_STACKSET provisioned product type.

The specified accounts should be within the list of accounts from the STACKSET constraint. To get the list of accounts in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all acounts from the STACKSET constraint.

", - "UpdateProvisioningPreferences$StackSetAccounts": "

One or more AWS accounts that will have access to the provisioned product.

Applicable only to a CFN_STACKSET provisioned product type.

The AWS accounts specified should be within the list of accounts in the STACKSET constraint. To get the list of accounts in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all accounts from the STACKSET constraint.

" + "ProvisioningArtifactPreferences$StackSetAccounts": "

One or more Amazon Web Services accounts where stack instances are deployed from the stack set. These accounts can be scoped in ProvisioningPreferences$StackSetAccounts and UpdateProvisioningPreferences$StackSetAccounts.

Applicable only to a CFN_STACKSET provisioned product type.

", + "ProvisioningPreferences$StackSetAccounts": "

One or more Amazon Web Services accounts where the provisioned product will be available.

Applicable only to a CFN_STACKSET provisioned product type.

The specified accounts should be within the list of accounts from the STACKSET constraint. To get the list of accounts in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all acounts from the STACKSET constraint.

", + "UpdateProvisioningPreferences$StackSetAccounts": "

One or more Amazon Web Services accounts that will have access to the provisioned product.

Applicable only to a CFN_STACKSET provisioned product type.

The Amazon Web Services accounts specified should be within the list of accounts in the STACKSET constraint. To get the list of accounts in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all accounts from the STACKSET constraint.

" } }, "StackSetFailureToleranceCount": { "base": null, "refs": { - "ProvisioningPreferences$StackSetFailureToleranceCount": "

The number of accounts, per region, for which this operation can fail before AWS Service Catalog stops the operation in that region. If the operation is stopped in a region, AWS Service Catalog doesn't attempt the operation in any subsequent regions.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage, but not both.

The default value is 0 if no value is specified.

", - "UpdateProvisioningPreferences$StackSetFailureToleranceCount": "

The number of accounts, per region, for which this operation can fail before AWS Service Catalog stops the operation in that region. If the operation is stopped in a region, AWS Service Catalog doesn't attempt the operation in any subsequent regions.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage, but not both.

The default value is 0 if no value is specified.

" + "ProvisioningPreferences$StackSetFailureToleranceCount": "

The number of accounts, per Region, for which this operation can fail before Service Catalog stops the operation in that Region. If the operation is stopped in a Region, Service Catalog doesn't attempt the operation in any subsequent Regions.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage, but not both.

The default value is 0 if no value is specified.

", + "UpdateProvisioningPreferences$StackSetFailureToleranceCount": "

The number of accounts, per Region, for which this operation can fail before Service Catalog stops the operation in that Region. If the operation is stopped in a Region, Service Catalog doesn't attempt the operation in any subsequent Regions.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage, but not both.

The default value is 0 if no value is specified.

" } }, "StackSetFailureTolerancePercentage": { "base": null, "refs": { - "ProvisioningPreferences$StackSetFailureTolerancePercentage": "

The percentage of accounts, per region, for which this stack operation can fail before AWS Service Catalog stops the operation in that region. If the operation is stopped in a region, AWS Service Catalog doesn't attempt the operation in any subsequent regions.

When calculating the number of accounts based on the specified percentage, AWS Service Catalog rounds down to the next whole number.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage, but not both.

", - "UpdateProvisioningPreferences$StackSetFailureTolerancePercentage": "

The percentage of accounts, per region, for which this stack operation can fail before AWS Service Catalog stops the operation in that region. If the operation is stopped in a region, AWS Service Catalog doesn't attempt the operation in any subsequent regions.

When calculating the number of accounts based on the specified percentage, AWS Service Catalog rounds down to the next whole number.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage, but not both.

" + "ProvisioningPreferences$StackSetFailureTolerancePercentage": "

The percentage of accounts, per Region, for which this stack operation can fail before Service Catalog stops the operation in that Region. If the operation is stopped in a Region, Service Catalog doesn't attempt the operation in any subsequent Regions.

When calculating the number of accounts based on the specified percentage, Service Catalog rounds down to the next whole number.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage, but not both.

", + "UpdateProvisioningPreferences$StackSetFailureTolerancePercentage": "

The percentage of accounts, per Region, for which this stack operation can fail before Service Catalog stops the operation in that Region. If the operation is stopped in a Region, Service Catalog doesn't attempt the operation in any subsequent Regions.

When calculating the number of accounts based on the specified percentage, Service Catalog rounds down to the next whole number.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage, but not both.

" } }, "StackSetMaxConcurrencyCount": { @@ -2826,22 +2826,22 @@ "StackSetMaxConcurrencyPercentage": { "base": null, "refs": { - "ProvisioningPreferences$StackSetMaxConcurrencyPercentage": "

The maximum percentage of accounts in which to perform this operation at one time.

When calculating the number of accounts based on the specified percentage, AWS Service Catalog rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, AWS Service Catalog sets the number as 1 instead.

Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetMaxConcurrentCount or StackSetMaxConcurrentPercentage, but not both.

", - "UpdateProvisioningPreferences$StackSetMaxConcurrencyPercentage": "

The maximum percentage of accounts in which to perform this operation at one time.

When calculating the number of accounts based on the specified percentage, AWS Service Catalog rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, AWS Service Catalog sets the number as 1 instead.

Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetMaxConcurrentCount or StackSetMaxConcurrentPercentage, but not both.

" + "ProvisioningPreferences$StackSetMaxConcurrencyPercentage": "

The maximum percentage of accounts in which to perform this operation at one time.

When calculating the number of accounts based on the specified percentage, Service Catalog rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, Service Catalog sets the number as 1 instead.

Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetMaxConcurrentCount or StackSetMaxConcurrentPercentage, but not both.

", + "UpdateProvisioningPreferences$StackSetMaxConcurrencyPercentage": "

The maximum percentage of accounts in which to perform this operation at one time.

When calculating the number of accounts based on the specified percentage, Service Catalog rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, Service Catalog sets the number as 1 instead.

Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetMaxConcurrentCount or StackSetMaxConcurrentPercentage, but not both.

" } }, "StackSetOperationType": { "base": null, "refs": { - "UpdateProvisioningPreferences$StackSetOperationType": "

Determines what action AWS Service Catalog performs to a stack set or a stack instance represented by the provisioned product. The default value is UPDATE if nothing is specified.

Applicable only to a CFN_STACKSET provisioned product type.

CREATE

Creates a new stack instance in the stack set represented by the provisioned product. In this case, only new stack instances are created based on accounts and regions; if new ProductId or ProvisioningArtifactID are passed, they will be ignored.

UPDATE

Updates the stack set represented by the provisioned product and also its stack instances.

DELETE

Deletes a stack instance in the stack set represented by the provisioned product.

" + "UpdateProvisioningPreferences$StackSetOperationType": "

Determines what action Service Catalog performs to a stack set or a stack instance represented by the provisioned product. The default value is UPDATE if nothing is specified.

Applicable only to a CFN_STACKSET provisioned product type.

CREATE

Creates a new stack instance in the stack set represented by the provisioned product. In this case, only new stack instances are created based on accounts and Regions; if new ProductId or ProvisioningArtifactID are passed, they will be ignored.

UPDATE

Updates the stack set represented by the provisioned product and also its stack instances.

DELETE

Deletes a stack instance in the stack set represented by the provisioned product.

" } }, "StackSetRegions": { "base": null, "refs": { - "ProvisioningArtifactPreferences$StackSetRegions": "

One or more AWS Regions where stack instances are deployed from the stack set. These regions can be scoped in ProvisioningPreferences$StackSetRegions and UpdateProvisioningPreferences$StackSetRegions.

Applicable only to a CFN_STACKSET provisioned product type.

", - "ProvisioningPreferences$StackSetRegions": "

One or more AWS Regions where the provisioned product will be available.

Applicable only to a CFN_STACKSET provisioned product type.

The specified regions should be within the list of regions from the STACKSET constraint. To get the list of regions in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all regions from the STACKSET constraint.

", - "UpdateProvisioningPreferences$StackSetRegions": "

One or more AWS Regions where the provisioned product will be available.

Applicable only to a CFN_STACKSET provisioned product type.

The specified regions should be within the list of regions from the STACKSET constraint. To get the list of regions in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all regions from the STACKSET constraint.

" + "ProvisioningArtifactPreferences$StackSetRegions": "

One or more Amazon Web Services Regions where stack instances are deployed from the stack set. These Regions can be scoped in ProvisioningPreferences$StackSetRegions and UpdateProvisioningPreferences$StackSetRegions.

Applicable only to a CFN_STACKSET provisioned product type.

", + "ProvisioningPreferences$StackSetRegions": "

One or more Amazon Web Services Regions where the provisioned product will be available.

Applicable only to a CFN_STACKSET provisioned product type.

The specified Regions should be within the list of Regions from the STACKSET constraint. To get the list of Regions in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all Regions from the STACKSET constraint.

", + "UpdateProvisioningPreferences$StackSetRegions": "

One or more Amazon Web Services Regions where the provisioned product will be available.

Applicable only to a CFN_STACKSET provisioned product type.

The specified Regions should be within the list of Regions from the STACKSET constraint. To get the list of Regions in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all Regions from the STACKSET constraint.

" } }, "Status": { @@ -2978,7 +2978,7 @@ } }, "TagOptionNotMigratedException": { - "base": "

An operation requiring TagOptions failed because the TagOptions migration process has not been performed for this account. Please use the AWS console to perform the migration process before retrying the operation.

", + "base": "

An operation requiring TagOptions failed because the TagOptions migration process has not been performed for this account. Use the Amazon Web Services Management Console to perform the migration process before retrying the operation.

", "refs": { } }, diff --git a/models/endpoints/endpoints.json b/models/endpoints/endpoints.json index 7efae5c4b7..274dd04792 100644 --- a/models/endpoints/endpoints.json +++ b/models/endpoints/endpoints.json @@ -2141,6 +2141,7 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ap-southeast-3" : { }, "ca-central-1" : { }, "eu-central-1" : { }, "eu-north-1" : { }, @@ -14280,7 +14281,10 @@ "ap-south-1" : { }, "ap-southeast-1" : { }, "ap-southeast-2" : { }, + "ca-central-1" : { }, + "eu-central-1" : { }, "eu-west-1" : { }, + "eu-west-2" : { }, "us-east-1" : { }, "us-west-2" : { } } diff --git a/service/rekognition/api.go b/service/rekognition/api.go index 0a01dee996..8039e2e7c7 100644 --- a/service/rekognition/api.go +++ b/service/rekognition/api.go @@ -172,6 +172,137 @@ func (c *Rekognition) CompareFacesWithContext(ctx aws.Context, input *CompareFac return out, req.Send() } +const opCopyProjectVersion = "CopyProjectVersion" + +// CopyProjectVersionRequest generates a "aws/request.Request" representing the +// client's request for the CopyProjectVersion 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 CopyProjectVersion for more information on using the CopyProjectVersion +// 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 CopyProjectVersionRequest method. +// req, resp := client.CopyProjectVersionRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *Rekognition) CopyProjectVersionRequest(input *CopyProjectVersionInput) (req *request.Request, output *CopyProjectVersionOutput) { + op := &request.Operation{ + Name: opCopyProjectVersion, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CopyProjectVersionInput{} + } + + output = &CopyProjectVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// CopyProjectVersion API operation for Amazon Rekognition. +// +// Copies a version of an Amazon Rekognition Custom Labels model from a source +// project to a destination project. The source and destination projects can +// be in different AWS accounts but must be in the same AWS Region. You can't +// copy a model to another AWS service. +// +// To copy a model version to a different AWS account, you need to create a +// resource-based policy known as a project policy. You attach the project policy +// to the source project by calling PutProjectPolicy. The project policy gives +// permission to copy the model version from a trusting AWS account to a trusted +// account. +// +// For more information creating and attaching a project policy, see Attaching +// a project policy (SDK) in the Amazon Rekognition Custom Labels Developer +// Guide. +// +// If you are copying a model version to a project in the same AWS account, +// you don't need to create a project policy. +// +// To copy a model, the destination project, source project, and source model +// version must already exist. +// +// Copying a model version takes a while to complete. To get the current status, +// call DescribeProjectVersions and check the value of Status in the ProjectVersionDescription +// object. The copy operation has finished when the value of Status is COPYING_COMPLETED. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Rekognition's +// API operation CopyProjectVersion for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You are not authorized to perform the action. +// +// - InternalServerError +// Amazon Rekognition experienced a service issue. Try your call again. +// +// - InvalidParameterException +// Input parameter violated a constraint. Validate your parameter before calling +// the API operation again. +// +// - LimitExceededException +// An Amazon Rekognition service limit was exceeded. For example, if you start +// too many Amazon Rekognition Video jobs concurrently, calls to start operations +// (StartLabelDetection, for example) will raise a LimitExceededException exception +// (HTTP status code: 400) until the number of concurrently running jobs is +// below the Amazon Rekognition service limit. +// +// - ResourceNotFoundException +// The resource specified in the request cannot be found. +// +// - ThrottlingException +// Amazon Rekognition is temporarily unable to process the request. Try your +// call again. +// +// - ServiceQuotaExceededException +// The size of the collection exceeds the allowed limit. For more information, +// see Guidelines and quotas in Amazon Rekognition in the Amazon Rekognition +// Developer Guide. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Rekognition. +// +// - ResourceInUseException +// The specified resource is already being used. +func (c *Rekognition) CopyProjectVersion(input *CopyProjectVersionInput) (*CopyProjectVersionOutput, error) { + req, out := c.CopyProjectVersionRequest(input) + return out, req.Send() +} + +// CopyProjectVersionWithContext is the same as CopyProjectVersion with the addition of +// the ability to pass a context and additional request options. +// +// See CopyProjectVersion 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 *Rekognition) CopyProjectVersionWithContext(ctx aws.Context, input *CopyProjectVersionInput, opts ...request.Option) (*CopyProjectVersionOutput, error) { + req, out := c.CopyProjectVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateCollection = "CreateCollection" // CreateCollectionRequest generates a "aws/request.Request" representing the @@ -1155,7 +1286,8 @@ func (c *Rekognition) DeleteProjectRequest(input *DeleteProjectInput) (req *requ // // DeleteProject is an asynchronous operation. To check if the project is deleted, // call DescribeProjects. The project is deleted when the project no longer -// appears in the response. +// appears in the response. Be aware that deleting a given project will also +// delete any ProjectPolicies associated with that project. // // This operation requires permissions to perform the rekognition:DeleteProject // action. @@ -1213,6 +1345,106 @@ func (c *Rekognition) DeleteProjectWithContext(ctx aws.Context, input *DeletePro return out, req.Send() } +const opDeleteProjectPolicy = "DeleteProjectPolicy" + +// DeleteProjectPolicyRequest generates a "aws/request.Request" representing the +// client's request for the DeleteProjectPolicy 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 DeleteProjectPolicy for more information on using the DeleteProjectPolicy +// 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 DeleteProjectPolicyRequest method. +// req, resp := client.DeleteProjectPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *Rekognition) DeleteProjectPolicyRequest(input *DeleteProjectPolicyInput) (req *request.Request, output *DeleteProjectPolicyOutput) { + op := &request.Operation{ + Name: opDeleteProjectPolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteProjectPolicyInput{} + } + + output = &DeleteProjectPolicyOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteProjectPolicy API operation for Amazon Rekognition. +// +// Deletes an existing project policy. +// +// To get a list of project policies attached to a project, call ListProjectPolicies. +// To attach a project policy to a project, call PutProjectPolicy. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Rekognition's +// API operation DeleteProjectPolicy for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You are not authorized to perform the action. +// +// - InternalServerError +// Amazon Rekognition experienced a service issue. Try your call again. +// +// - InvalidParameterException +// Input parameter violated a constraint. Validate your parameter before calling +// the API operation again. +// +// - ResourceNotFoundException +// The resource specified in the request cannot be found. +// +// - ThrottlingException +// Amazon Rekognition is temporarily unable to process the request. Try your +// call again. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Rekognition. +// +// - InvalidPolicyRevisionIdException +// The supplied revision id for the project policy is invalid. +func (c *Rekognition) DeleteProjectPolicy(input *DeleteProjectPolicyInput) (*DeleteProjectPolicyOutput, error) { + req, out := c.DeleteProjectPolicyRequest(input) + return out, req.Send() +} + +// DeleteProjectPolicyWithContext is the same as DeleteProjectPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteProjectPolicy 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 *Rekognition) DeleteProjectPolicyWithContext(ctx aws.Context, input *DeleteProjectPolicyInput, opts ...request.Option) (*DeleteProjectPolicyOutput, error) { + req, out := c.DeleteProjectPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteProjectVersion = "DeleteProjectVersion" // DeleteProjectVersionRequest generates a "aws/request.Request" representing the @@ -5411,32 +5643,32 @@ func (c *Rekognition) ListFacesPagesWithContext(ctx aws.Context, input *ListFace return p.Err() } -const opListStreamProcessors = "ListStreamProcessors" +const opListProjectPolicies = "ListProjectPolicies" -// ListStreamProcessorsRequest generates a "aws/request.Request" representing the -// client's request for the ListStreamProcessors operation. The "output" return +// ListProjectPoliciesRequest generates a "aws/request.Request" representing the +// client's request for the ListProjectPolicies 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 ListStreamProcessors for more information on using the ListStreamProcessors +// See ListProjectPolicies for more information on using the ListProjectPolicies // 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 ListStreamProcessorsRequest method. -// req, resp := client.ListStreamProcessorsRequest(params) +// // Example sending a request using the ListProjectPoliciesRequest method. +// req, resp := client.ListProjectPoliciesRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } -func (c *Rekognition) ListStreamProcessorsRequest(input *ListStreamProcessorsInput) (req *request.Request, output *ListStreamProcessorsOutput) { +func (c *Rekognition) ListProjectPoliciesRequest(input *ListProjectPoliciesInput) (req *request.Request, output *ListProjectPoliciesOutput) { op := &request.Operation{ - Name: opListStreamProcessors, + Name: opListProjectPolicies, HTTPMethod: "POST", HTTPPath: "/", Paginator: &request.Paginator{ @@ -5448,24 +5680,27 @@ func (c *Rekognition) ListStreamProcessorsRequest(input *ListStreamProcessorsInp } if input == nil { - input = &ListStreamProcessorsInput{} + input = &ListProjectPoliciesInput{} } - output = &ListStreamProcessorsOutput{} + output = &ListProjectPoliciesOutput{} req = c.newRequest(op, input, output) return } -// ListStreamProcessors API operation for Amazon Rekognition. +// ListProjectPolicies API operation for Amazon Rekognition. // -// Gets a list of stream processors that you have created with CreateStreamProcessor. +// Gets a list of the project policies attached to a project. +// +// To attach a project policy to a project, call PutProjectPolicy. To remove +// a project policy from a project, call DeleteProjectPolicy. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Rekognition's -// API operation ListStreamProcessors for usage and error information. +// API operation ListProjectPolicies for usage and error information. // // Returned Error Types: // @@ -5475,77 +5710,80 @@ func (c *Rekognition) ListStreamProcessorsRequest(input *ListStreamProcessorsInp // - InternalServerError // Amazon Rekognition experienced a service issue. Try your call again. // -// - ThrottlingException -// Amazon Rekognition is temporarily unable to process the request. Try your -// call again. -// // - InvalidParameterException // Input parameter violated a constraint. Validate your parameter before calling // the API operation again. // -// - InvalidPaginationTokenException -// Pagination token in the request is not valid. +// - ResourceNotFoundException +// The resource specified in the request cannot be found. +// +// - ThrottlingException +// Amazon Rekognition is temporarily unable to process the request. Try your +// call again. // // - ProvisionedThroughputExceededException // The number of requests exceeded your throughput limit. If you want to increase // this limit, contact Amazon Rekognition. -func (c *Rekognition) ListStreamProcessors(input *ListStreamProcessorsInput) (*ListStreamProcessorsOutput, error) { - req, out := c.ListStreamProcessorsRequest(input) +// +// - InvalidPaginationTokenException +// Pagination token in the request is not valid. +func (c *Rekognition) ListProjectPolicies(input *ListProjectPoliciesInput) (*ListProjectPoliciesOutput, error) { + req, out := c.ListProjectPoliciesRequest(input) return out, req.Send() } -// ListStreamProcessorsWithContext is the same as ListStreamProcessors with the addition of +// ListProjectPoliciesWithContext is the same as ListProjectPolicies with the addition of // the ability to pass a context and additional request options. // -// See ListStreamProcessors for details on how to use this API operation. +// See ListProjectPolicies 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 *Rekognition) ListStreamProcessorsWithContext(ctx aws.Context, input *ListStreamProcessorsInput, opts ...request.Option) (*ListStreamProcessorsOutput, error) { - req, out := c.ListStreamProcessorsRequest(input) +func (c *Rekognition) ListProjectPoliciesWithContext(ctx aws.Context, input *ListProjectPoliciesInput, opts ...request.Option) (*ListProjectPoliciesOutput, error) { + req, out := c.ListProjectPoliciesRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -// ListStreamProcessorsPages iterates over the pages of a ListStreamProcessors operation, +// ListProjectPoliciesPages iterates over the pages of a ListProjectPolicies operation, // calling the "fn" function with the response data for each page. To stop // iterating, return false from the fn function. // -// See ListStreamProcessors method for more information on how to use this operation. +// See ListProjectPolicies 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 ListStreamProcessors operation. +// // Example iterating over at most 3 pages of a ListProjectPolicies operation. // pageNum := 0 -// err := client.ListStreamProcessorsPages(params, -// func(page *rekognition.ListStreamProcessorsOutput, lastPage bool) bool { +// err := client.ListProjectPoliciesPages(params, +// func(page *rekognition.ListProjectPoliciesOutput, lastPage bool) bool { // pageNum++ // fmt.Println(page) // return pageNum <= 3 // }) -func (c *Rekognition) ListStreamProcessorsPages(input *ListStreamProcessorsInput, fn func(*ListStreamProcessorsOutput, bool) bool) error { - return c.ListStreamProcessorsPagesWithContext(aws.BackgroundContext(), input, fn) +func (c *Rekognition) ListProjectPoliciesPages(input *ListProjectPoliciesInput, fn func(*ListProjectPoliciesOutput, bool) bool) error { + return c.ListProjectPoliciesPagesWithContext(aws.BackgroundContext(), input, fn) } -// ListStreamProcessorsPagesWithContext same as ListStreamProcessorsPages except +// ListProjectPoliciesPagesWithContext same as ListProjectPoliciesPages 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 *Rekognition) ListStreamProcessorsPagesWithContext(ctx aws.Context, input *ListStreamProcessorsInput, fn func(*ListStreamProcessorsOutput, bool) bool, opts ...request.Option) error { +func (c *Rekognition) ListProjectPoliciesPagesWithContext(ctx aws.Context, input *ListProjectPoliciesInput, fn func(*ListProjectPoliciesOutput, bool) bool, opts ...request.Option) error { p := request.Pagination{ NewRequest: func() (*request.Request, error) { - var inCpy *ListStreamProcessorsInput + var inCpy *ListProjectPoliciesInput if input != nil { tmp := *input inCpy = &tmp } - req, _ := c.ListStreamProcessorsRequest(inCpy) + req, _ := c.ListProjectPoliciesRequest(inCpy) req.SetContext(ctx) req.ApplyOptions(opts...) return req, nil @@ -5553,7 +5791,7 @@ func (c *Rekognition) ListStreamProcessorsPagesWithContext(ctx aws.Context, inpu } for p.Next() { - if !fn(p.Page().(*ListStreamProcessorsOutput), !p.HasNextPage()) { + if !fn(p.Page().(*ListProjectPoliciesOutput), !p.HasNextPage()) { break } } @@ -5561,63 +5799,213 @@ func (c *Rekognition) ListStreamProcessorsPagesWithContext(ctx aws.Context, inpu return p.Err() } -const opListTagsForResource = "ListTagsForResource" +const opListStreamProcessors = "ListStreamProcessors" -// ListTagsForResourceRequest generates a "aws/request.Request" representing the -// client's request for the ListTagsForResource operation. The "output" return +// ListStreamProcessorsRequest generates a "aws/request.Request" representing the +// client's request for the ListStreamProcessors operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See ListTagsForResource for more information on using the ListTagsForResource +// See ListStreamProcessors for more information on using the ListStreamProcessors // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the ListTagsForResourceRequest method. -// req, resp := client.ListTagsForResourceRequest(params) +// // Example sending a request using the ListStreamProcessorsRequest method. +// req, resp := client.ListStreamProcessorsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } -func (c *Rekognition) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { +func (c *Rekognition) ListStreamProcessorsRequest(input *ListStreamProcessorsInput) (req *request.Request, output *ListStreamProcessorsOutput) { op := &request.Operation{ - Name: opListTagsForResource, + Name: opListStreamProcessors, HTTPMethod: "POST", HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, } if input == nil { - input = &ListTagsForResourceInput{} + input = &ListStreamProcessorsInput{} } - output = &ListTagsForResourceOutput{} + output = &ListStreamProcessorsOutput{} req = c.newRequest(op, input, output) return } -// ListTagsForResource API operation for Amazon Rekognition. -// -// Returns a list of tags in an Amazon Rekognition collection, stream processor, -// or Custom Labels model. +// ListStreamProcessors API operation for Amazon Rekognition. // -// This operation requires permissions to perform the rekognition:ListTagsForResource -// action. +// Gets a list of stream processors that you have created with CreateStreamProcessor. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Rekognition's -// API operation ListTagsForResource for usage and error information. +// API operation ListStreamProcessors for usage and error information. // // Returned Error Types: // -// - ResourceNotFoundException +// - AccessDeniedException +// You are not authorized to perform the action. +// +// - InternalServerError +// Amazon Rekognition experienced a service issue. Try your call again. +// +// - ThrottlingException +// Amazon Rekognition is temporarily unable to process the request. Try your +// call again. +// +// - InvalidParameterException +// Input parameter violated a constraint. Validate your parameter before calling +// the API operation again. +// +// - InvalidPaginationTokenException +// Pagination token in the request is not valid. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Rekognition. +func (c *Rekognition) ListStreamProcessors(input *ListStreamProcessorsInput) (*ListStreamProcessorsOutput, error) { + req, out := c.ListStreamProcessorsRequest(input) + return out, req.Send() +} + +// ListStreamProcessorsWithContext is the same as ListStreamProcessors with the addition of +// the ability to pass a context and additional request options. +// +// See ListStreamProcessors 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 *Rekognition) ListStreamProcessorsWithContext(ctx aws.Context, input *ListStreamProcessorsInput, opts ...request.Option) (*ListStreamProcessorsOutput, error) { + req, out := c.ListStreamProcessorsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListStreamProcessorsPages iterates over the pages of a ListStreamProcessors operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListStreamProcessors 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 ListStreamProcessors operation. +// pageNum := 0 +// err := client.ListStreamProcessorsPages(params, +// func(page *rekognition.ListStreamProcessorsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +func (c *Rekognition) ListStreamProcessorsPages(input *ListStreamProcessorsInput, fn func(*ListStreamProcessorsOutput, bool) bool) error { + return c.ListStreamProcessorsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListStreamProcessorsPagesWithContext same as ListStreamProcessorsPages 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 *Rekognition) ListStreamProcessorsPagesWithContext(ctx aws.Context, input *ListStreamProcessorsInput, fn func(*ListStreamProcessorsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListStreamProcessorsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListStreamProcessorsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListStreamProcessorsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opListTagsForResource = "ListTagsForResource" + +// ListTagsForResourceRequest generates a "aws/request.Request" representing the +// client's request for the ListTagsForResource operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListTagsForResource for more information on using the ListTagsForResource +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// // Example sending a request using the ListTagsForResourceRequest method. +// req, resp := client.ListTagsForResourceRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *Rekognition) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) { + op := &request.Operation{ + Name: opListTagsForResource, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListTagsForResourceInput{} + } + + output = &ListTagsForResourceOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListTagsForResource API operation for Amazon Rekognition. +// +// Returns a list of tags in an Amazon Rekognition collection, stream processor, +// or Custom Labels model. +// +// This operation requires permissions to perform the rekognition:ListTagsForResource +// action. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Rekognition's +// API operation ListTagsForResource for usage and error information. +// +// Returned Error Types: +// +// - ResourceNotFoundException // The resource specified in the request cannot be found. // // - InvalidParameterException @@ -5658,6 +6046,139 @@ func (c *Rekognition) ListTagsForResourceWithContext(ctx aws.Context, input *Lis return out, req.Send() } +const opPutProjectPolicy = "PutProjectPolicy" + +// PutProjectPolicyRequest generates a "aws/request.Request" representing the +// client's request for the PutProjectPolicy 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 PutProjectPolicy for more information on using the PutProjectPolicy +// 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 PutProjectPolicyRequest method. +// req, resp := client.PutProjectPolicyRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +func (c *Rekognition) PutProjectPolicyRequest(input *PutProjectPolicyInput) (req *request.Request, output *PutProjectPolicyOutput) { + op := &request.Operation{ + Name: opPutProjectPolicy, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &PutProjectPolicyInput{} + } + + output = &PutProjectPolicyOutput{} + req = c.newRequest(op, input, output) + return +} + +// PutProjectPolicy API operation for Amazon Rekognition. +// +// Attaches a project policy to a Amazon Rekognition Custom Labels project in +// a trusting AWS account. A project policy specifies that a trusted AWS account +// can copy a model version from a trusting AWS account to a project in the +// trusted AWS account. To copy a model version you use the CopyProjectVersion +// operation. +// +// For more information about the format of a project policy document, see Attaching +// a project policy (SDK) in the Amazon Rekognition Custom Labels Developer +// Guide. +// +// The response from PutProjectPolicy is a revision ID for the project policy. +// You can attach multiple project policies to a project. You can also update +// an existing project policy by specifying the policy revision ID of the existing +// policy. +// +// To remove a project policy from a project, call DeleteProjectPolicy. To get +// a list of project policies attached to a project, call ListProjectPolicies. +// +// You copy a model version by calling CopyProjectVersion. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Rekognition's +// API operation PutProjectPolicy for usage and error information. +// +// Returned Error Types: +// +// - AccessDeniedException +// You are not authorized to perform the action. +// +// - InternalServerError +// Amazon Rekognition experienced a service issue. Try your call again. +// +// - InvalidParameterException +// Input parameter violated a constraint. Validate your parameter before calling +// the API operation again. +// +// - InvalidPolicyRevisionIdException +// The supplied revision id for the project policy is invalid. +// +// - MalformedPolicyDocumentException +// The format of the project policy document that you supplied to PutProjectPolicy +// is incorrect. +// +// - ResourceNotFoundException +// The resource specified in the request cannot be found. +// +// - ResourceAlreadyExistsException +// A resource with the specified ID already exists. +// +// - ThrottlingException +// Amazon Rekognition is temporarily unable to process the request. Try your +// call again. +// +// - ServiceQuotaExceededException +// The size of the collection exceeds the allowed limit. For more information, +// see Guidelines and quotas in Amazon Rekognition in the Amazon Rekognition +// Developer Guide. +// +// - ProvisionedThroughputExceededException +// The number of requests exceeded your throughput limit. If you want to increase +// this limit, contact Amazon Rekognition. +// +// - LimitExceededException +// An Amazon Rekognition service limit was exceeded. For example, if you start +// too many Amazon Rekognition Video jobs concurrently, calls to start operations +// (StartLabelDetection, for example) will raise a LimitExceededException exception +// (HTTP status code: 400) until the number of concurrently running jobs is +// below the Amazon Rekognition service limit. +func (c *Rekognition) PutProjectPolicy(input *PutProjectPolicyInput) (*PutProjectPolicyOutput, error) { + req, out := c.PutProjectPolicyRequest(input) + return out, req.Send() +} + +// PutProjectPolicyWithContext is the same as PutProjectPolicy with the addition of +// the ability to pass a context and additional request options. +// +// See PutProjectPolicy 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 *Rekognition) PutProjectPolicyWithContext(ctx aws.Context, input *PutProjectPolicyInput, opts ...request.Option) (*PutProjectPolicyOutput, error) { + req, out := c.PutProjectPolicyRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opRecognizeCelebrities = "RecognizeCelebrities" // RecognizeCelebritiesRequest generates a "aws/request.Request" representing the @@ -9010,17 +9531,215 @@ func (s *ConnectedHomeSettingsForUpdate) SetMinConfidence(v float64) *ConnectedH return s } -// Information about an inappropriate, unwanted, or offensive content label -// detection in a stored video. -type ContentModerationDetection struct { +// Information about an inappropriate, unwanted, or offensive content label +// detection in a stored video. +type ContentModerationDetection struct { + _ struct{} `type:"structure"` + + // The content moderation label detected by in the stored video. + ModerationLabel *ModerationLabel `type:"structure"` + + // Time, in milliseconds from the beginning of the video, that the content moderation + // label was detected. + Timestamp *int64 `type:"long"` +} + +// 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 ContentModerationDetection) 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 ContentModerationDetection) GoString() string { + return s.String() +} + +// SetModerationLabel sets the ModerationLabel field's value. +func (s *ContentModerationDetection) SetModerationLabel(v *ModerationLabel) *ContentModerationDetection { + s.ModerationLabel = v + return s +} + +// SetTimestamp sets the Timestamp field's value. +func (s *ContentModerationDetection) SetTimestamp(v int64) *ContentModerationDetection { + s.Timestamp = &v + return s +} + +type CopyProjectVersionInput struct { + _ struct{} `type:"structure"` + + // The ARN of the project in the trusted AWS account that you want to copy the + // model version to. + // + // DestinationProjectArn is a required field + DestinationProjectArn *string `min:"20" type:"string" required:"true"` + + // The identifier for your AWS Key Management Service key (AWS KMS key). You + // can supply the Amazon Resource Name (ARN) of your KMS key, the ID of your + // KMS key, an alias for your KMS key, or an alias ARN. The key is used to encrypt + // training results and manifest files written to the output Amazon S3 bucket + // (OutputConfig). + // + // If you choose to use your own KMS key, you need the following permissions + // on the KMS key. + // + // * kms:CreateGrant + // + // * kms:DescribeKey + // + // * kms:GenerateDataKey + // + // * kms:Decrypt + // + // If you don't specify a value for KmsKeyId, images copied into the service + // are encrypted using a key that AWS owns and manages. + KmsKeyId *string `min:"1" type:"string"` + + // The S3 bucket and folder location where the training output for the source + // model version is placed. + // + // OutputConfig is a required field + OutputConfig *OutputConfig `type:"structure" required:"true"` + + // The ARN of the source project in the trusting AWS account. + // + // SourceProjectArn is a required field + SourceProjectArn *string `min:"20" type:"string" required:"true"` + + // The ARN of the model version in the source project that you want to copy + // to a destination project. + // + // SourceProjectVersionArn is a required field + SourceProjectVersionArn *string `min:"20" type:"string" required:"true"` + + // The key-value tags to assign to the model version. + Tags map[string]*string `type:"map"` + + // A name for the version of the model that's copied to the destination project. + // + // VersionName is a required field + VersionName *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s CopyProjectVersionInput) 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 CopyProjectVersionInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CopyProjectVersionInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CopyProjectVersionInput"} + if s.DestinationProjectArn == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationProjectArn")) + } + if s.DestinationProjectArn != nil && len(*s.DestinationProjectArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("DestinationProjectArn", 20)) + } + if s.KmsKeyId != nil && len(*s.KmsKeyId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KmsKeyId", 1)) + } + if s.OutputConfig == nil { + invalidParams.Add(request.NewErrParamRequired("OutputConfig")) + } + if s.SourceProjectArn == nil { + invalidParams.Add(request.NewErrParamRequired("SourceProjectArn")) + } + if s.SourceProjectArn != nil && len(*s.SourceProjectArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("SourceProjectArn", 20)) + } + if s.SourceProjectVersionArn == nil { + invalidParams.Add(request.NewErrParamRequired("SourceProjectVersionArn")) + } + if s.SourceProjectVersionArn != nil && len(*s.SourceProjectVersionArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("SourceProjectVersionArn", 20)) + } + if s.VersionName == nil { + invalidParams.Add(request.NewErrParamRequired("VersionName")) + } + if s.VersionName != nil && len(*s.VersionName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("VersionName", 1)) + } + if s.OutputConfig != nil { + if err := s.OutputConfig.Validate(); err != nil { + invalidParams.AddNested("OutputConfig", err.(request.ErrInvalidParams)) + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDestinationProjectArn sets the DestinationProjectArn field's value. +func (s *CopyProjectVersionInput) SetDestinationProjectArn(v string) *CopyProjectVersionInput { + s.DestinationProjectArn = &v + return s +} + +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *CopyProjectVersionInput) SetKmsKeyId(v string) *CopyProjectVersionInput { + s.KmsKeyId = &v + return s +} + +// SetOutputConfig sets the OutputConfig field's value. +func (s *CopyProjectVersionInput) SetOutputConfig(v *OutputConfig) *CopyProjectVersionInput { + s.OutputConfig = v + return s +} + +// SetSourceProjectArn sets the SourceProjectArn field's value. +func (s *CopyProjectVersionInput) SetSourceProjectArn(v string) *CopyProjectVersionInput { + s.SourceProjectArn = &v + return s +} + +// SetSourceProjectVersionArn sets the SourceProjectVersionArn field's value. +func (s *CopyProjectVersionInput) SetSourceProjectVersionArn(v string) *CopyProjectVersionInput { + s.SourceProjectVersionArn = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *CopyProjectVersionInput) SetTags(v map[string]*string) *CopyProjectVersionInput { + s.Tags = v + return s +} + +// SetVersionName sets the VersionName field's value. +func (s *CopyProjectVersionInput) SetVersionName(v string) *CopyProjectVersionInput { + s.VersionName = &v + return s +} + +type CopyProjectVersionOutput struct { _ struct{} `type:"structure"` - // The content moderation label detected by in the stored video. - ModerationLabel *ModerationLabel `type:"structure"` - - // Time, in milliseconds from the beginning of the video, that the content moderation - // label was detected. - Timestamp *int64 `type:"long"` + // The ARN of the copied model version in the destination project. + ProjectVersionArn *string `min:"20" type:"string"` } // String returns the string representation. @@ -9028,7 +9747,7 @@ type ContentModerationDetection struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ContentModerationDetection) String() string { +func (s CopyProjectVersionOutput) String() string { return awsutil.Prettify(s) } @@ -9037,19 +9756,13 @@ func (s ContentModerationDetection) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ContentModerationDetection) GoString() string { +func (s CopyProjectVersionOutput) GoString() string { return s.String() } -// SetModerationLabel sets the ModerationLabel field's value. -func (s *ContentModerationDetection) SetModerationLabel(v *ModerationLabel) *ContentModerationDetection { - s.ModerationLabel = v - return s -} - -// SetTimestamp sets the Timestamp field's value. -func (s *ContentModerationDetection) SetTimestamp(v int64) *ContentModerationDetection { - s.Timestamp = &v +// SetProjectVersionArn sets the ProjectVersionArn field's value. +func (s *CopyProjectVersionOutput) SetProjectVersionArn(v string) *CopyProjectVersionOutput { + s.ProjectVersionArn = &v return s } @@ -10652,6 +11365,104 @@ func (s *DeleteProjectOutput) SetStatus(v string) *DeleteProjectOutput { return s } +type DeleteProjectPolicyInput struct { + _ struct{} `type:"structure"` + + // The name of the policy that you want to delete. + // + // PolicyName is a required field + PolicyName *string `min:"1" type:"string" required:"true"` + + // The ID of the project policy revision that you want to delete. + PolicyRevisionId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the project that the project policy you + // want to delete is attached to. + // + // ProjectArn is a required field + ProjectArn *string `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 DeleteProjectPolicyInput) 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 DeleteProjectPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteProjectPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteProjectPolicyInput"} + if s.PolicyName == nil { + invalidParams.Add(request.NewErrParamRequired("PolicyName")) + } + if s.PolicyName != nil && len(*s.PolicyName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) + } + if s.ProjectArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectArn")) + } + if s.ProjectArn != nil && len(*s.ProjectArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ProjectArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPolicyName sets the PolicyName field's value. +func (s *DeleteProjectPolicyInput) SetPolicyName(v string) *DeleteProjectPolicyInput { + s.PolicyName = &v + return s +} + +// SetPolicyRevisionId sets the PolicyRevisionId field's value. +func (s *DeleteProjectPolicyInput) SetPolicyRevisionId(v string) *DeleteProjectPolicyInput { + s.PolicyRevisionId = &v + return s +} + +// SetProjectArn sets the ProjectArn field's value. +func (s *DeleteProjectPolicyInput) SetProjectArn(v string) *DeleteProjectPolicyInput { + s.ProjectArn = &v + return s +} + +type DeleteProjectPolicyOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s DeleteProjectPolicyOutput) 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 DeleteProjectPolicyOutput) GoString() string { + return s.String() +} + type DeleteProjectVersionInput struct { _ struct{} `type:"structure"` @@ -15743,6 +16554,70 @@ func (s *InvalidParameterException) RequestID() string { return s.RespMetadata.RequestID } +// The supplied revision id for the project policy is invalid. +type InvalidPolicyRevisionIdException 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 InvalidPolicyRevisionIdException) 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 InvalidPolicyRevisionIdException) GoString() string { + return s.String() +} + +func newErrorInvalidPolicyRevisionIdException(v protocol.ResponseMetadata) error { + return &InvalidPolicyRevisionIdException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *InvalidPolicyRevisionIdException) Code() string { + return "InvalidPolicyRevisionIdException" +} + +// Message returns the exception's message. +func (s *InvalidPolicyRevisionIdException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *InvalidPolicyRevisionIdException) OrigErr() error { + return nil +} + +func (s *InvalidPolicyRevisionIdException) 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 *InvalidPolicyRevisionIdException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *InvalidPolicyRevisionIdException) RequestID() string { + return s.RespMetadata.RequestID +} + // Amazon Rekognition is unable to access the S3 object specified in the request. type InvalidS3ObjectException struct { _ struct{} `type:"structure"` @@ -16595,7 +17470,130 @@ type ListFacesInput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListFacesInput) String() string { +func (s ListFacesInput) 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 ListFacesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListFacesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListFacesInput"} + if s.CollectionId == nil { + invalidParams.Add(request.NewErrParamRequired("CollectionId")) + } + if s.CollectionId != nil && len(*s.CollectionId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("CollectionId", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCollectionId sets the CollectionId field's value. +func (s *ListFacesInput) SetCollectionId(v string) *ListFacesInput { + s.CollectionId = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListFacesInput) SetMaxResults(v int64) *ListFacesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListFacesInput) SetNextToken(v string) *ListFacesInput { + s.NextToken = &v + return s +} + +type ListFacesOutput struct { + _ struct{} `type:"structure"` + + // Version number of the face detection model associated with the input collection + // (CollectionId). + FaceModelVersion *string `type:"string"` + + // An array of Face objects. + Faces []*Face `type:"list"` + + // If the response is truncated, Amazon Rekognition returns this token that + // you can use in the subsequent request to retrieve the next set of faces. + NextToken *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s ListFacesOutput) 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 ListFacesOutput) GoString() string { + return s.String() +} + +// SetFaceModelVersion sets the FaceModelVersion field's value. +func (s *ListFacesOutput) SetFaceModelVersion(v string) *ListFacesOutput { + s.FaceModelVersion = &v + return s +} + +// SetFaces sets the Faces field's value. +func (s *ListFacesOutput) SetFaces(v []*Face) *ListFacesOutput { + s.Faces = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListFacesOutput) SetNextToken(v string) *ListFacesOutput { + s.NextToken = &v + return s +} + +type ListProjectPoliciesInput struct { + _ struct{} `type:"structure"` + + // The maximum number of results to return per paginated call. The largest value + // you can specify is 5. If you specify a value greater than 5, a ValidationException + // error occurs. The default value is 5. + MaxResults *int64 `min:"1" type:"integer"` + + // If the previous response was incomplete (because there is more results to + // retrieve), Amazon Rekognition Custom Labels returns a pagination token in + // the response. You can use this pagination token to retrieve the next set + // of results. + NextToken *string `type:"string"` + + // The ARN of the project for which you want to list the project policies. + // + // ProjectArn is a required field + ProjectArn *string `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 ListProjectPoliciesInput) String() string { return awsutil.Prettify(s) } @@ -16604,18 +17602,21 @@ func (s ListFacesInput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListFacesInput) GoString() string { +func (s ListProjectPoliciesInput) GoString() string { return s.String() } // Validate inspects the fields of the type to determine if they are valid. -func (s *ListFacesInput) Validate() error { - invalidParams := request.ErrInvalidParams{Context: "ListFacesInput"} - if s.CollectionId == nil { - invalidParams.Add(request.NewErrParamRequired("CollectionId")) +func (s *ListProjectPoliciesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListProjectPoliciesInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) } - if s.CollectionId != nil && len(*s.CollectionId) < 1 { - invalidParams.Add(request.NewErrParamMinLen("CollectionId", 1)) + if s.ProjectArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectArn")) + } + if s.ProjectArn != nil && len(*s.ProjectArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ProjectArn", 20)) } if invalidParams.Len() > 0 { @@ -16624,37 +17625,34 @@ func (s *ListFacesInput) Validate() error { return nil } -// SetCollectionId sets the CollectionId field's value. -func (s *ListFacesInput) SetCollectionId(v string) *ListFacesInput { - s.CollectionId = &v - return s -} - // SetMaxResults sets the MaxResults field's value. -func (s *ListFacesInput) SetMaxResults(v int64) *ListFacesInput { +func (s *ListProjectPoliciesInput) SetMaxResults(v int64) *ListProjectPoliciesInput { s.MaxResults = &v return s } // SetNextToken sets the NextToken field's value. -func (s *ListFacesInput) SetNextToken(v string) *ListFacesInput { +func (s *ListProjectPoliciesInput) SetNextToken(v string) *ListProjectPoliciesInput { s.NextToken = &v return s } -type ListFacesOutput struct { - _ struct{} `type:"structure"` - - // Version number of the face detection model associated with the input collection - // (CollectionId). - FaceModelVersion *string `type:"string"` +// SetProjectArn sets the ProjectArn field's value. +func (s *ListProjectPoliciesInput) SetProjectArn(v string) *ListProjectPoliciesInput { + s.ProjectArn = &v + return s +} - // An array of Face objects. - Faces []*Face `type:"list"` +type ListProjectPoliciesOutput struct { + _ struct{} `type:"structure"` // If the response is truncated, Amazon Rekognition returns this token that - // you can use in the subsequent request to retrieve the next set of faces. + // you can use in the subsequent request to retrieve the next set of project + // policies. NextToken *string `type:"string"` + + // A list of project policies attached to the project. + ProjectPolicies []*ProjectPolicy `type:"list"` } // String returns the string representation. @@ -16662,7 +17660,7 @@ type ListFacesOutput struct { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListFacesOutput) String() string { +func (s ListProjectPoliciesOutput) String() string { return awsutil.Prettify(s) } @@ -16671,25 +17669,19 @@ func (s ListFacesOutput) String() string { // API parameter values that are decorated as "sensitive" in the API will not // be included in the string output. The member name will be present, but the // value will be replaced with "sensitive". -func (s ListFacesOutput) GoString() string { +func (s ListProjectPoliciesOutput) GoString() string { return s.String() } -// SetFaceModelVersion sets the FaceModelVersion field's value. -func (s *ListFacesOutput) SetFaceModelVersion(v string) *ListFacesOutput { - s.FaceModelVersion = &v - return s -} - -// SetFaces sets the Faces field's value. -func (s *ListFacesOutput) SetFaces(v []*Face) *ListFacesOutput { - s.Faces = v +// SetNextToken sets the NextToken field's value. +func (s *ListProjectPoliciesOutput) SetNextToken(v string) *ListProjectPoliciesOutput { + s.NextToken = &v return s } -// SetNextToken sets the NextToken field's value. -func (s *ListFacesOutput) SetNextToken(v string) *ListFacesOutput { - s.NextToken = &v +// SetProjectPolicies sets the ProjectPolicies field's value. +func (s *ListProjectPoliciesOutput) SetProjectPolicies(v []*ProjectPolicy) *ListProjectPoliciesOutput { + s.ProjectPolicies = v return s } @@ -16873,6 +17865,71 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe return s } +// The format of the project policy document that you supplied to PutProjectPolicy +// is incorrect. +type MalformedPolicyDocumentException 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 MalformedPolicyDocumentException) 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 MalformedPolicyDocumentException) GoString() string { + return s.String() +} + +func newErrorMalformedPolicyDocumentException(v protocol.ResponseMetadata) error { + return &MalformedPolicyDocumentException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *MalformedPolicyDocumentException) Code() string { + return "MalformedPolicyDocumentException" +} + +// Message returns the exception's message. +func (s *MalformedPolicyDocumentException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *MalformedPolicyDocumentException) OrigErr() error { + return nil +} + +func (s *MalformedPolicyDocumentException) 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 *MalformedPolicyDocumentException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *MalformedPolicyDocumentException) RequestID() string { + return s.RespMetadata.RequestID +} + // Provides information about a single type of inappropriate, unwanted, or offensive // content found in an image or video. Each type of moderated content has a // label within a hierarchical taxonomy. For more information, see Content moderation @@ -17485,6 +18542,84 @@ func (s *ProjectDescription) SetStatus(v string) *ProjectDescription { return s } +// Describes a project policy in the response from ListProjectPolicies. +type ProjectPolicy struct { + _ struct{} `type:"structure"` + + // The Unix datetime for the creation of the project policy. + CreationTimestamp *time.Time `type:"timestamp"` + + // The Unix datetime for when the project policy was last updated. + LastUpdatedTimestamp *time.Time `type:"timestamp"` + + // The JSON document for the project policy. + PolicyDocument *string `min:"1" type:"string"` + + // The name of the project policy. + PolicyName *string `min:"1" type:"string"` + + // The revision ID of the project policy. + PolicyRevisionId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the project to which the project policy + // is attached. + ProjectArn *string `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 ProjectPolicy) 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 ProjectPolicy) GoString() string { + return s.String() +} + +// SetCreationTimestamp sets the CreationTimestamp field's value. +func (s *ProjectPolicy) SetCreationTimestamp(v time.Time) *ProjectPolicy { + s.CreationTimestamp = &v + return s +} + +// SetLastUpdatedTimestamp sets the LastUpdatedTimestamp field's value. +func (s *ProjectPolicy) SetLastUpdatedTimestamp(v time.Time) *ProjectPolicy { + s.LastUpdatedTimestamp = &v + return s +} + +// SetPolicyDocument sets the PolicyDocument field's value. +func (s *ProjectPolicy) SetPolicyDocument(v string) *ProjectPolicy { + s.PolicyDocument = &v + return s +} + +// SetPolicyName sets the PolicyName field's value. +func (s *ProjectPolicy) SetPolicyName(v string) *ProjectPolicy { + s.PolicyName = &v + return s +} + +// SetPolicyRevisionId sets the PolicyRevisionId field's value. +func (s *ProjectPolicy) SetPolicyRevisionId(v string) *ProjectPolicy { + s.PolicyRevisionId = &v + return s +} + +// SetProjectArn sets the ProjectArn field's value. +func (s *ProjectPolicy) SetProjectArn(v string) *ProjectPolicy { + s.ProjectArn = &v + return s +} + // A description of a version of an Amazon Rekognition Custom Labels model. type ProjectVersionDescription struct { _ struct{} `type:"structure"` @@ -17522,6 +18657,10 @@ type ProjectVersionDescription struct { // The Amazon Resource Name (ARN) of the model version. ProjectVersionArn *string `min:"20" type:"string"` + // If the model version was copied from a different project, SourceProjectVersionArn + // contains the ARN of the source model version. + SourceProjectVersionArn *string `min:"20" type:"string"` + // The current status of the model version. Status *string `type:"string" enum:"ProjectVersionStatus"` @@ -17610,6 +18749,12 @@ func (s *ProjectVersionDescription) SetProjectVersionArn(v string) *ProjectVersi return s } +// SetSourceProjectVersionArn sets the SourceProjectVersionArn field's value. +func (s *ProjectVersionDescription) SetSourceProjectVersionArn(v string) *ProjectVersionDescription { + s.SourceProjectVersionArn = &v + return s +} + // SetStatus sets the Status field's value. func (s *ProjectVersionDescription) SetStatus(v string) *ProjectVersionDescription { s.Status = &v @@ -17969,6 +19114,135 @@ func (s *ProvisionedThroughputExceededException) RequestID() string { return s.RespMetadata.RequestID } +type PutProjectPolicyInput struct { + _ struct{} `type:"structure"` + + // A resource policy to add to the model. The policy is a JSON structure that + // contains one or more statements that define the policy. The policy must follow + // the IAM syntax. For more information about the contents of a JSON policy + // document, see IAM JSON policy reference (https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies.html). + // + // PolicyDocument is a required field + PolicyDocument *string `min:"1" type:"string" required:"true"` + + // A name for the policy. + // + // PolicyName is a required field + PolicyName *string `min:"1" type:"string" required:"true"` + + // The revision ID for the Project Policy. Each time you modify a policy, Amazon + // Rekognition Custom Labels generates and assigns a new PolicyRevisionId and + // then deletes the previous version of the policy. + PolicyRevisionId *string `type:"string"` + + // The Amazon Resource Name (ARN) of the project that the project policy is + // attached to. + // + // ProjectArn is a required field + ProjectArn *string `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 PutProjectPolicyInput) 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 PutProjectPolicyInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *PutProjectPolicyInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "PutProjectPolicyInput"} + if s.PolicyDocument == nil { + invalidParams.Add(request.NewErrParamRequired("PolicyDocument")) + } + if s.PolicyDocument != nil && len(*s.PolicyDocument) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PolicyDocument", 1)) + } + if s.PolicyName == nil { + invalidParams.Add(request.NewErrParamRequired("PolicyName")) + } + if s.PolicyName != nil && len(*s.PolicyName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("PolicyName", 1)) + } + if s.ProjectArn == nil { + invalidParams.Add(request.NewErrParamRequired("ProjectArn")) + } + if s.ProjectArn != nil && len(*s.ProjectArn) < 20 { + invalidParams.Add(request.NewErrParamMinLen("ProjectArn", 20)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetPolicyDocument sets the PolicyDocument field's value. +func (s *PutProjectPolicyInput) SetPolicyDocument(v string) *PutProjectPolicyInput { + s.PolicyDocument = &v + return s +} + +// SetPolicyName sets the PolicyName field's value. +func (s *PutProjectPolicyInput) SetPolicyName(v string) *PutProjectPolicyInput { + s.PolicyName = &v + return s +} + +// SetPolicyRevisionId sets the PolicyRevisionId field's value. +func (s *PutProjectPolicyInput) SetPolicyRevisionId(v string) *PutProjectPolicyInput { + s.PolicyRevisionId = &v + return s +} + +// SetProjectArn sets the ProjectArn field's value. +func (s *PutProjectPolicyInput) SetProjectArn(v string) *PutProjectPolicyInput { + s.ProjectArn = &v + return s +} + +type PutProjectPolicyOutput struct { + _ struct{} `type:"structure"` + + // The ID of the project policy. + PolicyRevisionId *string `type:"string"` +} + +// String returns the string representation. +// +// API parameter values that are decorated as "sensitive" in the API will not +// be included in the string output. The member name will be present, but the +// value will be replaced with "sensitive". +func (s PutProjectPolicyOutput) 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 PutProjectPolicyOutput) GoString() string { + return s.String() +} + +// SetPolicyRevisionId sets the PolicyRevisionId field's value. +func (s *PutProjectPolicyOutput) SetPolicyRevisionId(v string) *PutProjectPolicyOutput { + s.PolicyRevisionId = &v + return s +} + type RecognizeCelebritiesInput struct { _ struct{} `type:"structure"` @@ -23181,6 +24455,15 @@ const ( // ProjectVersionStatusDeleting is a ProjectVersionStatus enum value ProjectVersionStatusDeleting = "DELETING" + + // ProjectVersionStatusCopyingInProgress is a ProjectVersionStatus enum value + ProjectVersionStatusCopyingInProgress = "COPYING_IN_PROGRESS" + + // ProjectVersionStatusCopyingCompleted is a ProjectVersionStatus enum value + ProjectVersionStatusCopyingCompleted = "COPYING_COMPLETED" + + // ProjectVersionStatusCopyingFailed is a ProjectVersionStatus enum value + ProjectVersionStatusCopyingFailed = "COPYING_FAILED" ) // ProjectVersionStatus_Values returns all elements of the ProjectVersionStatus enum @@ -23195,6 +24478,9 @@ func ProjectVersionStatus_Values() []string { ProjectVersionStatusStopping, ProjectVersionStatusStopped, ProjectVersionStatusDeleting, + ProjectVersionStatusCopyingInProgress, + ProjectVersionStatusCopyingCompleted, + ProjectVersionStatusCopyingFailed, } } diff --git a/service/rekognition/doc.go b/service/rekognition/doc.go index 94790ac09b..8a8b5f56dc 100644 --- a/service/rekognition/doc.go +++ b/service/rekognition/doc.go @@ -48,6 +48,8 @@ // // Amazon Rekognition Custom Labels // +// - CopyProjectVersion (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CopyProjectVersion.html) +// // - CreateDataset (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateDataset.html) // // - CreateProject (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateProject.html) @@ -58,6 +60,8 @@ // // - DeleteProject (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DeleteProject.html) // +// - DeleteProjectPolicy (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DeleteProjectPolicy.html) +// // - DeleteProjectVersion (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DeleteProjectVersion.html) // // - DescribeDataset (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DescribeDataset.html) @@ -74,6 +78,10 @@ // // - ListDatasetLabels (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ListDatasetLabels.html) // +// - ListProjectPolicies (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ListProjectPolicies.html) +// +// - PutProjectPolicy (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_PutProjectPolicy.html) +// // - StartProjectVersion (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_StartProjectVersion.html) // // - StopProjectVersion (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_StopProjectVersion.html) @@ -128,6 +136,8 @@ // // - StopStreamProcessor (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_StopStreamProcessor.html) // +// - UpdateStreamProcessor (https://docs.aws.amazon.com/rekognition/latest/APIReference/API_UpdateStreamProcessor.html) +// // See rekognition package documentation for more information. // https://docs.aws.amazon.com/sdk-for-go/api/service/rekognition/ // diff --git a/service/rekognition/errors.go b/service/rekognition/errors.go index edb869897a..8e90ed5656 100644 --- a/service/rekognition/errors.go +++ b/service/rekognition/errors.go @@ -63,6 +63,12 @@ const ( // the API operation again. ErrCodeInvalidParameterException = "InvalidParameterException" + // ErrCodeInvalidPolicyRevisionIdException for service response error code + // "InvalidPolicyRevisionIdException". + // + // The supplied revision id for the project policy is invalid. + ErrCodeInvalidPolicyRevisionIdException = "InvalidPolicyRevisionIdException" + // ErrCodeInvalidS3ObjectException for service response error code // "InvalidS3ObjectException". // @@ -79,6 +85,13 @@ const ( // below the Amazon Rekognition service limit. ErrCodeLimitExceededException = "LimitExceededException" + // ErrCodeMalformedPolicyDocumentException for service response error code + // "MalformedPolicyDocumentException". + // + // The format of the project policy document that you supplied to PutProjectPolicy + // is incorrect. + ErrCodeMalformedPolicyDocumentException = "MalformedPolicyDocumentException" + // ErrCodeProvisionedThroughputExceededException for service response error code // "ProvisionedThroughputExceededException". // @@ -143,8 +156,10 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "InvalidImageFormatException": newErrorInvalidImageFormatException, "InvalidPaginationTokenException": newErrorInvalidPaginationTokenException, "InvalidParameterException": newErrorInvalidParameterException, + "InvalidPolicyRevisionIdException": newErrorInvalidPolicyRevisionIdException, "InvalidS3ObjectException": newErrorInvalidS3ObjectException, "LimitExceededException": newErrorLimitExceededException, + "MalformedPolicyDocumentException": newErrorMalformedPolicyDocumentException, "ProvisionedThroughputExceededException": newErrorProvisionedThroughputExceededException, "ResourceAlreadyExistsException": newErrorResourceAlreadyExistsException, "ResourceInUseException": newErrorResourceInUseException, diff --git a/service/rekognition/examples_test.go b/service/rekognition/examples_test.go index fc9b0fe70d..39460c9429 100644 --- a/service/rekognition/examples_test.go +++ b/service/rekognition/examples_test.go @@ -80,6 +80,62 @@ func ExampleRekognition_CompareFaces_shared00() { fmt.Println(result) } +// CopyProjectVersion +// This operation copies a version of an Amazon Rekognition Custom Labels model from +// a source project to a destination project. +func ExampleRekognition_CopyProjectVersion_shared00() { + svc := rekognition.New(session.New()) + input := &rekognition.CopyProjectVersionInput{ + DestinationProjectArn: aws.String("arn:aws:rekognition:us-east-1:555555555555:project/DestinationProject/1656705098765"), + KmsKeyId: aws.String("arn:1234abcd-12ab-34cd-56ef-1234567890ab"), + OutputConfig: &rekognition.OutputConfig{ + S3Bucket: aws.String("bucket-name"), + S3KeyPrefix: aws.String("path_to_folder"), + }, + SourceProjectArn: aws.String("arn:aws:rekognition:us-east-1:111122223333:project/SourceProject/16565123456"), + SourceProjectVersionArn: aws.String("arn:aws:rekognition:us-east-1:111122223333:project/SourceProject/version/model_1/1656611123456"), + Tags: map[string]*string{ + "key1": aws.String("val1"), + }, + VersionName: aws.String("DestinationVersionName_cross_account"), + } + + result, err := svc.CopyProjectVersion(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case rekognition.ErrCodeAccessDeniedException: + fmt.Println(rekognition.ErrCodeAccessDeniedException, aerr.Error()) + case rekognition.ErrCodeInternalServerError: + fmt.Println(rekognition.ErrCodeInternalServerError, aerr.Error()) + case rekognition.ErrCodeInvalidParameterException: + fmt.Println(rekognition.ErrCodeInvalidParameterException, aerr.Error()) + case rekognition.ErrCodeLimitExceededException: + fmt.Println(rekognition.ErrCodeLimitExceededException, aerr.Error()) + case rekognition.ErrCodeResourceNotFoundException: + fmt.Println(rekognition.ErrCodeResourceNotFoundException, aerr.Error()) + case rekognition.ErrCodeThrottlingException: + fmt.Println(rekognition.ErrCodeThrottlingException, aerr.Error()) + case rekognition.ErrCodeServiceQuotaExceededException: + fmt.Println(rekognition.ErrCodeServiceQuotaExceededException, aerr.Error()) + case rekognition.ErrCodeProvisionedThroughputExceededException: + fmt.Println(rekognition.ErrCodeProvisionedThroughputExceededException, aerr.Error()) + case rekognition.ErrCodeResourceInUseException: + fmt.Println(rekognition.ErrCodeResourceInUseException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To create a collection // This operation creates a Rekognition collection for storing image data. func ExampleRekognition_CreateCollection_shared00() { @@ -199,6 +255,49 @@ func ExampleRekognition_DeleteFaces_shared00() { fmt.Println(result) } +// DeleteProjectPolicy +// This operation deletes a revision of an existing project policy from an Amazon Rekognition +// Custom Labels project. +func ExampleRekognition_DeleteProjectPolicy_shared00() { + svc := rekognition.New(session.New()) + input := &rekognition.DeleteProjectPolicyInput{ + PolicyName: aws.String("testPolicy1"), + PolicyRevisionId: aws.String("3b274c25e9203a56a99e00e3ff205fbc"), + ProjectArn: aws.String("arn:aws:rekognition:us-east-1:111122223333:project/SourceProject/1656557123456"), + } + + result, err := svc.DeleteProjectPolicy(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case rekognition.ErrCodeAccessDeniedException: + fmt.Println(rekognition.ErrCodeAccessDeniedException, aerr.Error()) + case rekognition.ErrCodeInternalServerError: + fmt.Println(rekognition.ErrCodeInternalServerError, aerr.Error()) + case rekognition.ErrCodeInvalidParameterException: + fmt.Println(rekognition.ErrCodeInvalidParameterException, aerr.Error()) + case rekognition.ErrCodeResourceNotFoundException: + fmt.Println(rekognition.ErrCodeResourceNotFoundException, aerr.Error()) + case rekognition.ErrCodeThrottlingException: + fmt.Println(rekognition.ErrCodeThrottlingException, aerr.Error()) + case rekognition.ErrCodeProvisionedThroughputExceededException: + fmt.Println(rekognition.ErrCodeProvisionedThroughputExceededException, aerr.Error()) + case rekognition.ErrCodeInvalidPolicyRevisionIdException: + fmt.Println(rekognition.ErrCodeInvalidPolicyRevisionIdException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To detect faces in an image // This operation detects faces in an image stored in an AWS S3 bucket. func ExampleRekognition_DetectFaces_shared00() { @@ -428,6 +527,101 @@ func ExampleRekognition_ListFaces_shared00() { fmt.Println(result) } +// ListProjectPolicies +// This operation lists the project policies that are attached to an Amazon Rekognition +// Custom Labels project. +func ExampleRekognition_ListProjectPolicies_shared00() { + svc := rekognition.New(session.New()) + input := &rekognition.ListProjectPoliciesInput{ + MaxResults: aws.Int64(5), + NextToken: aws.String(""), + ProjectArn: aws.String("arn:aws:rekognition:us-east-1:111122223333:project/my-sdk-project/1656557051929"), + } + + result, err := svc.ListProjectPolicies(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case rekognition.ErrCodeAccessDeniedException: + fmt.Println(rekognition.ErrCodeAccessDeniedException, aerr.Error()) + case rekognition.ErrCodeInternalServerError: + fmt.Println(rekognition.ErrCodeInternalServerError, aerr.Error()) + case rekognition.ErrCodeInvalidParameterException: + fmt.Println(rekognition.ErrCodeInvalidParameterException, aerr.Error()) + case rekognition.ErrCodeResourceNotFoundException: + fmt.Println(rekognition.ErrCodeResourceNotFoundException, aerr.Error()) + case rekognition.ErrCodeThrottlingException: + fmt.Println(rekognition.ErrCodeThrottlingException, aerr.Error()) + case rekognition.ErrCodeProvisionedThroughputExceededException: + fmt.Println(rekognition.ErrCodeProvisionedThroughputExceededException, aerr.Error()) + case rekognition.ErrCodeInvalidPaginationTokenException: + fmt.Println(rekognition.ErrCodeInvalidPaginationTokenException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + +// PutProjectPolicy +// This operation attaches a project policy to a Amazon Rekognition Custom Labels project +// in a trusting AWS account. +func ExampleRekognition_PutProjectPolicy_shared00() { + svc := rekognition.New(session.New()) + input := &rekognition.PutProjectPolicyInput{ + PolicyDocument: aws.String("'{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"ALLOW\",\"Principal\":{\"AWS\":\"principal\"},\"Action\":\"rekognition:CopyProjectVersion\",\"Resource\":\"arn:aws:rekognition:us-east-1:123456789012:project/my-sdk-project/version/DestinationVersionName/1627045542080\"}]}'"), + PolicyName: aws.String("SamplePolicy"), + PolicyRevisionId: aws.String("0123456789abcdef"), + ProjectArn: aws.String("arn:aws:rekognition:us-east-1:111122223333:project/my-sdk-project/1656557051929"), + } + + result, err := svc.PutProjectPolicy(input) + if err != nil { + if aerr, ok := err.(awserr.Error); ok { + switch aerr.Code() { + case rekognition.ErrCodeAccessDeniedException: + fmt.Println(rekognition.ErrCodeAccessDeniedException, aerr.Error()) + case rekognition.ErrCodeInternalServerError: + fmt.Println(rekognition.ErrCodeInternalServerError, aerr.Error()) + case rekognition.ErrCodeInvalidParameterException: + fmt.Println(rekognition.ErrCodeInvalidParameterException, aerr.Error()) + case rekognition.ErrCodeInvalidPolicyRevisionIdException: + fmt.Println(rekognition.ErrCodeInvalidPolicyRevisionIdException, aerr.Error()) + case rekognition.ErrCodeMalformedPolicyDocumentException: + fmt.Println(rekognition.ErrCodeMalformedPolicyDocumentException, aerr.Error()) + case rekognition.ErrCodeResourceNotFoundException: + fmt.Println(rekognition.ErrCodeResourceNotFoundException, aerr.Error()) + case rekognition.ErrCodeResourceAlreadyExistsException: + fmt.Println(rekognition.ErrCodeResourceAlreadyExistsException, aerr.Error()) + case rekognition.ErrCodeThrottlingException: + fmt.Println(rekognition.ErrCodeThrottlingException, aerr.Error()) + case rekognition.ErrCodeServiceQuotaExceededException: + fmt.Println(rekognition.ErrCodeServiceQuotaExceededException, aerr.Error()) + case rekognition.ErrCodeProvisionedThroughputExceededException: + fmt.Println(rekognition.ErrCodeProvisionedThroughputExceededException, aerr.Error()) + case rekognition.ErrCodeLimitExceededException: + fmt.Println(rekognition.ErrCodeLimitExceededException, aerr.Error()) + default: + fmt.Println(aerr.Error()) + } + } else { + // Print the error, cast err to awserr.Error to get the Code and + // Message from an error. + fmt.Println(err.Error()) + } + return + } + + fmt.Println(result) +} + // To delete a face // This operation searches for matching faces in the collection the supplied face belongs // to. diff --git a/service/rekognition/rekognitioniface/interface.go b/service/rekognition/rekognitioniface/interface.go index 8378b28a61..19ee81b466 100644 --- a/service/rekognition/rekognitioniface/interface.go +++ b/service/rekognition/rekognitioniface/interface.go @@ -64,6 +64,10 @@ type RekognitionAPI interface { CompareFacesWithContext(aws.Context, *rekognition.CompareFacesInput, ...request.Option) (*rekognition.CompareFacesOutput, error) CompareFacesRequest(*rekognition.CompareFacesInput) (*request.Request, *rekognition.CompareFacesOutput) + CopyProjectVersion(*rekognition.CopyProjectVersionInput) (*rekognition.CopyProjectVersionOutput, error) + CopyProjectVersionWithContext(aws.Context, *rekognition.CopyProjectVersionInput, ...request.Option) (*rekognition.CopyProjectVersionOutput, error) + CopyProjectVersionRequest(*rekognition.CopyProjectVersionInput) (*request.Request, *rekognition.CopyProjectVersionOutput) + CreateCollection(*rekognition.CreateCollectionInput) (*rekognition.CreateCollectionOutput, error) CreateCollectionWithContext(aws.Context, *rekognition.CreateCollectionInput, ...request.Option) (*rekognition.CreateCollectionOutput, error) CreateCollectionRequest(*rekognition.CreateCollectionInput) (*request.Request, *rekognition.CreateCollectionOutput) @@ -100,6 +104,10 @@ type RekognitionAPI interface { DeleteProjectWithContext(aws.Context, *rekognition.DeleteProjectInput, ...request.Option) (*rekognition.DeleteProjectOutput, error) DeleteProjectRequest(*rekognition.DeleteProjectInput) (*request.Request, *rekognition.DeleteProjectOutput) + DeleteProjectPolicy(*rekognition.DeleteProjectPolicyInput) (*rekognition.DeleteProjectPolicyOutput, error) + DeleteProjectPolicyWithContext(aws.Context, *rekognition.DeleteProjectPolicyInput, ...request.Option) (*rekognition.DeleteProjectPolicyOutput, error) + DeleteProjectPolicyRequest(*rekognition.DeleteProjectPolicyInput) (*request.Request, *rekognition.DeleteProjectPolicyOutput) + DeleteProjectVersion(*rekognition.DeleteProjectVersionInput) (*rekognition.DeleteProjectVersionOutput, error) DeleteProjectVersionWithContext(aws.Context, *rekognition.DeleteProjectVersionInput, ...request.Option) (*rekognition.DeleteProjectVersionOutput, error) DeleteProjectVersionRequest(*rekognition.DeleteProjectVersionInput) (*request.Request, *rekognition.DeleteProjectVersionOutput) @@ -254,6 +262,13 @@ type RekognitionAPI interface { ListFacesPages(*rekognition.ListFacesInput, func(*rekognition.ListFacesOutput, bool) bool) error ListFacesPagesWithContext(aws.Context, *rekognition.ListFacesInput, func(*rekognition.ListFacesOutput, bool) bool, ...request.Option) error + ListProjectPolicies(*rekognition.ListProjectPoliciesInput) (*rekognition.ListProjectPoliciesOutput, error) + ListProjectPoliciesWithContext(aws.Context, *rekognition.ListProjectPoliciesInput, ...request.Option) (*rekognition.ListProjectPoliciesOutput, error) + ListProjectPoliciesRequest(*rekognition.ListProjectPoliciesInput) (*request.Request, *rekognition.ListProjectPoliciesOutput) + + ListProjectPoliciesPages(*rekognition.ListProjectPoliciesInput, func(*rekognition.ListProjectPoliciesOutput, bool) bool) error + ListProjectPoliciesPagesWithContext(aws.Context, *rekognition.ListProjectPoliciesInput, func(*rekognition.ListProjectPoliciesOutput, bool) bool, ...request.Option) error + ListStreamProcessors(*rekognition.ListStreamProcessorsInput) (*rekognition.ListStreamProcessorsOutput, error) ListStreamProcessorsWithContext(aws.Context, *rekognition.ListStreamProcessorsInput, ...request.Option) (*rekognition.ListStreamProcessorsOutput, error) ListStreamProcessorsRequest(*rekognition.ListStreamProcessorsInput) (*request.Request, *rekognition.ListStreamProcessorsOutput) @@ -265,6 +280,10 @@ type RekognitionAPI interface { ListTagsForResourceWithContext(aws.Context, *rekognition.ListTagsForResourceInput, ...request.Option) (*rekognition.ListTagsForResourceOutput, error) ListTagsForResourceRequest(*rekognition.ListTagsForResourceInput) (*request.Request, *rekognition.ListTagsForResourceOutput) + PutProjectPolicy(*rekognition.PutProjectPolicyInput) (*rekognition.PutProjectPolicyOutput, error) + PutProjectPolicyWithContext(aws.Context, *rekognition.PutProjectPolicyInput, ...request.Option) (*rekognition.PutProjectPolicyOutput, error) + PutProjectPolicyRequest(*rekognition.PutProjectPolicyInput) (*request.Request, *rekognition.PutProjectPolicyOutput) + RecognizeCelebrities(*rekognition.RecognizeCelebritiesInput) (*rekognition.RecognizeCelebritiesOutput, error) RecognizeCelebritiesWithContext(aws.Context, *rekognition.RecognizeCelebritiesInput, ...request.Option) (*rekognition.RecognizeCelebritiesOutput, error) RecognizeCelebritiesRequest(*rekognition.RecognizeCelebritiesInput) (*request.Request, *rekognition.RecognizeCelebritiesOutput) diff --git a/service/servicecatalog/api.go b/service/servicecatalog/api.go index ecf2c84428..d2f1fd2ec8 100644 --- a/service/servicecatalog/api.go +++ b/service/servicecatalog/api.go @@ -515,8 +515,8 @@ func (c *ServiceCatalog) AssociateTagOptionWithResourceRequest(input *AssociateT // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // - ResourceNotFoundException // The specified resource was not found. @@ -763,7 +763,8 @@ func (c *ServiceCatalog) CopyProductRequest(input *CopyProductInput) (req *reque // new product. // // You can copy a product to the same account or another account. You can copy -// a product to the same region or another region. +// a product to the same Region or another Region. If you copy a product to +// another account, you must first share the product in a portfolio using CreatePortfolioShare. // // This operation is performed asynchronously. To track the progress of the // operation, use DescribeCopyProductStatus. @@ -963,8 +964,8 @@ func (c *ServiceCatalog) CreatePortfolioRequest(input *CreatePortfolioInput) (re // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10/CreatePortfolio func (c *ServiceCatalog) CreatePortfolio(input *CreatePortfolioInput) (*CreatePortfolioOutput, error) { @@ -1169,8 +1170,8 @@ func (c *ServiceCatalog) CreateProductRequest(input *CreateProductInput) (req *r // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10/CreateProduct func (c *ServiceCatalog) CreateProduct(input *CreateProductInput) (*CreateProductOutput, error) { @@ -1237,12 +1238,15 @@ func (c *ServiceCatalog) CreateProvisionedProductPlanRequest(input *CreateProvis // CreateProvisionedProductPlan API operation for AWS Service Catalog. // -// Creates a plan. A plan includes the list of resources to be created (when -// provisioning a new product) or modified (when updating a provisioned product) -// when the plan is executed. +// Creates a plan. // -// You can create one plan per provisioned product. To create a plan for an -// existing provisioned product, the product status must be AVAILBLE or TAINTED. +// A plan includes the list of resources to be created (when provisioning a +// new product) or modified (when updating a provisioned product) when the plan +// is executed. +// +// You can create one plan for each provisioned product. To create a plan for +// an existing provisioned product, the product status must be AVAILABLE or +// TAINTED. // // To view the resource changes in the change set, use DescribeProvisionedProductPlan. // To create or modify the provisioned product, use ExecuteProvisionedProductPlan. @@ -1524,8 +1528,8 @@ func (c *ServiceCatalog) CreateTagOptionRequest(input *CreateTagOptionInput) (re // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // - DuplicateResourceException // The specified resource is a duplicate. @@ -1714,8 +1718,8 @@ func (c *ServiceCatalog) DeletePortfolioRequest(input *DeletePortfolioInput) (re // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10/DeletePortfolio func (c *ServiceCatalog) DeletePortfolio(input *DeletePortfolioInput) (*DeletePortfolioOutput, error) { @@ -1906,8 +1910,8 @@ func (c *ServiceCatalog) DeleteProductRequest(input *DeleteProductInput) (req *r // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10/DeleteProduct func (c *ServiceCatalog) DeleteProduct(input *DeleteProductInput) (*DeleteProductOutput, error) { @@ -2249,8 +2253,8 @@ func (c *ServiceCatalog) DeleteTagOptionRequest(input *DeleteTagOptionInput) (re // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // - ResourceInUseException // A resource that is currently in use. Ensure that the resource is not in use @@ -3638,8 +3642,8 @@ func (c *ServiceCatalog) DescribeTagOptionRequest(input *DescribeTagOptionInput) // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // - ResourceNotFoundException // The specified resource was not found. @@ -3710,17 +3714,24 @@ func (c *ServiceCatalog) DisableAWSOrganizationsAccessRequest(input *DisableAWSO // DisableAWSOrganizationsAccess API operation for AWS Service Catalog. // -// Disable portfolio sharing through AWS Organizations feature. This feature -// will not delete your current shares but it will prevent you from creating -// new shares throughout your organization. Current shares will not be in sync -// with your organization structure if it changes after calling this API. This -// API can only be called by the management account in the organization. +// Disable portfolio sharing through the Organizations service. This command +// will not delete your current shares, but prevents you from creating new shares +// throughout your organization. Current shares are not kept in sync with your +// organization structure if the structure changes after calling this API. Only +// the management account in the organization can call this API. // -// This API can't be invoked if there are active delegated administrators in +// You cannot call this API if there are active delegated administrators in // the organization. // // Note that a delegated administrator is not authorized to invoke DisableAWSOrganizationsAccess. // +// If you share an Service Catalog portfolio in an organization within Organizations, +// and then disable Organizations access for Service Catalog, the portfolio +// access permissions will not sync with the latest changes to the organization +// structure. Specifically, accounts that you removed from the organization +// after disabling Service Catalog access will retain access to the previously +// shared portfolio. +// // 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. @@ -4151,8 +4162,8 @@ func (c *ServiceCatalog) DisassociateTagOptionFromResourceRequest(input *Disasso // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // - ResourceNotFoundException // The specified resource was not found. @@ -4223,17 +4234,27 @@ func (c *ServiceCatalog) EnableAWSOrganizationsAccessRequest(input *EnableAWSOrg // EnableAWSOrganizationsAccess API operation for AWS Service Catalog. // -// Enable portfolio sharing feature through AWS Organizations. This API will -// allow Service Catalog to receive updates on your organization in order to -// sync your shares with the current structure. This API can only be called -// by the management account in the organization. +// Enable portfolio sharing feature through Organizations. This API will allow +// Service Catalog to receive updates on your organization in order to sync +// your shares with the current structure. This API can only be called by the +// management account in the organization. // -// By calling this API Service Catalog will make a call to organizations:EnableAWSServiceAccess -// on your behalf so that your shares can be in sync with any changes in your -// AWS Organizations structure. +// When you call this API, Service Catalog calls organizations:EnableAWSServiceAccess +// on your behalf so that your shares stay in sync with any changes in your +// Organizations structure. // // Note that a delegated administrator is not authorized to invoke EnableAWSOrganizationsAccess. // +// If you have previously disabled Organizations access for Service Catalog, +// and then enable access again, the portfolio access permissions might not +// sync with the latest changes to the organization structure. Specifically, +// accounts that you removed from the organization after disabling Service Catalog +// access, and before you enabled access again, can retain access to the previously +// shared portfolio. As a result, an account that has been removed from the +// organization might still be able to create or manage Amazon Web Services +// resources when it is no longer authorized to do so. Amazon Web Services is +// working to resolve this issue. +// // 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. @@ -4494,9 +4515,9 @@ func (c *ServiceCatalog) GetAWSOrganizationsAccessStatusRequest(input *GetAWSOrg // GetAWSOrganizationsAccessStatus API operation for AWS Service Catalog. // -// Get the Access Status for AWS Organization portfolio share feature. This -// API can only be called by the management account in the organization or by -// a delegated admin. +// Get the Access Status for Organizations portfolio share feature. This API +// can only be called by the management account in the organization or by a +// delegated admin. // // 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 @@ -4719,10 +4740,11 @@ func (c *ServiceCatalog) ImportAsProvisionedProductRequest(input *ImportAsProvis // ImportAsProvisionedProduct API operation for AWS Service Catalog. // -// Requests the import of a resource as a Service Catalog provisioned product -// that is associated to a Service Catalog product and provisioning artifact. -// Once imported, all supported Service Catalog governance actions are supported -// on the provisioned product. +// Requests the import of a resource as a Amazon Web Services Service Catalog +// provisioned product that is associated to a Amazon Web Services Service Catalog +// product and provisioning artifact. Once imported, all supported Amazon Web +// Services Service Catalog governance actions are supported on the provisioned +// product. // // Resource import only supports CloudFormation stack ARNs. CloudFormation StackSets // and non-root nested stacks are not supported. @@ -4732,7 +4754,7 @@ func (c *ServiceCatalog) ImportAsProvisionedProductRequest(input *ImportAsProvis // IMPORT_ROLLBACK_COMPLETE. // // Import of the resource requires that the CloudFormation stack template matches -// the associated Service Catalog product provisioning artifact. +// the associated Amazon Web Services Service Catalog product provisioning artifact. // // The user or role that performs this operation must have the cloudformation:GetTemplate // and cloudformation:DescribeStacks IAM policy permissions. @@ -6490,8 +6512,8 @@ func (c *ServiceCatalog) ListResourcesForTagOptionRequest(input *ListResourcesFo // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // - ResourceNotFoundException // The specified resource was not found. @@ -6892,7 +6914,8 @@ func (c *ServiceCatalog) ListStackInstancesForProvisionedProductRequest(input *L // // Returns summary information about stack instances that are associated with // the specified CFN_STACKSET type provisioned product. You can filter for stack -// instances that are associated with a specific AWS account name or region. +// instances that are associated with a specific Amazon Web Services account +// name or Region. // // 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 @@ -6993,8 +7016,8 @@ func (c *ServiceCatalog) ListTagOptionsRequest(input *ListTagOptionsInput) (req // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // - InvalidParametersException // One or more parameters provided to the operation are not valid. @@ -7651,6 +7674,13 @@ func (c *ServiceCatalog) SearchProvisionedProductsRequest(input *SearchProvision // // Gets information about the provisioned products that meet the specified criteria. // +// To ensure a complete list of provisioned products and remove duplicate products, +// use sort-by createdTime. +// +// Here is a CLI example: +// +// aws servicecatalog search-provisioned-products --sort-by createdTime +// // 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. @@ -7969,8 +7999,8 @@ func (c *ServiceCatalog) UpdatePortfolioRequest(input *UpdatePortfolioInput) (re // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10/UpdatePortfolio func (c *ServiceCatalog) UpdatePortfolio(input *UpdatePortfolioInput) (*UpdatePortfolioOutput, error) { @@ -8161,8 +8191,8 @@ func (c *ServiceCatalog) UpdateProductRequest(input *UpdateProductInput) (req *r // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // See also, https://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10/UpdateProduct func (c *ServiceCatalog) UpdateProduct(input *UpdateProductInput) (*UpdateProductOutput, error) { @@ -8586,8 +8616,8 @@ func (c *ServiceCatalog) UpdateTagOptionRequest(input *UpdateTagOptionInput) (re // // - TagOptionNotMigratedException // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. // // - ResourceNotFoundException // The specified resource was not found. @@ -9936,8 +9966,7 @@ type CreateConstraintInput struct { // // You also cannot have more than one STACKSET constraint on a product and portfolio. // - // Products with a STACKSET constraint will launch an AWS CloudFormation stack - // set. + // Products with a STACKSET constraint will launch an CloudFormation stack set. // // TEMPLATE // @@ -10291,13 +10320,13 @@ type CreatePortfolioShareInput struct { // * zh - Chinese AcceptLanguage *string `type:"string"` - // The AWS account ID. For example, 123456789012. + // The Amazon Web Services account ID. For example, 123456789012. AccountId *string `type:"string"` - // The organization node to whom you are going to share. If OrganizationNode - // is passed in, PortfolioShare will be created for the node an ListOrganizationPortfolioAccessd - // its children (when applies), and a PortfolioShareToken will be returned in - // the output in order for the administrator to monitor the status of the PortfolioShare + // The organization node to whom you are going to share. When you pass OrganizationNode, + // it creates PortfolioShare for all of the Amazon Web Services accounts that + // are associated to the OrganizationNode. The output returns a PortfolioShareToken, + // which enables the administrator to monitor the status of the PortfolioShare // creation process. OrganizationNode *OrganizationNode `type:"structure"` @@ -10686,7 +10715,8 @@ type CreateProvisionedProductPlanInput struct { ProductId *string `min:"1" type:"string" required:"true"` // A user-friendly name for the provisioned product. This value must be unique - // for the AWS account and cannot be updated after the product is provisioned. + // for the Amazon Web Services account and cannot be updated after the product + // is provisioned. // // ProvisionedProductName is a required field ProvisionedProductName *string `min:"1" type:"string" required:"true"` @@ -11022,11 +11052,13 @@ type CreateProvisioningArtifactOutput struct { // Specify the template source with one of the following options, but not both. // Keys accepted: [ LoadTemplateFromURL, ImportFromPhysicalId ]. // - // The URL of the CloudFormation template in Amazon S3, in JSON format. + // The URL of the CloudFormation template in Amazon S3, Amazon Web Services + // CodeCommit, or GitHub in JSON format. // // LoadTemplateFromURL // - // Use the URL of the CloudFormation template in Amazon S3 in JSON format. + // Use the URL of the CloudFormation template in Amazon S3, Amazon Web Services + // CodeCommit, or GitHub in JSON format. // // ImportFromPhysicalId // @@ -11093,16 +11125,16 @@ type CreateServiceActionInput struct { // // Name // - // The name of the AWS Systems Manager document (SSM document). For example, - // AWS-RestartEC2Instance. + // The name of the Amazon Web Services Systems Manager document (SSM document). + // For example, AWS-RestartEC2Instance. // // If you are using a shared SSM document, you must provide the ARN instead // of the name. // // Version // - // The AWS Systems Manager automation document version. For example, "Version": - // "1" + // The Amazon Web Services Systems Manager automation document version. For + // example, "Version": "1" // // AssumeRole // @@ -11533,7 +11565,7 @@ type DeletePortfolioShareInput struct { // * zh - Chinese AcceptLanguage *string `type:"string"` - // The AWS account ID. + // The Amazon Web Services account ID. AccountId *string `type:"string"` // The organization node to whom you are going to stop sharing. @@ -11733,7 +11765,7 @@ type DeleteProvisionedProductPlanInput struct { // * zh - Chinese AcceptLanguage *string `type:"string"` - // If set to true, AWS Service Catalog stops managing the specified provisioned + // If set to true, Service Catalog stops managing the specified provisioned // product even if it cannot delete the underlying resources. IgnoreErrors *bool `type:"boolean"` @@ -13419,7 +13451,8 @@ func (s *DescribeProvisioningArtifactInput) SetVerbose(v bool) *DescribeProvisio type DescribeProvisioningArtifactOutput struct { _ struct{} `type:"structure"` - // The URL of the CloudFormation template in Amazon S3. + // The URL of the CloudFormation template in Amazon S3, Amazon Web Services + // CodeCommit, or GitHub in JSON format. Info map[string]*string `min:"1" type:"map"` // Information about the provisioning artifact. @@ -13602,7 +13635,7 @@ type DescribeProvisioningParametersOutput struct { // Information about the parameters used to provision the product. ProvisioningArtifactParameters []*ProvisioningArtifactParameter `type:"list"` - // An object that contains information about preferences, such as regions and + // An object that contains information about preferences, such as Regions and // accounts, for the provisioning artifact. ProvisioningArtifactPreferences *ProvisioningArtifactPreferences `type:"structure"` @@ -14875,8 +14908,8 @@ type ExecuteProvisionedProductServiceActionInput struct { // A map of all self-service action parameters and their values. If a provided // parameter is of a special type, such as TARGET, the provided value will override - // the default value generated by AWS Service Catalog. If the parameters field - // is not provided, no additional parameters are passed and default values will + // the default value generated by Service Catalog. If the parameters field is + // not provided, no additional parameters are passed and default values will // be used for any special parameters such as TARGET. Parameters map[string][]*string `min:"1" type:"map"` @@ -15344,7 +15377,8 @@ type ImportAsProvisionedProductInput struct { ProductId *string `min:"1" type:"string" required:"true"` // The user-friendly name of the provisioned product. The value must be unique - // for the AWS account. The name cannot be updated after the product is provisioned. + // for the Amazon Web Services account. The name cannot be updated after the + // product is provisioned. // // ProvisionedProductName is a required field ProvisionedProductName *string `min:"1" type:"string" required:"true"` @@ -16512,7 +16546,7 @@ func (s *ListPortfolioAccessInput) SetPortfolioId(v string) *ListPortfolioAccess type ListPortfolioAccessOutput struct { _ struct{} `type:"structure"` - // Information about the AWS accounts with access to the portfolio. + // Information about the Amazon Web Services accounts with access to the portfolio. AccountIds []*string `type:"list"` // The page token to use to retrieve the next set of results. If there are no @@ -18618,8 +18652,8 @@ type ProductViewSummary struct { SupportUrl *string `type:"string"` // The product type. Contact the product administrator for the significance - // of this value. If this value is MARKETPLACE, the product was created by AWS - // Marketplace. + // of this value. If this value is MARKETPLACE, the product was created by Amazon + // Web Services Marketplace. Type *string `type:"string" enum:"ProductType"` } @@ -18742,7 +18776,8 @@ type ProvisionProductInput struct { ProvisionToken *string `min:"1" type:"string" idempotencyToken:"true"` // A user-friendly name for the provisioned product. This value must be unique - // for the AWS account and cannot be updated after the product is provisioned. + // for the Amazon Web Services account and cannot be updated after the product + // is provisioned. // // ProvisionedProductName is a required field ProvisionedProductName *string `min:"1" type:"string" required:"true"` @@ -19710,11 +19745,12 @@ type ProvisioningArtifactDetail struct { // The type of provisioning artifact. // - // * CLOUD_FORMATION_TEMPLATE - AWS CloudFormation template + // * CLOUD_FORMATION_TEMPLATE - CloudFormation template // - // * MARKETPLACE_AMI - AWS Marketplace AMI + // * MARKETPLACE_AMI - Amazon Web Services Marketplace AMI // - // * MARKETPLACE_CAR - AWS Marketplace Clusters and AWS Resources + // * MARKETPLACE_CAR - Amazon Web Services Marketplace Clusters and Amazon + // Web Services Resources Type *string `type:"string" enum:"ProvisioningArtifactType"` } @@ -19903,19 +19939,19 @@ func (s *ProvisioningArtifactParameter) SetParameterType(v string) *Provisioning // // For more information on maximum concurrent accounts and failure tolerance, // see Stack set operation options (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options) -// in the AWS CloudFormation User Guide. +// in the CloudFormation User Guide. type ProvisioningArtifactPreferences struct { _ struct{} `type:"structure"` - // One or more AWS accounts where stack instances are deployed from the stack - // set. These accounts can be scoped in ProvisioningPreferences$StackSetAccounts + // One or more Amazon Web Services accounts where stack instances are deployed + // from the stack set. These accounts can be scoped in ProvisioningPreferences$StackSetAccounts // and UpdateProvisioningPreferences$StackSetAccounts. // // Applicable only to a CFN_STACKSET provisioned product type. StackSetAccounts []*string `type:"list"` - // One or more AWS Regions where stack instances are deployed from the stack - // set. These regions can be scoped in ProvisioningPreferences$StackSetRegions + // One or more Amazon Web Services Regions where stack instances are deployed + // from the stack set. These Regions can be scoped in ProvisioningPreferences$StackSetRegions // and UpdateProvisioningPreferences$StackSetRegions. // // Applicable only to a CFN_STACKSET provisioned product type. @@ -19961,15 +19997,15 @@ type ProvisioningArtifactProperties struct { // the previous provisioning artifact. Description *string `type:"string"` - // If set to true, AWS Service Catalog stops validating the specified provisioning - // artifact even if it is invalid. + // If set to true, Amazon Web Services Service Catalog stops validating the + // specified provisioning artifact even if it is invalid. DisableTemplateValidation *bool `type:"boolean"` // Specify the template source with one of the following options, but not both. // Keys accepted: [ LoadTemplateFromURL, ImportFromPhysicalId ] // - // The URL of the CloudFormation template in Amazon S3. Specify the URL in JSON - // format as follows: + // The URL of the CloudFormation template in Amazon S3, Amazon Web Services + // CodeCommit, or GitHub in JSON format. Specify the URL in JSON format as follows: // // "LoadTemplateFromURL": "https://s3.amazonaws.com/cf-templates-ozkq9d3hgiq2-us-east-1/..." // @@ -19986,11 +20022,12 @@ type ProvisioningArtifactProperties struct { // The type of provisioning artifact. // - // * CLOUD_FORMATION_TEMPLATE - AWS CloudFormation template + // * CLOUD_FORMATION_TEMPLATE - CloudFormation template // - // * MARKETPLACE_AMI - AWS Marketplace AMI + // * MARKETPLACE_AMI - Amazon Web Services Marketplace AMI // - // * MARKETPLACE_CAR - AWS Marketplace Clusters and AWS Resources + // * MARKETPLACE_CAR - Amazon Web Services Marketplace Clusters and Amazon + // Web Services Resources Type *string `type:"string" enum:"ProvisioningArtifactType"` } @@ -20075,8 +20112,8 @@ type ProvisioningArtifactSummary struct { // The name of the provisioning artifact. Name *string `type:"string"` - // The metadata for the provisioning artifact. This is used with AWS Marketplace - // products. + // The metadata for the provisioning artifact. This is used with Amazon Web + // Services Marketplace products. ProvisioningArtifactMetadata map[string]*string `min:"1" type:"map"` } @@ -20228,20 +20265,22 @@ func (s *ProvisioningParameter) SetValue(v string) *ProvisioningParameter { // The user-defined preferences that will be applied when updating a provisioned // product. Not all preferences are applicable to all provisioned product type // -// One or more AWS accounts that will have access to the provisioned product. +// One or more Amazon Web Services accounts that will have access to the provisioned +// product. // // Applicable only to a CFN_STACKSET provisioned product type. // -// The AWS accounts specified should be within the list of accounts in the STACKSET -// constraint. To get the list of accounts in the STACKSET constraint, use the -// DescribeProvisioningParameters operation. +// The Amazon Web Services accounts specified should be within the list of accounts +// in the STACKSET constraint. To get the list of accounts in the STACKSET constraint, +// use the DescribeProvisioningParameters operation. // // If no values are specified, the default value is all accounts from the STACKSET // constraint. type ProvisioningPreferences struct { _ struct{} `type:"structure"` - // One or more AWS accounts where the provisioned product will be available. + // One or more Amazon Web Services accounts where the provisioned product will + // be available. // // Applicable only to a CFN_STACKSET provisioned product type. // @@ -20253,10 +20292,10 @@ type ProvisioningPreferences struct { // constraint. StackSetAccounts []*string `type:"list"` - // The number of accounts, per region, for which this operation can fail before - // AWS Service Catalog stops the operation in that region. If the operation - // is stopped in a region, AWS Service Catalog doesn't attempt the operation - // in any subsequent regions. + // The number of accounts, per Region, for which this operation can fail before + // Service Catalog stops the operation in that Region. If the operation is stopped + // in a Region, Service Catalog doesn't attempt the operation in any subsequent + // Regions. // // Applicable only to a CFN_STACKSET provisioned product type. // @@ -20266,13 +20305,13 @@ type ProvisioningPreferences struct { // The default value is 0 if no value is specified. StackSetFailureToleranceCount *int64 `type:"integer"` - // The percentage of accounts, per region, for which this stack operation can - // fail before AWS Service Catalog stops the operation in that region. If the - // operation is stopped in a region, AWS Service Catalog doesn't attempt the - // operation in any subsequent regions. + // The percentage of accounts, per Region, for which this stack operation can + // fail before Service Catalog stops the operation in that Region. If the operation + // is stopped in a Region, Service Catalog doesn't attempt the operation in + // any subsequent Regions. // // When calculating the number of accounts based on the specified percentage, - // AWS Service Catalog rounds down to the next whole number. + // Service Catalog rounds down to the next whole number. // // Applicable only to a CFN_STACKSET provisioned product type. // @@ -20298,8 +20337,8 @@ type ProvisioningPreferences struct { // one time. // // When calculating the number of accounts based on the specified percentage, - // AWS Service Catalog rounds down to the next whole number. This is true except - // in cases where rounding down would result is zero. In this case, AWS Service + // Service Catalog rounds down to the next whole number. This is true except + // in cases where rounding down would result is zero. In this case, Service // Catalog sets the number as 1 instead. // // Note that this setting lets you specify the maximum for operations. For large @@ -20312,15 +20351,16 @@ type ProvisioningPreferences struct { // but not both. StackSetMaxConcurrencyPercentage *int64 `min:"1" type:"integer"` - // One or more AWS Regions where the provisioned product will be available. + // One or more Amazon Web Services Regions where the provisioned product will + // be available. // // Applicable only to a CFN_STACKSET provisioned product type. // - // The specified regions should be within the list of regions from the STACKSET - // constraint. To get the list of regions in the STACKSET constraint, use the + // The specified Regions should be within the list of Regions from the STACKSET + // constraint. To get the list of Regions in the STACKSET constraint, use the // DescribeProvisioningParameters operation. // - // If no values are specified, the default value is all regions from the STACKSET + // If no values are specified, the default value is all Regions from the STACKSET // constraint. StackSetRegions []*string `type:"list"` } @@ -22013,20 +22053,22 @@ func (s *ShareError) SetMessage(v string) *ShareError { return s } -// An AWS CloudFormation stack, in a specific account and region, that's part -// of a stack set operation. A stack instance is a reference to an attempted -// or actual stack in a given account within a given region. A stack instance -// can exist without a stack—for example, if the stack couldn't be created -// for some reason. A stack instance is associated with only one stack set. -// Each stack instance contains the ID of its associated stack set, as well -// as the ID of the actual stack and the stack status. +// An CloudFormation stack, in a specific account and Region, that's part of +// a stack set operation. A stack instance is a reference to an attempted or +// actual stack in a given account within a given Region. A stack instance can +// exist without a stack—for example, if the stack couldn't be created for +// some reason. A stack instance is associated with only one stack set. Each +// stack instance contains the ID of its associated stack set, as well as the +// ID of the actual stack and the stack status. type StackInstance struct { _ struct{} `type:"structure"` - // The name of the AWS account that the stack instance is associated with. + // The name of the Amazon Web Services account that the stack instance is associated + // with. Account *string `type:"string"` - // The name of the AWS region that the stack instance is associated with. + // The name of the Amazon Web Services Region that the stack instance is associated + // with. Region *string `type:"string"` // The status of the stack instance, in terms of its synchronization with its @@ -22164,7 +22206,8 @@ type TagOptionDetail struct { // The TagOption key. Key *string `min:"1" type:"string"` - // The AWS account Id of the owner account that created the TagOption. + // The Amazon Web Services account Id of the owner account that created the + // TagOption. Owner *string `type:"string"` // The TagOption value. @@ -22220,8 +22263,8 @@ func (s *TagOptionDetail) SetValue(v string) *TagOptionDetail { } // An operation requiring TagOptions failed because the TagOptions migration -// process has not been performed for this account. Please use the AWS console -// to perform the migration process before retrying the operation. +// process has not been performed for this account. Use the Amazon Web Services +// Management Console to perform the migration process before retrying the operation. type TagOptionNotMigratedException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` @@ -22338,7 +22381,7 @@ type TerminateProvisionedProductInput struct { // * zh - Chinese AcceptLanguage *string `type:"string"` - // If set to true, AWS Service Catalog stops managing the specified provisioned + // If set to true, Service Catalog stops managing the specified provisioned // product even if it cannot delete the underlying resources. IgnoreErrors *bool `type:"boolean"` @@ -22541,8 +22584,7 @@ type UpdateConstraintInput struct { // // You also cannot have more than one STACKSET constraint on a product and portfolio. // - // Products with a STACKSET constraint will launch an AWS CloudFormation stack - // set. + // Products with a STACKSET constraint will launch an CloudFormation stack set. // // TEMPLATE // @@ -22835,8 +22877,8 @@ type UpdatePortfolioShareInput struct { // * zh - Chinese AcceptLanguage *string `type:"string"` - // The AWS Account Id of the recipient account. This field is required when - // updating an external account to account type share. + // The Amazon Web Services account Id of the recipient account. This field is + // required when updating an external account to account type share. AccountId *string `type:"string"` // Information about the organization node. @@ -23423,12 +23465,12 @@ type UpdateProvisionedProductPropertiesInput struct { // or ExecuteProvisionedProductServiceAction. Only a role ARN is valid. A user // ARN is invalid. // - // The OWNER key accepts user ARNs and role ARNs. The owner is the user that - // has permission to see, update, terminate, and execute service actions in - // the provisioned product. + // The OWNER key accepts IAM user ARNs, IAM role ARNs, and STS assumed-role + // ARNs. The owner is the user that has permission to see, update, terminate, + // and execute service actions in the provisioned product. // // The administrator can change the owner of a provisioned product to another - // IAM user within the same account. Both end user owners and administrators + // IAM or STS entity within the same account. Both end user owners and administrators // can see ownership history of the provisioned product using the ListRecordHistory // API. The new owner can describe all past records for the provisioned product // using the DescribeRecord API. The previous owner can no longer use DescribeRecord, @@ -23701,7 +23743,8 @@ func (s *UpdateProvisioningArtifactInput) SetProvisioningArtifactId(v string) *U type UpdateProvisioningArtifactOutput struct { _ struct{} `type:"structure"` - // The URL of the CloudFormation template in Amazon S3. + // The URL of the CloudFormation template in Amazon S3, Amazon Web Services + // CodeCommit, or GitHub in JSON format. Info map[string]*string `min:"1" type:"map"` // Information about the provisioning artifact. @@ -23815,22 +23858,23 @@ func (s *UpdateProvisioningParameter) SetValue(v string) *UpdateProvisioningPara type UpdateProvisioningPreferences struct { _ struct{} `type:"structure"` - // One or more AWS accounts that will have access to the provisioned product. + // One or more Amazon Web Services accounts that will have access to the provisioned + // product. // // Applicable only to a CFN_STACKSET provisioned product type. // - // The AWS accounts specified should be within the list of accounts in the STACKSET - // constraint. To get the list of accounts in the STACKSET constraint, use the - // DescribeProvisioningParameters operation. + // The Amazon Web Services accounts specified should be within the list of accounts + // in the STACKSET constraint. To get the list of accounts in the STACKSET constraint, + // use the DescribeProvisioningParameters operation. // // If no values are specified, the default value is all accounts from the STACKSET // constraint. StackSetAccounts []*string `type:"list"` - // The number of accounts, per region, for which this operation can fail before - // AWS Service Catalog stops the operation in that region. If the operation - // is stopped in a region, AWS Service Catalog doesn't attempt the operation - // in any subsequent regions. + // The number of accounts, per Region, for which this operation can fail before + // Service Catalog stops the operation in that Region. If the operation is stopped + // in a Region, Service Catalog doesn't attempt the operation in any subsequent + // Regions. // // Applicable only to a CFN_STACKSET provisioned product type. // @@ -23840,13 +23884,13 @@ type UpdateProvisioningPreferences struct { // The default value is 0 if no value is specified. StackSetFailureToleranceCount *int64 `type:"integer"` - // The percentage of accounts, per region, for which this stack operation can - // fail before AWS Service Catalog stops the operation in that region. If the - // operation is stopped in a region, AWS Service Catalog doesn't attempt the - // operation in any subsequent regions. + // The percentage of accounts, per Region, for which this stack operation can + // fail before Service Catalog stops the operation in that Region. If the operation + // is stopped in a Region, Service Catalog doesn't attempt the operation in + // any subsequent Regions. // // When calculating the number of accounts based on the specified percentage, - // AWS Service Catalog rounds down to the next whole number. + // Service Catalog rounds down to the next whole number. // // Applicable only to a CFN_STACKSET provisioned product type. // @@ -23872,8 +23916,8 @@ type UpdateProvisioningPreferences struct { // one time. // // When calculating the number of accounts based on the specified percentage, - // AWS Service Catalog rounds down to the next whole number. This is true except - // in cases where rounding down would result is zero. In this case, AWS Service + // Service Catalog rounds down to the next whole number. This is true except + // in cases where rounding down would result is zero. In this case, Service // Catalog sets the number as 1 instead. // // Note that this setting lets you specify the maximum for operations. For large @@ -23886,7 +23930,7 @@ type UpdateProvisioningPreferences struct { // but not both. StackSetMaxConcurrencyPercentage *int64 `min:"1" type:"integer"` - // Determines what action AWS Service Catalog performs to a stack set or a stack + // Determines what action Service Catalog performs to a stack set or a stack // instance represented by the provisioned product. The default value is UPDATE // if nothing is specified. // @@ -23896,7 +23940,7 @@ type UpdateProvisioningPreferences struct { // // Creates a new stack instance in the stack set represented by the provisioned // product. In this case, only new stack instances are created based on accounts - // and regions; if new ProductId or ProvisioningArtifactID are passed, they + // and Regions; if new ProductId or ProvisioningArtifactID are passed, they // will be ignored. // // UPDATE @@ -23910,15 +23954,16 @@ type UpdateProvisioningPreferences struct { // product. StackSetOperationType *string `type:"string" enum:"StackSetOperationType"` - // One or more AWS Regions where the provisioned product will be available. + // One or more Amazon Web Services Regions where the provisioned product will + // be available. // // Applicable only to a CFN_STACKSET provisioned product type. // - // The specified regions should be within the list of regions from the STACKSET - // constraint. To get the list of regions in the STACKSET constraint, use the + // The specified Regions should be within the list of Regions from the STACKSET + // constraint. To get the list of Regions in the STACKSET constraint, use the // DescribeProvisioningParameters operation. // - // If no values are specified, the default value is all regions from the STACKSET + // If no values are specified, the default value is all Regions from the STACKSET // constraint. StackSetRegions []*string `type:"list"` } diff --git a/service/servicecatalog/doc.go b/service/servicecatalog/doc.go index ec1d917440..1725686919 100644 --- a/service/servicecatalog/doc.go +++ b/service/servicecatalog/doc.go @@ -3,10 +3,10 @@ // Package servicecatalog provides the client and types for making API // requests to AWS Service Catalog. // -// AWS Service Catalog (https://aws.amazon.com/servicecatalog/) enables organizations -// to create and manage catalogs of IT services that are approved for AWS. To -// get the most out of this documentation, you should be familiar with the terminology -// discussed in AWS Service Catalog Concepts (http://docs.aws.amazon.com/servicecatalog/latest/adminguide/what-is_concepts.html). +// Service Catalog (https://aws.amazon.com/servicecatalog/) enables organizations +// to create and manage catalogs of IT services that are approved for Amazon +// Web Services. To get the most out of this documentation, you should be familiar +// with the terminology discussed in Service Catalog Concepts (http://docs.aws.amazon.com/servicecatalog/latest/adminguide/what-is_concepts.html). // // See https://docs.aws.amazon.com/goto/WebAPI/servicecatalog-2015-12-10 for more information on this service. // diff --git a/service/servicecatalog/errors.go b/service/servicecatalog/errors.go index 5fed488c09..5ee53170f4 100644 --- a/service/servicecatalog/errors.go +++ b/service/servicecatalog/errors.go @@ -59,8 +59,8 @@ const ( // "TagOptionNotMigratedException". // // An operation requiring TagOptions failed because the TagOptions migration - // process has not been performed for this account. Please use the AWS console - // to perform the migration process before retrying the operation. + // process has not been performed for this account. Use the Amazon Web Services + // Management Console to perform the migration process before retrying the operation. ErrCodeTagOptionNotMigratedException = "TagOptionNotMigratedException" )