aws-sdk-rekognition 1.48.0 → 1.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.52.0
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -49,6 +49,6 @@ require_relative 'aws-sdk-rekognition/customizations'
49
49
  # @!group service
50
50
  module Aws::Rekognition
51
51
 
52
- GEM_VERSION = '1.48.0'
52
+ GEM_VERSION = '1.52.0'
53
53
 
54
54
  end
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -340,10 +340,20 @@ module Aws::Rekognition
340
340
  # Compares a face in the *source* input image with each of the 100
341
341
  # largest faces detected in the *target* input image.
342
342
  #
343
- # <note markdown="1"> If the source image contains multiple faces, the service detects the
343
+ # If the source image contains multiple faces, the service detects the
344
344
  # largest face and compares it with each face detected in the target
345
345
  # image.
346
346
  #
347
+ # <note markdown="1"> CompareFaces uses machine learning algorithms, which are
348
+ # probabilistic. A false negative is an incorrect prediction that a face
349
+ # in the target image has a low similarity confidence score when
350
+ # compared to the face in the source image. To reduce the probability of
351
+ # false negatives, we recommend that you compare the target image
352
+ # against multiple source images. If you plan to use `CompareFaces` to
353
+ # make a decision that impacts an individual's rights, privacy, or
354
+ # access to services, we recommend that you pass the result to a human
355
+ # for review and further validation before taking action.
356
+ #
347
357
  # </note>
348
358
  #
349
359
  # You pass the input and target images either as base64-encoded image
@@ -578,11 +588,17 @@ module Aws::Rekognition
578
588
  # </note>
579
589
  #
580
590
  # This operation requires permissions to perform the
581
- # `rekognition:CreateCollection` action.
591
+ # `rekognition:CreateCollection` action. If you want to tag your
592
+ # collection, you also require permission to perform the
593
+ # `rekognition:TagResource` operation.
582
594
  #
583
595
  # @option params [required, String] :collection_id
584
596
  # ID for the collection that you are creating.
585
597
  #
598
+ # @option params [Hash<String,String>] :tags
599
+ # A set of tags (key-value pairs) that you want to attach to the
600
+ # collection.
601
+ #
586
602
  # @return [Types::CreateCollectionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
587
603
  #
588
604
  # * {Types::CreateCollectionResponse#status_code #status_code} => Integer
@@ -608,6 +624,9 @@ module Aws::Rekognition
608
624
  #
609
625
  # resp = client.create_collection({
610
626
  # collection_id: "CollectionId", # required
627
+ # tags: {
628
+ # "TagKey" => "TagValue",
629
+ # },
611
630
  # })
612
631
  #
613
632
  # @example Response structure
@@ -688,6 +707,21 @@ module Aws::Rekognition
688
707
  # @option params [required, Types::TestingData] :testing_data
689
708
  # The dataset to use for testing.
690
709
  #
710
+ # @option params [Hash<String,String>] :tags
711
+ # A set of tags (key-value pairs) that you want to attach to the model.
712
+ #
713
+ # @option params [String] :kms_key_id
714
+ # The identifier for your AWS Key Management Service (AWS KMS) customer
715
+ # master key (CMK). You can supply the Amazon Resource Name (ARN) of
716
+ # your CMK, the ID of your CMK, or an alias for your CMK. The key is
717
+ # used to encrypt training and test images copied into the service for
718
+ # model training. Your source images are unaffected. The key is also
719
+ # used to encrypt training results and manifest files written to the
720
+ # output Amazon S3 bucket (`OutputConfig`).
721
+ #
722
+ # If you don't specify a value for `KmsKeyId`, images copied into the
723
+ # service are encrypted using a key that AWS owns and manages.
724
+ #
691
725
  # @return [Types::CreateProjectVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
692
726
  #
693
727
  # * {Types::CreateProjectVersionResponse#project_version_arn #project_version_arn} => String
@@ -728,6 +762,10 @@ module Aws::Rekognition
728
762
  # ],
729
763
  # auto_create: false,
