aws-sdk-rekognition 1.74.0 → 1.75.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 512733d3061c637ec9d8f1ad4bac94c75a720a9d8811509f9eac85723878fe76
4
- data.tar.gz: 9357ddb220c080696544f6465448e90cf6e1176844af79880e15c5d4dc650a53
3
+ metadata.gz: 03a15d9fdade83f88daa912b214a1cb18cb45f4a4012ce00fe78caada7e5c66f
4
+ data.tar.gz: c5eb74c1bf776d04f714f9ca36aff31fc7df143ac430c2da3ea9392c019fc97a
5
5
  SHA512:
6
- metadata.gz: 8810485bcaedb2cd1f7d1b7f98a5b43c8be5c7e740aed73003b7e76f581076a2249492be0bf6037e340efc9d6a2d42865864078043996a2eb1a340be1b81c890
7
- data.tar.gz: 5888ed6816a38179ad172280a7cfcd037cac17cbaa6bbbeaab6a523e6414c8d83555c0e14492435feaf4209e8d605acb63a1023b2018a63b4ca64ffc170ba959
6
+ metadata.gz: e3502bb38c997473f2703bbd0e028a4f2501b624b8bf29ca4307ef1d94d4f7533e015b48e77ba3f1457d5359db03521359974a41a82b3f131f02cc56118da0ad
7
+ data.tar.gz: 8316c45137c2fdaf4dbf90d0ac785dcf9da5fdd285efed07708755b2e364912754014631ff2fbc03714fb2bebc7a97c7f6e8174600b718ec5161204720d46e49
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.75.0 (2023-04-10)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for Face Liveness APIs in Amazon Rekognition. Updates UpdateStreamProcessor to return ResourceInUseException Exception. Minor updates to API documentation.
8
+
4
9
  1.74.0 (2023-01-18)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.74.0
1
+ 1.75.0
@@ -651,6 +651,9 @@ module Aws::Rekognition
651
651
  # in the ProjectVersionDescription object. The copy operation has
652
652
  # finished when the value of `Status` is `COPYING_COMPLETED`.
653
653
  #
654
+ # This operation requires permissions to perform the
655
+ # `rekognition:CopyProjectVersion` action.
656
+ #
654
657
  # @option params [required, String] :source_project_arn
655
658
  # The ARN of the source project in the trusting AWS account.
656
659
  #
@@ -897,6 +900,60 @@ module Aws::Rekognition
897
900
  req.send_request(options)
898
901
  end
899
902
 
903
+ # This API operation initiates a Face Liveness session. It returns a
904
+ # `SessionId`, which you can use to start streaming Face Liveness video
905
+ # and get the results for a Face Liveness session. You can use the
906
+ # `OutputConfig` option in the Settings parameter to provide an Amazon
907
+ # S3 bucket location. The Amazon S3 bucket stores reference images and
908
+ # audit images. You can use `AuditImagesLimit` to limit of audit images
909
+ # returned. This number is between 0 and 4. By default, it is set to 0.
910
+ # The limit is best effort and based on the duration of the
911
+ # selfie-video.
912
+ #
913
+ # @option params [String] :kms_key_id
914
+ # The identifier for your AWS Key Management Service key (AWS KMS key).
915
+ # Used to encrypt audit images and reference images.
916
+ #
917
+ # @option params [Types::CreateFaceLivenessSessionRequestSettings] :settings
918
+ # A session settings object. It contains settings for the operation to
919
+ # be performed. For Face Liveness, it accepts `OutputConfig` and
920
+ # `AuditImagesLimit`.
921
+ #
922
+ # @option params [String] :client_request_token
923
+ # Idempotent token is used to recognize the Face Liveness request. If
924
+ # the same token is used with multiple `CreateFaceLivenessSession`
925
+ # requests, the same session is returned. This token is employed to
926
+ # avoid unintentionally creating the same session multiple times.
927
+ #
928
+ # @return [Types::CreateFaceLivenessSessionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
929
+ #
930
+ # * {Types::CreateFaceLivenessSessionResponse#session_id #session_id} => String
931
+ #
932
+ # @example Request syntax with placeholder values
933
+ #
934
+ # resp = client.create_face_liveness_session({
935
+ # kms_key_id: "KmsKeyId",
936
+ # settings: {
937
+ # output_config: {
938
+ # s3_bucket: "S3Bucket", # required
939
+ # s3_key_prefix: "LivenessS3KeyPrefix",
940
+ # },
941
+ # audit_images_limit: 1,
942
+ # },
943
+ # client_request_token: "ClientRequestToken",
944
+ # })
945
+ #
946
+ # @example Response structure
947
+ #
948
+ # resp.session_id #=> String
949
+ #
950
+ # @overload create_face_liveness_session(params = {})
951
+ # @param [Hash] params ({})
952
+ def create_face_liveness_session(params = {}, options = {})
953
+ req = build_request(:create_face_liveness_session, params)
954
+ req.send_request(options)
955
+ end
956
+
900
957
  # Creates a new Amazon Rekognition Custom Labels project. A project is a
901
958
  # group of resources (datasets, model versions) that you use to create
902
959
  # and manage Amazon Rekognition Custom Labels models.
@@ -1085,22 +1142,24 @@ module Aws::Rekognition
1085
1142
  #
1086
1143
  # * If you are creating a stream processor for detecting faces, you
1087
1144
  # provide as input a Kinesis video stream (`Input`) and a Kinesis data
1088
- # stream (`Output`) stream. You also specify the face recognition
1089
- # criteria in `Settings`. For example, the collection containing faces
1090
- # that you want to recognize. After you have finished analyzing a
1091
- # streaming video, use StopStreamProcessor to stop processing.
1145
+ # stream (`Output`) stream for receiving the output. You must use the
1146
+ # `FaceSearch` option in `Settings`, specifying the collection that
1147
+ # contains the faces you want to recognize. After you have finished
1148
+ # analyzing a streaming video, use StopStreamProcessor to stop
1149
+ # processing.
1092
1150
  #
1093
1151
  # * If you are creating a stream processor to detect labels, you provide
1094
1152
  # as input a Kinesis video stream (`Input`), Amazon S3 bucket
1095
1153
  # information (`Output`), and an Amazon SNS topic ARN
