aws-sdk-voiceid 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,2087 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::VoiceID
11
+ module Types
12
+
13
+ # You do not have sufficient permissions to perform this action. Check
14
+ # the error message and try again.
15
+ #
16
+ # @!attribute [rw] message
17
+ # @return [String]
18
+ #
19
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/AccessDeniedException AWS API Documentation
20
+ #
21
+ class AccessDeniedException < Struct.new(
22
+ :message)
23
+ SENSITIVE = []
24
+ include Aws::Structure
25
+ end
26
+
27
+ # The configuration used to authenticate a speaker during a session.
28
+ #
29
+ # @!attribute [rw] acceptance_threshold
30
+ # The minimum threshold needed to successfully authenticate a speaker.
31
+ # @return [Integer]
32
+ #
33
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/AuthenticationConfiguration AWS API Documentation
34
+ #
35
+ class AuthenticationConfiguration < Struct.new(
36
+ :acceptance_threshold)
37
+ SENSITIVE = []
38
+ include Aws::Structure
39
+ end
40
+
41
+ # The authentication result produced by Voice ID, processed against the
42
+ # current session state and streamed audio of the speaker.
43
+ #
44
+ # @!attribute [rw] audio_aggregation_ended_at
45
+ # A timestamp indicating when audio aggregation ended for this
46
+ # authentication result.
47
+ # @return [Time]
48
+ #
49
+ # @!attribute [rw] audio_aggregation_started_at
50
+ # A timestamp indicating when audio aggregation started for this
51
+ # authentication result.
52
+ # @return [Time]
53
+ #
54
+ # @!attribute [rw] authentication_result_id
55
+ # The unique identifier for this authentication result. Because there
56
+ # can be multiple authentications for a given session, this field
57
+ # helps to identify if the returned result is from a previous
58
+ # streaming activity or a new result. Note that in absence of any new
59
+ # streaming activity, `AcceptanceThreshold` changes, or `SpeakerId`
60
+ # changes, Voice ID always returns cached Authentication Result for
61
+ # this API.
62
+ # @return [String]
63
+ #
64
+ # @!attribute [rw] configuration
65
+ # The `AuthenticationConfiguration` used to generate this
66
+ # authentication result.
67
+ # @return [Types::AuthenticationConfiguration]
68
+ #
69
+ # @!attribute [rw] customer_speaker_id
70
+ # The client-provided identifier for the speaker whose authentication
71
+ # result is produced. Only present if a `SpeakerId` is provided for
72
+ # the session.
73
+ # @return [String]
74
+ #
75
+ # @!attribute [rw] decision
76
+ # The authentication decision produced by Voice ID, processed against
77
+ # the current session state and streamed audio of the speaker.
78
+ # @return [String]
79
+ #
80
+ # @!attribute [rw] generated_speaker_id
81
+ # The service-generated identifier for the speaker whose
82
+ # authentication result is produced.
83
+ # @return [String]
84
+ #
85
+ # @!attribute [rw] score
86
+ # The authentication score for the speaker whose authentication result
87
+ # is produced. This value is only present if the authentication
88
+ # decision is either `ACCEPT` or `REJECT`.
89
+ # @return [Integer]
90
+ #
91
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/AuthenticationResult AWS API Documentation
92
+ #
93
+ class AuthenticationResult < Struct.new(
94
+ :audio_aggregation_ended_at,
95
+ :audio_aggregation_started_at,
96
+ :authentication_result_id,
97
+ :configuration,
98
+ :customer_speaker_id,
99
+ :decision,
100
+ :generated_speaker_id,
101
+ :score)
102
+ SENSITIVE = [:customer_speaker_id]
103
+ include Aws::Structure
104
+ end
105
+
106
+ # The request failed due to a conflict. Check the `ConflictType` and
107
+ # error message for more details.
108
+ #
109
+ # @!attribute [rw] conflict_type
110
+ # The type of conflict which caused a ConflictException. Possible
111
+ # types and the corresponding error messages are as follows:
112
+ #
113
+ # * `DOMAIN_NOT_ACTIVE`\: The domain is not active.
114
+ #
115
+ # * `CANNOT_CHANGE_SPEAKER_AFTER_ENROLLMENT`\: You cannot change the
116
+ # speaker ID after an enrollment has been requested.
117
+ #
118
+ # * `ENROLLMENT_ALREADY_EXISTS`\: There is already an enrollment for
119
+ # this session.
120
+ #
121
+ # * `SPEAKER_NOT_SET`\: You must set the speaker ID before requesting
122
+ # an enrollment.
123
+ #
124
+ # * `SPEAKER_OPTED_OUT`\: You cannot request an enrollment for an
125
+ # opted out speaker.
126
+ #
127
+ # * `CONCURRENT_CHANGES`\: The request could not be processed as the
128
+ # resource was modified by another request during execution.
129
+ # @return [String]
130
+ #
131
+ # @!attribute [rw] message
132
+ # @return [String]
133
+ #
134
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ConflictException AWS API Documentation
135
+ #
136
+ class ConflictException < Struct.new(
137
+ :conflict_type,
138
+ :message)
139
+ SENSITIVE = []
140
+ include Aws::Structure
141
+ end
142
+
143
+ # @note When making an API call, you may pass CreateDomainRequest
144
+ # data as a hash:
145
+ #
146
+ # {
147
+ # client_token: "ClientTokenString",
148
+ # description: "Description",
149
+ # name: "DomainName", # required
150
+ # server_side_encryption_configuration: { # required
151
+ # kms_key_id: "KmsKeyId", # required
152
+ # },
153
+ # tags: [
154
+ # {
155
+ # key: "TagKey", # required
156
+ # value: "TagValue", # required
157
+ # },
158
+ # ],
159
+ # }
160
+ #
161
+ # @!attribute [rw] client_token
162
+ # The idempotency token for creating a new domain. If not provided,
163
+ # Amazon Web Services SDK populates this field.
164
+ #
165
+ # **A suitable default value is auto-generated.** You should normally
166
+ # not need to pass this option.
167
+ # @return [String]
168
+ #
169
+ # @!attribute [rw] description
170
+ # A brief description of this domain.
171
+ # @return [String]
172
+ #
173
+ # @!attribute [rw] name
174
+ # The name of the domain.
175
+ # @return [String]
176
+ #
177
+ # @!attribute [rw] server_side_encryption_configuration
178
+ # The configuration, containing the KMS Key Identifier, to be used by
179
+ # Voice ID for the server-side encryption of your data. Refer to [
180
+ # Amazon Connect VoiceID encryption at rest][1] for more details on
181
+ # how the KMS Key is used.
182
+ #
183
+ #
184
+ #
185
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/encryption-at-rest.html#encryption-at-rest-voiceid
186
+ # @return [Types::ServerSideEncryptionConfiguration]
187
+ #
188
+ # @!attribute [rw] tags
189
+ # A list of tags you want added to the domain.
190
+ # @return [Array<Types::Tag>]
191
+ #
192
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/CreateDomainRequest AWS API Documentation
193
+ #
194
+ class CreateDomainRequest < Struct.new(
195
+ :client_token,
196
+ :description,
197
+ :name,
198
+ :server_side_encryption_configuration,
199
+ :tags)
200
+ SENSITIVE = [:description, :name]
201
+ include Aws::Structure
202
+ end
203
+
204
+ # @!attribute [rw] domain
205
+ # Information about the newly created domain.
206
+ # @return [Types::Domain]
207
+ #
208
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/CreateDomainResponse AWS API Documentation
209
+ #
210
+ class CreateDomainResponse < Struct.new(
211
+ :domain)
212
+ SENSITIVE = []
213
+ include Aws::Structure
214
+ end
215
+
216
+ # @note When making an API call, you may pass DeleteDomainRequest
217
+ # data as a hash:
218
+ #
219
+ # {
220
+ # domain_id: "DomainId", # required
221
+ # }
222
+ #
223
+ # @!attribute [rw] domain_id
224
+ # The identifier of the domain you want to delete.
225
+ # @return [String]
226
+ #
227
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DeleteDomainRequest AWS API Documentation
228
+ #
229
+ class DeleteDomainRequest < Struct.new(
230
+ :domain_id)
231
+ SENSITIVE = []
232
+ include Aws::Structure
233
+ end
234
+
235
+ # @note When making an API call, you may pass DeleteFraudsterRequest
236
+ # data as a hash:
237
+ #
238
+ # {
239
+ # domain_id: "DomainId", # required
240
+ # fraudster_id: "FraudsterId", # required
241
+ # }
242
+ #
243
+ # @!attribute [rw] domain_id
244
+ # The identifier of the domain containing the fraudster.
245
+ # @return [String]
246
+ #
247
+ # @!attribute [rw] fraudster_id
248
+ # The identifier of the fraudster you want to delete.
249
+ # @return [String]
250
+ #
251
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DeleteFraudsterRequest AWS API Documentation
252
+ #
253
+ class DeleteFraudsterRequest < Struct.new(
254
+ :domain_id,
255
+ :fraudster_id)
256
+ SENSITIVE = [:fraudster_id]
257
+ include Aws::Structure
258
+ end
259
+
260
+ # @note When making an API call, you may pass DeleteSpeakerRequest
261
+ # data as a hash:
262
+ #
263
+ # {
264
+ # domain_id: "DomainId", # required
265
+ # speaker_id: "SpeakerId", # required
266
+ # }
267
+ #
268
+ # @!attribute [rw] domain_id
269
+ # The identifier of the domain containing the speaker.
270
+ # @return [String]
271
+ #
272
+ # @!attribute [rw] speaker_id
273
+ # The identifier of the speaker you want to delete.
274
+ # @return [String]
275
+ #
276
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DeleteSpeakerRequest AWS API Documentation
277
+ #
278
+ class DeleteSpeakerRequest < Struct.new(
279
+ :domain_id,
280
+ :speaker_id)
281
+ SENSITIVE = [:speaker_id]
282
+ include Aws::Structure
283
+ end
284
+
285
+ # @note When making an API call, you may pass DescribeDomainRequest
286
+ # data as a hash:
287
+ #
288
+ # {
289
+ # domain_id: "DomainId", # required
290
+ # }
291
+ #
292
+ # @!attribute [rw] domain_id
293
+ # The identifier of the domain you are describing.
294
+ # @return [String]
295
+ #
296
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DescribeDomainRequest AWS API Documentation
297
+ #
298
+ class DescribeDomainRequest < Struct.new(
299
+ :domain_id)
300
+ SENSITIVE = []
301
+ include Aws::Structure
302
+ end
303
+
304
+ # @!attribute [rw] domain
305
+ # Information about the specified domain.
306
+ # @return [Types::Domain]
307
+ #
308
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DescribeDomainResponse AWS API Documentation
309
+ #
310
+ class DescribeDomainResponse < Struct.new(
311
+ :domain)
312
+ SENSITIVE = []
313
+ include Aws::Structure
314
+ end
315
+
316
+ # @note When making an API call, you may pass DescribeFraudsterRegistrationJobRequest
317
+ # data as a hash:
318
+ #
319
+ # {
320
+ # domain_id: "DomainId", # required
321
+ # job_id: "JobId", # required
322
+ # }
323
+ #
324
+ # @!attribute [rw] domain_id
325
+ # The identifier for the domain containing the fraudster registration
326
+ # job.
327
+ # @return [String]
328
+ #
329
+ # @!attribute [rw] job_id
330
+ # The identifier for the fraudster registration job you are
331
+ # describing.
332
+ # @return [String]
333
+ #
334
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DescribeFraudsterRegistrationJobRequest AWS API Documentation
335
+ #
336
+ class DescribeFraudsterRegistrationJobRequest < Struct.new(
337
+ :domain_id,
338
+ :job_id)
339
+ SENSITIVE = []
340
+ include Aws::Structure
341
+ end
342
+
343
+ # @!attribute [rw] job
344
+ # Contains details about the specified fraudster registration job.
345
+ # @return [Types::FraudsterRegistrationJob]
346
+ #
347
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DescribeFraudsterRegistrationJobResponse AWS API Documentation
348
+ #
349
+ class DescribeFraudsterRegistrationJobResponse < Struct.new(
350
+ :job)
351
+ SENSITIVE = []
352
+ include Aws::Structure
353
+ end
354
+
355
+ # @note When making an API call, you may pass DescribeFraudsterRequest
356
+ # data as a hash:
357
+ #
358
+ # {
359
+ # domain_id: "DomainId", # required
360
+ # fraudster_id: "FraudsterId", # required
361
+ # }
362
+ #
363
+ # @!attribute [rw] domain_id
364
+ # The identifier of the domain containing the fraudster.
365
+ # @return [String]
366
+ #
367
+ # @!attribute [rw] fraudster_id
368
+ # The identifier of the fraudster you are describing.
369
+ # @return [String]
370
+ #
371
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DescribeFraudsterRequest AWS API Documentation
372
+ #
373
+ class DescribeFraudsterRequest < Struct.new(
374
+ :domain_id,
375
+ :fraudster_id)
376
+ SENSITIVE = [:fraudster_id]
377
+ include Aws::Structure
378
+ end
379
+
380
+ # @!attribute [rw] fraudster
381
+ # Information about the specified fraudster.
382
+ # @return [Types::Fraudster]
383
+ #
384
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DescribeFraudsterResponse AWS API Documentation
385
+ #
386
+ class DescribeFraudsterResponse < Struct.new(
387
+ :fraudster)
388
+ SENSITIVE = []
389
+ include Aws::Structure
390
+ end
391
+
392
+ # @note When making an API call, you may pass DescribeSpeakerEnrollmentJobRequest
393
+ # data as a hash:
394
+ #
395
+ # {
396
+ # domain_id: "DomainId", # required
397
+ # job_id: "JobId", # required
398
+ # }
399
+ #
400
+ # @!attribute [rw] domain_id
401
+ # The identifier of the domain containing the speaker enrollment job.
402
+ # @return [String]
403
+ #
404
+ # @!attribute [rw] job_id
405
+ # The identifier of the speaker enrollment job you are describing.
406
+ # @return [String]
407
+ #
408
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DescribeSpeakerEnrollmentJobRequest AWS API Documentation
409
+ #
410
+ class DescribeSpeakerEnrollmentJobRequest < Struct.new(
411
+ :domain_id,
412
+ :job_id)
413
+ SENSITIVE = []
414
+ include Aws::Structure
415
+ end
416
+
417
+ # @!attribute [rw] job
418
+ # Contains details about the specified speaker enrollment job.
419
+ # @return [Types::SpeakerEnrollmentJob]
420
+ #
421
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DescribeSpeakerEnrollmentJobResponse AWS API Documentation
422
+ #
423
+ class DescribeSpeakerEnrollmentJobResponse < Struct.new(
424
+ :job)
425
+ SENSITIVE = []
426
+ include Aws::Structure
427
+ end
428
+
429
+ # @note When making an API call, you may pass DescribeSpeakerRequest
430
+ # data as a hash:
431
+ #
432
+ # {
433
+ # domain_id: "DomainId", # required
434
+ # speaker_id: "SpeakerId", # required
435
+ # }
436
+ #
437
+ # @!attribute [rw] domain_id
438
+ # The identifier of the domain that contains the speaker.
439
+ # @return [String]
440
+ #
441
+ # @!attribute [rw] speaker_id
442
+ # The identifier of the speaker you are describing.
443
+ # @return [String]
444
+ #
445
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DescribeSpeakerRequest AWS API Documentation
446
+ #
447
+ class DescribeSpeakerRequest < Struct.new(
448
+ :domain_id,
449
+ :speaker_id)
450
+ SENSITIVE = [:speaker_id]
451
+ include Aws::Structure
452
+ end
453
+
454
+ # @!attribute [rw] speaker
455
+ # Information about the specified speaker.
456
+ # @return [Types::Speaker]
457
+ #
458
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DescribeSpeakerResponse AWS API Documentation
459
+ #
460
+ class DescribeSpeakerResponse < Struct.new(
461
+ :speaker)
462
+ SENSITIVE = []
463
+ include Aws::Structure
464
+ end
465
+
466
+ # Contains all the information about a domain.
467
+ #
468
+ # @!attribute [rw] arn
469
+ # The Amazon Resource Name (ARN) for the domain.
470
+ # @return [String]
471
+ #
472
+ # @!attribute [rw] created_at
473
+ # The timestamp at which the domain is created.
474
+ # @return [Time]
475
+ #
476
+ # @!attribute [rw] description
477
+ # The client-provided description of the domain.
478
+ # @return [String]
479
+ #
480
+ # @!attribute [rw] domain_id
481
+ # The service-generated identifier for the domain.
482
+ # @return [String]
483
+ #
484
+ # @!attribute [rw] domain_status
485
+ # The current status of the domain.
486
+ # @return [String]
487
+ #
488
+ # @!attribute [rw] name
489
+ # The client-provided name for the domain.
490
+ # @return [String]
491
+ #
492
+ # @!attribute [rw] server_side_encryption_configuration
493
+ # The server-side encryption configuration containing the KMS Key
494
+ # Identifier you want Voice ID to use to encrypt your data.
495
+ # @return [Types::ServerSideEncryptionConfiguration]
496
+ #
497
+ # @!attribute [rw] updated_at
498
+ # The timestamp showing the domain's last update.
499
+ # @return [Time]
500
+ #
501
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/Domain AWS API Documentation
502
+ #
503
+ class Domain < Struct.new(
504
+ :arn,
505
+ :created_at,
506
+ :description,
507
+ :domain_id,
508
+ :domain_status,
509
+ :name,
510
+ :server_side_encryption_configuration,
511
+ :updated_at)
512
+ SENSITIVE = [:description, :name]
513
+ include Aws::Structure
514
+ end
515
+
516
+ # Contains a summary of information about a domain.
517
+ #
518
+ # @!attribute [rw] arn
519
+ # The Amazon Resource Name (ARN) for the domain.
520
+ # @return [String]
521
+ #
522
+ # @!attribute [rw] created_at
523
+ # The timestamp showing when the domain is created.
524
+ # @return [Time]
525
+ #
526
+ # @!attribute [rw] description
527
+ # The client-provided description of the domain.
528
+ # @return [String]
529
+ #
530
+ # @!attribute [rw] domain_id
531
+ # The service-generated identifier for the domain.
532
+ # @return [String]
533
+ #
534
+ # @!attribute [rw] domain_status
535
+ # The current status of the domain.
536
+ # @return [String]
537
+ #
538
+ # @!attribute [rw] name
539
+ # The client-provided name for the domain.
540
+ # @return [String]
541
+ #
542
+ # @!attribute [rw] server_side_encryption_configuration
543
+ # The server-side encryption configuration containing the KMS Key
544
+ # Identifier you want Voice ID to use to encrypt your data..
545
+ # @return [Types::ServerSideEncryptionConfiguration]
546
+ #
547
+ # @!attribute [rw] updated_at
548
+ # The timestamp showing the domain's last update.
549
+ # @return [Time]
550
+ #
551
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/DomainSummary AWS API Documentation
552
+ #
553
+ class DomainSummary < Struct.new(
554
+ :arn,
555
+ :created_at,
556
+ :description,
557
+ :domain_id,
558
+ :domain_status,
559
+ :name,
560
+ :server_side_encryption_configuration,
561
+ :updated_at)
562
+ SENSITIVE = [:description, :name]
563
+ include Aws::Structure
564
+ end
565
+
566
+ # Contains configurations defining enrollment behavior for the batch
567
+ # job.
568
+ #
569
+ # @note When making an API call, you may pass EnrollmentConfig
570
+ # data as a hash:
571
+ #
572
+ # {
573
+ # existing_enrollment_action: "SKIP", # accepts SKIP, OVERWRITE
574
+ # fraud_detection_config: {
575
+ # fraud_detection_action: "IGNORE", # accepts IGNORE, FAIL
576
+ # risk_threshold: 1,
577
+ # },
578
+ # }
579
+ #
580
+ # @!attribute [rw] existing_enrollment_action
581
+ # The action to take when the specified speaker is already enrolled in
582
+ # the specified domain. The default value is `SKIP`, which skips the
583
+ # enrollment for the existing speaker. Setting the value to
584
+ # `OVERWRITE` replaces the existing voice prints and enrollment audio
585
+ # stored for that speaker with new data generated from the latest
586
+ # audio.
587
+ # @return [String]
588
+ #
589
+ # @!attribute [rw] fraud_detection_config
590
+ # The fraud detection configuration to use for the speaker enrollment
591
+ # job.
592
+ # @return [Types::EnrollmentJobFraudDetectionConfig]
593
+ #
594
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/EnrollmentConfig AWS API Documentation
595
+ #
596
+ class EnrollmentConfig < Struct.new(
597
+ :existing_enrollment_action,
598
+ :fraud_detection_config)
599
+ SENSITIVE = []
600
+ include Aws::Structure
601
+ end
602
+
603
+ # The configuration defining the action to take when a speaker is
604
+ # flagged by the fraud detection system during a batch speaker
605
+ # enrollment job, and the risk threshold to use for identification.
606
+ #
607
+ # @note When making an API call, you may pass EnrollmentJobFraudDetectionConfig
608
+ # data as a hash:
609
+ #
610
+ # {
611
+ # fraud_detection_action: "IGNORE", # accepts IGNORE, FAIL
612
+ # risk_threshold: 1,
613
+ # }
614
+ #
615
+ # @!attribute [rw] fraud_detection_action
616
+ # The action to take when the given speaker is flagged by the fraud
617
+ # detection system. The default value is `FAIL`, which fails the
618
+ # speaker enrollment. Changing this value to `IGNORE` results in the
619
+ # speaker being enrolled even if they are flagged by the fraud
620
+ # detection system.
621
+ # @return [String]
622
+ #
623
+ # @!attribute [rw] risk_threshold
624
+ # Threshold value for determining whether the speaker is a high risk
625
+ # to be fraudulent. If the detected risk score calculated by Voice ID
626
+ # is greater than or equal to the threshold, the speaker is considered
627
+ # a fraudster.
628
+ # @return [Integer]
629
+ #
630
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/EnrollmentJobFraudDetectionConfig AWS API Documentation
631
+ #
632
+ class EnrollmentJobFraudDetectionConfig < Struct.new(
633
+ :fraud_detection_action,
634
+ :risk_threshold)
635
+ SENSITIVE = []
636
+ include Aws::Structure
637
+ end
638
+
639
+ # @note When making an API call, you may pass EvaluateSessionRequest
640
+ # data as a hash:
641
+ #
642
+ # {
643
+ # domain_id: "DomainId", # required
644
+ # session_name_or_id: "SessionNameOrId", # required
645
+ # }
646
+ #
647
+ # @!attribute [rw] domain_id
648
+ # The identifier of the domain where the session started.
649
+ # @return [String]
650
+ #
651
+ # @!attribute [rw] session_name_or_id
652
+ # The session identifier, or name of the session, that you want to
653
+ # evaluate. In Voice ID integration, this is the Contact-Id.
654
+ # @return [String]
655
+ #
656
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/EvaluateSessionRequest AWS API Documentation
657
+ #
658
+ class EvaluateSessionRequest < Struct.new(
659
+ :domain_id,
660
+ :session_name_or_id)
661
+ SENSITIVE = []
662
+ include Aws::Structure
663
+ end
664
+
665
+ # @!attribute [rw] authentication_result
666
+ # Details resulting from the authentication process, such as
667
+ # authentication decision and authentication score.
668
+ # @return [Types::AuthenticationResult]
669
+ #
670
+ # @!attribute [rw] domain_id
671
+ # The identifier of the domain containing the session.
672
+ # @return [String]
673
+ #
674
+ # @!attribute [rw] fraud_detection_result
675
+ # Details resulting from the fraud detection process, such as fraud
676
+ # detection decision and risk score.
677
+ # @return [Types::FraudDetectionResult]
678
+ #
679
+ # @!attribute [rw] session_id
680
+ # The service-generated identifier of the session.
681
+ # @return [String]
682
+ #
683
+ # @!attribute [rw] session_name
684
+ # The client-provided name of the session.
685
+ # @return [String]
686
+ #
687
+ # @!attribute [rw] streaming_status
688
+ # The current status of audio streaming for this session. This field
689
+ # is useful to infer next steps when the Authentication or Fraud
690
+ # Detection results are empty or the decision is `NOT_ENOUGH_SPEECH`.
691
+ # In this situation, if the `StreamingStatus` is
692
+ # `ONGOING/PENDING_CONFIGURATION`, it can mean that the client should
693
+ # call the API again later, once Voice ID has enough audio to produce
694
+ # a result. If the decision remains `NOT_ENOUGH_SPEECH` even after
695
+ # `StreamingStatus` is `ENDED`, it means that the previously streamed
696
+ # session did not have enough speech to perform evaluation, and a new
697
+ # streaming session is needed to try again.
698
+ # @return [String]
699
+ #
700
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/EvaluateSessionResponse AWS API Documentation
701
+ #
702
+ class EvaluateSessionResponse < Struct.new(
703
+ :authentication_result,
704
+ :domain_id,
705
+ :fraud_detection_result,
706
+ :session_id,
707
+ :session_name,
708
+ :streaming_status)
709
+ SENSITIVE = []
710
+ include Aws::Structure
711
+ end
712
+
713
+ # Contains error details for a failed batch job.
714
+ #
715
+ # @!attribute [rw] message
716
+ # A description of the error that caused the batch job failure.
717
+ # @return [String]
718
+ #
719
+ # @!attribute [rw] status_code
720
+ # An HTTP status code representing the nature of the error.
721
+ # @return [Integer]
722
+ #
723
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/FailureDetails AWS API Documentation
724
+ #
725
+ class FailureDetails < Struct.new(
726
+ :message,
727
+ :status_code)
728
+ SENSITIVE = []
729
+ include Aws::Structure
730
+ end
731
+
732
+ # The configuration used for performing fraud detection over a speaker
733
+ # during a session.
734
+ #
735
+ # @!attribute [rw] risk_threshold
736
+ # Threshold value for determining whether the speaker is a fraudster.
737
+ # If the detected risk score calculated by Voice ID is higher than the
738
+ # threshold, the speaker is considered a fraudster.
739
+ # @return [Integer]
740
+ #
741
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/FraudDetectionConfiguration AWS API Documentation
742
+ #
743
+ class FraudDetectionConfiguration < Struct.new(
744
+ :risk_threshold)
745
+ SENSITIVE = []
746
+ include Aws::Structure
747
+ end
748
+
749
+ # The fraud detection result produced by Voice ID, processed against the
750
+ # current session state and streamed audio of the speaker.
751
+ #
752
+ # @!attribute [rw] audio_aggregation_ended_at
753
+ # A timestamp indicating when audio aggregation ended for this fraud
754
+ # detection result.
755
+ # @return [Time]
756
+ #
757
+ # @!attribute [rw] audio_aggregation_started_at
758
+ # A timestamp indicating when audio aggregation started for this fraud
759
+ # detection result.
760
+ # @return [Time]
761
+ #
762
+ # @!attribute [rw] configuration
763
+ # The `FraudDetectionConfiguration` used to generate this fraud
764
+ # detection result.
765
+ # @return [Types::FraudDetectionConfiguration]
766
+ #
767
+ # @!attribute [rw] decision
768
+ # The fraud detection decision produced by Voice ID, processed against
769
+ # the current session state and streamed audio of the speaker.
770
+ # @return [String]
771
+ #
772
+ # @!attribute [rw] fraud_detection_result_id
773
+ # The unique identifier for this fraud detection result. Given there
774
+ # can be multiple fraud detections for a given session, this field
775
+ # helps in identifying if the returned result is from previous
776
+ # streaming activity or a new result. Note that in the absence of any
777
+ # new streaming activity or risk threshold changes, Voice ID always
778
+ # returns cached Fraud Detection result for this API.
779
+ # @return [String]
780
+ #
781
+ # @!attribute [rw] reasons
782
+ # The reason speaker was flagged by the fraud detection system. This
783
+ # is only be populated if fraud detection Decision is `HIGH_RISK`, and
784
+ # only has one possible value: `KNOWN_FRAUDSTER`.
785
+ # @return [Array<String>]
786
+ #
787
+ # @!attribute [rw] risk_details
788
+ # Details about each risk analyzed for this speaker.
789
+ # @return [Types::FraudRiskDetails]
790
+ #
791
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/FraudDetectionResult AWS API Documentation
792
+ #
793
+ class FraudDetectionResult < Struct.new(
794
+ :audio_aggregation_ended_at,
795
+ :audio_aggregation_started_at,
796
+ :configuration,
797
+ :decision,
798
+ :fraud_detection_result_id,
799
+ :reasons,
800
+ :risk_details)
801
+ SENSITIVE = []
802
+ include Aws::Structure
803
+ end
804
+
805
+ # Details regarding various fraud risk analyses performed against the
806
+ # current session state and streamed audio of the speaker.
807
+ #
808
+ # @!attribute [rw] known_fraudster_risk
809
+ # The details resulting from 'Known Fraudster Risk' analysis of the
810
+ # speaker.
811
+ # @return [Types::KnownFraudsterRisk]
812
+ #
813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/FraudRiskDetails AWS API Documentation
814
+ #
815
+ class FraudRiskDetails < Struct.new(
816
+ :known_fraudster_risk)
817
+ SENSITIVE = []
818
+ include Aws::Structure
819
+ end
820
+
821
+ # Contains all the information about a fraudster.
822
+ #
823
+ # @!attribute [rw] created_at
824
+ # The timestamp when Voice ID identified the fraudster.
825
+ # @return [Time]
826
+ #
827
+ # @!attribute [rw] domain_id
828
+ # The identifier for the domain containing the fraudster.
829
+ # @return [String]
830
+ #
831
+ # @!attribute [rw] generated_fraudster_id
832
+ # The service-generated identifier for the fraudster.
833
+ # @return [String]
834
+ #
835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/Fraudster AWS API Documentation
836
+ #
837
+ class Fraudster < Struct.new(
838
+ :created_at,
839
+ :domain_id,
840
+ :generated_fraudster_id)
841
+ SENSITIVE = []
842
+ include Aws::Structure
843
+ end
844
+
845
+ # Contains all the information about a fraudster registration job.
846
+ #
847
+ # @!attribute [rw] created_at
848
+ # A timestamp showing the creation time of the fraudster registration
849
+ # job.
850
+ # @return [Time]
851
+ #
852
+ # @!attribute [rw] data_access_role_arn
853
+ # The IAM role Amazon Resource Name (ARN) that grants Voice ID
854
+ # permissions to access customer's buckets to read the input manifest
855
+ # file and write the job output file.
856
+ # @return [String]
857
+ #
858
+ # @!attribute [rw] domain_id
859
+ # The identifier of the domain containing the fraudster registration
860
+ # job.
861
+ # @return [String]
862
+ #
863
+ # @!attribute [rw] ended_at
864
+ # A timestamp showing when the fraudster registration job ended.
865
+ # @return [Time]
866
+ #
867
+ # @!attribute [rw] failure_details
868
+ # Contains details that are populated when an entire batch job fails.
869
+ # In cases of individual registration job failures, the batch job as a
870
+ # whole doesn't fail; it is completed with a `JobStatus` of
871
+ # `COMPLETED_WITH_ERRORS`. You can use the job output file to identify
872
+ # the individual registration requests that failed.
873
+ # @return [Types::FailureDetails]
874
+ #
875
+ # @!attribute [rw] input_data_config
876
+ # The input data config containing an S3 URI for the input manifest
877
+ # file that contains the list of fraudster registration job requests.
878
+ # @return [Types::InputDataConfig]
879
+ #
880
+ # @!attribute [rw] job_id
881
+ # The service-generated identifier for the fraudster registration job.
882
+ # @return [String]
883
+ #
884
+ # @!attribute [rw] job_name
885
+ # The client-provied name for the fraudster registration job.
886
+ # @return [String]
887
+ #
888
+ # @!attribute [rw] job_progress
889
+ # Shows the completed percentage of registration requests listed in
890
+ # the input file.
891
+ # @return [Types::JobProgress]
892
+ #
893
+ # @!attribute [rw] job_status
894
+ # The current status of the fraudster registration job.
895
+ # @return [String]
896
+ #
897
+ # @!attribute [rw] output_data_config
898
+ # The output data config containing the S3 location where you want
899
+ # Voice ID to write your job output file; you must also include a KMS
900
+ # Key ID in order to encrypt the file.
901
+ # @return [Types::OutputDataConfig]
902
+ #
903
+ # @!attribute [rw] registration_config
904
+ # The registration config containing details such as the action to
905
+ # take when a duplicate fraudster is detected, and the similarity
906
+ # threshold to use for detecting a duplicate fraudster.
907
+ # @return [Types::RegistrationConfig]
908
+ #
909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/FraudsterRegistrationJob AWS API Documentation
910
+ #
911
+ class FraudsterRegistrationJob < Struct.new(
912
+ :created_at,
913
+ :data_access_role_arn,
914
+ :domain_id,
915
+ :ended_at,
916
+ :failure_details,
917
+ :input_data_config,
918
+ :job_id,
919
+ :job_name,
920
+ :job_progress,
921
+ :job_status,
922
+ :output_data_config,
923
+ :registration_config)
924
+ SENSITIVE = [:job_name]
925
+ include Aws::Structure
926
+ end
927
+
928
+ # Contains a summary of information about a fraudster registration job.
929
+ #
930
+ # @!attribute [rw] created_at
931
+ # A timestamp showing when the fraudster registration job is created.
932
+ # @return [Time]
933
+ #
934
+ # @!attribute [rw] domain_id
935
+ # The identifier of the domain containing the fraudster registration
936
+ # job.
937
+ # @return [String]
938
+ #
939
+ # @!attribute [rw] ended_at
940
+ # A timestamp showing when the fraudster registration job ended.
941
+ # @return [Time]
942
+ #
943
+ # @!attribute [rw] failure_details
944
+ # Contains details that are populated when an entire batch job fails.
945
+ # In cases of individual registration job failures, the batch job as a
946
+ # whole doesn't fail; it is completed with a `JobStatus` of
947
+ # `COMPLETED_WITH_ERRORS`. You can use the job output file to identify
948
+ # the individual registration requests that failed.
949
+ # @return [Types::FailureDetails]
950
+ #
951
+ # @!attribute [rw] job_id
952
+ # The service-generated identifier for the fraudster registration job.
953
+ # @return [String]
954
+ #
955
+ # @!attribute [rw] job_name
956
+ # The client-provied name for the fraudster registration job.
957
+ # @return [String]
958
+ #
959
+ # @!attribute [rw] job_progress
960
+ # Shows the completed percentage of registration requests listed in
961
+ # the input file.
962
+ # @return [Types::JobProgress]
963
+ #
964
+ # @!attribute [rw] job_status
965
+ # The current status of the fraudster registration job.
966
+ # @return [String]
967
+ #
968
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/FraudsterRegistrationJobSummary AWS API Documentation
969
+ #
970
+ class FraudsterRegistrationJobSummary < Struct.new(
971
+ :created_at,
972
+ :domain_id,
973
+ :ended_at,
974
+ :failure_details,
975
+ :job_id,
976
+ :job_name,
977
+ :job_progress,
978
+ :job_status)
979
+ SENSITIVE = [:job_name]
980
+ include Aws::Structure
981
+ end
982
+
983
+ # The configuration containing input file information for a batch job.
984
+ #
985
+ # @note When making an API call, you may pass InputDataConfig
986
+ # data as a hash:
987
+ #
988
+ # {
989
+ # s3_uri: "S3Uri", # required
990
+ # }
991
+ #
992
+ # @!attribute [rw] s3_uri
993
+ # The S3 location for the input manifest file that contains the list
994
+ # of individual enrollment or registration job requests.
995
+ # @return [String]
996
+ #
997
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/InputDataConfig AWS API Documentation
998
+ #
999
+ class InputDataConfig < Struct.new(
1000
+ :s3_uri)
1001
+ SENSITIVE = []
1002
+ include Aws::Structure
1003
+ end
1004
+
1005
+ # The request failed due to an unknown error on the server side.
1006
+ #
1007
+ # @!attribute [rw] message
1008
+ # @return [String]
1009
+ #
1010
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/InternalServerException AWS API Documentation
1011
+ #
1012
+ class InternalServerException < Struct.new(
1013
+ :message)
1014
+ SENSITIVE = []
1015
+ include Aws::Structure
1016
+ end
1017
+
1018
+ # Indicates the completion progress for a batch job.
1019
+ #
1020
+ # @!attribute [rw] percent_complete
1021
+ # Shows the completed percentage of enrollment or registration
1022
+ # requests listed in the input file.
1023
+ # @return [Integer]
1024
+ #
1025
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/JobProgress AWS API Documentation
1026
+ #
1027
+ class JobProgress < Struct.new(
1028
+ :percent_complete)
1029
+ SENSITIVE = []
1030
+ include Aws::Structure
1031
+ end
1032
+
1033
+ # Contains details produced as a result of performing known fraudster
1034
+ # risk analysis on a speaker.
1035
+ #
1036
+ # @!attribute [rw] generated_fraudster_id
1037
+ # The identifier of the fraudster that is the closest match to the
1038
+ # speaker. If there are no fraudsters registered in a given domain, or
1039
+ # if there are no fraudsters with a non-zero RiskScore, this value is
1040
+ # `null`.
1041
+ # @return [String]
1042
+ #
1043
+ # @!attribute [rw] risk_score
1044
+ # The score indicating the likelihood the speaker is a known
1045
+ # fraudster.
1046
+ # @return [Integer]
1047
+ #
1048
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/KnownFraudsterRisk AWS API Documentation
1049
+ #
1050
+ class KnownFraudsterRisk < Struct.new(
1051
+ :generated_fraudster_id,
1052
+ :risk_score)
1053
+ SENSITIVE = []
1054
+ include Aws::Structure
1055
+ end
1056
+
1057
+ # @note When making an API call, you may pass ListDomainsRequest
1058
+ # data as a hash:
1059
+ #
1060
+ # {
1061
+ # max_results: 1,
1062
+ # next_token: "NextToken",
1063
+ # }
1064
+ #
1065
+ # @!attribute [rw] max_results
1066
+ # The maximum number of results that are returned per call. You can
1067
+ # use `NextToken` to obtain further pages of results. The default is
1068
+ # 100; the maximum allowed page size is also 100.
1069
+ # @return [Integer]
1070
+ #
1071
+ # @!attribute [rw] next_token
1072
+ # If `NextToken` is returned, there are more results available. The
1073
+ # value of `NextToken` is a unique pagination token for each page.
1074
+ # Make the call again using the returned token to retrieve the next
1075
+ # page. Keep all other arguments unchanged. Each pagination token
1076
+ # expires after 24 hours.
1077
+ # @return [String]
1078
+ #
1079
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ListDomainsRequest AWS API Documentation
1080
+ #
1081
+ class ListDomainsRequest < Struct.new(
1082
+ :max_results,
1083
+ :next_token)
1084
+ SENSITIVE = []
1085
+ include Aws::Structure
1086
+ end
1087
+
1088
+ # @!attribute [rw] domain_summaries
1089
+ # A list containing details about each domain in the Amazon Web
1090
+ # Services account.
1091
+ # @return [Array<Types::DomainSummary>]
1092
+ #
1093
+ # @!attribute [rw] next_token
1094
+ # If `NextToken` is returned, there are more results available. The
1095
+ # value of `NextToken` is a unique pagination token for each page.
1096
+ # Make the call again using the returned token to retrieve the next
1097
+ # page. Keep all other arguments unchanged. Each pagination token
1098
+ # expires after 24 hours.
1099
+ # @return [String]
1100
+ #
1101
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ListDomainsResponse AWS API Documentation
1102
+ #
1103
+ class ListDomainsResponse < Struct.new(
1104
+ :domain_summaries,
1105
+ :next_token)
1106
+ SENSITIVE = []
1107
+ include Aws::Structure
1108
+ end
1109
+
1110
+ # @note When making an API call, you may pass ListFraudsterRegistrationJobsRequest
1111
+ # data as a hash:
1112
+ #
1113
+ # {
1114
+ # domain_id: "DomainId", # required
1115
+ # job_status: "SUBMITTED", # accepts SUBMITTED, IN_PROGRESS, COMPLETED, COMPLETED_WITH_ERRORS, FAILED
1116
+ # max_results: 1,
1117
+ # next_token: "NextToken",
1118
+ # }
1119
+ #
1120
+ # @!attribute [rw] domain_id
1121
+ # The identifier of the domain containing the fraudster registration
1122
+ # Jobs.
1123
+ # @return [String]
1124
+ #
1125
+ # @!attribute [rw] job_status
1126
+ # Provides the status of your fraudster registration job.
1127
+ # @return [String]
1128
+ #
1129
+ # @!attribute [rw] max_results
1130
+ # The maximum number of results that are returned per call. You can
1131
+ # use `NextToken` to obtain further pages of results. The default is
1132
+ # 100; the maximum allowed page size is also 100.
1133
+ # @return [Integer]
1134
+ #
1135
+ # @!attribute [rw] next_token
1136
+ # If `NextToken` is returned, there are more results available. The
1137
+ # value of `NextToken` is a unique pagination token for each page.
1138
+ # Make the call again using the returned token to retrieve the next
1139
+ # page. Keep all other arguments unchanged. Each pagination token
1140
+ # expires after 24 hours.
1141
+ # @return [String]
1142
+ #
1143
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ListFraudsterRegistrationJobsRequest AWS API Documentation
1144
+ #
1145
+ class ListFraudsterRegistrationJobsRequest < Struct.new(
1146
+ :domain_id,
1147
+ :job_status,
1148
+ :max_results,
1149
+ :next_token)
1150
+ SENSITIVE = []
1151
+ include Aws::Structure
1152
+ end
1153
+
1154
+ # @!attribute [rw] job_summaries
1155
+ # A list containing details about each specified fraudster
1156
+ # registration job.
1157
+ # @return [Array<Types::FraudsterRegistrationJobSummary>]
1158
+ #
1159
+ # @!attribute [rw] next_token
1160
+ # If `NextToken` is returned, there are more results available. The
1161
+ # value of `NextToken` is a unique pagination token for each page.
1162
+ # Make the call again using the returned token to retrieve the next
1163
+ # page. Keep all other arguments unchanged. Each pagination token
1164
+ # expires after 24 hours.
1165
+ # @return [String]
1166
+ #
1167
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ListFraudsterRegistrationJobsResponse AWS API Documentation
1168
+ #
1169
+ class ListFraudsterRegistrationJobsResponse < Struct.new(
1170
+ :job_summaries,
1171
+ :next_token)
1172
+ SENSITIVE = []
1173
+ include Aws::Structure
1174
+ end
1175
+
1176
+ # @note When making an API call, you may pass ListSpeakerEnrollmentJobsRequest
1177
+ # data as a hash:
1178
+ #
1179
+ # {
1180
+ # domain_id: "DomainId", # required
1181
+ # job_status: "SUBMITTED", # accepts SUBMITTED, IN_PROGRESS, COMPLETED, COMPLETED_WITH_ERRORS, FAILED
1182
+ # max_results: 1,
1183
+ # next_token: "NextToken",
1184
+ # }
1185
+ #
1186
+ # @!attribute [rw] domain_id
1187
+ # The identifier of the domain containing the speaker enrollment jobs.
1188
+ # @return [String]
1189
+ #
1190
+ # @!attribute [rw] job_status
1191
+ # Provides the status of your speaker enrollment Job.
1192
+ # @return [String]
1193
+ #
1194
+ # @!attribute [rw] max_results
1195
+ # The maximum number of results that are returned per call. You can
1196
+ # use `NextToken` to obtain further pages of results. The default is
1197
+ # 100; the maximum allowed page size is also 100.
1198
+ # @return [Integer]
1199
+ #
1200
+ # @!attribute [rw] next_token
1201
+ # If `NextToken` is returned, there are more results available. The
1202
+ # value of `NextToken` is a unique pagination token for each page.
1203
+ # Make the call again using the returned token to retrieve the next
1204
+ # page. Keep all other arguments unchanged. Each pagination token
1205
+ # expires after 24 hours.
1206
+ # @return [String]
1207
+ #
1208
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ListSpeakerEnrollmentJobsRequest AWS API Documentation
1209
+ #
1210
+ class ListSpeakerEnrollmentJobsRequest < Struct.new(
1211
+ :domain_id,
1212
+ :job_status,
1213
+ :max_results,
1214
+ :next_token)
1215
+ SENSITIVE = []
1216
+ include Aws::Structure
1217
+ end
1218
+
1219
+ # @!attribute [rw] job_summaries
1220
+ # A list containing details about each specified speaker enrollment
1221
+ # job.
1222
+ # @return [Array<Types::SpeakerEnrollmentJobSummary>]
1223
+ #
1224
+ # @!attribute [rw] next_token
1225
+ # If `NextToken` is returned, there are more results available. The
1226
+ # value of `NextToken` is a unique pagination token for each page.
1227
+ # Make the call again using the returned token to retrieve the next
1228
+ # page. Keep all other arguments unchanged. Each pagination token
1229
+ # expires after 24 hours.
1230
+ # @return [String]
1231
+ #
1232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ListSpeakerEnrollmentJobsResponse AWS API Documentation
1233
+ #
1234
+ class ListSpeakerEnrollmentJobsResponse < Struct.new(
1235
+ :job_summaries,
1236
+ :next_token)
1237
+ SENSITIVE = []
1238
+ include Aws::Structure
1239
+ end
1240
+
1241
+ # @note When making an API call, you may pass ListSpeakersRequest
1242
+ # data as a hash:
1243
+ #
1244
+ # {
1245
+ # domain_id: "DomainId", # required
1246
+ # max_results: 1,
1247
+ # next_token: "NextToken",
1248
+ # }
1249
+ #
1250
+ # @!attribute [rw] domain_id
1251
+ # The identifier of the domain.
1252
+ # @return [String]
1253
+ #
1254
+ # @!attribute [rw] max_results
1255
+ # The maximum number of results that are returned per call. You can
1256
+ # use `NextToken` to obtain further pages of results. The default is
1257
+ # 100; the maximum allowed page size is also 100.
1258
+ # @return [Integer]
1259
+ #
1260
+ # @!attribute [rw] next_token
1261
+ # If `NextToken` is returned, there are more results available. The
1262
+ # value of `NextToken` is a unique pagination token for each page.
1263
+ # Make the call again using the returned token to retrieve the next
1264
+ # page. Keep all other arguments unchanged. Each pagination token
1265
+ # expires after 24 hours.
1266
+ # @return [String]
1267
+ #
1268
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ListSpeakersRequest AWS API Documentation
1269
+ #
1270
+ class ListSpeakersRequest < Struct.new(
1271
+ :domain_id,
1272
+ :max_results,
1273
+ :next_token)
1274
+ SENSITIVE = []
1275
+ include Aws::Structure
1276
+ end
1277
+
1278
+ # @!attribute [rw] next_token
1279
+ # If `NextToken` is returned, there are more results available. The
1280
+ # value of `NextToken` is a unique pagination token for each page.
1281
+ # Make the call again using the returned token to retrieve the next
1282
+ # page. Keep all other arguments unchanged. Each pagination token
1283
+ # expires after 24 hours.
1284
+ # @return [String]
1285
+ #
1286
+ # @!attribute [rw] speaker_summaries
1287
+ # A list containing details about each speaker in the Amazon Web
1288
+ # Services account.
1289
+ # @return [Array<Types::SpeakerSummary>]
1290
+ #
1291
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ListSpeakersResponse AWS API Documentation
1292
+ #
1293
+ class ListSpeakersResponse < Struct.new(
1294
+ :next_token,
1295
+ :speaker_summaries)
1296
+ SENSITIVE = []
1297
+ include Aws::Structure
1298
+ end
1299
+
1300
+ # @note When making an API call, you may pass ListTagsForResourceRequest
1301
+ # data as a hash:
1302
+ #
1303
+ # {
1304
+ # resource_arn: "AmazonResourceName", # required
1305
+ # }
1306
+ #
1307
+ # @!attribute [rw] resource_arn
1308
+ # The Amazon Resource Name (ARN) of the Voice ID resource for which
1309
+ # you want to list the tags.
1310
+ # @return [String]
1311
+ #
1312
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ListTagsForResourceRequest AWS API Documentation
1313
+ #
1314
+ class ListTagsForResourceRequest < Struct.new(
1315
+ :resource_arn)
1316
+ SENSITIVE = []
1317
+ include Aws::Structure
1318
+ end
1319
+
1320
+ # @!attribute [rw] tags
1321
+ # The list of tags associated with the specified resource.
1322
+ # @return [Array<Types::Tag>]
1323
+ #
1324
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ListTagsForResourceResponse AWS API Documentation
1325
+ #
1326
+ class ListTagsForResourceResponse < Struct.new(
1327
+ :tags)
1328
+ SENSITIVE = []
1329
+ include Aws::Structure
1330
+ end
1331
+
1332
+ # @note When making an API call, you may pass OptOutSpeakerRequest
1333
+ # data as a hash:
1334
+ #
1335
+ # {
1336
+ # domain_id: "DomainId", # required
1337
+ # speaker_id: "SpeakerId", # required
1338
+ # }
1339
+ #
1340
+ # @!attribute [rw] domain_id
1341
+ # The identifier of the domain containing the speaker.
1342
+ # @return [String]
1343
+ #
1344
+ # @!attribute [rw] speaker_id
1345
+ # The identifier of the speaker you want opted-out.
1346
+ # @return [String]
1347
+ #
1348
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/OptOutSpeakerRequest AWS API Documentation
1349
+ #
1350
+ class OptOutSpeakerRequest < Struct.new(
1351
+ :domain_id,
1352
+ :speaker_id)
1353
+ SENSITIVE = [:speaker_id]
1354
+ include Aws::Structure
1355
+ end
1356
+
1357
+ # @!attribute [rw] speaker
1358
+ # Details about the opted-out speaker.
1359
+ # @return [Types::Speaker]
1360
+ #
1361
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/OptOutSpeakerResponse AWS API Documentation
1362
+ #
1363
+ class OptOutSpeakerResponse < Struct.new(
1364
+ :speaker)
1365
+ SENSITIVE = []
1366
+ include Aws::Structure
1367
+ end
1368
+
1369
+ # The configuration containing output file information for a batch job.
1370
+ #
1371
+ # @note When making an API call, you may pass OutputDataConfig
1372
+ # data as a hash:
1373
+ #
1374
+ # {
1375
+ # kms_key_id: "KmsKeyId",
1376
+ # s3_uri: "S3Uri", # required
1377
+ # }
1378
+ #
1379
+ # @!attribute [rw] kms_key_id
1380
+ # the identifier of the KMS key you want Voice ID to use to encrypt
1381
+ # the output file of the fraudster registration job.
1382
+ # @return [String]
1383
+ #
1384
+ # @!attribute [rw] s3_uri
1385
+ # The S3 path of the folder to which Voice ID writes the job output
1386
+ # file, which has a `*.out` extension. For example, if the input file
1387
+ # name is `input-file.json` and the output folder path is
1388
+ # `s3://output-bucket/output-folder`, the full output file path is
1389
+ # `s3://output-bucket/output-folder/job-Id/input-file.json.out`.
1390
+ # @return [String]
1391
+ #
1392
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/OutputDataConfig AWS API Documentation
1393
+ #
1394
+ class OutputDataConfig < Struct.new(
1395
+ :kms_key_id,
1396
+ :s3_uri)
1397
+ SENSITIVE = []
1398
+ include Aws::Structure
1399
+ end
1400
+
1401
+ # The configuration definining the action to take when a duplicate
1402
+ # fraudster is detected, and the similarity threshold to use for
1403
+ # detecting a duplicate fraudster during a batch fraudster registration
1404
+ # job.
1405
+ #
1406
+ # @note When making an API call, you may pass RegistrationConfig
1407
+ # data as a hash:
1408
+ #
1409
+ # {
1410
+ # duplicate_registration_action: "SKIP", # accepts SKIP, REGISTER_AS_NEW
1411
+ # fraudster_similarity_threshold: 1,
1412
+ # }
1413
+ #
1414
+ # @!attribute [rw] duplicate_registration_action
1415
+ # The action to take when a fraudster is identified as a duplicate.
1416
+ # The default action is `SKIP`, which skips registering the duplicate
1417
+ # fraudster. Setting the value to `REGISTER_AS_NEW` always registers a
1418
+ # new fraudster into the specified domain.
1419
+ # @return [String]
1420
+ #
1421
+ # @!attribute [rw] fraudster_similarity_threshold
1422
+ # The minimum similarity score between the new and old fraudsters in
1423
+ # order to consider the new fraudster a duplicate.
1424
+ # @return [Integer]
1425
+ #
1426
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/RegistrationConfig AWS API Documentation
1427
+ #
1428
+ class RegistrationConfig < Struct.new(
1429
+ :duplicate_registration_action,
1430
+ :fraudster_similarity_threshold)
1431
+ SENSITIVE = []
1432
+ include Aws::Structure
1433
+ end
1434
+
1435
+ # The specified resource cannot be found. Check the `ResourceType` and
1436
+ # error message for more details.
1437
+ #
1438
+ # @!attribute [rw] message
1439
+ # @return [String]
1440
+ #
1441
+ # @!attribute [rw] resource_type
1442
+ # The type of resource which cannot not be found. Possible types are
1443
+ # `BATCH_JOB`, `COMPLIANCE_CONSENT`, `DOMAIN`, `FRAUDSTER`, `SESSION`
1444
+ # and `SPEAKER`.
1445
+ # @return [String]
1446
+ #
1447
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ResourceNotFoundException AWS API Documentation
1448
+ #
1449
+ class ResourceNotFoundException < Struct.new(
1450
+ :message,
1451
+ :resource_type)
1452
+ SENSITIVE = []
1453
+ include Aws::Structure
1454
+ end
1455
+
1456
+ # The configuration containing information about the customer-managed
1457
+ # KMS Key used for encrypting customer data.
1458
+ #
1459
+ # @note When making an API call, you may pass ServerSideEncryptionConfiguration
1460
+ # data as a hash:
1461
+ #
1462
+ # {
1463
+ # kms_key_id: "KmsKeyId", # required
1464
+ # }
1465
+ #
1466
+ # @!attribute [rw] kms_key_id
1467
+ # The identifier of the KMS Key you want Voice ID to use to encrypt
1468
+ # your data.
1469
+ # @return [String]
1470
+ #
1471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ServerSideEncryptionConfiguration AWS API Documentation
1472
+ #
1473
+ class ServerSideEncryptionConfiguration < Struct.new(
1474
+ :kms_key_id)
1475
+ SENSITIVE = []
1476
+ include Aws::Structure
1477
+ end
1478
+
1479
+ # The request exceeded the service quota. Refer to [Voice ID Service
1480
+ # Quotas][1] and try your request again.
1481
+ #
1482
+ #
1483
+ #
1484
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html#voiceid-quotas
1485
+ #
1486
+ # @!attribute [rw] message
1487
+ # @return [String]
1488
+ #
1489
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ServiceQuotaExceededException AWS API Documentation
1490
+ #
1491
+ class ServiceQuotaExceededException < Struct.new(
1492
+ :message)
1493
+ SENSITIVE = []
1494
+ include Aws::Structure
1495
+ end
1496
+
1497
+ # Contains all the information about a speaker.
1498
+ #
1499
+ # @!attribute [rw] created_at
1500
+ # A timestamp showing when the speaker is created.
1501
+ # @return [Time]
1502
+ #
1503
+ # @!attribute [rw] customer_speaker_id
1504
+ # The client-provided identifier for the speaker.
1505
+ # @return [String]
1506
+ #
1507
+ # @!attribute [rw] domain_id
1508
+ # The identifier of the domain that contains the speaker.
1509
+ # @return [String]
1510
+ #
1511
+ # @!attribute [rw] generated_speaker_id
1512
+ # The service-generated identifier for the speaker.
1513
+ # @return [String]
1514
+ #
1515
+ # @!attribute [rw] status
1516
+ # The current status of the speaker.
1517
+ # @return [String]
1518
+ #
1519
+ # @!attribute [rw] updated_at
1520
+ # A timestamp showing the speaker's last update.
1521
+ # @return [Time]
1522
+ #
1523
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/Speaker AWS API Documentation
1524
+ #
1525
+ class Speaker < Struct.new(
1526
+ :created_at,
1527
+ :customer_speaker_id,
1528
+ :domain_id,
1529
+ :generated_speaker_id,
1530
+ :status,
1531
+ :updated_at)
1532
+ SENSITIVE = [:customer_speaker_id]
1533
+ include Aws::Structure
1534
+ end
1535
+
1536
+ # Contains all the information about a speaker enrollment job.
1537
+ #
1538
+ # @!attribute [rw] created_at
1539
+ # A timestamp showing the creation of the speaker enrollment job.
1540
+ # @return [Time]
1541
+ #
1542
+ # @!attribute [rw] data_access_role_arn
1543
+ # The IAM role Amazon Resource Name (ARN) that grants Voice ID
1544
+ # permissions to access customer's buckets to read the input manifest
1545
+ # file and write the job output file.
1546
+ # @return [String]
1547
+ #
1548
+ # @!attribute [rw] domain_id
1549
+ # The identifier of the domain that contains the speaker enrollment
1550
+ # job.
1551
+ # @return [String]
1552
+ #
1553
+ # @!attribute [rw] ended_at
1554
+ # A timestamp showing when the speaker enrollment job ended.
1555
+ # @return [Time]
1556
+ #
1557
+ # @!attribute [rw] enrollment_config
1558
+ # The configuration that defines the action to take when the speaker
1559
+ # is already enrolled in Voice ID, and the `FraudDetectionConfig` to
1560
+ # use.
1561
+ # @return [Types::EnrollmentConfig]
1562
+ #
1563
+ # @!attribute [rw] failure_details
1564
+ # Contains details that are populated when an entire batch job fails.
1565
+ # In cases of individual registration job failures, the batch job as a
1566
+ # whole doesn't fail; it is completed with a `JobStatus` of
1567
+ # `COMPLETED_WITH_ERRORS`. You can use the job output file to identify
1568
+ # the individual registration requests that failed.
1569
+ # @return [Types::FailureDetails]
1570
+ #
1571
+ # @!attribute [rw] input_data_config
1572
+ # The input data config containing an S3 URI for the input manifest
1573
+ # file that contains the list of speaker enrollment job requests.
1574
+ # @return [Types::InputDataConfig]
1575
+ #
1576
+ # @!attribute [rw] job_id
1577
+ # The service-generated identifier for the speaker enrollment job.
1578
+ # @return [String]
1579
+ #
1580
+ # @!attribute [rw] job_name
1581
+ # The client-provided name for the speaker enrollment job.
1582
+ # @return [String]
1583
+ #
1584
+ # @!attribute [rw] job_progress
1585
+ # Provides details on job progress. This field shows the completed
1586
+ # percentage of registration requests listed in the input file.
1587
+ # @return [Types::JobProgress]
1588
+ #
1589
+ # @!attribute [rw] job_status
1590
+ # The current status of the speaker enrollment job.
1591
+ # @return [String]
1592
+ #
1593
+ # @!attribute [rw] output_data_config
1594
+ # The output data config containing the S3 location where Voice ID
1595
+ # writes the job output file; you must also include a KMS Key ID to
1596
+ # encrypt the file.
1597
+ # @return [Types::OutputDataConfig]
1598
+ #
1599
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/SpeakerEnrollmentJob AWS API Documentation
1600
+ #
1601
+ class SpeakerEnrollmentJob < Struct.new(
1602
+ :created_at,
1603
+ :data_access_role_arn,
1604
+ :domain_id,
1605
+ :ended_at,
1606
+ :enrollment_config,
1607
+ :failure_details,
1608
+ :input_data_config,
1609
+ :job_id,
1610
+ :job_name,
1611
+ :job_progress,
1612
+ :job_status,
1613
+ :output_data_config)
1614
+ SENSITIVE = [:job_name]
1615
+ include Aws::Structure
1616
+ end
1617
+
1618
+ # Contains a summary of information about a speaker enrollment job.
1619
+ #
1620
+ # @!attribute [rw] created_at
1621
+ # A timestamp showing the creation time of the speaker enrollment job.
1622
+ # @return [Time]
1623
+ #
1624
+ # @!attribute [rw] domain_id
1625
+ # The identifier of the domain that contains the speaker enrollment
1626
+ # job.
1627
+ # @return [String]
1628
+ #
1629
+ # @!attribute [rw] ended_at
1630
+ # A timestamp showing when the speaker enrollment job ended.
1631
+ # @return [Time]
1632
+ #
1633
+ # @!attribute [rw] failure_details
1634
+ # Contains details that are populated when an entire batch job fails.
1635
+ # In cases of individual registration job failures, the batch job as a
1636
+ # whole doesn't fail; it is completed with a `JobStatus` of
1637
+ # `COMPLETED_WITH_ERRORS`. You can use the job output file to identify
1638
+ # the individual registration requests that failed.
1639
+ # @return [Types::FailureDetails]
1640
+ #
1641
+ # @!attribute [rw] job_id
1642
+ # The service-generated identifier for the speaker enrollment job.
1643
+ # @return [String]
1644
+ #
1645
+ # @!attribute [rw] job_name
1646
+ # The client-provided name for the speaker enrollment job.
1647
+ # @return [String]
1648
+ #
1649
+ # @!attribute [rw] job_progress
1650
+ # Provides details regarding job progress. This field shows the
1651
+ # completed percentage of enrollment requests listed in the input
1652
+ # file.
1653
+ # @return [Types::JobProgress]
1654
+ #
1655
+ # @!attribute [rw] job_status
1656
+ # The current status of the speaker enrollment job.
1657
+ # @return [String]
1658
+ #
1659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/SpeakerEnrollmentJobSummary AWS API Documentation
1660
+ #
1661
+ class SpeakerEnrollmentJobSummary < Struct.new(
1662
+ :created_at,
1663
+ :domain_id,
1664
+ :ended_at,
1665
+ :failure_details,
1666
+ :job_id,
1667
+ :job_name,
1668
+ :job_progress,
1669
+ :job_status)
1670
+ SENSITIVE = [:job_name]
1671
+ include Aws::Structure
1672
+ end
1673
+
1674
+ # Contains a summary of information about a speaker.
1675
+ #
1676
+ # @!attribute [rw] created_at
1677
+ # A timestamp showing the speaker's creation time.
1678
+ # @return [Time]
1679
+ #
1680
+ # @!attribute [rw] customer_speaker_id
1681
+ # The client-provided identifier for the speaker.
1682
+ # @return [String]
1683
+ #
1684
+ # @!attribute [rw] domain_id
1685
+ # The identifier of the domain that contains the speaker.
1686
+ # @return [String]
1687
+ #
1688
+ # @!attribute [rw] generated_speaker_id
1689
+ # The service-generated identifier for the speaker.
1690
+ # @return [String]
1691
+ #
1692
+ # @!attribute [rw] status
1693
+ # The current status of the speaker.
1694
+ # @return [String]
1695
+ #
1696
+ # @!attribute [rw] updated_at
1697
+ # A timestamp showing the speaker's last update.
1698
+ # @return [Time]
1699
+ #
1700
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/SpeakerSummary AWS API Documentation
1701
+ #
1702
+ class SpeakerSummary < Struct.new(
1703
+ :created_at,
1704
+ :customer_speaker_id,
1705
+ :domain_id,
1706
+ :generated_speaker_id,
1707
+ :status,
1708
+ :updated_at)
1709
+ SENSITIVE = [:customer_speaker_id]
1710
+ include Aws::Structure
1711
+ end
1712
+
1713
+ # @note When making an API call, you may pass StartFraudsterRegistrationJobRequest
1714
+ # data as a hash:
1715
+ #
1716
+ # {
1717
+ # client_token: "ClientTokenString",
1718
+ # data_access_role_arn: "IamRoleArn", # required
1719
+ # domain_id: "DomainId", # required
1720
+ # input_data_config: { # required
1721
+ # s3_uri: "S3Uri", # required
1722
+ # },
1723
+ # job_name: "JobName",
1724
+ # output_data_config: { # required
1725
+ # kms_key_id: "KmsKeyId",
1726
+ # s3_uri: "S3Uri", # required
1727
+ # },
1728
+ # registration_config: {
1729
+ # duplicate_registration_action: "SKIP", # accepts SKIP, REGISTER_AS_NEW
1730
+ # fraudster_similarity_threshold: 1,
1731
+ # },
1732
+ # }
1733
+ #
1734
+ # @!attribute [rw] client_token
1735
+ # The idempotency token for starting a new fraudster registration job.
1736
+ # If not provided, Amazon Web Services SDK populates this field.
1737
+ #
1738
+ # **A suitable default value is auto-generated.** You should normally
1739
+ # not need to pass this option.
1740
+ # @return [String]
1741
+ #
1742
+ # @!attribute [rw] data_access_role_arn
1743
+ # The IAM role Amazon Resource Name (ARN) that grants Voice ID
1744
+ # permissions to access customer's buckets to read the input manifest
1745
+ # file and write the Job output file. Refer to the [Create and edit a
1746
+ # fraudster watchlist][1] documentation for the permissions needed in
1747
+ # this role.
1748
+ #
1749
+ #
1750
+ #
1751
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/voiceid-fraudster-watchlist.html
1752
+ # @return [String]
1753
+ #
1754
+ # @!attribute [rw] domain_id
1755
+ # The identifier of the domain containing the fraudster registration
1756
+ # job and in which the fraudsters are registered.
1757
+ # @return [String]
1758
+ #
1759
+ # @!attribute [rw] input_data_config
1760
+ # The input data config containing an S3 URI for the input manifest
1761
+ # file that contains the list of fraudster registration requests.
1762
+ # @return [Types::InputDataConfig]
1763
+ #
1764
+ # @!attribute [rw] job_name
1765
+ # The name of the new fraudster registration job.
1766
+ # @return [String]
1767
+ #
1768
+ # @!attribute [rw] output_data_config
1769
+ # The output data config containing the S3 location where Voice ID
1770
+ # writes the job output file; you must also include a KMS Key ID to
1771
+ # encrypt the file.
1772
+ # @return [Types::OutputDataConfig]
1773
+ #
1774
+ # @!attribute [rw] registration_config
1775
+ # The registration config containing details such as the action to
1776
+ # take when a duplicate fraudster is detected, and the similarity
1777
+ # threshold to use for detecting a duplicate fraudster.
1778
+ # @return [Types::RegistrationConfig]
1779
+ #
1780
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/StartFraudsterRegistrationJobRequest AWS API Documentation
1781
+ #
1782
+ class StartFraudsterRegistrationJobRequest < Struct.new(
1783
+ :client_token,
1784
+ :data_access_role_arn,
1785
+ :domain_id,
1786
+ :input_data_config,
1787
+ :job_name,
1788
+ :output_data_config,
1789
+ :registration_config)
1790
+ SENSITIVE = [:job_name]
1791
+ include Aws::Structure
1792
+ end
1793
+
1794
+ # @!attribute [rw] job
1795
+ # Details about the started fraudster registration job.
1796
+ # @return [Types::FraudsterRegistrationJob]
1797
+ #
1798
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/StartFraudsterRegistrationJobResponse AWS API Documentation
1799
+ #
1800
+ class StartFraudsterRegistrationJobResponse < Struct.new(
1801
+ :job)
1802
+ SENSITIVE = []
1803
+ include Aws::Structure
1804
+ end
1805
+
1806
+ # @note When making an API call, you may pass StartSpeakerEnrollmentJobRequest
1807
+ # data as a hash:
1808
+ #
1809
+ # {
1810
+ # client_token: "ClientTokenString",
1811
+ # data_access_role_arn: "IamRoleArn", # required
1812
+ # domain_id: "DomainId", # required
1813
+ # enrollment_config: {
1814
+ # existing_enrollment_action: "SKIP", # accepts SKIP, OVERWRITE
1815
+ # fraud_detection_config: {
1816
+ # fraud_detection_action: "IGNORE", # accepts IGNORE, FAIL
1817
+ # risk_threshold: 1,
1818
+ # },
1819
+ # },
1820
+ # input_data_config: { # required
1821
+ # s3_uri: "S3Uri", # required
1822
+ # },
1823
+ # job_name: "JobName",
1824
+ # output_data_config: { # required
1825
+ # kms_key_id: "KmsKeyId",
1826
+ # s3_uri: "S3Uri", # required
1827
+ # },
1828
+ # }
1829
+ #
1830
+ # @!attribute [rw] client_token
1831
+ # The idempotency token for starting a new speaker enrollment Job. If
1832
+ # not provided, Amazon Web Services SDK populates this field.
1833
+ #
1834
+ # **A suitable default value is auto-generated.** You should normally
1835
+ # not need to pass this option.
1836
+ # @return [String]
1837
+ #
1838
+ # @!attribute [rw] data_access_role_arn
1839
+ # The IAM role Amazon Resource Name (ARN) that grants Voice ID
1840
+ # permissions to access customer's buckets to read the input manifest
1841
+ # file and write the job output file. Refer to [Batch enrollment using
1842
+ # audio data from prior calls][1] documentation for the permissions
1843
+ # needed in this role.
1844
+ #
1845
+ #
1846
+ #
1847
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/voiceid-batch-enrollment.html
1848
+ # @return [String]
1849
+ #
1850
+ # @!attribute [rw] domain_id
1851
+ # The identifier of the domain that contains the speaker enrollment
1852
+ # job and in which the speakers are enrolled.
1853
+ # @return [String]
1854
+ #
1855
+ # @!attribute [rw] enrollment_config
1856
+ # The enrollment config that contains details such as the action to
1857
+ # take when a speaker is already enrolled in the Voice ID system or
1858
+ # when a speaker is identified as a fraudster.
1859
+ # @return [Types::EnrollmentConfig]
1860
+ #
1861
+ # @!attribute [rw] input_data_config
1862
+ # The input data config containing the S3 location for the input
1863
+ # manifest file that contains the list of speaker enrollment requests.
1864
+ # @return [Types::InputDataConfig]
1865
+ #
1866
+ # @!attribute [rw] job_name
1867
+ # A name for your speaker enrollment job.
1868
+ # @return [String]
1869
+ #
1870
+ # @!attribute [rw] output_data_config
1871
+ # The output data config containing the S3 location where Voice ID
1872
+ # writes the job output file; you must also include a KMS Key ID to
1873
+ # encrypt the file.
1874
+ # @return [Types::OutputDataConfig]
1875
+ #
1876
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/StartSpeakerEnrollmentJobRequest AWS API Documentation
1877
+ #
1878
+ class StartSpeakerEnrollmentJobRequest < Struct.new(
1879
+ :client_token,
1880
+ :data_access_role_arn,
1881
+ :domain_id,
1882
+ :enrollment_config,
1883
+ :input_data_config,
1884
+ :job_name,
1885
+ :output_data_config)
1886
+ SENSITIVE = [:job_name]
1887
+ include Aws::Structure
1888
+ end
1889
+
1890
+ # @!attribute [rw] job
1891
+ # Details about the started speaker enrollment job.
1892
+ # @return [Types::SpeakerEnrollmentJob]
1893
+ #
1894
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/StartSpeakerEnrollmentJobResponse AWS API Documentation
1895
+ #
1896
+ class StartSpeakerEnrollmentJobResponse < Struct.new(
1897
+ :job)
1898
+ SENSITIVE = []
1899
+ include Aws::Structure
1900
+ end
1901
+
1902
+ # A tag that can be assigned to a Voice ID resource.
1903
+ #
1904
+ # @note When making an API call, you may pass Tag
1905
+ # data as a hash:
1906
+ #
1907
+ # {
1908
+ # key: "TagKey", # required
1909
+ # value: "TagValue", # required
1910
+ # }
1911
+ #
1912
+ # @!attribute [rw] key
1913
+ # The first part of a key:value pair that forms a tag associated with
1914
+ # a given resource. For example, in the tag ‘Department’:’Sales’, the
1915
+ # key is 'Department'.
1916
+ # @return [String]
1917
+ #
1918
+ # @!attribute [rw] value
1919
+ # The second part of a key:value pair that forms a tag associated with
1920
+ # a given resource. For example, in the tag ‘Department’:’Sales’, the
1921
+ # value is 'Sales'.
1922
+ # @return [String]
1923
+ #
1924
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/Tag AWS API Documentation
1925
+ #
1926
+ class Tag < Struct.new(
1927
+ :key,
1928
+ :value)
1929
+ SENSITIVE = [:key, :value]
1930
+ include Aws::Structure
1931
+ end
1932
+
1933
+ # @note When making an API call, you may pass TagResourceRequest
1934
+ # data as a hash:
1935
+ #
1936
+ # {
1937
+ # resource_arn: "AmazonResourceName", # required
1938
+ # tags: [ # required
1939
+ # {
1940
+ # key: "TagKey", # required
1941
+ # value: "TagValue", # required
1942
+ # },
1943
+ # ],
1944
+ # }
1945
+ #
1946
+ # @!attribute [rw] resource_arn
1947
+ # The Amazon Resource Name (ARN) of the Voice ID resource you want to
1948
+ # tag.
1949
+ # @return [String]
1950
+ #
1951
+ # @!attribute [rw] tags
1952
+ # The list of tags to assign to the specified resource.
1953
+ # @return [Array<Types::Tag>]
1954
+ #
1955
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/TagResourceRequest AWS API Documentation
1956
+ #
1957
+ class TagResourceRequest < Struct.new(
1958
+ :resource_arn,
1959
+ :tags)
1960
+ SENSITIVE = []
1961
+ include Aws::Structure
1962
+ end
1963
+
1964
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/TagResourceResponse AWS API Documentation
1965
+ #
1966
+ class TagResourceResponse < Aws::EmptyStructure; end
1967
+
1968
+ # The request was denied due to request throttling. Please slow down
1969
+ # your request rate. Refer to [ Amazon Connect Voice ID Service API
1970
+ # throttling quotas ][1] and try your request again.
1971
+ #
1972
+ #
1973
+ #
1974
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html##voiceid-api-quotas
1975
+ #
1976
+ # @!attribute [rw] message
1977
+ # @return [String]
1978
+ #
1979
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ThrottlingException AWS API Documentation
1980
+ #
1981
+ class ThrottlingException < Struct.new(
1982
+ :message)
1983
+ SENSITIVE = []
1984
+ include Aws::Structure
1985
+ end
1986
+
1987
+ # @note When making an API call, you may pass UntagResourceRequest
1988
+ # data as a hash:
1989
+ #
1990
+ # {
1991
+ # resource_arn: "AmazonResourceName", # required
1992
+ # tag_keys: ["TagKey"], # required
1993
+ # }
1994
+ #
1995
+ # @!attribute [rw] resource_arn
1996
+ # The Amazon Resource Name (ARN) of the Voice ID resource you want to
1997
+ # remove tags from.
1998
+ # @return [String]
1999
+ #
2000
+ # @!attribute [rw] tag_keys
2001
+ # The list of tag keys you want to remove from the specified resource.
2002
+ # @return [Array<String>]
2003
+ #
2004
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/UntagResourceRequest AWS API Documentation
2005
+ #
2006
+ class UntagResourceRequest < Struct.new(
2007
+ :resource_arn,
2008
+ :tag_keys)
2009
+ SENSITIVE = []
2010
+ include Aws::Structure
2011
+ end
2012
+
2013
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/UntagResourceResponse AWS API Documentation
2014
+ #
2015
+ class UntagResourceResponse < Aws::EmptyStructure; end
2016
+
2017
+ # @note When making an API call, you may pass UpdateDomainRequest
2018
+ # data as a hash:
2019
+ #
2020
+ # {
2021
+ # description: "Description",
2022
+ # domain_id: "DomainId", # required
2023
+ # name: "DomainName", # required
2024
+ # server_side_encryption_configuration: { # required
2025
+ # kms_key_id: "KmsKeyId", # required
2026
+ # },
2027
+ # }
2028
+ #
2029
+ # @!attribute [rw] description
2030
+ # A brief description about this domain.
2031
+ # @return [String]
2032
+ #
2033
+ # @!attribute [rw] domain_id
2034
+ # The identifier of the domain to be updated.
2035
+ # @return [String]
2036
+ #
2037
+ # @!attribute [rw] name
2038
+ # The name of the domain.
2039
+ # @return [String]
2040
+ #
2041
+ # @!attribute [rw] server_side_encryption_configuration
2042
+ # The configuration, containing the KMS Key Identifier, to be used by
2043
+ # Voice ID for the server-side encryption of your data. Note that all
2044
+ # the existing data in the domain are still encrypted using the
2045
+ # existing key, only the data added to domain after updating the key
2046
+ # is encrypted using the new key.
2047
+ # @return [Types::ServerSideEncryptionConfiguration]
2048
+ #
2049
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/UpdateDomainRequest AWS API Documentation
2050
+ #
2051
+ class UpdateDomainRequest < Struct.new(
2052
+ :description,
2053
+ :domain_id,
2054
+ :name,
2055
+ :server_side_encryption_configuration)
2056
+ SENSITIVE = [:description, :name]
2057
+ include Aws::Structure
2058
+ end
2059
+
2060
+ # @!attribute [rw] domain
2061
+ # Details about the updated domain
2062
+ # @return [Types::Domain]
2063
+ #
2064
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/UpdateDomainResponse AWS API Documentation
2065
+ #
2066
+ class UpdateDomainResponse < Struct.new(
2067
+ :domain)
2068
+ SENSITIVE = []
2069
+ include Aws::Structure
2070
+ end
2071
+
2072
+ # The request failed one or more validations; check the error message
2073
+ # for more details.
2074
+ #
2075
+ # @!attribute [rw] message
2076
+ # @return [String]
2077
+ #
2078
+ # @see http://docs.aws.amazon.com/goto/WebAPI/voice-id-2021-09-27/ValidationException AWS API Documentation
2079
+ #
2080
+ class ValidationException < Struct.new(
2081
+ :message)
2082
+ SENSITIVE = []
2083
+ include Aws::Structure
2084
+ end
2085
+
2086
+ end
2087
+ end