730
764
  # },
765
+ # tags: {
766
+ # "TagKey" => "TagValue",
767
+ # },
768
+ # kms_key_id: "KmsKeyId",
731
769
  # })
732
770
  #
733
771
  # @example Response structure
@@ -760,6 +798,11 @@ module Aws::Rekognition
760
798
  # StopStreamProcessor to stop processing. You can delete the stream
761
799
  # processor by calling DeleteStreamProcessor.
762
800
  #
801
+ # This operation requires permissions to perform the
802
+ # `rekognition:CreateStreamProcessor` action. If you want to tag your
803
+ # stream processor, you also require permission to perform the
804
+ # `rekognition:TagResource` operation.
805
+ #
763
806
  # @option params [required, Types::StreamProcessorInput] :input
764
807
  # Kinesis video stream stream that provides the source streaming video.
765
808
  # If you are using the AWS CLI, the parameter name is
@@ -784,6 +827,10 @@ module Aws::Rekognition
784
827
  # @option params [required, String] :role_arn
785
828
  # ARN of the IAM role that allows access to the stream processor.
786
829
  #
830
+ # @option params [Hash<String,String>] :tags
831
+ # A set of tags (key-value pairs) that you want to attach to the stream
832
+ # processor.
833
+ #
787
834
  # @return [Types::CreateStreamProcessorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
788
835
  #
789
836
  # * {Types::CreateStreamProcessorResponse#stream_processor_arn #stream_processor_arn} => String
@@ -809,6 +856,9 @@ module Aws::Rekognition
809
856
  # },
810
857
  # },
811
858
  # role_arn: "RoleArn", # required
859
+ # tags: {
860
+ # "TagKey" => "TagValue",
861
+ # },
812
862
  # })
813
863
  #
814
864
  # @example Response structure
@@ -1143,6 +1193,7 @@ module Aws::Rekognition
1143
1193
  # resp.project_version_descriptions[0].manifest_summary.s3_object.bucket #=> String
1144
1194
  # resp.project_version_descriptions[0].manifest_summary.s3_object.name #=> String
1145
1195
  # resp.project_version_descriptions[0].manifest_summary.s3_object.version #=> String
1196
+ # resp.project_version_descriptions[0].kms_key_id #=> String
1146
1197
  # resp.next_token #=> String
1147
1198
  #
1148
1199
  #
@@ -3782,6 +3833,38 @@ module Aws::Rekognition
3782
3833
  req.send_request(options)
3783
3834
  end
3784
3835
 
3836
+ # Returns a list of tags in an Amazon Rekognition collection, stream
3837
+ # processor, or Custom Labels model.
3838
+ #
3839
+ # This operation requires permissions to perform the
3840
+ # `rekognition:ListTagsForResource` action.
3841
+ #
3842
+ # @option params [required, String] :resource_arn
3843
+ # Amazon Resource Name (ARN) of the model, collection, or stream
3844
+ # processor that contains the tags that you want a list of.
3845
+ #
3846
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3847
+ #
3848
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
3849
+ #
3850
+ # @example Request syntax with placeholder values
3851
+ #
3852
+ # resp = client.list_tags_for_resource({
3853
+ # resource_arn: "ResourceArn", # required
3854
+ # })
3855
+ #
3856
+ # @example Response structure
3857
+ #
3858
+ # resp.tags #=> Hash
3859
+ # resp.tags["TagKey"] #=> String
3860
+ #
3861
+ # @overload list_tags_for_resource(params = {})
3862
+ # @param [Hash] params ({})
3863
+ def list_tags_for_resource(params = {}, options = {})
3864
+ req = build_request(:list_tags_for_resource, params)
3865
+ req.send_request(options)
3866
+ end
3867
+
3785
3868
  # Returns an array of celebrities recognized in the input image. For
3786
3869
  # more information, see Recognizing Celebrities in the Amazon
3787
3870
  # Rekognition Developer Guide.