1096
1154
  # (`NotificationChannel`). You can also provide a KMS key ID to
1097
1155
  # encrypt the data sent to your Amazon S3 bucket. You specify what you
1098
- # want to detect in `ConnectedHomeSettings`, such as people, packages
1099
- # and people, or pets, people, and packages. You can also specify
1100
- # where in the frame you want Amazon Rekognition to monitor with
1101
- # `RegionsOfInterest`. When you run the StartStreamProcessor operation
1102
- # on a label detection stream processor, you input start and stop
1103
- # information to determine the length of the processing time.
1156
+ # want to detect by using the `ConnectedHome` option in settings, and
1157
+ # selecting one of the following: `PERSON`, `PET`, `PACKAGE`, `ALL`
1158
+ # You can also specify where in the frame you want Amazon Rekognition
1159
+ # to monitor with `RegionsOfInterest`. When you run the
1160
+ # StartStreamProcessor operation on a label detection stream
1161
+ # processor, you input start and stop information to determine the
1162
+ # length of the processing time.
1104
1163
  #
1105
1164
  # Use `Name` to assign an identifier for the stream processor. You use
1106
1165
  # `Name` to manage the stream processor. For example, you can start
@@ -1438,6 +1497,9 @@ module Aws::Rekognition
1438
1497
  # ListProjectPolicies. To attach a project policy to a project, call
1439
1498
  # PutProjectPolicy.
1440
1499
  #
1500
+ # This operation requires permissions to perform the
1501
+ # `rekognition:DeleteProjectPolicy` action.
1502
+ #
1441
1503
  # @option params [required, String] :project_arn
1442
1504
  # The Amazon Resource Name (ARN) of the project that the project policy
1443
1505
  # you want to delete is attached to.
@@ -2206,7 +2268,7 @@ module Aws::Rekognition
2206
2268
  # **Response Elements**
2207
2269
  #
2208
2270
  # For each object, scene, and concept the API returns one or more
2209
- # labels. The API returns the following types of information regarding
2271
+ # labels. The API returns the following types of information about
2210
2272
  # labels:
2211
2273
  #
2212
2274
  # * Name - The name of the detected label.
@@ -2281,8 +2343,7 @@ module Aws::Rekognition
2281
2343
  #
2282
2344
  # </note>
2283
2345
  #
2284
- # This is a stateless API operation. That is, the operation does not
2285
- # persist any data.
2346
+ # This is a stateless API operation that doesn't return any data.
2286
2347
  #
2287
2348
  # This operation requires permissions to perform the
2288
2349
  # `rekognition:DetectLabels` action.
@@ -2326,8 +2387,12 @@ module Aws::Rekognition
2326
2387
  # image properties. Specified filters can be inclusive, exclusive, or a
2327
2388
  # combination of both. Filters can be used for individual labels or
2328
2389
  # label categories. The exact label names or label categories must be
2329
- # supplied. For a full list of labels and label categories, see LINK
2330
- # HERE.
2390
+ # supplied. For a full list of labels and label categories, see
2391
+ # [Detecting labels][1].
2392
+ #
2393
+ #
2394
+ #
2395
+ # [1]: https://docs.aws.amazon.com/rekognition/latest/dg/labels.html
2331
2396
  #
2332
2397
  # @return [Types::DetectLabelsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2333
2398
  #
@@ -3247,6 +3312,63 @@ module Aws::Rekognition
3247
3312
  req.send_request(options)
3248
3313
  end
3249
3314
 
3315
+ # Retrieves the results of a specific Face Liveness session. It requires
3316
+ # the `sessionId` as input, which was created using
3317
+ # `CreateFaceLivenessSession`. Returns the corresponding Face Liveness
3318
+ # confidence score, a reference image that includes a face bounding box,
3319
+ # and audit images that also contain face bounding boxes. The Face
3320
+ # Liveness confidence score ranges from 0 to 100. The reference image
3321
+ # can optionally be returned.
3322
+ #
3323
+ # @option params [required, String] :session_id
3324
+ # A unique 128-bit UUID. This is used to uniquely identify the session
3325
+ # and also acts as an idempotency token for all operations associated
3326
+ # with the session.
3327
+ #
3328
+ # @return [Types::GetFaceLivenessSessionResultsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3329
+ #
3330
+ # * {Types::GetFaceLivenessSessionResultsResponse#session_id #session_id} => String
3331
+ # * {Types::GetFaceLivenessSessionResultsResponse#status #status} => String
3332
+ # * {Types::GetFaceLivenessSessionResultsResponse#confidence #confidence} => Float
3333
+ # * {Types::GetFaceLivenessSessionResultsResponse#reference_image #reference_image} => Types::AuditImage
3334
+ # * {Types::GetFaceLivenessSessionResultsResponse#audit_images #audit_images} => Array&lt;Types::AuditImage&gt;
3335
+ #
3336
+ # @example Request syntax with placeholder values
3337
+ #
3338
+ # resp = client.get_face_liveness_session_results({
3339
+ # session_id: "LivenessSessionId", # required
3340
+ # })
3341
+ #
3342
+ # @example Response structure
3343
+ #
3344
+ # resp.session_id #=> String
3345
+ # resp.status #=> String, one of "CREATED", "IN_PROGRESS", "SUCCEEDED", "FAILED"
3346
+ # resp.confidence #=> Float
3347
+ # resp.reference_image.bytes #=> String
3348
+ # resp.reference_image.s3_object.bucket #=> String
3349
+ # resp.reference_image.s3_object.name #=> String
3350
+ # resp.reference_image.s3_object.version #=> String
3351
+ # resp.reference_image.bounding_box.width #=> Float
3352
+ # resp.reference_image.bounding_box.height #=> Float
3353
+ # resp.reference_image.bounding_box.left #=> Float
3354
+ # resp.reference_image.bounding_box.top #=> Float
3355
+ # resp.audit_images #=> Array
3356
+ # resp.audit_images[0].bytes #=> String
3357
+ # resp.audit_images[0].s3_object.bucket #=> String
3358
+ # resp.audit_images[0].s3_object.name #=> String
3359
+ # resp.audit_images[0].s3_object.version #=> String
3360
+ # resp.audit_images[0].bounding_box.width #=> Float
3361
+ # resp.audit_images[0].bounding_box.height #=> Float
3362
+ # resp.audit_images[0].bounding_box.left #=> Float
3363
+ # resp.audit_images[0].bounding_box.top #=> Float
3364
+ #
3365
+ # @overload get_face_liveness_session_results(params = {})
3366
+ # @param [Hash] params ({})
3367
+ def get_face_liveness_session_results(params = {}, options = {})
3368
+ req = build_request(:get_face_liveness_session_results, params)
3369
+ req.send_request(options)
3370
+ end
3371
+
3250
3372
  # Gets the face search results for Amazon Rekognition Video face search
