Skip to content

Commit 4edcad0

Browse files
author
awstools
committed
feat(client-voice-id): Added a new attribute ServerSideEncryptionUpdateDetails to Domain and DomainSummary.
1 parent b70eff4 commit 4edcad0

File tree

9 files changed

+204
-51
lines changed

9 files changed

+204
-51
lines changed

clients/client-voice-id/src/VoiceID.ts

+7-7
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ export class VoiceID extends VoiceIDClient {
138138
}
139139

140140
/**
141-
* <p>Deletes the specified domain from the Amazon Connect Voice ID system.</p>
141+
* <p>Deletes the specified domain from Voice ID.</p>
142142
*/
143143
public deleteDomain(
144144
args: DeleteDomainCommandInput,
@@ -167,7 +167,7 @@ export class VoiceID extends VoiceIDClient {
167167
}
168168

169169
/**
170-
* <p>Deletes the specified fraudster from the Amazon Connect Voice ID system.</p>
170+
* <p>Deletes the specified fraudster from Voice ID.</p>
171171
*/
172172
public deleteFraudster(
173173
args: DeleteFraudsterCommandInput,
@@ -199,7 +199,7 @@ export class VoiceID extends VoiceIDClient {
199199
}
200200

201201
/**
202-
* <p>Deletes the specified speaker from the Amazon Connect Voice ID system.</p>
202+
* <p>Deletes the specified speaker from Voice ID.</p>
203203
*/
204204
public deleteSpeaker(
205205
args: DeleteSpeakerCommandInput,
@@ -581,11 +581,11 @@ export class VoiceID extends VoiceIDClient {
581581
}
582582

583583
/**
584-
* <p>Opts out a speaker from Voice ID system. A speaker can be opted out regardless of whether or not they
585-
* already exist in the system. If they don't yet exist, a new speaker is created in an opted out state.
584+
* <p>Opts out a speaker from Voice ID. A speaker can be opted out regardless of whether or not they
585+
* already exist in Voice ID. If they don't yet exist, a new speaker is created in an opted out state.
586586
* If they already exist, their existing status is overridden and they are opted out. Enrollment and
587587
* evaluation authentication requests are rejected for opted out speakers, and opted out speakers have
588-
* no voice embeddings stored in the system.</p>
588+
* no voice embeddings stored in Voice ID.</p>
589589
*/
590590
public optOutSpeaker(
591591
args: OptOutSpeakerCommandInput,
@@ -681,7 +681,7 @@ export class VoiceID extends VoiceIDClient {
681681
}
682682

683683
/**
684-
* <p>Tags an Amazon Connect Voice ID resource with the provided list of tags.</p>
684+
* <p>Tags a Voice ID resource with the provided list of tags.</p>
685685
*/
686686
public tagResource(args: TagResourceCommandInput, options?: __HttpHandlerOptions): Promise<TagResourceCommandOutput>;
687687
public tagResource(args: TagResourceCommandInput, cb: (err: any, data?: TagResourceCommandOutput) => void): void;

clients/client-voice-id/src/commands/DeleteDomainCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export interface DeleteDomainCommandInput extends DeleteDomainRequest {}
2323
export interface DeleteDomainCommandOutput extends __MetadataBearer {}
2424

2525
/**
26-
* <p>Deletes the specified domain from the Amazon Connect Voice ID system.</p>
26+
* <p>Deletes the specified domain from Voice ID.</p>
2727
* @example
2828
* Use a bare-bones client and the command you need to make an API call.
2929
* ```javascript

clients/client-voice-id/src/commands/DeleteFraudsterCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export interface DeleteFraudsterCommandInput extends DeleteFraudsterRequest {}
2323
export interface DeleteFraudsterCommandOutput extends __MetadataBearer {}
2424

2525
/**
26-
* <p>Deletes the specified fraudster from the Amazon Connect Voice ID system.</p>
26+
* <p>Deletes the specified fraudster from Voice ID.</p>
2727
* @example
2828
* Use a bare-bones client and the command you need to make an API call.
2929
* ```javascript

clients/client-voice-id/src/commands/DeleteSpeakerCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export interface DeleteSpeakerCommandInput extends DeleteSpeakerRequest {}
2323
export interface DeleteSpeakerCommandOutput extends __MetadataBearer {}
2424

2525
/**
26-
* <p>Deletes the specified speaker from the Amazon Connect Voice ID system.</p>
26+
* <p>Deletes the specified speaker from Voice ID.</p>
2727
* @example
2828
* Use a bare-bones client and the command you need to make an API call.
2929
* ```javascript

clients/client-voice-id/src/commands/OptOutSpeakerCommand.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ export interface OptOutSpeakerCommandInput extends OptOutSpeakerRequest {}
2323
export interface OptOutSpeakerCommandOutput extends OptOutSpeakerResponse, __MetadataBearer {}
2424

2525
/**
26-
* <p>Opts out a speaker from Voice ID system. A speaker can be opted out regardless of whether or not they
27-
* already exist in the system. If they don't yet exist, a new speaker is created in an opted out state.
26+
* <p>Opts out a speaker from Voice ID. A speaker can be opted out regardless of whether or not they
27+
* already exist in Voice ID. If they don't yet exist, a new speaker is created in an opted out state.
2828
* If they already exist, their existing status is overridden and they are opted out. Enrollment and
2929
* evaluation authentication requests are rejected for opted out speakers, and opted out speakers have
30-
* no voice embeddings stored in the system.</p>
30+
* no voice embeddings stored in Voice ID.</p>
3131
* @example
3232
* Use a bare-bones client and the command you need to make an API call.
3333
* ```javascript

clients/client-voice-id/src/commands/TagResourceCommand.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export interface TagResourceCommandInput extends TagResourceRequest {}
2323
export interface TagResourceCommandOutput extends TagResourceResponse, __MetadataBearer {}
2424

2525
/**
26-
* <p>Tags an Amazon Connect Voice ID resource with the provided list of tags.</p>
26+
* <p>Tags a Voice ID resource with the provided list of tags.</p>
2727
* @example
2828
* Use a bare-bones client and the command you need to make an API call.
2929
* ```javascript

clients/client-voice-id/src/models/models_0.ts

+77-17
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ export enum ConflictType {
121121
ANOTHER_ACTIVE_STREAM = "ANOTHER_ACTIVE_STREAM",
122122
CANNOT_CHANGE_SPEAKER_AFTER_ENROLLMENT = "CANNOT_CHANGE_SPEAKER_AFTER_ENROLLMENT",
123123
CONCURRENT_CHANGES = "CONCURRENT_CHANGES",
124+
DOMAIN_LOCKED_FROM_ENCRYPTION_UPDATES = "DOMAIN_LOCKED_FROM_ENCRYPTION_UPDATES",
124125
DOMAIN_NOT_ACTIVE = "DOMAIN_NOT_ACTIVE",
125126
ENROLLMENT_ALREADY_EXISTS = "ENROLLMENT_ALREADY_EXISTS",
126127
SPEAKER_NOT_SET = "SPEAKER_NOT_SET",
@@ -182,12 +183,12 @@ export class ConflictException extends __BaseException {
182183
}
183184

184185
/**
185-
* <p>The configuration containing information about the customer-managed KMS Key used for encrypting
186+
* <p>The configuration containing information about the customer managed key used for encrypting
186187
* customer data.</p>
187188
*/
188189
export interface ServerSideEncryptionConfiguration {
189190
/**
190-
* <p>The identifier of the KMS Key you want Voice ID to use to encrypt your data.</p>
191+
* <p>The identifier of the KMS key you want Voice ID to use to encrypt your data.</p>
191192
*/
192193
KmsKeyId: string | undefined;
193194
}
@@ -243,9 +244,9 @@ export interface CreateDomainRequest {
243244
Description?: string;
244245

245246
/**
246-
* <p>The configuration, containing the KMS Key Identifier, to be used by Voice ID for
247+
* <p>The configuration, containing the KMS key identifier, to be used by Voice ID for
247248
* the server-side encryption of your data. Refer to <a href="https://docs.aws.amazon.com/connect/latest/adminguide/encryption-at-rest.html#encryption-at-rest-voiceid">
248-
* Amazon Connect VoiceID encryption at rest</a> for more details on how the KMS Key is used.
249+
* Amazon Connect Voice ID encryption at rest</a> for more details on how the KMS key is used.
249250
* </p>
250251
*/
251252
ServerSideEncryptionConfiguration: ServerSideEncryptionConfiguration | undefined;
@@ -280,6 +281,49 @@ export enum DomainStatus {
280281
SUSPENDED = "SUSPENDED",
281282
}
282283

284+
export enum ServerSideEncryptionUpdateStatus {
285+
COMPLETED = "COMPLETED",
286+
FAILED = "FAILED",
287+
IN_PROGRESS = "IN_PROGRESS",
288+
}
289+
290+
/**
291+
* <p>Details about the most recent server-side encryption configuration update. When the server-side
292+
* encryption configuration is changed, dependency on the old KMS key is removed through an
293+
* asynchronous process. When this update is complete, the domain’s data can only be accessed using the
294+
* new KMS key.</p>
295+
*/
296+
export interface ServerSideEncryptionUpdateDetails {
297+
/**
298+
* <p>The previous KMS key ID the domain was encrypted with, before
299+
* ServerSideEncryptionConfiguration was updated to a new KMS key ID.</p>
300+
*/
301+
OldKmsKeyId?: string;
302+
303+
/**
304+
* <p>Status of the server-side encryption update. During an update, if there is an issue with the domain's
305+
* current or old KMS key ID, such as an inaccessible or disabled key, then the status
306+
* is FAILED. In order to resolve this, the key needs to be made accessible, and then an UpdateDomain call
307+
* with the existing server-side encryption configuration will re-attempt this update process.</p>
308+
*/
309+
UpdateStatus?: ServerSideEncryptionUpdateStatus | string;
310+
311+
/**
312+
* <p>Message explaining the current UpdateStatus. When the UpdateStatus is FAILED, this message explains
313+
* the cause of the failure.</p>
314+
*/
315+
Message?: string;
316+
}
317+
318+
export namespace ServerSideEncryptionUpdateDetails {
319+
/**
320+
* @internal
321+
*/
322+
export const filterSensitiveLog = (obj: ServerSideEncryptionUpdateDetails): any => ({
323+
...obj,
324+
});
325+
}
326+
283327
/**
284328
* <p>Contains all the information about a domain.</p>
285329
*/
@@ -310,7 +354,7 @@ export interface Domain {
310354
DomainStatus?: DomainStatus | string;
311355

312356
/**
313-
* <p>The server-side encryption configuration containing the KMS Key Identifier you want Voice ID to use
357+
* <p>The server-side encryption configuration containing the KMS key identifier you want Voice ID to use
314358
* to encrypt your data.</p>
315359
*/
316360
ServerSideEncryptionConfiguration?: ServerSideEncryptionConfiguration;
@@ -324,6 +368,14 @@ export interface Domain {
324368
* <p>The timestamp showing the domain's last update.</p>
325369
*/
326370
UpdatedAt?: Date;
371+
372+
/**
373+
* <p>Details about the most recent server-side encryption configuration update. When the server-side
374+
* encryption configuration is changed, dependency on the old KMS key is removed through an
375+
* asynchronous process. When this update is complete, the domain's data can only be accessed using the
376+
* new KMS key.</p>
377+
*/
378+
ServerSideEncryptionUpdateDetails?: ServerSideEncryptionUpdateDetails;
327379
}
328380

329381
export namespace Domain {
@@ -736,7 +788,7 @@ export enum FraudsterRegistrationJobStatus {
736788
*/
737789
export interface OutputDataConfig {
738790
/**
739-
* <p>The S3 path of the folder to which Voice ID writes the job output file, which has a
791+
* <p>The S3 path of the folder where Voice ID writes the job output file. It has a
740792
* <code>*.out</code> extension. For example, if the input file name is <code>input-file.json</code> and
741793
* the output folder path is <code>s3://output-bucket/output-folder</code>, the full output file path is
742794
* <code>s3://output-bucket/output-folder/job-Id/input-file.json.out</code>.</p>
@@ -765,7 +817,7 @@ export enum DuplicateRegistrationAction {
765817
}
766818

767819
/**
768-
* <p>The configuration definining the action to take when a duplicate fraudster is detected, and the
820+
* <p>The configuration defining the action to take when a duplicate fraudster is detected, and the
769821
* similarity threshold to use for detecting a duplicate fraudster during a batch fraudster registration job.</p>
770822
*/
771823
export interface RegistrationConfig {
@@ -797,7 +849,7 @@ export namespace RegistrationConfig {
797849
*/
798850
export interface FraudsterRegistrationJob {
799851
/**
800-
* <p>The client-provied name for the fraudster registration job.</p>
852+
* <p>The client-provided name for the fraudster registration job.</p>
801853
*/
802854
JobName?: string;
803855

@@ -836,7 +888,7 @@ export interface FraudsterRegistrationJob {
836888

837889
/**
838890
* <p>The output data config containing the S3 location where you want Voice ID to write your job output
839-
* file; you must also include a KMS Key ID in order to encrypt the file.</p>
891+
* file; you must also include a KMS key iD in order to encrypt the file.</p>
840892
*/
841893
OutputDataConfig?: OutputDataConfig;
842894

@@ -1125,7 +1177,7 @@ export interface SpeakerEnrollmentJob {
11251177

11261178
/**
11271179
* <p>The output data config containing the S3 location where Voice ID writes the job output file; you must
1128-
* also include a KMS Key ID to encrypt the file.</p>
1180+
* also include a KMS key ID to encrypt the file.</p>
11291181
*/
11301182
OutputDataConfig?: OutputDataConfig;
11311183

@@ -1211,8 +1263,8 @@ export interface DomainSummary {
12111263
DomainStatus?: DomainStatus | string;
12121264

12131265
/**
1214-
* <p>The server-side encryption configuration containing the KMS Key Identifier you want Voice ID to use
1215-
* to encrypt your data..</p>
1266+
* <p>The server-side encryption configuration containing the KMS key identifier you want Voice ID to use
1267+
* to encrypt your data.</p>
12161268
*/
12171269
ServerSideEncryptionConfiguration?: ServerSideEncryptionConfiguration;
12181270

@@ -1225,6 +1277,14 @@ export interface DomainSummary {
12251277
* <p>The timestamp showing the domain's last update.</p>
12261278
*/
12271279
UpdatedAt?: Date;
1280+
1281+
/**
1282+
* <p>Details about the most recent server-side encryption configuration update. When the server-side
1283+
* encryption configuration is changed, dependency on the old KMS key is removed through an
1284+
* asynchronous process. When this update is complete, the domain’s data can only be accessed using the
1285+
* new KMS key.</p>
1286+
*/
1287+
ServerSideEncryptionUpdateDetails?: ServerSideEncryptionUpdateDetails;
12281288
}
12291289

12301290
export namespace DomainSummary {
@@ -1418,7 +1478,7 @@ export interface EvaluateSessionResponse {
14181478
* <p>The current status of audio streaming for this session. This field is useful to infer next steps when
14191479
* the Authentication or Fraud Detection results are empty or the decision is <code>NOT_ENOUGH_SPEECH</code>.
14201480
* In this situation, if the <code>StreamingStatus</code> is <code>ONGOING/PENDING_CONFIGURATION</code>, it can
1421-
* mean that the client should call the API again later, once Voice ID has enough audio to produce a result.
1481+
* mean that the client should call the API again later, after Voice ID has enough audio to produce a result.
14221482
* If the decision remains <code>NOT_ENOUGH_SPEECH</code> even after <code>StreamingStatus</code> is <code>ENDED</code>,
14231483
* it means that the previously streamed session did not have enough speech to perform evaluation, and a new
14241484
* streaming session is needed to try again.</p>
@@ -1966,7 +2026,7 @@ export interface StartFraudsterRegistrationJobRequest {
19662026

19672027
/**
19682028
* <p>The output data config containing the S3 location where Voice ID writes the job output file; you must
1969-
* also include a KMS Key ID to encrypt the file.</p>
2029+
* also include a KMS key ID to encrypt the file.</p>
19702030
*/
19712031
OutputDataConfig: OutputDataConfig | undefined;
19722032
}
@@ -2026,7 +2086,7 @@ export interface StartSpeakerEnrollmentJobRequest {
20262086

20272087
/**
20282088
* <p>The enrollment config that contains details such as the action to take when a speaker is already
2029-
* enrolled in the Voice ID system or when a speaker is identified as a fraudster.</p>
2089+
* enrolled in Voice ID or when a speaker is identified as a fraudster.</p>
20302090
*/
20312091
EnrollmentConfig?: EnrollmentConfig;
20322092

@@ -2038,7 +2098,7 @@ export interface StartSpeakerEnrollmentJobRequest {
20382098

20392099
/**
20402100
* <p>The output data config containing the S3 location where Voice ID writes the job output file; you must
2041-
* also include a KMS Key ID to encrypt the file.</p>
2101+
* also include a KMS key ID to encrypt the file.</p>
20422102
*/
20432103
OutputDataConfig: OutputDataConfig | undefined;
20442104
}
@@ -2153,7 +2213,7 @@ export interface UpdateDomainRequest {
21532213
Description?: string;
21542214

21552215
/**
2156-
* <p>The configuration, containing the KMS Key Identifier, to be used by Voice ID for the server-side
2216+
* <p>The configuration, containing the KMS key identifier, to be used by Voice ID for the server-side
21572217
* encryption of your data. Note that all the existing data in the domain are still encrypted using the
21582218
* existing key, only the data added to domain after updating the key is encrypted using the new key. </p>
21592219
*/

clients/client-voice-id/src/protocols/Aws_json1_0.ts

+26
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,7 @@ import {
112112
RegistrationConfig,
113113
ResourceNotFoundException,
114114
ServerSideEncryptionConfiguration,
115+
ServerSideEncryptionUpdateDetails,
115116
ServiceQuotaExceededException,
116117
Speaker,
117118
SpeakerEnrollmentJob,
@@ -551,6 +552,9 @@ const deserializeAws_json1_0DeleteFraudsterCommandError = async (
551552
case "AccessDeniedException":
552553
case "com.amazonaws.voiceid#AccessDeniedException":
553554
throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context);
555+
case "ConflictException":
556+
case "com.amazonaws.voiceid#ConflictException":
557+
throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context);
554558
case "InternalServerException":
555559
case "com.amazonaws.voiceid#InternalServerException":
556560
throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context);
@@ -936,6 +940,9 @@ const deserializeAws_json1_0EvaluateSessionCommandError = async (
936940
case "AccessDeniedException":
937941
case "com.amazonaws.voiceid#AccessDeniedException":
938942
throw await deserializeAws_json1_0AccessDeniedExceptionResponse(parsedOutput, context);
943+
case "ConflictException":
944+
case "com.amazonaws.voiceid#ConflictException":
945+
throw await deserializeAws_json1_0ConflictExceptionResponse(parsedOutput, context);
939946
case "InternalServerException":
940947
case "com.amazonaws.voiceid#InternalServerException":
941948
throw await deserializeAws_json1_0InternalServerExceptionResponse(parsedOutput, context);
@@ -2110,6 +2117,10 @@ const deserializeAws_json1_0Domain = (output: any, context: __SerdeContext): Dom
21102117
output.ServerSideEncryptionConfiguration !== undefined && output.ServerSideEncryptionConfiguration !== null
21112118
? deserializeAws_json1_0ServerSideEncryptionConfiguration(output.ServerSideEncryptionConfiguration, context)
21122119
: undefined,
2120+
ServerSideEncryptionUpdateDetails:
2121+
output.ServerSideEncryptionUpdateDetails !== undefined && output.ServerSideEncryptionUpdateDetails !== null
2122+
? deserializeAws_json1_0ServerSideEncryptionUpdateDetails(output.ServerSideEncryptionUpdateDetails, context)
2123+
: undefined,
21132124
UpdatedAt:
21142125
output.UpdatedAt !== undefined && output.UpdatedAt !== null
21152126
? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.UpdatedAt)))
@@ -2144,6 +2155,10 @@ const deserializeAws_json1_0DomainSummary = (output: any, context: __SerdeContex
21442155
output.ServerSideEncryptionConfiguration !== undefined && output.ServerSideEncryptionConfiguration !== null
21452156
? deserializeAws_json1_0ServerSideEncryptionConfiguration(output.ServerSideEncryptionConfiguration, context)
21462157
: undefined,
2158+
ServerSideEncryptionUpdateDetails:
2159+
output.ServerSideEncryptionUpdateDetails !== undefined && output.ServerSideEncryptionUpdateDetails !== null
2160+
? deserializeAws_json1_0ServerSideEncryptionUpdateDetails(output.ServerSideEncryptionUpdateDetails, context)
2161+
: undefined,
21472162
UpdatedAt:
21482163
output.UpdatedAt !== undefined && output.UpdatedAt !== null
21492164
? __expectNonNull(__parseEpochTimestamp(__expectNumber(output.UpdatedAt)))
@@ -2481,6 +2496,17 @@ const deserializeAws_json1_0ServerSideEncryptionConfiguration = (
24812496
} as any;
24822497
};
24832498

2499+
const deserializeAws_json1_0ServerSideEncryptionUpdateDetails = (
2500+
output: any,
2501+
context: __SerdeContext
2502+
): ServerSideEncryptionUpdateDetails => {
2503+
return {
2504+
Message: __expectString(output.Message),
2505+
OldKmsKeyId: __expectString(output.OldKmsKeyId),
2506+
UpdateStatus: __expectString(output.UpdateStatus),
2507+
} as any;
2508+
};
2509+
24842510
const deserializeAws_json1_0ServiceQuotaExceededException = (
24852511
output: any,
24862512
context: __SerdeContext

0 commit comments

Comments
 (0)