@@ -4058,6 +4141,9 @@ module Aws::Rekognition
4058
4141
  # bounding box contains a face) of the face that Amazon Rekognition used
4059
4142
  # for the input image.
4060
4143
  #
4144
+ # If no faces are detected in the input image, `SearchFacesByImage`
4145
+ # returns an `InvalidParameterException` error.
4146
+ #
4061
4147
  # For an example, Searching for a Face Using an Image in the Amazon
4062
4148
  # Rekognition Developer Guide.
4063
4149
  #
@@ -4986,6 +5072,71 @@ module Aws::Rekognition
4986
5072
  req.send_request(options)
4987
5073
  end
4988
5074
 
5075
+ # Adds one or more key-value tags to an Amazon Rekognition collection,
5076
+ # stream processor, or Custom Labels model. For more information, see
5077
+ # [Tagging AWS Resources][1].
5078
+ #
5079
+ # This operation requires permissions to perform the
5080
+ # `rekognition:TagResource` action.
5081
+ #
5082
+ #
5083
+ #
5084
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
5085
+ #
5086
+ # @option params [required, String] :resource_arn
5087
+ # Amazon Resource Name (ARN) of the model, collection, or stream
5088
+ # processor that you want to assign the tags to.
5089
+ #
5090
+ # @option params [required, Hash<String,String>] :tags
5091
+ # The key-value tags to assign to the resource.
5092
+ #
5093
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5094
+ #
5095
+ # @example Request syntax with placeholder values
5096
+ #
5097
+ # resp = client.tag_resource({
5098
+ # resource_arn: "ResourceArn", # required
5099
+ # tags: { # required
5100
+ # "TagKey" => "TagValue",
5101
+ # },
5102
+ # })
5103
+ #
5104
+ # @overload tag_resource(params = {})
5105
+ # @param [Hash] params ({})
5106
+ def tag_resource(params = {}, options = {})
5107
+ req = build_request(:tag_resource, params)
5108
+ req.send_request(options)
5109
+ end
5110
+
5111
+ # Removes one or more tags from an Amazon Rekognition collection, stream
5112
+ # processor, or Custom Labels model.
5113
+ #
5114
+ # This operation requires permissions to perform the
5115
+ # `rekognition:UntagResource` action.
5116
+ #
5117
+ # @option params [required, String] :resource_arn
5118
+ # Amazon Resource Name (ARN) of the model, collection, or stream
5119
+ # processor that you want to remove the tags from.
5120
+ #
5121
+ # @option params [required, Array<String>] :tag_keys
5122
+ # A list of the tags that you want to remove.
5123
+ #
5124
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5125
+ #
5126
+ # @example Request syntax with placeholder values
5127
+ #
5128
+ # resp = client.untag_resource({
5129
+ # resource_arn: "ResourceArn", # required
5130
+ # tag_keys: ["TagKey"], # required
5131
+ # })
5132
+ #
5133
+ # @overload untag_resource(params = {})
5134
+ # @param [Hash] params ({})
5135
+ def untag_resource(params = {}, options = {})
5136
+ req = build_request(:untag_resource, params)
5137
+ req.send_request(options)
5138
+ end
5139
+
4989
5140
  # @!endgroup
4990
5141
 
4991
5142
  # @param params ({})
@@ -4999,7 +5150,7 @@ module Aws::Rekognition
4999
5150
  params: params,
5000
5151
  config: config)
5001
5152
  context[:gem_name] = 'aws-sdk-rekognition'
5002
- context[:gem_version] = '1.48.0'
5153
+ context[:gem_version] = '1.52.0'
5003
5154
  Seahorse::Client::Request.new(handlers, context)
5004
5155
  end
5005
5156
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -176,6 +176,7 @@ module Aws::Rekognition
176
176
  KinesisDataStream = Shapes::StructureShape.new(name: 'KinesisDataStream')
177
177
  KinesisVideoArn = Shapes::StringShape.new(name: 'KinesisVideoArn')
178
178
  KinesisVideoStream = Shapes::StructureShape.new(name: 'KinesisVideoStream')