3251
3373
  # started by StartFaceSearch. The search returns faces in a collection
3252
3374
  # that match the faces of persons detected in a video. It also includes
@@ -4769,6 +4891,9 @@ module Aws::Rekognition
4769
4891
  # To attach a project policy to a project, call PutProjectPolicy. To
4770
4892
  # remove a project policy from a project, call DeleteProjectPolicy.
4771
4893
  #
4894
+ # This operation requires permissions to perform the
4895
+ # `rekognition:ListProjectPolicies` action.
4896
+ #
4772
4897
  # @option params [required, String] :project_arn
4773
4898
  # The ARN of the project for which you want to list the project
4774
4899
  # policies.
@@ -4937,6 +5062,9 @@ module Aws::Rekognition
4937
5062
  #
4938
5063
  # You copy a model version by calling CopyProjectVersion.
4939
5064
  #
5065
+ # This operation requires permissions to perform the
5066
+ # `rekognition:PutProjectPolicy` action.
5067
+ #
4940
5068
  # @option params [required, String] :project_arn
4941
5069
  # The Amazon Resource Name (ARN) of the project that the project policy
4942
5070
  # is attached to.
@@ -6308,6 +6436,9 @@ module Aws::Rekognition
6308
6436
  # Stops a running model. The operation might take a while to complete.
6309
6437
  # To check the current status, call DescribeProjectVersions.
6310
6438
  #
6439
+ # This operation requires permissions to perform the
6440
+ # `rekognition:StopProjectVersion` action.
6441
+ #
6311
6442
  # @option params [required, String] :project_version_arn
6312
6443
  # The Amazon Resource Name (ARN) of the model version that you want to
6313
6444
  # delete.
@@ -6556,7 +6687,7 @@ module Aws::Rekognition
6556
6687
  params: params,
6557
6688
  config: config)
6558
6689
  context[:gem_name] = 'aws-sdk-rekognition'
6559
- context[:gem_version] = '1.74.0'
6690
+ context[:gem_version] = '1.75.0'
6560
6691
  Seahorse::Client::Request.new(handlers, context)
6561
6692
  end
6562
6693
 
@@ -21,6 +21,9 @@ module Aws::Rekognition
21
21
  Attributes = Shapes::ListShape.new(name: 'Attributes')
22
22
  AudioMetadata = Shapes::StructureShape.new(name: 'AudioMetadata')
23
23
  AudioMetadataList = Shapes::ListShape.new(name: 'AudioMetadataList')
24
+ AuditImage = Shapes::StructureShape.new(name: 'AuditImage')
25
+ AuditImages = Shapes::ListShape.new(name: 'AuditImages')
26
+ AuditImagesLimit = Shapes::IntegerShape.new(name: 'AuditImagesLimit')
24
27
  Beard = Shapes::StructureShape.new(name: 'Beard')
25
28
  BlackFrame = Shapes::StructureShape.new(name: 'BlackFrame')
26
29
  BodyPart = Shapes::StringShape.new(name: 'BodyPart')
@@ -62,6 +65,9 @@ module Aws::Rekognition
62
65
  CreateCollectionResponse = Shapes::StructureShape.new(name: 'CreateCollectionResponse')
63
66
  CreateDatasetRequest = Shapes::StructureShape.new(name: 'CreateDatasetRequest')
64
67
  CreateDatasetResponse = Shapes::StructureShape.new(name: 'CreateDatasetResponse')
68
+ CreateFaceLivenessSessionRequest = Shapes::StructureShape.new(name: 'CreateFaceLivenessSessionRequest')
69
+ CreateFaceLivenessSessionRequestSettings = Shapes::StructureShape.new(name: 'CreateFaceLivenessSessionRequestSettings')
70
+ CreateFaceLivenessSessionResponse = Shapes::StructureShape.new(name: 'CreateFaceLivenessSessionResponse')
65
71
  CreateProjectRequest = Shapes::StructureShape.new(name: 'CreateProjectRequest')
66
72
  CreateProjectResponse = Shapes::StructureShape.new(name: 'CreateProjectResponse')
67
73
  CreateProjectVersionRequest = Shapes::StructureShape.new(name: 'CreateProjectVersionRequest')
@@ -184,6 +190,8 @@ module Aws::Rekognition
184
190
  GetContentModerationResponse = Shapes::StructureShape.new(name: 'GetContentModerationResponse')
185
191
  GetFaceDetectionRequest = Shapes::StructureShape.new(name: 'GetFaceDetectionRequest')
186
192
  GetFaceDetectionResponse = Shapes::StructureShape.new(name: 'GetFaceDetectionResponse')
193
+ GetFaceLivenessSessionResultsRequest = Shapes::StructureShape.new(name: 'GetFaceLivenessSessionResultsRequest')
194
+ GetFaceLivenessSessionResultsResponse = Shapes::StructureShape.new(name: 'GetFaceLivenessSessionResultsResponse')
187
195
  GetFaceSearchRequest = Shapes::StructureShape.new(name: 'GetFaceSearchRequest')
188
196
  GetFaceSearchResponse = Shapes::StructureShape.new(name: 'GetFaceSearchResponse')
189
197
  GetLabelDetectionRequest = Shapes::StructureShape.new(name: 'GetLabelDetectionRequest')
@@ -270,6 +278,11 @@ module Aws::Rekognition
270
278
  ListStreamProcessorsResponse = Shapes::StructureShape.new(name: 'ListStreamProcessorsResponse')
271
279
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
272
280
  ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