179
+ KmsKeyId = Shapes::StringShape.new(name: 'KmsKeyId')
179
180
  Label = Shapes::StructureShape.new(name: 'Label')
180
181
  LabelDetection = Shapes::StructureShape.new(name: 'LabelDetection')
181
182
  LabelDetectionSortBy = Shapes::StringShape.new(name: 'LabelDetectionSortBy')
@@ -191,6 +192,8 @@ module Aws::Rekognition
191
192
  ListFacesResponse = Shapes::StructureShape.new(name: 'ListFacesResponse')
192
193
  ListStreamProcessorsRequest = Shapes::StructureShape.new(name: 'ListStreamProcessorsRequest')
193
194
  ListStreamProcessorsResponse = Shapes::StructureShape.new(name: 'ListStreamProcessorsResponse')
195
+ ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
196
+ ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
194
197
  MaxFaces = Shapes::IntegerShape.new(name: 'MaxFaces')
195
198
  MaxFacesToIndex = Shapes::IntegerShape.new(name: 'MaxFacesToIndex')
196
199
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
@@ -245,6 +248,7 @@ module Aws::Rekognition
245
248
  RegionsOfInterest = Shapes::ListShape.new(name: 'RegionsOfInterest')
246
249
  RekognitionUniqueId = Shapes::StringShape.new(name: 'RekognitionUniqueId')
247
250
  ResourceAlreadyExistsException = Shapes::StructureShape.new(name: 'ResourceAlreadyExistsException')
251
+ ResourceArn = Shapes::StringShape.new(name: 'ResourceArn')
248
252
  ResourceInUseException = Shapes::StructureShape.new(name: 'ResourceInUseException')
249
253
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
250
254
  ResourceNotReadyException = Shapes::StructureShape.new(name: 'ResourceNotReadyException')
@@ -309,6 +313,12 @@ module Aws::Rekognition
309
313
  String = Shapes::StringShape.new(name: 'String')
310
314
  Summary = Shapes::StructureShape.new(name: 'Summary')
311
315
  Sunglasses = Shapes::StructureShape.new(name: 'Sunglasses')
316
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
317
+ TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
318
+ TagMap = Shapes::MapShape.new(name: 'TagMap')
319
+ TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
320
+ TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
321
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
312
322
  TechnicalCueSegment = Shapes::StructureShape.new(name: 'TechnicalCueSegment')
313
323
  TechnicalCueType = Shapes::StringShape.new(name: 'TechnicalCueType')
314
324
  TestingData = Shapes::StructureShape.new(name: 'TestingData')
@@ -327,6 +337,8 @@ module Aws::Rekognition
327
337
  ULong = Shapes::IntegerShape.new(name: 'ULong')
328
338
  UnindexedFace = Shapes::StructureShape.new(name: 'UnindexedFace')
329
339
  UnindexedFaces = Shapes::ListShape.new(name: 'UnindexedFaces')
340
+ UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
341
+ UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
330
342
  Url = Shapes::StringShape.new(name: 'Url')
331
343
  Urls = Shapes::ListShape.new(name: 'Urls')
332
344
  ValidationData = Shapes::StructureShape.new(name: 'ValidationData')
@@ -443,6 +455,7 @@ module Aws::Rekognition
443
455
  CoversBodyPart.struct_class = Types::CoversBodyPart
444
456
 
445
457
  CreateCollectionRequest.add_member(:collection_id, Shapes::ShapeRef.new(shape: CollectionId, required: true, location_name: "CollectionId"))
458
+ CreateCollectionRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
446
459
  CreateCollectionRequest.struct_class = Types::CreateCollectionRequest
447
460
 
448
461
  CreateCollectionResponse.add_member(:status_code, Shapes::ShapeRef.new(shape: UInteger, location_name: "StatusCode"))
@@ -461,6 +474,8 @@ module Aws::Rekognition
461
474
  CreateProjectVersionRequest.add_member(:output_config, Shapes::ShapeRef.new(shape: OutputConfig, required: true, location_name: "OutputConfig"))
462
475
  CreateProjectVersionRequest.add_member(:training_data, Shapes::ShapeRef.new(shape: TrainingData, required: true, location_name: "TrainingData"))
463
476
  CreateProjectVersionRequest.add_member(:testing_data, Shapes::ShapeRef.new(shape: TestingData, required: true, location_name: "TestingData"))
477
+ CreateProjectVersionRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
478
+ CreateProjectVersionRequest.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: KmsKeyId, location_name: "KmsKeyId"))
464
479
  CreateProjectVersionRequest.struct_class = Types::CreateProjectVersionRequest
465
480
 
466
481
  CreateProjectVersionResponse.add_member(:project_version_arn, Shapes::ShapeRef.new(shape: ProjectVersionArn, location_name: "ProjectVersionArn"))
@@ -471,6 +486,7 @@ module Aws::Rekognition
471
486
  CreateStreamProcessorRequest.add_member(:name, Shapes::ShapeRef.new(shape: StreamProcessorName, required: true, location_name: "Name"))
472
487
  CreateStreamProcessorRequest.add_member(:settings, Shapes::ShapeRef.new(shape: StreamProcessorSettings, required: true, location_name: "Settings"))
473
488
  CreateStreamProcessorRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: RoleArn, required: true, location_name: "RoleArn"))
489
+ CreateStreamProcessorRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
474
490
  CreateStreamProcessorRequest.struct_class = Types::CreateStreamProcessorRequest
475
491
 
476
492
  CreateStreamProcessorResponse.add_member(:stream_processor_arn, Shapes::ShapeRef.new(shape: StreamProcessorArn, location_name: "StreamProcessorArn"))
@@ -940,6 +956,12 @@ module Aws::Rekognition
940
956
  ListStreamProcessorsResponse.add_member(:stream_processors, Shapes::ShapeRef.new(shape: StreamProcessorList, location_name: "StreamProcessors"))
941
957
  ListStreamProcessorsResponse.struct_class = Types::ListStreamProcessorsResponse
942
958
 
959
+ ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
960
+ ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
961
+
962
+ ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
963
+ ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
964
+
943
965
  ModerationLabel.add_member(:confidence, Shapes::ShapeRef.new(shape: Percent, location_name: "Confidence"))
944
966
  ModerationLabel.add_member(:name, Shapes::ShapeRef.new(shape: String, location_name: "Name"))
945
967
  ModerationLabel.add_member(:parent_name, Shapes::ShapeRef.new(shape: String, location_name: "ParentName"))
@@ -1016,6 +1038,7 @@ module Aws::Rekognition
1016
1038
  ProjectVersionDescription.add_member(:testing_data_result, Shapes::ShapeRef.new(shape: TestingDataResult, location_name: "TestingDataResult"))
1017
1039
  ProjectVersionDescription.add_member(:evaluation_result, Shapes::ShapeRef.new(shape: EvaluationResult, location_name: "EvaluationResult"))
1018
1040
  ProjectVersionDescription.add_member(:manifest_summary, Shapes::ShapeRef.new(shape: GroundTruthManifest, location_name: "ManifestSummary"))
1041
+ ProjectVersionDescription.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: KmsKeyId, location_name: "KmsKeyId"))
1019
1042
  ProjectVersionDescription.struct_class = Types::ProjectVersionDescription
1020
1043
 
1021
1044
  ProjectVersionDescriptions.member = Shapes::ShapeRef.new(shape: ProjectVersionDescription)
@@ -1270,6 +1293,17 @@ module Aws::Rekognition
1270
1293
  Sunglasses.add_member(:confidence, Shapes::ShapeRef.new(shape: Percent, location_name: "Confidence"))
1271
1294
  Sunglasses.struct_class = Types::Sunglasses
1272
1295
 