281
+ LivenessImageBlob = Shapes::BlobShape.new(name: 'LivenessImageBlob')
282
+ LivenessOutputConfig = Shapes::StructureShape.new(name: 'LivenessOutputConfig')
283
+ LivenessS3KeyPrefix = Shapes::StringShape.new(name: 'LivenessS3KeyPrefix')
284
+ LivenessSessionId = Shapes::StringShape.new(name: 'LivenessSessionId')
285
+ LivenessSessionStatus = Shapes::StringShape.new(name: 'LivenessSessionStatus')
273
286
  MalformedPolicyDocumentException = Shapes::StructureShape.new(name: 'MalformedPolicyDocumentException')
274
287
  MaxDurationInSecondsULong = Shapes::IntegerShape.new(name: 'MaxDurationInSecondsULong')
275
288
  MaxFaces = Shapes::IntegerShape.new(name: 'MaxFaces')
@@ -361,6 +374,7 @@ module Aws::Rekognition
361
374
  SegmentTypes = Shapes::ListShape.new(name: 'SegmentTypes')
362
375
  SegmentTypesInfo = Shapes::ListShape.new(name: 'SegmentTypesInfo')
363
376
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
377
+ SessionNotFoundException = Shapes::StructureShape.new(name: 'SessionNotFoundException')
364
378
  ShotSegment = Shapes::StructureShape.new(name: 'ShotSegment')
365
379
  Smile = Shapes::StructureShape.new(name: 'Smile')
366
380
  StartCelebrityRecognitionRequest = Shapes::StructureShape.new(name: 'StartCelebrityRecognitionRequest')
@@ -474,6 +488,13 @@ module Aws::Rekognition
474
488
 
475
489
  AudioMetadataList.member = Shapes::ShapeRef.new(shape: AudioMetadata)
476
490
 
491
+ AuditImage.add_member(:bytes, Shapes::ShapeRef.new(shape: LivenessImageBlob, location_name: "Bytes"))
492
+ AuditImage.add_member(:s3_object, Shapes::ShapeRef.new(shape: S3Object, location_name: "S3Object"))
493
+ AuditImage.add_member(:bounding_box, Shapes::ShapeRef.new(shape: BoundingBox, location_name: "BoundingBox"))
494
+ AuditImage.struct_class = Types::AuditImage
495
+
496
+ AuditImages.member = Shapes::ShapeRef.new(shape: AuditImage)
497
+
477
498
  Beard.add_member(:value, Shapes::ShapeRef.new(shape: Boolean, location_name: "Value"))
478
499
  Beard.add_member(:confidence, Shapes::ShapeRef.new(shape: Percent, location_name: "Confidence"))
479
500
  Beard.struct_class = Types::Beard
@@ -604,6 +625,18 @@ module Aws::Rekognition
604
625
  CreateDatasetResponse.add_member(:dataset_arn, Shapes::ShapeRef.new(shape: DatasetArn, location_name: "DatasetArn"))
605
626
  CreateDatasetResponse.struct_class = Types::CreateDatasetResponse
606
627
 
628
+ CreateFaceLivenessSessionRequest.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: KmsKeyId, location_name: "KmsKeyId"))
629
+ CreateFaceLivenessSessionRequest.add_member(:settings, Shapes::ShapeRef.new(shape: CreateFaceLivenessSessionRequestSettings, location_name: "Settings"))
630
+ CreateFaceLivenessSessionRequest.add_member(:client_request_token, Shapes::ShapeRef.new(shape: ClientRequestToken, location_name: "ClientRequestToken"))
631
+ CreateFaceLivenessSessionRequest.struct_class = Types::CreateFaceLivenessSessionRequest
632
+
633
+ CreateFaceLivenessSessionRequestSettings.add_member(:output_config, Shapes::ShapeRef.new(shape: LivenessOutputConfig, location_name: "OutputConfig"))
634
+ CreateFaceLivenessSessionRequestSettings.add_member(:audit_images_limit, Shapes::ShapeRef.new(shape: AuditImagesLimit, location_name: "AuditImagesLimit"))
635
+ CreateFaceLivenessSessionRequestSettings.struct_class = Types::CreateFaceLivenessSessionRequestSettings
636
+
637
+ CreateFaceLivenessSessionResponse.add_member(:session_id, Shapes::ShapeRef.new(shape: LivenessSessionId, required: true, location_name: "SessionId"))
638
+ CreateFaceLivenessSessionResponse.struct_class = Types::CreateFaceLivenessSessionResponse
639
+
607
640
  CreateProjectRequest.add_member(:project_name, Shapes::ShapeRef.new(shape: ProjectName, required: true, location_name: "ProjectName"))
608
641
  CreateProjectRequest.struct_class = Types::CreateProjectRequest
609
642
 
@@ -1043,6 +1076,16 @@ module Aws::Rekognition
1043
1076
  GetFaceDetectionResponse.add_member(:faces, Shapes::ShapeRef.new(shape: FaceDetections, location_name: "Faces"))
1044
1077
  GetFaceDetectionResponse.struct_class = Types::GetFaceDetectionResponse
1045
1078
 
1079
+ GetFaceLivenessSessionResultsRequest.add_member(:session_id, Shapes::ShapeRef.new(shape: LivenessSessionId, required: true, location_name: "SessionId"))
1080
+ GetFaceLivenessSessionResultsRequest.struct_class = Types::GetFaceLivenessSessionResultsRequest
1081
+
1082
+ GetFaceLivenessSessionResultsResponse.add_member(:session_id, Shapes::ShapeRef.new(shape: LivenessSessionId, required: true, location_name: "SessionId"))
1083
+ GetFaceLivenessSessionResultsResponse.add_member(:status, Shapes::ShapeRef.new(shape: LivenessSessionStatus, required: true, location_name: "Status"))
1084
+ GetFaceLivenessSessionResultsResponse.add_member(:confidence, Shapes::ShapeRef.new(shape: Percent, location_name: "Confidence"))
1085
+ GetFaceLivenessSessionResultsResponse.add_member(:reference_image, Shapes::ShapeRef.new(shape: AuditImage, location_name: "ReferenceImage"))
1086
+ GetFaceLivenessSessionResultsResponse.add_member(:audit_images, Shapes::ShapeRef.new(shape: AuditImages, location_name: "AuditImages"))
1087
+ GetFaceLivenessSessionResultsResponse.struct_class = Types::GetFaceLivenessSessionResultsResponse
1088
+
1046
1089
  GetFaceSearchRequest.add_member(:job_id, Shapes::ShapeRef.new(shape: JobId, required: true, location_name: "JobId"))
1047
1090
  GetFaceSearchRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
1048
1091
  GetFaceSearchRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: PaginationToken, location_name: "NextToken"))
@@ -1299,6 +1342,10 @@ module Aws::Rekognition
1299
1342
  ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "Tags"))
1300
1343
  ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
1301
1344
 
1345
+ LivenessOutputConfig.add_member(:s3_bucket, Shapes::ShapeRef.new(shape: S3Bucket, required: true, location_name: "S3Bucket"))
1346
+ LivenessOutputConfig.add_member(:s3_key_prefix, Shapes::ShapeRef.new(shape: LivenessS3KeyPrefix, location_name: "S3KeyPrefix"))
1347
+ LivenessOutputConfig.struct_class = Types::LivenessOutputConfig
1348
+
1302
1349
  MalformedPolicyDocumentException.struct_class = Types::MalformedPolicyDocumentException
1303
1350
 
1304
1351
  ModerationLabel.add_member(:confidence, Shapes::ShapeRef.new(shape: Percent, location_name: "Confidence"))
@@ -1517,6 +1564,8 @@ module Aws::Rekognition
1517
1564
 
1518
1565
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
1519
1566
 
1567
+ SessionNotFoundException.struct_class = Types::SessionNotFoundException
1568
+
1520
1569
  ShotSegment.add_member(:index, Shapes::ShapeRef.new(shape: ULong, location_name: "Index"))
1521
1570
  ShotSegment.add_member(:confidence, Shapes::ShapeRef.new(shape: SegmentConfidence, location_name: "Confidence"))
1522
1571
  ShotSegment.struct_class = Types::ShotSegment
@@ -1873,6 +1922,19 @@ module Aws::Rekognition
1873
1922
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1874
1923
  end)
1875
1924
 
1925
+ api.add_operation(:create_face_liveness_session, Seahorse::Model::Operation.new.tap do |o|
1926
+ o.name = "CreateFaceLivenessSession"
1927
+ o.http_method = "POST"
1928
+ o.http_request_uri = "/"
1929
+ o.input = Shapes::ShapeRef.new(shape: CreateFaceLivenessSessionRequest)
1930
+ o.output = Shapes::ShapeRef.new(shape: CreateFaceLivenessSessionResponse)
1931
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1932
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
1933
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1934
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1935
+ o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
1936
+ end)
1937
+
1876
1938
  api.add_operation(:create_project, Seahorse::Model::Operation.new.tap do |o|
1877
1939
  o.name = "CreateProject"
1878
1940
  o.http_method = "POST"
@@ -2300,6 +2362,20 @@ module Aws::Rekognition
2300
2362
  )
2301
2363
  end)
2302
2364
 
2365
+ api.add_operation(:get_face_liveness_session_results, Seahorse::Model::Operation.new.tap do |o|
2366
+ o.name = "GetFaceLivenessSessionResults"
2367
+ o.http_method = "POST"
2368
+ o.http_request_uri = "/"
2369
+ o.input = Shapes::ShapeRef.new(shape: GetFaceLivenessSessionResultsRequest)
2370
+ o.output = Shapes::ShapeRef.new(shape: GetFaceLivenessSessionResultsResponse)
2371
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
2372
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
2373
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2374
+ o.errors << Shapes::ShapeRef.new(shape: SessionNotFoundException)
2375
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
2376
+ o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
2377
+ end)
2378
+
2303
2379
  api.add_operation(:get_face_search, Seahorse::Model::Operation.new.tap do |o|
2304
2380
  o.name = "GetFaceSearch"
2305
2381
  o.http_method = "POST"
@@ -2888,6 +2964,7 @@ module Aws::Rekognition
2888
2964
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2889
2965
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2890
2966
  o.errors << Shapes::ShapeRef.new(shape: ProvisionedThroughputExceededException)
2967
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
2891
2968
  end)
2892
2969
  end
2893
2970
 
@@ -50,9 +50,6 @@ module Aws::Rekognition
50
50
 
51
51
  def initialize(options = {})
52
52
  self[:region] = options[:region]
53
- if self[:region].nil?
54
- raise ArgumentError, "Missing required EndpointParameter: :region"
55
- end
56
53
  self[:use_dual_stack] = options[:use_dual_stack]
57
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
55
  if self[:use_dual_stack].nil?
@@ -14,54 +14,39 @@ module Aws::Rekognition
14
14
  use_dual_stack = parameters.use_dual_stack
15
15
  use_fips = parameters.use_fips
16
16
  endpoint = parameters.endpoint
17
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
- if Aws::Endpoints::Matchers.set?(endpoint)
19
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
- raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
21
- end
22
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
- raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
24
- end
25
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
18
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
26
20
  end