1296
+ TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
1297
+
1298
+ TagMap.key = Shapes::ShapeRef.new(shape: TagKey)
1299
+ TagMap.value = Shapes::ShapeRef.new(shape: TagValue)
1300
+
1301
+ TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
1302
+ TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, required: true, location_name: "Tags"))
1303
+ TagResourceRequest.struct_class = Types::TagResourceRequest
1304
+
1305
+ TagResourceResponse.struct_class = Types::TagResourceResponse
1306
+
1273
1307
  TechnicalCueSegment.add_member(:type, Shapes::ShapeRef.new(shape: TechnicalCueType, location_name: "Type"))
1274
1308
  TechnicalCueSegment.add_member(:confidence, Shapes::ShapeRef.new(shape: SegmentConfidence, location_name: "Confidence"))
1275
1309
  TechnicalCueSegment.struct_class = Types::TechnicalCueSegment
@@ -1315,6 +1349,12 @@ module Aws::Rekognition
1315
1349
 
1316
1350
  UnindexedFaces.member = Shapes::ShapeRef.new(shape: UnindexedFace)
1317
1351
 
1352
+ UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: ResourceArn, required: true, location_name: "ResourceArn"))
1353
+ UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location_name: "TagKeys"))
1354
+ UntagResourceRequest.struct_class = Types::UntagResourceRequest
1355
+
1356
+ UntagResourceResponse.struct_class = Types::UntagResourceResponse
1357
+
1318
1358
  Urls.member = Shapes::ShapeRef.new(shape: Url)
1319
1359
 
1320
1360
  ValidationData.add_member(:assets, Shapes::ShapeRef.new(shape: Assets, location_name: "Assets"))
@@ -1383,6 +1423,7 @@ module Aws::Rekognition
1383
1423
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1384
1424
  o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
1385
1425
  o.errors << Shapes::ShapeRef.new(shape: ResourceAlreadyExistsException)
1426
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
1386
1427
  end)
1387
1428
 
1388
1429
  api.add_operation(:create_project, Seahorse::Model::Operation.new.tap do |o|
@@ -1414,6 +1455,7 @@ module Aws::Rekognition
1414
1455
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1415
1456
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1416
1457
  o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
1458
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
1417
1459
  end)
1418
1460
 
1419
1461
  api.add_operation(:create_stream_processor, Seahorse::Model::Operation.new.tap do |o|
@@ -1429,6 +1471,7 @@ module Aws::Rekognition
1429
1471
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1430
1472
  o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
1431
1473
  o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
1474
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
1432
1475
  end)
1433
1476
 
1434
1477
  api.add_operation(:delete_collection, Seahorse::Model::Operation.new.tap do |o|
@@ -1935,6 +1978,20 @@ module Aws::Rekognition
1935
1978
  )
1936
1979
  end)
1937
1980
 
1981
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
1982
+ o.name = "ListTagsForResource"
1983
+ o.http_method = "POST"
1984
+ o.http_request_uri = "/"
1985
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
1986
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
1987
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1988
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1989
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1990
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1991
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1992
+ o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
1993
+ end)
1994
+
1938
1995
  api.add_operation(:recognize_celebrities, Seahorse::Model::Operation.new.tap do |o|
1939
1996
  o.name = "RecognizeCelebrities"
1940
1997
  o.http_method = "POST"
@@ -2180,6 +2237,35 @@ module Aws::Rekognition
2180
2237
  o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
2181
2238
  o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
2182
2239
  end)
2240
+
2241
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
2242
+ o.name = "TagResource"
2243
+ o.http_method = "POST"
2244
+ o.http_request_uri = "/"
2245
+ o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
2246
+ o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
2247
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2248
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2249
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
2250
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
2251
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
2252
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
2253
+ o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
2254
+ end)
2255
+
2256
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
2257
+ o.name = "UntagResource"
2258
+ o.http_method = "POST"
2259
+ o.http_request_uri = "/"
2260
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
2261
+ o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
2262
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2263
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2264
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
2265
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
2266
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
2267
+ o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
2268
+ end)
2183
2269
  end
2184
2270
 
2185
2271
  end