27
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
- return Aws::Endpoints::Endpoint.new(url: "https://rekognition-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
30
- end
31
- raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
21
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
32
23
  end
33
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
- if Aws::Endpoints::Matchers.string_equals?(region, "rekognition.ca-central-1")
36
- return Aws::Endpoints::Endpoint.new(url: "https://rekognition-fips.ca-central-1.amazonaws.com", headers: {}, properties: {})
37
- end
38
- if Aws::Endpoints::Matchers.string_equals?(region, "rekognition.us-east-1")
39
- return Aws::Endpoints::Endpoint.new(url: "https://rekognition-fips.us-east-1.amazonaws.com", headers: {}, properties: {})
40
- end
41
- if Aws::Endpoints::Matchers.string_equals?(region, "rekognition.us-east-2")
42
- return Aws::Endpoints::Endpoint.new(url: "https://rekognition-fips.us-east-2.amazonaws.com", headers: {}, properties: {})
43
- end
44
- if Aws::Endpoints::Matchers.string_equals?(region, "rekognition.us-west-1")
45
- return Aws::Endpoints::Endpoint.new(url: "https://rekognition-fips.us-west-1.amazonaws.com", headers: {}, properties: {})
46
- end
47
- if Aws::Endpoints::Matchers.string_equals?(region, "rekognition.us-west-2")
48
- return Aws::Endpoints::Endpoint.new(url: "https://rekognition-fips.us-west-2.amazonaws.com", headers: {}, properties: {})
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
25
+ end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://rekognition-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
49
31
  end
50
- if Aws::Endpoints::Matchers.string_equals?(region, "rekognition.us-gov-west-1")
51
- return Aws::Endpoints::Endpoint.new(url: "https://rekognition-fips.us-gov-west-1.amazonaws.com", headers: {}, properties: {})
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
34
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
+ return Aws::Endpoints::Endpoint.new(url: "https://rekognition-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
52
37
  end
53
- return Aws::Endpoints::Endpoint.new(url: "https://rekognition-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
38
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
54
39
  end
55
- raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
56
- end
57
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
58
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
59
- return Aws::Endpoints::Endpoint.new(url: "https://rekognition.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
40
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
41
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
+ return Aws::Endpoints::Endpoint.new(url: "https://rekognition.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
60
45
  end
61
- raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
46
+ return Aws::Endpoints::Endpoint.new(url: "https://rekognition.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
62
47
  end
63
- return Aws::Endpoints::Endpoint.new(url: "https://rekognition.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
64
48
  end
49
+ raise ArgumentError, "Invalid Configuration: Missing Region"
65
50
  raise ArgumentError, 'No endpoint could be resolved'
66
51
 
67
52
  end
@@ -67,6 +67,20 @@ module Aws::Rekognition
67
67
  end
68
68
  end
69
69
 
70
+ class CreateFaceLivenessSession
71
+ def self.build(context)
72
+ unless context.config.regional_endpoint
73
+ endpoint = context.config.endpoint.to_s
74
+ end
75
+ Aws::Rekognition::EndpointParameters.new(
76
+ region: context.config.region,
77
+ use_dual_stack: context.config.use_dualstack_endpoint,
78
+ use_fips: context.config.use_fips_endpoint,
79
+ endpoint: endpoint,
80
+ )
81
+ end
82
+ end
83
+
70
84
  class CreateProject
71
85
  def self.build(context)
72
86
  unless context.config.regional_endpoint
@@ -431,6 +445,20 @@ module Aws::Rekognition
431
445
  end
432
446
  end
433
447
 
448
+ class GetFaceLivenessSessionResults
449
+ def self.build(context)
450
+ unless context.config.regional_endpoint
451
+ endpoint = context.config.endpoint.to_s
452
+ end
453
+ Aws::Rekognition::EndpointParameters.new(
454
+ region: context.config.region,
455
+ use_dual_stack: context.config.use_dualstack_endpoint,
456
+ use_fips: context.config.use_fips_endpoint,
457
+ endpoint: endpoint,
458
+ )
459
+ end
460
+ end
461
+
434
462
  class GetFaceSearch
435
463
  def self.build(context)
436
464
  unless context.config.regional_endpoint
@@ -45,6 +45,7 @@ module Aws::Rekognition
45
45
  # * {ResourceNotFoundException}
46
46
  # * {ResourceNotReadyException}
47
47
  # * {ServiceQuotaExceededException}
48
+ # * {SessionNotFoundException}
48
49
  # * {ThrottlingException}
49
50
  # * {VideoTooLargeException}
50
51
  #
@@ -249,6 +250,16 @@ module Aws::Rekognition
249
250
  end
250
251
  end
251
252
 
253
+ class SessionNotFoundException < ServiceError
254
+
255
+ # @param [Seahorse::Client::RequestContext] context
256
+ # @param [String] message
257
+ # @param [Aws::Rekognition::Types::SessionNotFoundException] data
258
+ def initialize(context, message, data = Aws::EmptyStructure.new)
259
+ super(context, message, data)
260
+ end
261
+ end
262
+
252
263
  class ThrottlingException < ServiceError
253
264
 
254
265
  # @param [Seahorse::Client::RequestContext] context
@@ -64,6 +64,8 @@ module Aws::Rekognition
64
64
  Aws::Rekognition::Endpoints::CreateCollection.build(context)
65
65
  when :create_dataset
66
66
  Aws::Rekognition::Endpoints::CreateDataset.build(context)
67
+ when :create_face_liveness_session
68
+ Aws::Rekognition::Endpoints::CreateFaceLivenessSession.build(context)
67
69
  when :create_project
68
70
  Aws::Rekognition::Endpoints::CreateProject.build(context)
69
71
  when :create_project_version
@@ -116,6 +118,8 @@ module Aws::Rekognition
116
118
  Aws::Rekognition::Endpoints::GetContentModeration.build(context)
117
119
  when :get_face_detection
118
120
  Aws::Rekognition::Endpoints::GetFaceDetection.build(context)
121
+ when :get_face_liveness_session_results
122
+ Aws::Rekognition::Endpoints::GetFaceLivenessSessionResults.build(context)
119
123
  when :get_face_search
120
124
  Aws::Rekognition::Endpoints::GetFaceSearch.build(context)
121
125
  when :get_label_detection
@@ -80,6 +80,62 @@ module Aws::Rekognition
80
80
  include Aws::Structure
81
81
  end
82
82
 
83
+ # An image that is picked from the Face Liveness video and returned for
84
+ # audit trail purposes, returned as Base64-encoded bytes.
85
+ #
86
+ # @!attribute [rw] bytes
87
+ # The Base64-encoded bytes representing an image selected from the
88
+ # Face Liveness video and returned for audit purposes.
89
+ # @return [String]
90
+ #
91
+ # @!attribute [rw] s3_object
92
+ # Provides the S3 bucket name and object name.
93
+ #
94
+ # The region for the S3 bucket containing the S3 object must match the
95
+ # region you use for Amazon Rekognition operations.
96
+ #
97
+ # For Amazon Rekognition to process an S3 object, the user must have
98
+ # permission to access the S3 object. For more information, see How
99
+ # Amazon Rekognition works with IAM in the Amazon Rekognition
100
+ # Developer Guide.
101
+ # @return [Types::S3Object]
102
+ #
103
+ # @!attribute [rw] bounding_box
104
+ # Identifies the bounding box around the label, face, text, object of
105
+ # interest, or personal protective equipment. The `left`
106
+ # (x-coordinate) and `top` (y-coordinate) are coordinates representing
107
+ # the top and left sides of the bounding box. Note that the upper-left
108
+ # corner of the image is the origin (0,0).
109
+ #
110
+ # The `top` and `left` values returned are ratios of the overall image
111
+ # size. For example, if the input image is 700x200 pixels, and the
112
+ # top-left coordinate of the bounding box is 350x50 pixels, the API
113
+ # returns a `left` value of 0.5 (350/700) and a `top` value of 0.25
114
+ # (50/200).
115
+ #
116
+ # The `width` and `height` values represent the dimensions of the
117
+ # bounding box as a ratio of the overall image dimension. For example,
118
+ # if the input image is 700x200 pixels, and the bounding box width is
119
+ # 70 pixels, the width returned is 0.1.
120
+ #
121
+ # <note markdown="1"> The bounding box coordinates can have negative values. For example,
122
+ # if Amazon Rekognition is able to detect a face that is at the image
123
+ # edge and is only partially visible, the service can return
124
+ # coordinates that are outside the image bounds and, depending on the
125
+ # image edge, you might get negative values or values greater than 1
126
+ # for the `left` or `top` values.
127
+ #
128
+ # </note>
129
+ # @return [Types::BoundingBox]
130
+ #
131
+ class AuditImage < Struct.new(
132
+ :bytes,
133
+ :s3_object,
134
+ :bounding_box)
135
+ SENSITIVE = [:bytes]
136
+ include Aws::Structure
137
+ end
138
+
83
139
  # Indicates whether or not the face has a beard, and the confidence
84
140
  # level in the determination.
85
141
  #
@@ -742,6 +798,69 @@ module Aws::Rekognition
742
798
  include Aws::Structure
743
799
  end
744
800
 
801
+ # @!attribute [rw] kms_key_id
802
+ # The identifier for your AWS Key Management Service key (AWS KMS
803
+ # key). Used to encrypt audit images and reference images.
804
+ # @return [String]
805
+ #
806
+ # @!attribute [rw] settings
807
+ # A session settings object. It contains settings for the operation to
808
+ # be performed. For Face Liveness, it accepts `OutputConfig` and
809
+ # `AuditImagesLimit`.
810
+ # @return [Types::CreateFaceLivenessSessionRequestSettings]
811
+ #
812
+ # @!attribute [rw] client_request_token
813
+ # Idempotent token is used to recognize the Face Liveness request. If
814
+ # the same token is used with multiple `CreateFaceLivenessSession`
815
+ # requests, the same session is returned. This token is employed to
816
+ # avoid unintentionally creating the same session multiple times.
817
+ # @return [String]
818
+ #
819
+ class CreateFaceLivenessSessionRequest < Struct.new(
820
+ :kms_key_id,
821
+ :settings,
822
+ :client_request_token)
823
+ SENSITIVE = []
824
+ include Aws::Structure
825
+ end
826
+
827
+ # A session settings object. It contains settings for the operation to
828
+ # be performed. It accepts arguments for OutputConfig and
829
+ # AuditImagesLimit.
830
+ #
831
+ # @!attribute [rw] output_config
832
+ # Can specify the location of an Amazon S3 bucket, where reference and
833
+ # audit images will be stored. Note that the Amazon S3 bucket must be
834
+ # located in the caller's AWS account and in the same region as the
835
+ # Face Liveness end-point. Additionally, the Amazon S3 object keys are
836
+ # auto-generated by the Face Liveness system.
837
+ # @return [Types::LivenessOutputConfig]
838
+ #
839
+ # @!attribute [rw] audit_images_limit
840
+ # Number of audit images to be returned back. Takes an integer between
841
+ # 0-4. Any integer less than 0 will return 0, any integer above 4 will
842
+ # return 4 images in the response. By default, it is set to 0. The
843
+ # limit is best effort and is based on the actual duration of the
844
+ # selfie-video.
845
+ # @return [Integer]
846
+ #
847
+ class CreateFaceLivenessSessionRequestSettings < Struct.new(
848
+ :output_config,
849
+ :audit_images_limit)
850
+ SENSITIVE = []
851
+ include Aws::Structure
852
+ end
853
+
854
+ # @!attribute [rw] session_id
855
+ # A unique 128-bit UUID identifying a Face Liveness session.
856
+ # @return [String]
857
+ #
858
+ class CreateFaceLivenessSessionResponse < Struct.new(
859
+ :session_id)
860
+ SENSITIVE = []
861
+ include Aws::Structure
862
+ end
863
+
745
864
  # @!attribute [rw] project_name
746
865
  # The name of the project to create.
747
866
  # @return [String]
@@ -1888,8 +2007,12 @@ module Aws::Rekognition
1888
2007
  # image properties. Specified filters can be inclusive, exclusive, or
1889
2008
  # a combination of both. Filters can be used for individual labels or
1890
2009
  # label categories. The exact label names or label categories must be
1891
- # supplied. For a full list of labels and label categories, see LINK
1892
- # HERE.
2010
+ # supplied. For a full list of labels and label categories, see
2011
+ # [Detecting labels][1].
2012
+ #
2013
+ #
2014
+ #
2015
+ # [1]: https://docs.aws.amazon.com/rekognition/latest/dg/labels.html
1893
2016
  # @return [Types::DetectLabelsSettings]
1894
2017
  #
1895
2018
  class DetectLabelsRequest < Struct.new(
@@ -2608,7 +2731,12 @@ module Aws::Rekognition
2608
2731
 
2609
2732
  # Contains filters for the object labels returned by DetectLabels.
2610
2733
  # Filters can be inclusive, exclusive, or a combination of both and can
2611
- # be applied to individual l abels or entire label categories.
2734
+ # be applied to individual labels or entire label categories. To see a
2735
+ # list of label categories, see [Detecting Labels][1].
2736
+ #
2737
+ #
2738
+ #
2739
+ # [1]: https://docs.aws.amazon.com/rekognition/latest/dg/labels.html
2612
2740
  #
2613
2741
  # @!attribute [rw] label_inclusion_filters
2614
2742
  # The labels that should be included in the return from DetectLabels.
@@ -2903,6 +3031,62 @@ module Aws::Rekognition
2903
3031
  include Aws::Structure
2904
3032
  end
2905
3033
 
3034
+ # @!attribute [rw] session_id
3035
+ # A unique 128-bit UUID. This is used to uniquely identify the session
3036
+ # and also acts as an idempotency token for all operations associated
3037
+ # with the session.
3038
+ # @return [String]
3039
+ #
3040
+ class GetFaceLivenessSessionResultsRequest < Struct.new(
3041
+ :session_id)
3042
+ SENSITIVE = []
3043
+ include Aws::Structure
3044
+ end
3045
+
3046
+ # @!attribute [rw] session_id
3047
+ # The sessionId for which this request was called.
3048
+ # @return [String]
3049
+ #
3050
+ # @!attribute [rw] status
3051
+ # Represents a status corresponding to the state of the session.
3052
+ # Possible statuses are: CREATED, IN\_PROGRESS, SUCCEEDED, FAILED,
3053
+ # EXPIRED.
3054
+ # @return [String]
3055
+ #
3056
+ # @!attribute [rw] confidence
3057
+ # Probabalistic confidence score for if the person in the given video
3058
+ # was live, represented as a float value between 0 to 100.
3059
+ # @return [Float]
3060
+ #
3061
+ # @!attribute [rw] reference_image
3062
+ # A high-quality image from the Face Liveness video that can be used
3063
+ # for face comparison or search. It includes a bounding box of the
3064
+ # face and the Base64-encoded bytes that return an image. If the
3065
+ # CreateFaceLivenessSession request included an OutputConfig argument,
3066
+ # the image will be uploaded to an S3Object specified in the output
3067
+ # configuration. In case the reference image is not returned, it's
3068
+ # recommended to retry the Liveness check.
3069
+ # @return [Types::AuditImage]
3070
+ #
3071
+ # @!attribute [rw] audit_images
3072
+ # A set of images from the Face Liveness video that can be used for
3073
+ # audit purposes. It includes a bounding box of the face and the
3074
+ # Base64-encoded bytes that return an image. If the
3075
+ # CreateFaceLivenessSession request included an OutputConfig argument,
3076
+ # the image will be uploaded to an S3Object specified in the output
3077
+ # configuration.
3078
+ # @return [Array<Types::AuditImage>]
3079
+ #
3080
+ class GetFaceLivenessSessionResultsResponse < Struct.new(
3081
+ :session_id,
3082
+ :status,
3083
+ :confidence,
3084
+ :reference_image,
3085
+ :audit_images)
3086
+ SENSITIVE = []
3087
+ include Aws::Structure
3088
+ end
3089
+
2906
3090
  # @!attribute [rw] job_id
2907
3091
  # The job identifer for the search request. You get the job identifier
2908
3092
  # from an initial call to `StartFaceSearch`.
@@ -3439,7 +3623,8 @@ module Aws::Rekognition
3439
3623
  # Guide.
3440
3624
  #
3441
3625
  # @!attribute [rw] bytes
3442
- # Blob of image bytes up to 5 MBs.
3626
+ # Blob of image bytes up to 5 MBs. Note that the maximum image size
3627
+ # you can pass to `DetectCustomLabels` is 4MB.
3443
3628
  # @return [String]
3444
3629
  #
3445
3630
  # @!attribute [rw] s3_object
@@ -3851,7 +4036,12 @@ module Aws::Rekognition
3851
4036
  # @!attribute [rw] general_labels
3852
4037
  # Contains filters for the object labels returned by DetectLabels.
3853
4038
  # Filters can be inclusive, exclusive, or a combination of both and
3854
- # can be applied to individual l abels or entire label categories.
4039
+ # can be applied to individual labels or entire label categories. To
4040
+ # see a list of label categories, see [Detecting Labels][1].
4041
+ #
4042
+ #
4043
+ #
4044
+ # [1]: https://docs.aws.amazon.com/rekognition/latest/dg/labels.html
3855
4045
  # @return [Types::GeneralLabelsSettings]
3856
4046
  #
3857
4047
  class LabelDetectionSettings < Struct.new(
@@ -4203,6 +4393,29 @@ module Aws::Rekognition
4203
4393
  include Aws::Structure
4204
4394
  end
4205
4395
 
4396
+ # Contains settings that specify the location of an Amazon S3 bucket
4397
+ # used to store the output of a Face Liveness session. Note that the S3
4398
+ # bucket must be located in the caller's AWS account and in the same
4399
+ # region as the Face Liveness end-point. Additionally, the Amazon S3
4400
+ # object keys are auto-generated by the Face Liveness system.
4401
+ #
4402
+ # @!attribute [rw] s3_bucket
4403
+ # The path to an AWS Amazon S3 bucket used to store Face Liveness
4404
+ # session results.
4405
+ # @return [String]
4406
+ #
4407
+ # @!attribute [rw] s3_key_prefix
4408
+ # The prefix appended to the output files for the Face Liveness
4409
+ # session results.
4410
+ # @return [String]
4411
+ #
4412
+ class LivenessOutputConfig < Struct.new(
4413
+ :s3_bucket,
4414
+ :s3_key_prefix)
4415
+ SENSITIVE = []
4416
+ include Aws::Structure
4417
+ end
4418
+
4206
4419
  # The format of the project policy document that you supplied to
4207
4420
  # `PutProjectPolicy` is incorrect.
4208
4421
  #
@@ -5225,6 +5438,10 @@ module Aws::Rekognition
5225
5438
  #
5226
5439
  class ServiceQuotaExceededException < Aws::EmptyStructure; end
5227
5440
 
5441
+ # Occurs when a given sessionId is not found.
5442
+ #
5443
+ class SessionNotFoundException < Aws::EmptyStructure; end
5444
+
5228
5445
  # Information about a shot detection segment detected in a video. For
5229
5446
  # more information, see SegmentDetection.
5230
5447
  #
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-rekognition/customizations'
53
53
  # @!group service
54
54
  module Aws::Rekognition
55
55
 
56
- GEM_VERSION = '1.74.0'
56
+ GEM_VERSION = '1.75.0'
57
57
 
58
58
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-rekognition
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.74.0
4
+ version: 1.75.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-18 00:00:00.000000000 Z
11
+ date: 2023-04-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core