From 82dc9dcf39f3029259fe0fa09127148723c1409d Mon Sep 17 00:00:00 2001 From: awstools Date: Fri, 1 Sep 2023 18:12:34 +0000 Subject: [PATCH] feat(client-connect): Amazon Connect adds the ability to read, create, update, delete, and list view resources, and adds the ability to read, create, delete, and list view versions. --- clients/client-connect/README.md | 72 + clients/client-connect/src/Connect.ts | 171 + clients/client-connect/src/ConnectClient.ts | 31 +- .../src/commands/CreateQueueCommand.ts | 33 +- .../CreateTrafficDistributionGroupCommand.ts | 8 + .../src/commands/CreateViewCommand.ts | 212 + .../src/commands/CreateViewVersionCommand.ts | 199 + .../src/commands/DeleteViewCommand.ts | 160 + .../src/commands/DeleteViewVersionCommand.ts | 163 + .../src/commands/DescribeViewCommand.ts | 188 + .../src/commands/DescribeVocabularyCommand.ts | 3 +- .../DisassociateApprovedOriginCommand.ts | 2 +- .../src/commands/DisassociateBotCommand.ts | 2 +- ...isassociateInstanceStorageConfigCommand.ts | 2 +- .../DisassociateLambdaFunctionCommand.ts | 2 +- .../src/commands/DisassociateLexBotCommand.ts | 2 +- ...sassociatePhoneNumberContactFlowCommand.ts | 2 +- .../DisassociateQueueQuickConnectsCommand.ts | 2 +- ...DisassociateRoutingProfileQueuesCommand.ts | 2 +- .../DisassociateSecurityKeyCommand.ts | 2 +- ...iateTrafficDistributionGroupUserCommand.ts | 2 +- .../src/commands/DismissUserContactCommand.ts | 2 +- .../commands/GetContactAttributesCommand.ts | 3 +- .../src/commands/ListPhoneNumbersCommand.ts | 18 +- .../src/commands/ListViewVersionsCommand.ts | 179 + .../src/commands/ListViewsCommand.ts | 172 + .../src/commands/StopContactCommand.ts | 8 +- .../src/commands/UpdatePromptCommand.ts | 3 +- .../UpdateQueueHoursOfOperationCommand.ts | 2 +- .../commands/UpdateQueueMaxContactsCommand.ts | 2 +- .../src/commands/UpdateQueueNameCommand.ts | 2 +- .../UpdateQueueOutboundCallerConfigCommand.ts | 35 +- .../src/commands/UpdateQueueStatusCommand.ts | 2 +- .../UpdateQuickConnectConfigCommand.ts | 2 +- .../commands/UpdateQuickConnectNameCommand.ts | 2 +- ...ingProfileAgentAvailabilityTimerCommand.ts | 2 +- .../UpdateRoutingProfileConcurrencyCommand.ts | 2 +- ...utingProfileDefaultOutboundQueueCommand.ts | 2 +- .../UpdateRoutingProfileNameCommand.ts | 2 +- .../UpdateRoutingProfileQueuesCommand.ts | 2 +- .../src/commands/UpdateRuleCommand.ts | 2 +- .../commands/UpdateSecurityProfileCommand.ts | 2 +- .../src/commands/UpdateTaskTemplateCommand.ts | 2 +- .../UpdateTrafficDistributionCommand.ts | 9 +- .../commands/UpdateUserHierarchyCommand.ts | 2 +- .../UpdateUserHierarchyGroupNameCommand.ts | 2 +- .../src/commands/UpdateViewContentCommand.ts | 201 + .../src/commands/UpdateViewMetadataCommand.ts | 172 + clients/client-connect/src/commands/index.ts | 9 + clients/client-connect/src/models/models_0.ts | 804 +- clients/client-connect/src/models/models_1.ts | 7066 ++++++++--------- clients/client-connect/src/models/models_2.ts | 759 +- .../pagination/ListViewVersionsPaginator.ts | 50 + .../src/pagination/ListViewsPaginator.ts | 46 + .../client-connect/src/pagination/index.ts | 2 + .../src/protocols/Aws_restJson1.ts | 934 ++- codegen/sdk-codegen/aws-models/connect.json | 1474 +++- 57 files changed, 9115 insertions(+), 4123 deletions(-) create mode 100644 clients/client-connect/src/commands/CreateViewCommand.ts create mode 100644 clients/client-connect/src/commands/CreateViewVersionCommand.ts create mode 100644 clients/client-connect/src/commands/DeleteViewCommand.ts create mode 100644 clients/client-connect/src/commands/DeleteViewVersionCommand.ts create mode 100644 clients/client-connect/src/commands/DescribeViewCommand.ts create mode 100644 clients/client-connect/src/commands/ListViewVersionsCommand.ts create mode 100644 clients/client-connect/src/commands/ListViewsCommand.ts create mode 100644 clients/client-connect/src/commands/UpdateViewContentCommand.ts create mode 100644 clients/client-connect/src/commands/UpdateViewMetadataCommand.ts create mode 100644 clients/client-connect/src/pagination/ListViewVersionsPaginator.ts create mode 100644 clients/client-connect/src/pagination/ListViewsPaginator.ts diff --git a/clients/client-connect/README.md b/clients/client-connect/README.md index 2e0b34d6fc84d..54f2a80a13a45 100644 --- a/clients/client-connect/README.md +++ b/clients/client-connect/README.md @@ -468,6 +468,22 @@ CreateUserHierarchyGroup [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/createuserhierarchygroupcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/createuserhierarchygroupcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/createuserhierarchygroupcommandoutput.html) + +
+ +CreateView + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/createviewcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/createviewcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/createviewcommandoutput.html) + +
+
+ +CreateViewVersion + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/createviewversioncommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/createviewversioncommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/createviewversioncommandoutput.html) +
@@ -628,6 +644,22 @@ DeleteUserHierarchyGroup [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/deleteuserhierarchygroupcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/deleteuserhierarchygroupcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/deleteuserhierarchygroupcommandoutput.html) +
+
+ +DeleteView + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/deleteviewcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/deleteviewcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/deleteviewcommandoutput.html) + +
+
+ +DeleteViewVersion + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/deleteviewversioncommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/deleteviewversioncommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/deleteviewversioncommandoutput.html) +
@@ -804,6 +836,14 @@ DescribeUserHierarchyStructure [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/describeuserhierarchystructurecommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/describeuserhierarchystructurecommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/describeuserhierarchystructurecommandoutput.html) +
+
+ +DescribeView + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/describeviewcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/describeviewcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/describeviewcommandoutput.html) +
@@ -1260,6 +1300,22 @@ ListUsers [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/listuserscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/listuserscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/listuserscommandoutput.html) +
+
+ +ListViews + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/listviewscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/listviewscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/listviewscommandoutput.html) + +
+
+ +ListViewVersions + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/listviewversionscommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/listviewversionscommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/listviewversionscommandoutput.html) +
@@ -1813,3 +1869,19 @@ UpdateUserSecurityProfiles [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/updateusersecurityprofilescommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/updateusersecurityprofilescommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/updateusersecurityprofilescommandoutput.html)
+
+ +UpdateViewContent + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/updateviewcontentcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/updateviewcontentcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/updateviewcontentcommandoutput.html) + +
+
+ +UpdateViewMetadata + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/classes/updateviewmetadatacommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/updateviewmetadatacommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-connect/interfaces/updateviewmetadatacommandoutput.html) + +
diff --git a/clients/client-connect/src/Connect.ts b/clients/client-connect/src/Connect.ts index 99a4abbd8a71f..60f8e1f116c83 100644 --- a/clients/client-connect/src/Connect.ts +++ b/clients/client-connect/src/Connect.ts @@ -150,6 +150,12 @@ import { CreateUserHierarchyGroupCommandInput, CreateUserHierarchyGroupCommandOutput, } from "./commands/CreateUserHierarchyGroupCommand"; +import { CreateViewCommand, CreateViewCommandInput, CreateViewCommandOutput } from "./commands/CreateViewCommand"; +import { + CreateViewVersionCommand, + CreateViewVersionCommandInput, + CreateViewVersionCommandOutput, +} from "./commands/CreateViewVersionCommand"; import { CreateVocabularyCommand, CreateVocabularyCommandInput, @@ -238,6 +244,12 @@ import { DeleteUserHierarchyGroupCommandInput, DeleteUserHierarchyGroupCommandOutput, } from "./commands/DeleteUserHierarchyGroupCommand"; +import { DeleteViewCommand, DeleteViewCommandInput, DeleteViewCommandOutput } from "./commands/DeleteViewCommand"; +import { + DeleteViewVersionCommand, + DeleteViewVersionCommandInput, + DeleteViewVersionCommandOutput, +} from "./commands/DeleteViewVersionCommand"; import { DeleteVocabularyCommand, DeleteVocabularyCommandInput, @@ -348,6 +360,11 @@ import { DescribeUserHierarchyStructureCommandInput, DescribeUserHierarchyStructureCommandOutput, } from "./commands/DescribeUserHierarchyStructureCommand"; +import { + DescribeViewCommand, + DescribeViewCommandInput, + DescribeViewCommandOutput, +} from "./commands/DescribeViewCommand"; import { DescribeVocabularyCommand, DescribeVocabularyCommandInput, @@ -609,6 +626,12 @@ import { ListUserHierarchyGroupsCommandOutput, } from "./commands/ListUserHierarchyGroupsCommand"; import { ListUsersCommand, ListUsersCommandInput, ListUsersCommandOutput } from "./commands/ListUsersCommand"; +import { ListViewsCommand, ListViewsCommandInput, ListViewsCommandOutput } from "./commands/ListViewsCommand"; +import { + ListViewVersionsCommand, + ListViewVersionsCommandInput, + ListViewVersionsCommandOutput, +} from "./commands/ListViewVersionsCommand"; import { MonitorContactCommand, MonitorContactCommandInput, @@ -938,6 +961,16 @@ import { UpdateUserSecurityProfilesCommandInput, UpdateUserSecurityProfilesCommandOutput, } from "./commands/UpdateUserSecurityProfilesCommand"; +import { + UpdateViewContentCommand, + UpdateViewContentCommandInput, + UpdateViewContentCommandOutput, +} from "./commands/UpdateViewContentCommand"; +import { + UpdateViewMetadataCommand, + UpdateViewMetadataCommandInput, + UpdateViewMetadataCommandOutput, +} from "./commands/UpdateViewMetadataCommand"; import { ConnectClient, ConnectClientConfig } from "./ConnectClient"; const commands = { @@ -973,6 +1006,8 @@ const commands = { CreateUseCaseCommand, CreateUserCommand, CreateUserHierarchyGroupCommand, + CreateViewCommand, + CreateViewVersionCommand, CreateVocabularyCommand, DeactivateEvaluationFormCommand, DeleteContactEvaluationCommand, @@ -993,6 +1028,8 @@ const commands = { DeleteUseCaseCommand, DeleteUserCommand, DeleteUserHierarchyGroupCommand, + DeleteViewCommand, + DeleteViewVersionCommand, DeleteVocabularyCommand, DescribeAgentStatusCommand, DescribeContactCommand, @@ -1015,6 +1052,7 @@ const commands = { DescribeUserCommand, DescribeUserHierarchyGroupCommand, DescribeUserHierarchyStructureCommand, + DescribeViewCommand, DescribeVocabularyCommand, DisassociateApprovedOriginCommand, DisassociateBotCommand, @@ -1072,6 +1110,8 @@ const commands = { ListUseCasesCommand, ListUserHierarchyGroupsCommand, ListUsersCommand, + ListViewsCommand, + ListViewVersionsCommand, MonitorContactCommand, PutUserStatusCommand, ReleasePhoneNumberCommand, @@ -1141,6 +1181,8 @@ const commands = { UpdateUserPhoneConfigCommand, UpdateUserRoutingProfileCommand, UpdateUserSecurityProfilesCommand, + UpdateViewContentCommand, + UpdateViewMetadataCommand, }; export interface Connect { @@ -1646,6 +1688,34 @@ export interface Connect { cb: (err: any, data?: CreateUserHierarchyGroupCommandOutput) => void ): void; + /** + * @see {@link CreateViewCommand} + */ + createView(args: CreateViewCommandInput, options?: __HttpHandlerOptions): Promise; + createView(args: CreateViewCommandInput, cb: (err: any, data?: CreateViewCommandOutput) => void): void; + createView( + args: CreateViewCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateViewCommandOutput) => void + ): void; + + /** + * @see {@link CreateViewVersionCommand} + */ + createViewVersion( + args: CreateViewVersionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + createViewVersion( + args: CreateViewVersionCommandInput, + cb: (err: any, data?: CreateViewVersionCommandOutput) => void + ): void; + createViewVersion( + args: CreateViewVersionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateViewVersionCommandOutput) => void + ): void; + /** * @see {@link CreateVocabularyCommand} */ @@ -1953,6 +2023,34 @@ export interface Connect { cb: (err: any, data?: DeleteUserHierarchyGroupCommandOutput) => void ): void; + /** + * @see {@link DeleteViewCommand} + */ + deleteView(args: DeleteViewCommandInput, options?: __HttpHandlerOptions): Promise; + deleteView(args: DeleteViewCommandInput, cb: (err: any, data?: DeleteViewCommandOutput) => void): void; + deleteView( + args: DeleteViewCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteViewCommandOutput) => void + ): void; + + /** + * @see {@link DeleteViewVersionCommand} + */ + deleteViewVersion( + args: DeleteViewVersionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + deleteViewVersion( + args: DeleteViewVersionCommandInput, + cb: (err: any, data?: DeleteViewVersionCommandOutput) => void + ): void; + deleteViewVersion( + args: DeleteViewVersionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteViewVersionCommandOutput) => void + ): void; + /** * @see {@link DeleteVocabularyCommand} */ @@ -2303,6 +2401,17 @@ export interface Connect { cb: (err: any, data?: DescribeUserHierarchyStructureCommandOutput) => void ): void; + /** + * @see {@link DescribeViewCommand} + */ + describeView(args: DescribeViewCommandInput, options?: __HttpHandlerOptions): Promise; + describeView(args: DescribeViewCommandInput, cb: (err: any, data?: DescribeViewCommandOutput) => void): void; + describeView( + args: DescribeViewCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DescribeViewCommandOutput) => void + ): void; + /** * @see {@link DescribeVocabularyCommand} */ @@ -3203,6 +3312,34 @@ export interface Connect { cb: (err: any, data?: ListUsersCommandOutput) => void ): void; + /** + * @see {@link ListViewsCommand} + */ + listViews(args: ListViewsCommandInput, options?: __HttpHandlerOptions): Promise; + listViews(args: ListViewsCommandInput, cb: (err: any, data?: ListViewsCommandOutput) => void): void; + listViews( + args: ListViewsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListViewsCommandOutput) => void + ): void; + + /** + * @see {@link ListViewVersionsCommand} + */ + listViewVersions( + args: ListViewVersionsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listViewVersions( + args: ListViewVersionsCommandInput, + cb: (err: any, data?: ListViewVersionsCommandOutput) => void + ): void; + listViewVersions( + args: ListViewVersionsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListViewVersionsCommandOutput) => void + ): void; + /** * @see {@link MonitorContactCommand} */ @@ -4306,6 +4443,40 @@ export interface Connect { options: __HttpHandlerOptions, cb: (err: any, data?: UpdateUserSecurityProfilesCommandOutput) => void ): void; + + /** + * @see {@link UpdateViewContentCommand} + */ + updateViewContent( + args: UpdateViewContentCommandInput, + options?: __HttpHandlerOptions + ): Promise; + updateViewContent( + args: UpdateViewContentCommandInput, + cb: (err: any, data?: UpdateViewContentCommandOutput) => void + ): void; + updateViewContent( + args: UpdateViewContentCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateViewContentCommandOutput) => void + ): void; + + /** + * @see {@link UpdateViewMetadataCommand} + */ + updateViewMetadata( + args: UpdateViewMetadataCommandInput, + options?: __HttpHandlerOptions + ): Promise; + updateViewMetadata( + args: UpdateViewMetadataCommandInput, + cb: (err: any, data?: UpdateViewMetadataCommandOutput) => void + ): void; + updateViewMetadata( + args: UpdateViewMetadataCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateViewMetadataCommandOutput) => void + ): void; } /** diff --git a/clients/client-connect/src/ConnectClient.ts b/clients/client-connect/src/ConnectClient.ts index 2095d79a8e645..cbce0640a83ed 100644 --- a/clients/client-connect/src/ConnectClient.ts +++ b/clients/client-connect/src/ConnectClient.ts @@ -136,6 +136,8 @@ import { CreateUserHierarchyGroupCommandInput, CreateUserHierarchyGroupCommandOutput, } from "./commands/CreateUserHierarchyGroupCommand"; +import { CreateViewCommandInput, CreateViewCommandOutput } from "./commands/CreateViewCommand"; +import { CreateViewVersionCommandInput, CreateViewVersionCommandOutput } from "./commands/CreateViewVersionCommand"; import { CreateVocabularyCommandInput, CreateVocabularyCommandOutput } from "./commands/CreateVocabularyCommand"; import { DeactivateEvaluationFormCommandInput, @@ -186,6 +188,8 @@ import { DeleteUserHierarchyGroupCommandInput, DeleteUserHierarchyGroupCommandOutput, } from "./commands/DeleteUserHierarchyGroupCommand"; +import { DeleteViewCommandInput, DeleteViewCommandOutput } from "./commands/DeleteViewCommand"; +import { DeleteViewVersionCommandInput, DeleteViewVersionCommandOutput } from "./commands/DeleteViewVersionCommand"; import { DeleteVocabularyCommandInput, DeleteVocabularyCommandOutput } from "./commands/DeleteVocabularyCommand"; import { DescribeAgentStatusCommandInput, @@ -253,6 +257,7 @@ import { DescribeUserHierarchyStructureCommandInput, DescribeUserHierarchyStructureCommandOutput, } from "./commands/DescribeUserHierarchyStructureCommand"; +import { DescribeViewCommandInput, DescribeViewCommandOutput } from "./commands/DescribeViewCommand"; import { DescribeVocabularyCommandInput, DescribeVocabularyCommandOutput } from "./commands/DescribeVocabularyCommand"; import { DisassociateApprovedOriginCommandInput, @@ -406,6 +411,8 @@ import { ListUserHierarchyGroupsCommandOutput, } from "./commands/ListUserHierarchyGroupsCommand"; import { ListUsersCommandInput, ListUsersCommandOutput } from "./commands/ListUsersCommand"; +import { ListViewsCommandInput, ListViewsCommandOutput } from "./commands/ListViewsCommand"; +import { ListViewVersionsCommandInput, ListViewVersionsCommandOutput } from "./commands/ListViewVersionsCommand"; import { MonitorContactCommandInput, MonitorContactCommandOutput } from "./commands/MonitorContactCommand"; import { PutUserStatusCommandInput, PutUserStatusCommandOutput } from "./commands/PutUserStatusCommand"; import { ReleasePhoneNumberCommandInput, ReleasePhoneNumberCommandOutput } from "./commands/ReleasePhoneNumberCommand"; @@ -613,6 +620,8 @@ import { UpdateUserSecurityProfilesCommandInput, UpdateUserSecurityProfilesCommandOutput, } from "./commands/UpdateUserSecurityProfilesCommand"; +import { UpdateViewContentCommandInput, UpdateViewContentCommandOutput } from "./commands/UpdateViewContentCommand"; +import { UpdateViewMetadataCommandInput, UpdateViewMetadataCommandOutput } from "./commands/UpdateViewMetadataCommand"; import { ClientInputEndpointParameters, ClientResolvedEndpointParameters, @@ -660,6 +669,8 @@ export type ServiceInputTypes = | CreateUseCaseCommandInput | CreateUserCommandInput | CreateUserHierarchyGroupCommandInput + | CreateViewCommandInput + | CreateViewVersionCommandInput | CreateVocabularyCommandInput | DeactivateEvaluationFormCommandInput | DeleteContactEvaluationCommandInput @@ -680,6 +691,8 @@ export type ServiceInputTypes = | DeleteUseCaseCommandInput | DeleteUserCommandInput | DeleteUserHierarchyGroupCommandInput + | DeleteViewCommandInput + | DeleteViewVersionCommandInput | DeleteVocabularyCommandInput | DescribeAgentStatusCommandInput | DescribeContactCommandInput @@ -702,6 +715,7 @@ export type ServiceInputTypes = | DescribeUserCommandInput | DescribeUserHierarchyGroupCommandInput | DescribeUserHierarchyStructureCommandInput + | DescribeViewCommandInput | DescribeVocabularyCommandInput | DisassociateApprovedOriginCommandInput | DisassociateBotCommandInput @@ -759,6 +773,8 @@ export type ServiceInputTypes = | ListUseCasesCommandInput | ListUserHierarchyGroupsCommandInput | ListUsersCommandInput + | ListViewVersionsCommandInput + | ListViewsCommandInput | MonitorContactCommandInput | PutUserStatusCommandInput | ReleasePhoneNumberCommandInput @@ -827,7 +843,9 @@ export type ServiceInputTypes = | UpdateUserIdentityInfoCommandInput | UpdateUserPhoneConfigCommandInput | UpdateUserRoutingProfileCommandInput - | UpdateUserSecurityProfilesCommandInput; + | UpdateUserSecurityProfilesCommandInput + | UpdateViewContentCommandInput + | UpdateViewMetadataCommandInput; /** * @public @@ -865,6 +883,8 @@ export type ServiceOutputTypes = | CreateUseCaseCommandOutput | CreateUserCommandOutput | CreateUserHierarchyGroupCommandOutput + | CreateViewCommandOutput + | CreateViewVersionCommandOutput | CreateVocabularyCommandOutput | DeactivateEvaluationFormCommandOutput | DeleteContactEvaluationCommandOutput @@ -885,6 +905,8 @@ export type ServiceOutputTypes = | DeleteUseCaseCommandOutput | DeleteUserCommandOutput | DeleteUserHierarchyGroupCommandOutput + | DeleteViewCommandOutput + | DeleteViewVersionCommandOutput | DeleteVocabularyCommandOutput | DescribeAgentStatusCommandOutput | DescribeContactCommandOutput @@ -907,6 +929,7 @@ export type ServiceOutputTypes = | DescribeUserCommandOutput | DescribeUserHierarchyGroupCommandOutput | DescribeUserHierarchyStructureCommandOutput + | DescribeViewCommandOutput | DescribeVocabularyCommandOutput | DisassociateApprovedOriginCommandOutput | DisassociateBotCommandOutput @@ -964,6 +987,8 @@ export type ServiceOutputTypes = | ListUseCasesCommandOutput | ListUserHierarchyGroupsCommandOutput | ListUsersCommandOutput + | ListViewVersionsCommandOutput + | ListViewsCommandOutput | MonitorContactCommandOutput | PutUserStatusCommandOutput | ReleasePhoneNumberCommandOutput @@ -1032,7 +1057,9 @@ export type ServiceOutputTypes = | UpdateUserIdentityInfoCommandOutput | UpdateUserPhoneConfigCommandOutput | UpdateUserRoutingProfileCommandOutput - | UpdateUserSecurityProfilesCommandOutput; + | UpdateUserSecurityProfilesCommandOutput + | UpdateViewContentCommandOutput + | UpdateViewMetadataCommandOutput; /** * @public diff --git a/clients/client-connect/src/commands/CreateQueueCommand.ts b/clients/client-connect/src/commands/CreateQueueCommand.ts index 9ac7a38ad7a26..aceb3a3e7184f 100644 --- a/clients/client-connect/src/commands/CreateQueueCommand.ts +++ b/clients/client-connect/src/commands/CreateQueueCommand.ts @@ -39,19 +39,26 @@ export interface CreateQueueCommandOutput extends CreateQueueResponse, __Metadat *

This API is in preview release for Amazon Connect and is subject to change.

*

Creates a new queue for the specified Amazon Connect instance.

* - *

If the number being used in the input is claimed to a traffic distribution group, and you are calling this API - * using an instance in the Amazon Web Services Region where the traffic distribution group was created, you can use - * either a full phone number ARN or UUID value for the OutboundCallerIdNumberId value - * of the OutboundCallerConfig request body parameter. However, if the number is claimed to a - * traffic distribution group and you are calling this API using an instance in the alternate Amazon Web Services Region - * associated with the traffic distribution group, you must provide a full phone number ARN. If a UUID is provided - * in - * this scenario, you will receive a - * ResourceNotFoundException.

- *

Only use the phone number ARN format that doesn't contain instance in the - * path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid. This is - * the same ARN format that is returned when you call the ListPhoneNumbersV2 - * API.

+ *
    + *
  • + *

    If the phone number is claimed to a traffic distribution group that was created in the + * same Region as the Amazon Connect instance where you are calling this API, then you can use a + * full phone number ARN or a UUID for OutboundCallerIdNumberId. However, if the phone number is claimed + * to a traffic distribution group that is in one Region, and you are calling this API from an instance in another Amazon Web Services Region that is associated with the traffic distribution group, you must provide a full phone number ARN. If a + * UUID is provided in this scenario, you will receive a + * ResourceNotFoundException.

    + *
  • + *
  • + *

    Only use the phone number ARN format that doesn't contain instance in the + * path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid. This + * is the same ARN format that is returned when you call the ListPhoneNumbersV2 + * API.

    + *
  • + *
  • + *

    If you plan to use IAM policies to allow/deny access to this API for phone + * number resources claimed to a traffic distribution group, see Allow or Deny queue API actions for phone numbers in a replica Region.

    + *
  • + *
*
* @example * Use a bare-bones client and the command you need to make an API call. diff --git a/clients/client-connect/src/commands/CreateTrafficDistributionGroupCommand.ts b/clients/client-connect/src/commands/CreateTrafficDistributionGroupCommand.ts index 360481b8af4b1..b749e475f2b1c 100644 --- a/clients/client-connect/src/commands/CreateTrafficDistributionGroupCommand.ts +++ b/clients/client-connect/src/commands/CreateTrafficDistributionGroupCommand.ts @@ -42,6 +42,14 @@ export interface CreateTrafficDistributionGroupCommandOutput /** * @public *

Creates a traffic distribution group given an Amazon Connect instance that has been replicated.

+ * + *

You can change the SignInConfig distribution only for a + * default TrafficDistributionGroup (see the IsDefault parameter in the + * TrafficDistributionGroup + * data type). If you call + * UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, + * an InvalidRequestException is returned.

+ *
*

For more information about creating traffic distribution groups, see Set up traffic distribution groups in * the Amazon Connect Administrator Guide.

* @example diff --git a/clients/client-connect/src/commands/CreateViewCommand.ts b/clients/client-connect/src/commands/CreateViewCommand.ts new file mode 100644 index 0000000000000..739d90cfa1a59 --- /dev/null +++ b/clients/client-connect/src/commands/CreateViewCommand.ts @@ -0,0 +1,212 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; +import { + CreateViewRequest, + CreateViewRequestFilterSensitiveLog, + CreateViewResponse, + CreateViewResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_CreateViewCommand, se_CreateViewCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link CreateViewCommand}. + */ +export interface CreateViewCommandInput extends CreateViewRequest {} +/** + * @public + * + * The output of {@link CreateViewCommand}. + */ +export interface CreateViewCommandOutput extends CreateViewResponse, __MetadataBearer {} + +/** + * @public + *

Creates a new view with the possible status of SAVED or PUBLISHED.

+ *

The views will have a unique name for each connect instance.

+ *

It performs basic content validation if the status is SAVED or full content validation if the status + * is set to PUBLISHED. An error is returned if validation fails. It associates either + * the $SAVED qualifier or both of the $SAVED and $LATEST qualifiers with the + * provided view content based on the status. The view is idempotent if ClientToken is provided.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ConnectClient, CreateViewCommand } from "@aws-sdk/client-connect"; // ES Modules import + * // const { ConnectClient, CreateViewCommand } = require("@aws-sdk/client-connect"); // CommonJS import + * const client = new ConnectClient(config); + * const input = { // CreateViewRequest + * InstanceId: "STRING_VALUE", // required + * ClientToken: "STRING_VALUE", + * Status: "PUBLISHED" || "SAVED", // required + * Content: { // ViewInputContent + * Template: "STRING_VALUE", + * Actions: [ // ViewActions + * "STRING_VALUE", + * ], + * }, + * Description: "STRING_VALUE", + * Name: "STRING_VALUE", // required + * Tags: { // TagMap + * "": "STRING_VALUE", + * }, + * }; + * const command = new CreateViewCommand(input); + * const response = await client.send(command); + * // { // CreateViewResponse + * // View: { // View + * // Id: "STRING_VALUE", + * // Arn: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Status: "PUBLISHED" || "SAVED", + * // Type: "CUSTOMER_MANAGED" || "AWS_MANAGED", + * // Description: "STRING_VALUE", + * // Version: Number("int"), + * // VersionDescription: "STRING_VALUE", + * // Content: { // ViewContent + * // InputSchema: "STRING_VALUE", + * // Template: "STRING_VALUE", + * // Actions: [ // ViewActions + * // "STRING_VALUE", + * // ], + * // }, + * // Tags: { // TagMap + * // "": "STRING_VALUE", + * // }, + * // CreatedTime: new Date("TIMESTAMP"), + * // LastModifiedTime: new Date("TIMESTAMP"), + * // ViewContentSha256: "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param CreateViewCommandInput - {@link CreateViewCommandInput} + * @returns {@link CreateViewCommandOutput} + * @see {@link CreateViewCommandInput} for command's `input` shape. + * @see {@link CreateViewCommandOutput} for command's `response` shape. + * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient permissions to perform this action.

+ * + * @throws {@link DuplicateResourceException} (client fault) + *

A resource with the specified name already exists.

+ * + * @throws {@link InternalServiceException} (server fault) + *

Request processing failed because of an error or failure with the service.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

One or more of the specified parameters are not valid.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceInUseException} (client fault) + *

That resource is already in use. Please try another.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

The service quota has been exceeded.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

Displayed when rate-related API limits are exceeded.

+ * + * @throws {@link ConnectServiceException} + *

Base exception class for all service exceptions from Connect service.

+ * + */ +export class CreateViewCommand extends $Command< + CreateViewCommandInput, + CreateViewCommandOutput, + ConnectClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: CreateViewCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ConnectClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use(getEndpointPlugin(configuration, CreateViewCommand.getEndpointParameterInstructions())); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ConnectClient"; + const commandName = "CreateViewCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: CreateViewRequestFilterSensitiveLog, + outputFilterSensitiveLog: CreateViewResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: CreateViewCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_CreateViewCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_CreateViewCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-connect/src/commands/CreateViewVersionCommand.ts b/clients/client-connect/src/commands/CreateViewVersionCommand.ts new file mode 100644 index 0000000000000..1cb05dc7c44c9 --- /dev/null +++ b/clients/client-connect/src/commands/CreateViewVersionCommand.ts @@ -0,0 +1,199 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; +import { + CreateViewVersionRequest, + CreateViewVersionResponse, + CreateViewVersionResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_CreateViewVersionCommand, se_CreateViewVersionCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link CreateViewVersionCommand}. + */ +export interface CreateViewVersionCommandInput extends CreateViewVersionRequest {} +/** + * @public + * + * The output of {@link CreateViewVersionCommand}. + */ +export interface CreateViewVersionCommandOutput extends CreateViewVersionResponse, __MetadataBearer {} + +/** + * @public + *

Publishes a new version of the view identifier.

+ *

Versions are immutable and monotonically increasing.

+ *

It returns the highest version if there is no change in content compared to that version. An error + * is displayed if the supplied ViewContentSha256 is different from the ViewContentSha256 of the + * $LATEST alias.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ConnectClient, CreateViewVersionCommand } from "@aws-sdk/client-connect"; // ES Modules import + * // const { ConnectClient, CreateViewVersionCommand } = require("@aws-sdk/client-connect"); // CommonJS import + * const client = new ConnectClient(config); + * const input = { // CreateViewVersionRequest + * InstanceId: "STRING_VALUE", // required + * ViewId: "STRING_VALUE", // required + * VersionDescription: "STRING_VALUE", + * ViewContentSha256: "STRING_VALUE", + * }; + * const command = new CreateViewVersionCommand(input); + * const response = await client.send(command); + * // { // CreateViewVersionResponse + * // View: { // View + * // Id: "STRING_VALUE", + * // Arn: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Status: "PUBLISHED" || "SAVED", + * // Type: "CUSTOMER_MANAGED" || "AWS_MANAGED", + * // Description: "STRING_VALUE", + * // Version: Number("int"), + * // VersionDescription: "STRING_VALUE", + * // Content: { // ViewContent + * // InputSchema: "STRING_VALUE", + * // Template: "STRING_VALUE", + * // Actions: [ // ViewActions + * // "STRING_VALUE", + * // ], + * // }, + * // Tags: { // TagMap + * // "": "STRING_VALUE", + * // }, + * // CreatedTime: new Date("TIMESTAMP"), + * // LastModifiedTime: new Date("TIMESTAMP"), + * // ViewContentSha256: "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param CreateViewVersionCommandInput - {@link CreateViewVersionCommandInput} + * @returns {@link CreateViewVersionCommandOutput} + * @see {@link CreateViewVersionCommandInput} for command's `input` shape. + * @see {@link CreateViewVersionCommandOutput} for command's `response` shape. + * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient permissions to perform this action.

+ * + * @throws {@link InternalServiceException} (server fault) + *

Request processing failed because of an error or failure with the service.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

One or more of the specified parameters are not valid.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceInUseException} (client fault) + *

That resource is already in use. Please try another.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

The service quota has been exceeded.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

Displayed when rate-related API limits are exceeded.

+ * + * @throws {@link ConnectServiceException} + *

Base exception class for all service exceptions from Connect service.

+ * + */ +export class CreateViewVersionCommand extends $Command< + CreateViewVersionCommandInput, + CreateViewVersionCommandOutput, + ConnectClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: CreateViewVersionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ConnectClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, CreateViewVersionCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ConnectClient"; + const commandName = "CreateViewVersionCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: CreateViewVersionResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: CreateViewVersionCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_CreateViewVersionCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_CreateViewVersionCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-connect/src/commands/DeleteViewCommand.ts b/clients/client-connect/src/commands/DeleteViewCommand.ts new file mode 100644 index 0000000000000..5c13b68d1bac4 --- /dev/null +++ b/clients/client-connect/src/commands/DeleteViewCommand.ts @@ -0,0 +1,160 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; +import { DeleteViewRequest, DeleteViewResponse } from "../models/models_0"; +import { de_DeleteViewCommand, se_DeleteViewCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DeleteViewCommand}. + */ +export interface DeleteViewCommandInput extends DeleteViewRequest {} +/** + * @public + * + * The output of {@link DeleteViewCommand}. + */ +export interface DeleteViewCommandOutput extends DeleteViewResponse, __MetadataBearer {} + +/** + * @public + *

Deletes the view entirely. It deletes the view and all associated qualifiers (versions and aliases).

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ConnectClient, DeleteViewCommand } from "@aws-sdk/client-connect"; // ES Modules import + * // const { ConnectClient, DeleteViewCommand } = require("@aws-sdk/client-connect"); // CommonJS import + * const client = new ConnectClient(config); + * const input = { // DeleteViewRequest + * InstanceId: "STRING_VALUE", // required + * ViewId: "STRING_VALUE", // required + * }; + * const command = new DeleteViewCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param DeleteViewCommandInput - {@link DeleteViewCommandInput} + * @returns {@link DeleteViewCommandOutput} + * @see {@link DeleteViewCommandInput} for command's `input` shape. + * @see {@link DeleteViewCommandOutput} for command's `response` shape. + * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient permissions to perform this action.

+ * + * @throws {@link InternalServiceException} (server fault) + *

Request processing failed because of an error or failure with the service.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

One or more of the specified parameters are not valid.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceInUseException} (client fault) + *

That resource is already in use. Please try another.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

Displayed when rate-related API limits are exceeded.

+ * + * @throws {@link ConnectServiceException} + *

Base exception class for all service exceptions from Connect service.

+ * + */ +export class DeleteViewCommand extends $Command< + DeleteViewCommandInput, + DeleteViewCommandOutput, + ConnectClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: DeleteViewCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ConnectClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use(getEndpointPlugin(configuration, DeleteViewCommand.getEndpointParameterInstructions())); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ConnectClient"; + const commandName = "DeleteViewCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: (_: any) => _, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: DeleteViewCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_DeleteViewCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_DeleteViewCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-connect/src/commands/DeleteViewVersionCommand.ts b/clients/client-connect/src/commands/DeleteViewVersionCommand.ts new file mode 100644 index 0000000000000..91c99c13a89dc --- /dev/null +++ b/clients/client-connect/src/commands/DeleteViewVersionCommand.ts @@ -0,0 +1,163 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; +import { DeleteViewVersionRequest, DeleteViewVersionResponse } from "../models/models_0"; +import { de_DeleteViewVersionCommand, se_DeleteViewVersionCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DeleteViewVersionCommand}. + */ +export interface DeleteViewVersionCommandInput extends DeleteViewVersionRequest {} +/** + * @public + * + * The output of {@link DeleteViewVersionCommand}. + */ +export interface DeleteViewVersionCommandOutput extends DeleteViewVersionResponse, __MetadataBearer {} + +/** + * @public + *

Deletes the particular version specified in ViewVersion identifier.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ConnectClient, DeleteViewVersionCommand } from "@aws-sdk/client-connect"; // ES Modules import + * // const { ConnectClient, DeleteViewVersionCommand } = require("@aws-sdk/client-connect"); // CommonJS import + * const client = new ConnectClient(config); + * const input = { // DeleteViewVersionRequest + * InstanceId: "STRING_VALUE", // required + * ViewId: "STRING_VALUE", // required + * ViewVersion: Number("int"), // required + * }; + * const command = new DeleteViewVersionCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param DeleteViewVersionCommandInput - {@link DeleteViewVersionCommandInput} + * @returns {@link DeleteViewVersionCommandOutput} + * @see {@link DeleteViewVersionCommandInput} for command's `input` shape. + * @see {@link DeleteViewVersionCommandOutput} for command's `response` shape. + * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient permissions to perform this action.

+ * + * @throws {@link InternalServiceException} (server fault) + *

Request processing failed because of an error or failure with the service.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

One or more of the specified parameters are not valid.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceInUseException} (client fault) + *

That resource is already in use. Please try another.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

Displayed when rate-related API limits are exceeded.

+ * + * @throws {@link ConnectServiceException} + *

Base exception class for all service exceptions from Connect service.

+ * + */ +export class DeleteViewVersionCommand extends $Command< + DeleteViewVersionCommandInput, + DeleteViewVersionCommandOutput, + ConnectClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: DeleteViewVersionCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ConnectClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, DeleteViewVersionCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ConnectClient"; + const commandName = "DeleteViewVersionCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: (_: any) => _, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: DeleteViewVersionCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_DeleteViewVersionCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_DeleteViewVersionCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-connect/src/commands/DescribeViewCommand.ts b/clients/client-connect/src/commands/DescribeViewCommand.ts new file mode 100644 index 0000000000000..b4312fbd0b691 --- /dev/null +++ b/clients/client-connect/src/commands/DescribeViewCommand.ts @@ -0,0 +1,188 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; +import { DescribeViewRequest, DescribeViewResponse, DescribeViewResponseFilterSensitiveLog } from "../models/models_0"; +import { de_DescribeViewCommand, se_DescribeViewCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link DescribeViewCommand}. + */ +export interface DescribeViewCommandInput extends DescribeViewRequest {} +/** + * @public + * + * The output of {@link DescribeViewCommand}. + */ +export interface DescribeViewCommandOutput extends DescribeViewResponse, __MetadataBearer {} + +/** + * @public + *

Retrieves the view for the specified Amazon Connect instance and view identifier.

+ *

The view identifier can be supplied as a ViewId or ARN.

+ *

+ * $SAVED needs to be supplied if a view is unpublished.

+ *

The view identifier can contain an optional qualifier, for example, :$SAVED, which + * is either an actual version number or an Amazon Connect managed qualifier $SAVED | $LATEST. + * If it is not supplied, then $LATEST is assumed for customer managed views and an error is + * returned if there is no published content available. Version 1 is assumed for Amazon Web Services managed views.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ConnectClient, DescribeViewCommand } from "@aws-sdk/client-connect"; // ES Modules import + * // const { ConnectClient, DescribeViewCommand } = require("@aws-sdk/client-connect"); // CommonJS import + * const client = new ConnectClient(config); + * const input = { // DescribeViewRequest + * InstanceId: "STRING_VALUE", // required + * ViewId: "STRING_VALUE", // required + * }; + * const command = new DescribeViewCommand(input); + * const response = await client.send(command); + * // { // DescribeViewResponse + * // View: { // View + * // Id: "STRING_VALUE", + * // Arn: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Status: "PUBLISHED" || "SAVED", + * // Type: "CUSTOMER_MANAGED" || "AWS_MANAGED", + * // Description: "STRING_VALUE", + * // Version: Number("int"), + * // VersionDescription: "STRING_VALUE", + * // Content: { // ViewContent + * // InputSchema: "STRING_VALUE", + * // Template: "STRING_VALUE", + * // Actions: [ // ViewActions + * // "STRING_VALUE", + * // ], + * // }, + * // Tags: { // TagMap + * // "": "STRING_VALUE", + * // }, + * // CreatedTime: new Date("TIMESTAMP"), + * // LastModifiedTime: new Date("TIMESTAMP"), + * // ViewContentSha256: "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param DescribeViewCommandInput - {@link DescribeViewCommandInput} + * @returns {@link DescribeViewCommandOutput} + * @see {@link DescribeViewCommandInput} for command's `input` shape. + * @see {@link DescribeViewCommandOutput} for command's `response` shape. + * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient permissions to perform this action.

+ * + * @throws {@link InternalServiceException} (server fault) + *

Request processing failed because of an error or failure with the service.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

One or more of the specified parameters are not valid.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

Displayed when rate-related API limits are exceeded.

+ * + * @throws {@link ConnectServiceException} + *

Base exception class for all service exceptions from Connect service.

+ * + */ +export class DescribeViewCommand extends $Command< + DescribeViewCommandInput, + DescribeViewCommandOutput, + ConnectClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: DescribeViewCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ConnectClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use(getEndpointPlugin(configuration, DescribeViewCommand.getEndpointParameterInstructions())); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ConnectClient"; + const commandName = "DescribeViewCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: DescribeViewResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: DescribeViewCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_DescribeViewCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_DescribeViewCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-connect/src/commands/DescribeVocabularyCommand.ts b/clients/client-connect/src/commands/DescribeVocabularyCommand.ts index f5535096df1c0..246f803838e23 100644 --- a/clients/client-connect/src/commands/DescribeVocabularyCommand.ts +++ b/clients/client-connect/src/commands/DescribeVocabularyCommand.ts @@ -14,7 +14,8 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DescribeVocabularyRequest, DescribeVocabularyResponse } from "../models/models_0"; +import { DescribeVocabularyRequest } from "../models/models_0"; +import { DescribeVocabularyResponse } from "../models/models_1"; import { de_DescribeVocabularyCommand, se_DescribeVocabularyCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/DisassociateApprovedOriginCommand.ts b/clients/client-connect/src/commands/DisassociateApprovedOriginCommand.ts index c41089f5635df..b68e110a6c282 100644 --- a/clients/client-connect/src/commands/DisassociateApprovedOriginCommand.ts +++ b/clients/client-connect/src/commands/DisassociateApprovedOriginCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DisassociateApprovedOriginRequest } from "../models/models_0"; +import { DisassociateApprovedOriginRequest } from "../models/models_1"; import { de_DisassociateApprovedOriginCommand, se_DisassociateApprovedOriginCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/DisassociateBotCommand.ts b/clients/client-connect/src/commands/DisassociateBotCommand.ts index c9f55bfb0f67b..fd6ad708ec5f3 100644 --- a/clients/client-connect/src/commands/DisassociateBotCommand.ts +++ b/clients/client-connect/src/commands/DisassociateBotCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DisassociateBotRequest } from "../models/models_0"; +import { DisassociateBotRequest } from "../models/models_1"; import { de_DisassociateBotCommand, se_DisassociateBotCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/DisassociateInstanceStorageConfigCommand.ts b/clients/client-connect/src/commands/DisassociateInstanceStorageConfigCommand.ts index 76d639c9cd7ab..342b223c41a38 100644 --- a/clients/client-connect/src/commands/DisassociateInstanceStorageConfigCommand.ts +++ b/clients/client-connect/src/commands/DisassociateInstanceStorageConfigCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DisassociateInstanceStorageConfigRequest } from "../models/models_0"; +import { DisassociateInstanceStorageConfigRequest } from "../models/models_1"; import { de_DisassociateInstanceStorageConfigCommand, se_DisassociateInstanceStorageConfigCommand, diff --git a/clients/client-connect/src/commands/DisassociateLambdaFunctionCommand.ts b/clients/client-connect/src/commands/DisassociateLambdaFunctionCommand.ts index 515af4b469b2f..21496522749f7 100644 --- a/clients/client-connect/src/commands/DisassociateLambdaFunctionCommand.ts +++ b/clients/client-connect/src/commands/DisassociateLambdaFunctionCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DisassociateLambdaFunctionRequest } from "../models/models_0"; +import { DisassociateLambdaFunctionRequest } from "../models/models_1"; import { de_DisassociateLambdaFunctionCommand, se_DisassociateLambdaFunctionCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/DisassociateLexBotCommand.ts b/clients/client-connect/src/commands/DisassociateLexBotCommand.ts index 53c1a268ee6d8..a0480f7857ee6 100644 --- a/clients/client-connect/src/commands/DisassociateLexBotCommand.ts +++ b/clients/client-connect/src/commands/DisassociateLexBotCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DisassociateLexBotRequest } from "../models/models_0"; +import { DisassociateLexBotRequest } from "../models/models_1"; import { de_DisassociateLexBotCommand, se_DisassociateLexBotCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/DisassociatePhoneNumberContactFlowCommand.ts b/clients/client-connect/src/commands/DisassociatePhoneNumberContactFlowCommand.ts index 2bcbf6fabb027..3d08f3fb1903f 100644 --- a/clients/client-connect/src/commands/DisassociatePhoneNumberContactFlowCommand.ts +++ b/clients/client-connect/src/commands/DisassociatePhoneNumberContactFlowCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DisassociatePhoneNumberContactFlowRequest } from "../models/models_0"; +import { DisassociatePhoneNumberContactFlowRequest } from "../models/models_1"; import { de_DisassociatePhoneNumberContactFlowCommand, se_DisassociatePhoneNumberContactFlowCommand, diff --git a/clients/client-connect/src/commands/DisassociateQueueQuickConnectsCommand.ts b/clients/client-connect/src/commands/DisassociateQueueQuickConnectsCommand.ts index d692c123d7e1e..bcc0b29b366d4 100644 --- a/clients/client-connect/src/commands/DisassociateQueueQuickConnectsCommand.ts +++ b/clients/client-connect/src/commands/DisassociateQueueQuickConnectsCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DisassociateQueueQuickConnectsRequest } from "../models/models_0"; +import { DisassociateQueueQuickConnectsRequest } from "../models/models_1"; import { de_DisassociateQueueQuickConnectsCommand, se_DisassociateQueueQuickConnectsCommand, diff --git a/clients/client-connect/src/commands/DisassociateRoutingProfileQueuesCommand.ts b/clients/client-connect/src/commands/DisassociateRoutingProfileQueuesCommand.ts index 27f33f1d4fbb7..745788d6508ae 100644 --- a/clients/client-connect/src/commands/DisassociateRoutingProfileQueuesCommand.ts +++ b/clients/client-connect/src/commands/DisassociateRoutingProfileQueuesCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DisassociateRoutingProfileQueuesRequest } from "../models/models_0"; +import { DisassociateRoutingProfileQueuesRequest } from "../models/models_1"; import { de_DisassociateRoutingProfileQueuesCommand, se_DisassociateRoutingProfileQueuesCommand, diff --git a/clients/client-connect/src/commands/DisassociateSecurityKeyCommand.ts b/clients/client-connect/src/commands/DisassociateSecurityKeyCommand.ts index 55fbd1d1cf53a..dbaabd38309d9 100644 --- a/clients/client-connect/src/commands/DisassociateSecurityKeyCommand.ts +++ b/clients/client-connect/src/commands/DisassociateSecurityKeyCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DisassociateSecurityKeyRequest } from "../models/models_0"; +import { DisassociateSecurityKeyRequest } from "../models/models_1"; import { de_DisassociateSecurityKeyCommand, se_DisassociateSecurityKeyCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/DisassociateTrafficDistributionGroupUserCommand.ts b/clients/client-connect/src/commands/DisassociateTrafficDistributionGroupUserCommand.ts index b234ca12c5b12..134044a2cc4cd 100644 --- a/clients/client-connect/src/commands/DisassociateTrafficDistributionGroupUserCommand.ts +++ b/clients/client-connect/src/commands/DisassociateTrafficDistributionGroupUserCommand.ts @@ -17,7 +17,7 @@ import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } fr import { DisassociateTrafficDistributionGroupUserRequest, DisassociateTrafficDistributionGroupUserResponse, -} from "../models/models_0"; +} from "../models/models_1"; import { de_DisassociateTrafficDistributionGroupUserCommand, se_DisassociateTrafficDistributionGroupUserCommand, diff --git a/clients/client-connect/src/commands/DismissUserContactCommand.ts b/clients/client-connect/src/commands/DismissUserContactCommand.ts index 68fc0daaebdfc..60a7ee53876d8 100644 --- a/clients/client-connect/src/commands/DismissUserContactCommand.ts +++ b/clients/client-connect/src/commands/DismissUserContactCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { DismissUserContactRequest, DismissUserContactResponse } from "../models/models_0"; +import { DismissUserContactRequest, DismissUserContactResponse } from "../models/models_1"; import { de_DismissUserContactCommand, se_DismissUserContactCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/GetContactAttributesCommand.ts b/clients/client-connect/src/commands/GetContactAttributesCommand.ts index 9a2302b27f667..cf34ea411d3a8 100644 --- a/clients/client-connect/src/commands/GetContactAttributesCommand.ts +++ b/clients/client-connect/src/commands/GetContactAttributesCommand.ts @@ -14,8 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { GetContactAttributesRequest } from "../models/models_0"; -import { GetContactAttributesResponse } from "../models/models_1"; +import { GetContactAttributesRequest, GetContactAttributesResponse } from "../models/models_1"; import { de_GetContactAttributesCommand, se_GetContactAttributesCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/ListPhoneNumbersCommand.ts b/clients/client-connect/src/commands/ListPhoneNumbersCommand.ts index 6aac5af94b70d..1e0e05a5a5bd1 100644 --- a/clients/client-connect/src/commands/ListPhoneNumbersCommand.ts +++ b/clients/client-connect/src/commands/ListPhoneNumbersCommand.ts @@ -41,10 +41,20 @@ export interface ListPhoneNumbersCommandOutput extends ListPhoneNumbersResponse, * Contact Center in the Amazon Connect Administrator * Guide.

* - *

The phone number Arn value that is returned from each of the items in the - * PhoneNumberSummaryList cannot be used to tag phone number resources. It will fail with - * a ResourceNotFoundException. Instead, use the ListPhoneNumbersV2 API. - * It returns the new phone number ARN that can be used to tag phone number resources.

+ *
    + *
  • + *

    We recommend using ListPhoneNumbersV2 to + * return phone number types. ListPhoneNumbers doesn't support number types UIFN, + * SHARED, THIRD_PARTY_TF, and THIRD_PARTY_DID. While it returns + * numbers of those types, it incorrectly lists them as TOLL_FREE or DID.

    + *
  • + *
  • + *

    The phone number Arn value that is returned from each of the items in the + * PhoneNumberSummaryList cannot be used to tag phone number resources. It will fail + * with a ResourceNotFoundException. Instead, use the ListPhoneNumbersV2 API. + * It returns the new phone number ARN that can be used to tag phone number resources.

    + *
  • + *
*
* @example * Use a bare-bones client and the command you need to make an API call. diff --git a/clients/client-connect/src/commands/ListViewVersionsCommand.ts b/clients/client-connect/src/commands/ListViewVersionsCommand.ts new file mode 100644 index 0000000000000..d7e7f8d39bbdd --- /dev/null +++ b/clients/client-connect/src/commands/ListViewVersionsCommand.ts @@ -0,0 +1,179 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; +import { + ListViewVersionsRequest, + ListViewVersionsResponse, + ListViewVersionsResponseFilterSensitiveLog, +} from "../models/models_1"; +import { de_ListViewVersionsCommand, se_ListViewVersionsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListViewVersionsCommand}. + */ +export interface ListViewVersionsCommandInput extends ListViewVersionsRequest {} +/** + * @public + * + * The output of {@link ListViewVersionsCommand}. + */ +export interface ListViewVersionsCommandOutput extends ListViewVersionsResponse, __MetadataBearer {} + +/** + * @public + *

Returns all the available versions for the specified Amazon Connect instance and view identifier.

+ *

Results will be sorted from highest to lowest.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ConnectClient, ListViewVersionsCommand } from "@aws-sdk/client-connect"; // ES Modules import + * // const { ConnectClient, ListViewVersionsCommand } = require("@aws-sdk/client-connect"); // CommonJS import + * const client = new ConnectClient(config); + * const input = { // ListViewVersionsRequest + * InstanceId: "STRING_VALUE", // required + * ViewId: "STRING_VALUE", // required + * NextToken: "STRING_VALUE", + * MaxResults: Number("int"), + * }; + * const command = new ListViewVersionsCommand(input); + * const response = await client.send(command); + * // { // ListViewVersionsResponse + * // ViewVersionSummaryList: [ // ViewVersionSummaryList + * // { // ViewVersionSummary + * // Id: "STRING_VALUE", + * // Arn: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Type: "CUSTOMER_MANAGED" || "AWS_MANAGED", + * // Version: Number("int"), + * // VersionDescription: "STRING_VALUE", + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListViewVersionsCommandInput - {@link ListViewVersionsCommandInput} + * @returns {@link ListViewVersionsCommandOutput} + * @see {@link ListViewVersionsCommandInput} for command's `input` shape. + * @see {@link ListViewVersionsCommandOutput} for command's `response` shape. + * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient permissions to perform this action.

+ * + * @throws {@link InternalServiceException} (server fault) + *

Request processing failed because of an error or failure with the service.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

One or more of the specified parameters are not valid.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

Displayed when rate-related API limits are exceeded.

+ * + * @throws {@link ConnectServiceException} + *

Base exception class for all service exceptions from Connect service.

+ * + */ +export class ListViewVersionsCommand extends $Command< + ListViewVersionsCommandInput, + ListViewVersionsCommandOutput, + ConnectClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: ListViewVersionsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ConnectClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, ListViewVersionsCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ConnectClient"; + const commandName = "ListViewVersionsCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: ListViewVersionsResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: ListViewVersionsCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_ListViewVersionsCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_ListViewVersionsCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-connect/src/commands/ListViewsCommand.ts b/clients/client-connect/src/commands/ListViewsCommand.ts new file mode 100644 index 0000000000000..a13e5799387a6 --- /dev/null +++ b/clients/client-connect/src/commands/ListViewsCommand.ts @@ -0,0 +1,172 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; +import { ListViewsRequest, ListViewsResponse, ListViewsResponseFilterSensitiveLog } from "../models/models_1"; +import { de_ListViewsCommand, se_ListViewsCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link ListViewsCommand}. + */ +export interface ListViewsCommandInput extends ListViewsRequest {} +/** + * @public + * + * The output of {@link ListViewsCommand}. + */ +export interface ListViewsCommandOutput extends ListViewsResponse, __MetadataBearer {} + +/** + * @public + *

Returns views in the given instance.

+ *

Results are sorted primarily by type, and secondarily by name.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ConnectClient, ListViewsCommand } from "@aws-sdk/client-connect"; // ES Modules import + * // const { ConnectClient, ListViewsCommand } = require("@aws-sdk/client-connect"); // CommonJS import + * const client = new ConnectClient(config); + * const input = { // ListViewsRequest + * InstanceId: "STRING_VALUE", // required + * Type: "CUSTOMER_MANAGED" || "AWS_MANAGED", + * NextToken: "STRING_VALUE", + * MaxResults: Number("int"), + * }; + * const command = new ListViewsCommand(input); + * const response = await client.send(command); + * // { // ListViewsResponse + * // ViewsSummaryList: [ // ViewsSummaryList + * // { // ViewSummary + * // Id: "STRING_VALUE", + * // Arn: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Type: "CUSTOMER_MANAGED" || "AWS_MANAGED", + * // Status: "PUBLISHED" || "SAVED", + * // Description: "STRING_VALUE", + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListViewsCommandInput - {@link ListViewsCommandInput} + * @returns {@link ListViewsCommandOutput} + * @see {@link ListViewsCommandInput} for command's `input` shape. + * @see {@link ListViewsCommandOutput} for command's `response` shape. + * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient permissions to perform this action.

+ * + * @throws {@link InternalServiceException} (server fault) + *

Request processing failed because of an error or failure with the service.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

One or more of the specified parameters are not valid.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

Displayed when rate-related API limits are exceeded.

+ * + * @throws {@link ConnectServiceException} + *

Base exception class for all service exceptions from Connect service.

+ * + */ +export class ListViewsCommand extends $Command< + ListViewsCommandInput, + ListViewsCommandOutput, + ConnectClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: ListViewsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ConnectClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use(getEndpointPlugin(configuration, ListViewsCommand.getEndpointParameterInstructions())); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ConnectClient"; + const commandName = "ListViewsCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: (_: any) => _, + outputFilterSensitiveLog: ListViewsResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: ListViewsCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_ListViewsCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_ListViewsCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-connect/src/commands/StopContactCommand.ts b/clients/client-connect/src/commands/StopContactCommand.ts index c409d0d8042a0..27a61312a9cf8 100644 --- a/clients/client-connect/src/commands/StopContactCommand.ts +++ b/clients/client-connect/src/commands/StopContactCommand.ts @@ -36,8 +36,8 @@ export interface StopContactCommandOutput extends StopContactResponse, __Metadat /** * @public - *

Ends the specified contact. This call does not work for the following initiation - * methods:

+ *

Ends the specified contact. This call does not work for voice contacts that use the + * following initiation methods:

*
    *
  • *

    DISCONNECT

    @@ -49,6 +49,8 @@ export interface StopContactCommandOutput extends StopContactResponse, __Metadat *

    QUEUE_TRANSFER

    *
  • *
+ *

Chat and task contacts, however, can be terminated in any state, regardless of initiation + * method.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript @@ -73,7 +75,7 @@ export interface StopContactCommandOutput extends StopContactResponse, __Metadat * * @throws {@link ContactNotFoundException} (client fault) *

The contact with the specified ID is not active or does not exist. Applies to Voice calls - * only, not to Chat, Task, or Voice Callback.

+ * only, not to Chat or Task contacts.

* * @throws {@link InternalServiceException} (server fault) *

Request processing failed because of an error or failure with the service.

diff --git a/clients/client-connect/src/commands/UpdatePromptCommand.ts b/clients/client-connect/src/commands/UpdatePromptCommand.ts index 4ec87d7e361cc..640d0ede00e5d 100644 --- a/clients/client-connect/src/commands/UpdatePromptCommand.ts +++ b/clients/client-connect/src/commands/UpdatePromptCommand.ts @@ -14,7 +14,8 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdatePromptRequest, UpdatePromptResponse } from "../models/models_1"; +import { UpdatePromptRequest } from "../models/models_1"; +import { UpdatePromptResponse } from "../models/models_2"; import { de_UpdatePromptCommand, se_UpdatePromptCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateQueueHoursOfOperationCommand.ts b/clients/client-connect/src/commands/UpdateQueueHoursOfOperationCommand.ts index d36c0c83b45b9..6327fa91a5b3d 100644 --- a/clients/client-connect/src/commands/UpdateQueueHoursOfOperationCommand.ts +++ b/clients/client-connect/src/commands/UpdateQueueHoursOfOperationCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateQueueHoursOfOperationRequest } from "../models/models_1"; +import { UpdateQueueHoursOfOperationRequest } from "../models/models_2"; import { de_UpdateQueueHoursOfOperationCommand, se_UpdateQueueHoursOfOperationCommand, diff --git a/clients/client-connect/src/commands/UpdateQueueMaxContactsCommand.ts b/clients/client-connect/src/commands/UpdateQueueMaxContactsCommand.ts index c13716d5d8a8a..5704fbd4ec4af 100644 --- a/clients/client-connect/src/commands/UpdateQueueMaxContactsCommand.ts +++ b/clients/client-connect/src/commands/UpdateQueueMaxContactsCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateQueueMaxContactsRequest } from "../models/models_1"; +import { UpdateQueueMaxContactsRequest } from "../models/models_2"; import { de_UpdateQueueMaxContactsCommand, se_UpdateQueueMaxContactsCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateQueueNameCommand.ts b/clients/client-connect/src/commands/UpdateQueueNameCommand.ts index c76021c488c7c..d9ad6a9ed7af1 100644 --- a/clients/client-connect/src/commands/UpdateQueueNameCommand.ts +++ b/clients/client-connect/src/commands/UpdateQueueNameCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateQueueNameRequest } from "../models/models_1"; +import { UpdateQueueNameRequest } from "../models/models_2"; import { de_UpdateQueueNameCommand, se_UpdateQueueNameCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateQueueOutboundCallerConfigCommand.ts b/clients/client-connect/src/commands/UpdateQueueOutboundCallerConfigCommand.ts index 056755374e5c7..cccb921863a72 100644 --- a/clients/client-connect/src/commands/UpdateQueueOutboundCallerConfigCommand.ts +++ b/clients/client-connect/src/commands/UpdateQueueOutboundCallerConfigCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateQueueOutboundCallerConfigRequest } from "../models/models_1"; +import { UpdateQueueOutboundCallerConfigRequest } from "../models/models_2"; import { de_UpdateQueueOutboundCallerConfigCommand, se_UpdateQueueOutboundCallerConfigCommand, @@ -43,19 +43,26 @@ export interface UpdateQueueOutboundCallerConfigCommandOutput extends __Metadata *

Updates the outbound caller ID name, number, and outbound whisper flow for a specified * queue.

* - *

If the number being used in the input is claimed to a traffic distribution group, and you are calling this API - * using an instance in the Amazon Web Services Region where the traffic distribution group was created, you can use - * either a full phone number ARN or UUID value for the OutboundCallerIdNumberId value - * of the OutboundCallerConfig request body parameter. However, if the number is claimed to a - * traffic distribution group and you are calling this API using an instance in the alternate Amazon Web Services Region - * associated with the traffic distribution group, you must provide a full phone number ARN. If a UUID is provided - * in - * this scenario, you will receive a - * ResourceNotFoundException.

- *

Only use the phone number ARN format that doesn't contain instance in the - * path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid. This is - * the same ARN format that is returned when you call the ListPhoneNumbersV2 - * API.

+ *
    + *
  • + *

    If the phone number is claimed to a traffic distribution group that was created in the + * same Region as the Amazon Connect instance where you are calling this API, then you can use a + * full phone number ARN or a UUID for OutboundCallerIdNumberId. However, if the phone number is claimed + * to a traffic distribution group that is in one Region, and you are calling this API from an instance in another Amazon Web Services Region that is associated with the traffic distribution group, you must provide a full phone number ARN. If a + * UUID is provided in this scenario, you will receive a + * ResourceNotFoundException.

    + *
  • + *
  • + *

    Only use the phone number ARN format that doesn't contain instance in the + * path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid. This + * is the same ARN format that is returned when you call the ListPhoneNumbersV2 + * API.

    + *
  • + *
  • + *

    If you plan to use IAM policies to allow/deny access to this API for phone + * number resources claimed to a traffic distribution group, see Allow or Deny queue API actions for phone numbers in a replica Region.

    + *
  • + *
*
* @example * Use a bare-bones client and the command you need to make an API call. diff --git a/clients/client-connect/src/commands/UpdateQueueStatusCommand.ts b/clients/client-connect/src/commands/UpdateQueueStatusCommand.ts index c7e6421bf4538..522c9e223e0a6 100644 --- a/clients/client-connect/src/commands/UpdateQueueStatusCommand.ts +++ b/clients/client-connect/src/commands/UpdateQueueStatusCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateQueueStatusRequest } from "../models/models_1"; +import { UpdateQueueStatusRequest } from "../models/models_2"; import { de_UpdateQueueStatusCommand, se_UpdateQueueStatusCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateQuickConnectConfigCommand.ts b/clients/client-connect/src/commands/UpdateQuickConnectConfigCommand.ts index 85ed5351b8969..b5995efcd302b 100644 --- a/clients/client-connect/src/commands/UpdateQuickConnectConfigCommand.ts +++ b/clients/client-connect/src/commands/UpdateQuickConnectConfigCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateQuickConnectConfigRequest } from "../models/models_1"; +import { UpdateQuickConnectConfigRequest } from "../models/models_2"; import { de_UpdateQuickConnectConfigCommand, se_UpdateQuickConnectConfigCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateQuickConnectNameCommand.ts b/clients/client-connect/src/commands/UpdateQuickConnectNameCommand.ts index 6d11d556f6bbb..7d90e09548bc5 100644 --- a/clients/client-connect/src/commands/UpdateQuickConnectNameCommand.ts +++ b/clients/client-connect/src/commands/UpdateQuickConnectNameCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateQuickConnectNameRequest } from "../models/models_1"; +import { UpdateQuickConnectNameRequest } from "../models/models_2"; import { de_UpdateQuickConnectNameCommand, se_UpdateQuickConnectNameCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateRoutingProfileAgentAvailabilityTimerCommand.ts b/clients/client-connect/src/commands/UpdateRoutingProfileAgentAvailabilityTimerCommand.ts index f5d6a320dc866..5c797bb4c0ba2 100644 --- a/clients/client-connect/src/commands/UpdateRoutingProfileAgentAvailabilityTimerCommand.ts +++ b/clients/client-connect/src/commands/UpdateRoutingProfileAgentAvailabilityTimerCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateRoutingProfileAgentAvailabilityTimerRequest } from "../models/models_1"; +import { UpdateRoutingProfileAgentAvailabilityTimerRequest } from "../models/models_2"; import { de_UpdateRoutingProfileAgentAvailabilityTimerCommand, se_UpdateRoutingProfileAgentAvailabilityTimerCommand, diff --git a/clients/client-connect/src/commands/UpdateRoutingProfileConcurrencyCommand.ts b/clients/client-connect/src/commands/UpdateRoutingProfileConcurrencyCommand.ts index a63a65f9a3c09..da54a2fcf52ed 100644 --- a/clients/client-connect/src/commands/UpdateRoutingProfileConcurrencyCommand.ts +++ b/clients/client-connect/src/commands/UpdateRoutingProfileConcurrencyCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateRoutingProfileConcurrencyRequest } from "../models/models_1"; +import { UpdateRoutingProfileConcurrencyRequest } from "../models/models_2"; import { de_UpdateRoutingProfileConcurrencyCommand, se_UpdateRoutingProfileConcurrencyCommand, diff --git a/clients/client-connect/src/commands/UpdateRoutingProfileDefaultOutboundQueueCommand.ts b/clients/client-connect/src/commands/UpdateRoutingProfileDefaultOutboundQueueCommand.ts index d930c525e1f76..371cae25af05b 100644 --- a/clients/client-connect/src/commands/UpdateRoutingProfileDefaultOutboundQueueCommand.ts +++ b/clients/client-connect/src/commands/UpdateRoutingProfileDefaultOutboundQueueCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateRoutingProfileDefaultOutboundQueueRequest } from "../models/models_1"; +import { UpdateRoutingProfileDefaultOutboundQueueRequest } from "../models/models_2"; import { de_UpdateRoutingProfileDefaultOutboundQueueCommand, se_UpdateRoutingProfileDefaultOutboundQueueCommand, diff --git a/clients/client-connect/src/commands/UpdateRoutingProfileNameCommand.ts b/clients/client-connect/src/commands/UpdateRoutingProfileNameCommand.ts index 83b1835cd2791..fbc1bc63ca0ed 100644 --- a/clients/client-connect/src/commands/UpdateRoutingProfileNameCommand.ts +++ b/clients/client-connect/src/commands/UpdateRoutingProfileNameCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateRoutingProfileNameRequest } from "../models/models_1"; +import { UpdateRoutingProfileNameRequest } from "../models/models_2"; import { de_UpdateRoutingProfileNameCommand, se_UpdateRoutingProfileNameCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateRoutingProfileQueuesCommand.ts b/clients/client-connect/src/commands/UpdateRoutingProfileQueuesCommand.ts index c7464bded2320..038c52bf789b3 100644 --- a/clients/client-connect/src/commands/UpdateRoutingProfileQueuesCommand.ts +++ b/clients/client-connect/src/commands/UpdateRoutingProfileQueuesCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateRoutingProfileQueuesRequest } from "../models/models_1"; +import { UpdateRoutingProfileQueuesRequest } from "../models/models_2"; import { de_UpdateRoutingProfileQueuesCommand, se_UpdateRoutingProfileQueuesCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateRuleCommand.ts b/clients/client-connect/src/commands/UpdateRuleCommand.ts index 620868a4858d5..fb1c3e246822d 100644 --- a/clients/client-connect/src/commands/UpdateRuleCommand.ts +++ b/clients/client-connect/src/commands/UpdateRuleCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateRuleRequest } from "../models/models_1"; +import { UpdateRuleRequest } from "../models/models_2"; import { de_UpdateRuleCommand, se_UpdateRuleCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateSecurityProfileCommand.ts b/clients/client-connect/src/commands/UpdateSecurityProfileCommand.ts index 42234b1935738..c54c8fb28ed49 100644 --- a/clients/client-connect/src/commands/UpdateSecurityProfileCommand.ts +++ b/clients/client-connect/src/commands/UpdateSecurityProfileCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateSecurityProfileRequest } from "../models/models_1"; +import { UpdateSecurityProfileRequest } from "../models/models_2"; import { de_UpdateSecurityProfileCommand, se_UpdateSecurityProfileCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateTaskTemplateCommand.ts b/clients/client-connect/src/commands/UpdateTaskTemplateCommand.ts index 261dc58b61f32..6b0df15c12cb1 100644 --- a/clients/client-connect/src/commands/UpdateTaskTemplateCommand.ts +++ b/clients/client-connect/src/commands/UpdateTaskTemplateCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateTaskTemplateRequest, UpdateTaskTemplateResponse } from "../models/models_1"; +import { UpdateTaskTemplateRequest, UpdateTaskTemplateResponse } from "../models/models_2"; import { de_UpdateTaskTemplateCommand, se_UpdateTaskTemplateCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateTrafficDistributionCommand.ts b/clients/client-connect/src/commands/UpdateTrafficDistributionCommand.ts index 005e71339b058..ae1f17713ddf4 100644 --- a/clients/client-connect/src/commands/UpdateTrafficDistributionCommand.ts +++ b/clients/client-connect/src/commands/UpdateTrafficDistributionCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateTrafficDistributionRequest, UpdateTrafficDistributionResponse } from "../models/models_1"; +import { UpdateTrafficDistributionRequest, UpdateTrafficDistributionResponse } from "../models/models_2"; import { de_UpdateTrafficDistributionCommand, se_UpdateTrafficDistributionCommand } from "../protocols/Aws_restJson1"; /** @@ -38,8 +38,11 @@ export interface UpdateTrafficDistributionCommandOutput extends UpdateTrafficDis * @public *

Updates the traffic distribution for a given traffic distribution group.

* - *

You can change the SignInConfig only for a default TrafficDistributionGroup. If you call - * UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, + *

You can change the SignInConfig distribution only for a + * default TrafficDistributionGroup (see the IsDefault parameter in the + * TrafficDistributionGroup + * data type). If you call + * UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, * an InvalidRequestException is returned.

*
*

For more information about updating a traffic distribution group, see Update telephony diff --git a/clients/client-connect/src/commands/UpdateUserHierarchyCommand.ts b/clients/client-connect/src/commands/UpdateUserHierarchyCommand.ts index 5cf5edd484210..f41cad187dc37 100644 --- a/clients/client-connect/src/commands/UpdateUserHierarchyCommand.ts +++ b/clients/client-connect/src/commands/UpdateUserHierarchyCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateUserHierarchyRequest } from "../models/models_1"; +import { UpdateUserHierarchyRequest } from "../models/models_2"; import { de_UpdateUserHierarchyCommand, se_UpdateUserHierarchyCommand } from "../protocols/Aws_restJson1"; /** diff --git a/clients/client-connect/src/commands/UpdateUserHierarchyGroupNameCommand.ts b/clients/client-connect/src/commands/UpdateUserHierarchyGroupNameCommand.ts index cc83adb4d4497..552db7f6b206c 100644 --- a/clients/client-connect/src/commands/UpdateUserHierarchyGroupNameCommand.ts +++ b/clients/client-connect/src/commands/UpdateUserHierarchyGroupNameCommand.ts @@ -14,7 +14,7 @@ import { } from "@smithy/types"; import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; -import { UpdateUserHierarchyGroupNameRequest } from "../models/models_1"; +import { UpdateUserHierarchyGroupNameRequest } from "../models/models_2"; import { de_UpdateUserHierarchyGroupNameCommand, se_UpdateUserHierarchyGroupNameCommand, diff --git a/clients/client-connect/src/commands/UpdateViewContentCommand.ts b/clients/client-connect/src/commands/UpdateViewContentCommand.ts new file mode 100644 index 0000000000000..732dea561eb9c --- /dev/null +++ b/clients/client-connect/src/commands/UpdateViewContentCommand.ts @@ -0,0 +1,201 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; +import { + UpdateViewContentRequest, + UpdateViewContentRequestFilterSensitiveLog, + UpdateViewContentResponse, + UpdateViewContentResponseFilterSensitiveLog, +} from "../models/models_2"; +import { de_UpdateViewContentCommand, se_UpdateViewContentCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link UpdateViewContentCommand}. + */ +export interface UpdateViewContentCommandInput extends UpdateViewContentRequest {} +/** + * @public + * + * The output of {@link UpdateViewContentCommand}. + */ +export interface UpdateViewContentCommandOutput extends UpdateViewContentResponse, __MetadataBearer {} + +/** + * @public + *

Updates the view content of the given view identifier in the specified Amazon Connect instance.

+ *

It performs content validation if Status is set to SAVED and performs full content validation if + * Status is PUBLISHED. Note that the $SAVED alias' content will always be updated, + * but the $LATEST alias' content will only be updated if Status is PUBLISHED.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ConnectClient, UpdateViewContentCommand } from "@aws-sdk/client-connect"; // ES Modules import + * // const { ConnectClient, UpdateViewContentCommand } = require("@aws-sdk/client-connect"); // CommonJS import + * const client = new ConnectClient(config); + * const input = { // UpdateViewContentRequest + * InstanceId: "STRING_VALUE", // required + * ViewId: "STRING_VALUE", // required + * Status: "PUBLISHED" || "SAVED", // required + * Content: { // ViewInputContent + * Template: "STRING_VALUE", + * Actions: [ // ViewActions + * "STRING_VALUE", + * ], + * }, + * }; + * const command = new UpdateViewContentCommand(input); + * const response = await client.send(command); + * // { // UpdateViewContentResponse + * // View: { // View + * // Id: "STRING_VALUE", + * // Arn: "STRING_VALUE", + * // Name: "STRING_VALUE", + * // Status: "PUBLISHED" || "SAVED", + * // Type: "CUSTOMER_MANAGED" || "AWS_MANAGED", + * // Description: "STRING_VALUE", + * // Version: Number("int"), + * // VersionDescription: "STRING_VALUE", + * // Content: { // ViewContent + * // InputSchema: "STRING_VALUE", + * // Template: "STRING_VALUE", + * // Actions: [ // ViewActions + * // "STRING_VALUE", + * // ], + * // }, + * // Tags: { // TagMap + * // "": "STRING_VALUE", + * // }, + * // CreatedTime: new Date("TIMESTAMP"), + * // LastModifiedTime: new Date("TIMESTAMP"), + * // ViewContentSha256: "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param UpdateViewContentCommandInput - {@link UpdateViewContentCommandInput} + * @returns {@link UpdateViewContentCommandOutput} + * @see {@link UpdateViewContentCommandInput} for command's `input` shape. + * @see {@link UpdateViewContentCommandOutput} for command's `response` shape. + * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient permissions to perform this action.

+ * + * @throws {@link InternalServiceException} (server fault) + *

Request processing failed because of an error or failure with the service.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

One or more of the specified parameters are not valid.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceInUseException} (client fault) + *

That resource is already in use. Please try another.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

Displayed when rate-related API limits are exceeded.

+ * + * @throws {@link ConnectServiceException} + *

Base exception class for all service exceptions from Connect service.

+ * + */ +export class UpdateViewContentCommand extends $Command< + UpdateViewContentCommandInput, + UpdateViewContentCommandOutput, + ConnectClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: UpdateViewContentCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ConnectClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, UpdateViewContentCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ConnectClient"; + const commandName = "UpdateViewContentCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: UpdateViewContentRequestFilterSensitiveLog, + outputFilterSensitiveLog: UpdateViewContentResponseFilterSensitiveLog, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: UpdateViewContentCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_UpdateViewContentCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_UpdateViewContentCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-connect/src/commands/UpdateViewMetadataCommand.ts b/clients/client-connect/src/commands/UpdateViewMetadataCommand.ts new file mode 100644 index 0000000000000..b1de73d283254 --- /dev/null +++ b/clients/client-connect/src/commands/UpdateViewMetadataCommand.ts @@ -0,0 +1,172 @@ +// smithy-typescript generated code +import { EndpointParameterInstructions, getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@smithy/protocol-http"; +import { Command as $Command } from "@smithy/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@smithy/types"; + +import { ConnectClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../ConnectClient"; +import { + UpdateViewMetadataRequest, + UpdateViewMetadataRequestFilterSensitiveLog, + UpdateViewMetadataResponse, +} from "../models/models_2"; +import { de_UpdateViewMetadataCommand, se_UpdateViewMetadataCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export { __MetadataBearer, $Command }; +/** + * @public + * + * The input for {@link UpdateViewMetadataCommand}. + */ +export interface UpdateViewMetadataCommandInput extends UpdateViewMetadataRequest {} +/** + * @public + * + * The output of {@link UpdateViewMetadataCommand}. + */ +export interface UpdateViewMetadataCommandOutput extends UpdateViewMetadataResponse, __MetadataBearer {} + +/** + * @public + *

Updates the view metadata. Note that either Name or Description + * must be provided.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { ConnectClient, UpdateViewMetadataCommand } from "@aws-sdk/client-connect"; // ES Modules import + * // const { ConnectClient, UpdateViewMetadataCommand } = require("@aws-sdk/client-connect"); // CommonJS import + * const client = new ConnectClient(config); + * const input = { // UpdateViewMetadataRequest + * InstanceId: "STRING_VALUE", // required + * ViewId: "STRING_VALUE", // required + * Name: "STRING_VALUE", + * Description: "STRING_VALUE", + * }; + * const command = new UpdateViewMetadataCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param UpdateViewMetadataCommandInput - {@link UpdateViewMetadataCommandInput} + * @returns {@link UpdateViewMetadataCommandOutput} + * @see {@link UpdateViewMetadataCommandInput} for command's `input` shape. + * @see {@link UpdateViewMetadataCommandOutput} for command's `response` shape. + * @see {@link ConnectClientResolvedConfig | config} for ConnectClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient permissions to perform this action.

+ * + * @throws {@link DuplicateResourceException} (client fault) + *

A resource with the specified name already exists.

+ * + * @throws {@link InternalServiceException} (server fault) + *

Request processing failed because of an error or failure with the service.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

One or more of the specified parameters are not valid.

+ * + * @throws {@link InvalidRequestException} (client fault) + *

The request is not valid.

+ * + * @throws {@link ResourceInUseException} (client fault) + *

That resource is already in use. Please try another.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The specified resource was not found.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

Displayed when rate-related API limits are exceeded.

+ * + * @throws {@link ConnectServiceException} + *

Base exception class for all service exceptions from Connect service.

+ * + */ +export class UpdateViewMetadataCommand extends $Command< + UpdateViewMetadataCommandInput, + UpdateViewMetadataCommandOutput, + ConnectClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: UpdateViewMetadataCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStack, + configuration: ConnectClientResolvedConfig, + options?: __HttpHandlerOptions + ): Handler { + this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize)); + this.middlewareStack.use( + getEndpointPlugin(configuration, UpdateViewMetadataCommand.getEndpointParameterInstructions()) + ); + + const stack = clientStack.concat(this.middlewareStack); + + const { logger } = configuration; + const clientName = "ConnectClient"; + const commandName = "UpdateViewMetadataCommand"; + const handlerExecutionContext: HandlerExecutionContext = { + logger, + clientName, + commandName, + inputFilterSensitiveLog: UpdateViewMetadataRequestFilterSensitiveLog, + outputFilterSensitiveLog: (_: any) => _, + }; + const { requestHandler } = configuration; + return stack.resolve( + (request: FinalizeHandlerArguments) => + requestHandler.handle(request.request as __HttpRequest, options || {}), + handlerExecutionContext + ); + } + + /** + * @internal + */ + private serialize(input: UpdateViewMetadataCommandInput, context: __SerdeContext): Promise<__HttpRequest> { + return se_UpdateViewMetadataCommand(input, context); + } + + /** + * @internal + */ + private deserialize(output: __HttpResponse, context: __SerdeContext): Promise { + return de_UpdateViewMetadataCommand(output, context); + } + + // Start section: command_body_extra + // End section: command_body_extra +} diff --git a/clients/client-connect/src/commands/index.ts b/clients/client-connect/src/commands/index.ts index 1bbdf374f68ce..5df69a90ebee2 100644 --- a/clients/client-connect/src/commands/index.ts +++ b/clients/client-connect/src/commands/index.ts @@ -31,6 +31,8 @@ export * from "./CreateTrafficDistributionGroupCommand"; export * from "./CreateUseCaseCommand"; export * from "./CreateUserCommand"; export * from "./CreateUserHierarchyGroupCommand"; +export * from "./CreateViewCommand"; +export * from "./CreateViewVersionCommand"; export * from "./CreateVocabularyCommand"; export * from "./DeactivateEvaluationFormCommand"; export * from "./DeleteContactEvaluationCommand"; @@ -51,6 +53,8 @@ export * from "./DeleteTrafficDistributionGroupCommand"; export * from "./DeleteUseCaseCommand"; export * from "./DeleteUserCommand"; export * from "./DeleteUserHierarchyGroupCommand"; +export * from "./DeleteViewCommand"; +export * from "./DeleteViewVersionCommand"; export * from "./DeleteVocabularyCommand"; export * from "./DescribeAgentStatusCommand"; export * from "./DescribeContactCommand"; @@ -73,6 +77,7 @@ export * from "./DescribeTrafficDistributionGroupCommand"; export * from "./DescribeUserCommand"; export * from "./DescribeUserHierarchyGroupCommand"; export * from "./DescribeUserHierarchyStructureCommand"; +export * from "./DescribeViewCommand"; export * from "./DescribeVocabularyCommand"; export * from "./DisassociateApprovedOriginCommand"; export * from "./DisassociateBotCommand"; @@ -130,6 +135,8 @@ export * from "./ListTrafficDistributionGroupsCommand"; export * from "./ListUseCasesCommand"; export * from "./ListUserHierarchyGroupsCommand"; export * from "./ListUsersCommand"; +export * from "./ListViewVersionsCommand"; +export * from "./ListViewsCommand"; export * from "./MonitorContactCommand"; export * from "./PutUserStatusCommand"; export * from "./ReleasePhoneNumberCommand"; @@ -199,3 +206,5 @@ export * from "./UpdateUserIdentityInfoCommand"; export * from "./UpdateUserPhoneConfigCommand"; export * from "./UpdateUserRoutingProfileCommand"; export * from "./UpdateUserSecurityProfilesCommand"; +export * from "./UpdateViewContentCommand"; +export * from "./UpdateViewMetadataCommand"; diff --git a/clients/client-connect/src/models/models_0.ts b/clients/client-connect/src/models/models_0.ts index dabd413951217..100aae43cd08b 100644 --- a/clients/client-connect/src/models/models_0.ts +++ b/clients/client-connect/src/models/models_0.ts @@ -4008,6 +4008,342 @@ export interface CreateUserHierarchyGroupResponse { HierarchyGroupArn?: string; } +/** + * @public + *

View content containing all content necessary to render a view except + * for runtime input data and the runtime input schema, which is auto-generated + * by this operation.

+ */ +export interface ViewInputContent { + /** + * @public + *

The view template representing the structure of the view.

+ */ + Template?: string; + + /** + * @public + *

A list of possible actions from the view.

+ */ + Actions?: string[]; +} + +/** + * @public + * @enum + */ +export const ViewStatus = { + PUBLISHED: "PUBLISHED", + SAVED: "SAVED", +} as const; + +/** + * @public + */ +export type ViewStatus = (typeof ViewStatus)[keyof typeof ViewStatus]; + +/** + * @public + */ +export interface CreateViewRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of + * the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

A unique Id for each create view request to avoid duplicate view creation. For example, the view + * is idempotent ClientToken is provided.

+ */ + ClientToken?: string; + + /** + * @public + *

Indicates the view status as either SAVED or PUBLISHED. The + * PUBLISHED status will initiate validation on the content.

+ */ + Status: ViewStatus | string | undefined; + + /** + * @public + *

View content containing all content necessary to render a view except for runtime input data.

+ *

The total uncompressed content has a maximum file size of 400kB.

+ */ + Content: ViewInputContent | undefined; + + /** + * @public + *

The description of the view.

+ */ + Description?: string; + + /** + * @public + *

The name of the view.

+ */ + Name: string | undefined; + + /** + * @public + *

The tags associated with the view resource (not specific to view version).These tags can be used + * to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

+ */ + Tags?: Record; +} + +/** + * @public + *

View content containing all content necessary to render a view except for runtime input data.

+ */ +export interface ViewContent { + /** + * @public + *

The data schema matching data that the view template must be provided to render.

+ */ + InputSchema?: string; + + /** + * @public + *

The view template representing the structure of the view.

+ */ + Template?: string; + + /** + * @public + *

A list of possible actions from the view.

+ */ + Actions?: string[]; +} + +/** + * @public + * @enum + */ +export const ViewType = { + AWS_MANAGED: "AWS_MANAGED", + CUSTOMER_MANAGED: "CUSTOMER_MANAGED", +} as const; + +/** + * @public + */ +export type ViewType = (typeof ViewType)[keyof typeof ViewType]; + +/** + * @public + *

A view resource object. Contains metadata and content necessary to render the view.

+ */ +export interface View { + /** + * @public + *

The identifier of the view.

+ */ + Id?: string; + + /** + * @public + *

The Amazon Resource Name (ARN) of the view.

+ */ + Arn?: string; + + /** + * @public + *

The name of the view.

+ */ + Name?: string; + + /** + * @public + *

Indicates the view status as either SAVED or PUBLISHED. The + * PUBLISHED status will initiate validation on the content.

+ */ + Status?: ViewStatus | string; + + /** + * @public + *

The type of the view - CUSTOMER_MANAGED.

+ */ + Type?: ViewType | string; + + /** + * @public + *

The description of the view.

+ */ + Description?: string; + + /** + * @public + *

Current version of the view.

+ */ + Version?: number; + + /** + * @public + *

The description of the version.

+ */ + VersionDescription?: string; + + /** + * @public + *

View content containing all content necessary to render a view except for runtime input data.

+ */ + Content?: ViewContent; + + /** + * @public + *

The tags associated with the view resource (not specific to view version).

+ */ + Tags?: Record; + + /** + * @public + *

The timestamp of when the view was created.

+ */ + CreatedTime?: Date; + + /** + * @public + *

Latest timestamp of the UpdateViewContent or CreateViewVersion operations.

+ */ + LastModifiedTime?: Date; + + /** + * @public + *

Indicates the checksum value of the latest published view content.

+ */ + ViewContentSha256?: string; +} + +/** + * @public + */ +export interface CreateViewResponse { + /** + * @public + *

A view resource object. Contains metadata and content necessary to render the view.

+ */ + View?: View; +} + +/** + * @public + * @enum + */ +export const ResourceType = { + CONTACT: "CONTACT", + CONTACT_FLOW: "CONTACT_FLOW", + HIERARCHY_GROUP: "HIERARCHY_GROUP", + HIERARCHY_LEVEL: "HIERARCHY_LEVEL", + INSTANCE: "INSTANCE", + PARTICIPANT: "PARTICIPANT", + USER: "USER", +} as const; + +/** + * @public + */ +export type ResourceType = (typeof ResourceType)[keyof typeof ResourceType]; + +/** + * @public + *

That resource is already in use. Please try another.

+ */ +export class ResourceInUseException extends __BaseException { + readonly name: "ResourceInUseException" = "ResourceInUseException"; + readonly $fault: "client" = "client"; + Message?: string; + /** + * @public + *

The type of resource.

+ */ + ResourceType?: ResourceType | string; + + /** + * @public + *

The identifier for the resource.

+ */ + ResourceId?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ResourceInUseException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ResourceInUseException.prototype); + this.Message = opts.Message; + this.ResourceType = opts.ResourceType; + this.ResourceId = opts.ResourceId; + } +} + +/** + * @public + *

Displayed when rate-related API limits are exceeded.

+ */ +export class TooManyRequestsException extends __BaseException { + readonly name: "TooManyRequestsException" = "TooManyRequestsException"; + readonly $fault: "client" = "client"; + Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TooManyRequestsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TooManyRequestsException.prototype); + this.Message = opts.Message; + } +} + +/** + * @public + */ +export interface CreateViewVersionRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the view. Both ViewArn and ViewId can be used.

+ */ + ViewId: string | undefined; + + /** + * @public + *

The description for the version being published.

+ */ + VersionDescription?: string; + + /** + * @public + *

Indicates the checksum value of the latest published view content.

+ */ + ViewContentSha256?: string; +} + +/** + * @public + */ +export interface CreateViewVersionResponse { + /** + * @public + *

All view data is contained within the View object.

+ */ + View?: View; +} + /** * @public */ @@ -4308,60 +4644,6 @@ export interface DeleteQueueRequest { QueueId: string | undefined; } -/** - * @public - * @enum - */ -export const ResourceType = { - CONTACT: "CONTACT", - CONTACT_FLOW: "CONTACT_FLOW", - HIERARCHY_GROUP: "HIERARCHY_GROUP", - HIERARCHY_LEVEL: "HIERARCHY_LEVEL", - INSTANCE: "INSTANCE", - PARTICIPANT: "PARTICIPANT", - USER: "USER", -} as const; - -/** - * @public - */ -export type ResourceType = (typeof ResourceType)[keyof typeof ResourceType]; - -/** - * @public - *

That resource is already in use. Please try another.

- */ -export class ResourceInUseException extends __BaseException { - readonly name: "ResourceInUseException" = "ResourceInUseException"; - readonly $fault: "client" = "client"; - Message?: string; - /** - * @public - *

The type of resource.

- */ - ResourceType?: ResourceType | string; - - /** - * @public - *

The identifier for the resource.

- */ - ResourceId?: string; - /** - * @internal - */ - constructor(opts: __ExceptionOptionType) { - super({ - name: "ResourceInUseException", - $fault: "client", - ...opts, - }); - Object.setPrototypeOf(this, ResourceInUseException.prototype); - this.Message = opts.Message; - this.ResourceType = opts.ResourceType; - this.ResourceId = opts.ResourceId; - } -} - /** * @public */ @@ -4527,6 +4809,56 @@ export interface DeleteUserHierarchyGroupRequest { InstanceId: string | undefined; } +/** + * @public + */ +export interface DeleteViewRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the view. Both ViewArn and ViewId can be used.

+ */ + ViewId: string | undefined; +} + +/** + * @public + */ +export interface DeleteViewResponse {} + +/** + * @public + */ +export interface DeleteViewVersionRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the view. Both ViewArn and ViewId can be used.

+ */ + ViewId: string | undefined; + + /** + * @public + *

The version number of the view.

+ */ + ViewVersion: number | undefined; +} + +/** + * @public + */ +export interface DeleteViewVersionResponse {} + /** * @public */ @@ -6662,8 +6994,11 @@ export interface TrafficDistributionGroup { * DeleteTrafficDistributionGroup API. The default traffic distribution group is deleted as * part of the process for deleting a replica.

* - *

You can change the SignInConfig only for a default TrafficDistributionGroup. If you call - * UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, + *

You can change the SignInConfig distribution only for a + * default TrafficDistributionGroup (see the IsDefault parameter in the + * TrafficDistributionGroup + * data type). If you call + * UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup, * an InvalidRequestException is returned.

* */ @@ -6991,246 +7326,35 @@ export interface DescribeUserHierarchyStructureResponse { /** * @public */ -export interface DescribeVocabularyRequest { +export interface DescribeViewRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

*/ InstanceId: string | undefined; /** * @public - *

The identifier of the custom vocabulary.

+ *

The ViewId of the view. This must be an ARN for Amazon Web Services managed views.

*/ - VocabularyId: string | undefined; + ViewId: string | undefined; } /** * @public - *

Contains information about a custom vocabulary.

*/ -export interface Vocabulary { +export interface DescribeViewResponse { /** * @public - *

A unique name of the custom vocabulary.

+ *

All view data is contained within the View object.

*/ - Name: string | undefined; - - /** - * @public - *

The identifier of the custom vocabulary.

- */ - Id: string | undefined; - - /** - * @public - *

The Amazon Resource Name (ARN) of the custom vocabulary.

- */ - Arn: string | undefined; - - /** - * @public - *

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, see - * What is Amazon Transcribe? - *

- */ - LanguageCode: VocabularyLanguageCode | string | undefined; - - /** - * @public - *

The current state of the custom vocabulary.

- */ - State: VocabularyState | string | undefined; - - /** - * @public - *

The timestamp when the custom vocabulary was last modified.

- */ - LastModifiedTime: Date | undefined; - - /** - * @public - *

The reason why the custom vocabulary was not created.

- */ - FailureReason?: string; - - /** - * @public - *

The content of the custom vocabulary in plain-text format with a table of values. Each row - * in the table represents a word or a phrase, described with Phrase, IPA, - * SoundsLike, and DisplayAs fields. Separate the fields with TAB - * characters. For more information, see Create a custom - * vocabulary using a table.

- */ - Content?: string; - - /** - * @public - *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

- */ - Tags?: Record; -} - -/** - * @public - */ -export interface DescribeVocabularyResponse { - /** - * @public - *

A list of specific words that you want Contact Lens for Amazon Connect to recognize in your audio input. They are - * generally domain-specific words and phrases, words that Contact Lens is not recognizing, or proper - * nouns.

- */ - Vocabulary: Vocabulary | undefined; -} - -/** - * @public - */ -export interface DisassociateApprovedOriginRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The domain URL of the integrated application.

- */ - Origin: string | undefined; -} - -/** - * @public - */ -export interface DisassociateBotRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

Configuration information of an Amazon Lex bot.

- */ - LexBot?: LexBot; - - /** - * @public - *

The Amazon Lex V2 bot to disassociate from the instance.

- */ - LexV2Bot?: LexV2Bot; + View?: View; } /** * @public */ -export interface DisassociateInstanceStorageConfigRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The existing association identifier that uniquely identifies the resource type and storage config for the given instance ID.

- */ - AssociationId: string | undefined; - - /** - * @public - *

A valid resource type.

- */ - ResourceType: InstanceStorageResourceType | string | undefined; -} - -/** - * @public - */ -export interface DisassociateLambdaFunctionRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance..

- */ - InstanceId: string | undefined; - - /** - * @public - *

The Amazon Resource Name (ARN) of the Lambda function being disassociated.

- */ - FunctionArn: string | undefined; -} - -/** - * @public - */ -export interface DisassociateLexBotRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The name of the Amazon Lex bot. Maximum character limit of 50.

- */ - BotName: string | undefined; - - /** - * @public - *

The Amazon Web Services Region in which the Amazon Lex bot has been created.

- */ - LexRegion: string | undefined; -} - -/** - * @public - */ -export interface DisassociatePhoneNumberContactFlowRequest { - /** - * @public - *

A unique identifier for the phone number.

- */ - PhoneNumberId: string | undefined; - - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; -} - -/** - * @public - */ -export interface DisassociateQueueQuickConnectsRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The identifier for the queue.

- */ - QueueId: string | undefined; - - /** - * @public - *

The quick connects to disassociate from the queue.

- */ - QuickConnectIds: string[] | undefined; -} - -/** - * @public - */ -export interface DisassociateRoutingProfileQueuesRequest { +export interface DescribeVocabularyRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7239,116 +7363,68 @@ export interface DisassociateRoutingProfileQueuesRequest { /** * @public - *

The identifier of the routing profile.

- */ - RoutingProfileId: string | undefined; - - /** - * @public - *

The queues to disassociate from this routing profile.

+ *

The identifier of the custom vocabulary.

*/ - QueueReferences: RoutingProfileQueueReference[] | undefined; + VocabularyId: string | undefined; } /** - * @public + * @internal */ -export interface DisassociateSecurityKeyRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The existing association identifier that uniquely identifies the resource type and storage config for the given instance ID.

- */ - AssociationId: string | undefined; -} +export const CreateInstanceRequestFilterSensitiveLog = (obj: CreateInstanceRequest): any => ({ + ...obj, + ...(obj.InstanceAlias && { InstanceAlias: SENSITIVE_STRING }), +}); /** - * @public + * @internal */ -export interface DisassociateTrafficDistributionGroupUserRequest { - /** - * @public - *

The identifier of the traffic distribution group. - * This can be the ID or the ARN if the API is being called in the Region where the traffic distribution group was created. - * The ARN must be provided if the call is from the replicated Region.

- */ - TrafficDistributionGroupId: string | undefined; - - /** - * @public - *

The identifier for the user. This can be the ID or the ARN of the user.

- */ - UserId: string | undefined; - - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; -} +export const ViewInputContentFilterSensitiveLog = (obj: ViewInputContent): any => ({ + ...obj, + ...(obj.Actions && { Actions: SENSITIVE_STRING }), +}); /** - * @public + * @internal */ -export interface DisassociateTrafficDistributionGroupUserResponse {} +export const CreateViewRequestFilterSensitiveLog = (obj: CreateViewRequest): any => ({ + ...obj, + ...(obj.Content && { Content: ViewInputContentFilterSensitiveLog(obj.Content) }), + ...(obj.Name && { Name: SENSITIVE_STRING }), +}); /** - * @public + * @internal */ -export interface DismissUserContactRequest { - /** - * @public - *

The identifier of the user account.

- */ - UserId: string | undefined; - - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the - * instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The identifier of the contact.

- */ - ContactId: string | undefined; -} +export const ViewContentFilterSensitiveLog = (obj: ViewContent): any => ({ + ...obj, + ...(obj.InputSchema && { InputSchema: SENSITIVE_STRING }), + ...(obj.Actions && { Actions: SENSITIVE_STRING }), +}); /** - * @public + * @internal */ -export interface DismissUserContactResponse {} +export const ViewFilterSensitiveLog = (obj: View): any => ({ + ...obj, + ...(obj.Name && { Name: SENSITIVE_STRING }), + ...(obj.Content && { Content: ViewContentFilterSensitiveLog(obj.Content) }), +}); /** - * @public + * @internal */ -export interface GetContactAttributesRequest { - /** - * @public - *

The identifier of the Amazon Connect instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The identifier of the initial contact.

- */ - InitialContactId: string | undefined; -} +export const CreateViewResponseFilterSensitiveLog = (obj: CreateViewResponse): any => ({ + ...obj, + ...(obj.View && { View: ViewFilterSensitiveLog(obj.View) }), +}); /** * @internal */ -export const CreateInstanceRequestFilterSensitiveLog = (obj: CreateInstanceRequest): any => ({ +export const CreateViewVersionResponseFilterSensitiveLog = (obj: CreateViewVersionResponse): any => ({ ...obj, - ...(obj.InstanceAlias && { InstanceAlias: SENSITIVE_STRING }), + ...(obj.View && { View: ViewFilterSensitiveLog(obj.View) }), }); /** @@ -7366,3 +7442,11 @@ export const DescribeInstanceResponseFilterSensitiveLog = (obj: DescribeInstance ...obj, ...(obj.Instance && { Instance: InstanceFilterSensitiveLog(obj.Instance) }), }); + +/** + * @internal + */ +export const DescribeViewResponseFilterSensitiveLog = (obj: DescribeViewResponse): any => ({ + ...obj, + ...(obj.View && { View: ViewFilterSensitiveLog(obj.View) }), +}); diff --git a/clients/client-connect/src/models/models_1.ts b/clients/client-connect/src/models/models_1.ts index 1c8709593fab4..b788dc084d908 100644 --- a/clients/client-connect/src/models/models_1.ts +++ b/clients/client-connect/src/models/models_1.ts @@ -4,7 +4,6 @@ import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from " import { ConnectServiceException as __BaseException } from "./ConnectServiceException"; import { ActionSummary, - AgentAvailabilityTimer, AgentConfig, AgentContactReference, AgentStatusReference, @@ -35,23 +34,18 @@ import { IntegrationType, LexBot, LexV2Bot, - MediaConcurrency, MonitorCapability, - OutboundCallerConfig, PhoneNumberCountryCode, PhoneNumberType, Prompt, Queue, QueueReference, - QueueStatus, QuickConnect, - QuickConnectConfig, QuickConnectType, Reference, ReferenceType, RoutingProfile, - RoutingProfileQueueConfig, - RuleAction, + RoutingProfileQueueReference, RulePublishStatus, SourceType, TaskTemplateConstraints, @@ -61,159 +55,261 @@ import { TrafficDistributionGroupStatus, UseCaseType, UserPhoneConfig, + ViewStatus, + ViewType, VocabularyLanguageCode, VocabularyState, } from "./models_0"; /** * @public + *

Contains information about a custom vocabulary.

*/ -export interface GetContactAttributesResponse { +export interface Vocabulary { /** * @public - *

Information about the attributes.

+ *

A unique name of the custom vocabulary.

*/ - Attributes?: Record; + Name: string | undefined; + + /** + * @public + *

The identifier of the custom vocabulary.

+ */ + Id: string | undefined; + + /** + * @public + *

The Amazon Resource Name (ARN) of the custom vocabulary.

+ */ + Arn: string | undefined; + + /** + * @public + *

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, see + * What is Amazon Transcribe? + *

+ */ + LanguageCode: VocabularyLanguageCode | string | undefined; + + /** + * @public + *

The current state of the custom vocabulary.

+ */ + State: VocabularyState | string | undefined; + + /** + * @public + *

The timestamp when the custom vocabulary was last modified.

+ */ + LastModifiedTime: Date | undefined; + + /** + * @public + *

The reason why the custom vocabulary was not created.

+ */ + FailureReason?: string; + + /** + * @public + *

The content of the custom vocabulary in plain-text format with a table of values. Each row + * in the table represents a word or a phrase, described with Phrase, IPA, + * SoundsLike, and DisplayAs fields. Separate the fields with TAB + * characters. For more information, see Create a custom + * vocabulary using a table.

+ */ + Content?: string; + + /** + * @public + *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

+ */ + Tags?: Record; } /** * @public - * @enum */ -export const CurrentMetricName = { - AGENTS_AFTER_CONTACT_WORK: "AGENTS_AFTER_CONTACT_WORK", - AGENTS_AVAILABLE: "AGENTS_AVAILABLE", - AGENTS_ERROR: "AGENTS_ERROR", - AGENTS_NON_PRODUCTIVE: "AGENTS_NON_PRODUCTIVE", - AGENTS_ONLINE: "AGENTS_ONLINE", - AGENTS_ON_CALL: "AGENTS_ON_CALL", - AGENTS_ON_CONTACT: "AGENTS_ON_CONTACT", - AGENTS_STAFFED: "AGENTS_STAFFED", - CONTACTS_IN_QUEUE: "CONTACTS_IN_QUEUE", - CONTACTS_SCHEDULED: "CONTACTS_SCHEDULED", - OLDEST_CONTACT_AGE: "OLDEST_CONTACT_AGE", - SLOTS_ACTIVE: "SLOTS_ACTIVE", - SLOTS_AVAILABLE: "SLOTS_AVAILABLE", -} as const; +export interface DescribeVocabularyResponse { + /** + * @public + *

A list of specific words that you want Contact Lens for Amazon Connect to recognize in your audio input. They are + * generally domain-specific words and phrases, words that Contact Lens is not recognizing, or proper + * nouns.

+ */ + Vocabulary: Vocabulary | undefined; +} /** * @public */ -export type CurrentMetricName = (typeof CurrentMetricName)[keyof typeof CurrentMetricName]; +export interface DisassociateApprovedOriginRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; -/** - * @public - * @enum - */ -export const Unit = { - COUNT: "COUNT", - PERCENT: "PERCENT", - SECONDS: "SECONDS", -} as const; + /** + * @public + *

The domain URL of the integrated application.

+ */ + Origin: string | undefined; +} /** * @public */ -export type Unit = (typeof Unit)[keyof typeof Unit]; +export interface DisassociateBotRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; -/** - * @public - *

Contains information about a real-time metric. For a description of each metric, see Real-time Metrics Definitions in the Amazon Connect Administrator - * Guide.

- */ -export interface CurrentMetric { /** * @public - *

The name of the metric.

+ *

Configuration information of an Amazon Lex bot.

*/ - Name?: CurrentMetricName | string; + LexBot?: LexBot; /** * @public - *

The unit for the metric.

+ *

The Amazon Lex V2 bot to disassociate from the instance.

*/ - Unit?: Unit | string; + LexV2Bot?: LexV2Bot; } /** * @public - *

Contains the filter to apply when retrieving metrics.

*/ -export interface Filters { +export interface DisassociateInstanceStorageConfigRequest { /** * @public - *

The queues to use to filter the metrics. You should specify at least one queue, and can - * specify up to 100 queues per request. The GetCurrentMetricsData API in particular - * requires a queue when you include a Filter in your request.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - Queues?: string[]; + InstanceId: string | undefined; /** * @public - *

The channel to use to filter the metrics.

+ *

The existing association identifier that uniquely identifies the resource type and storage config for the given instance ID.

*/ - Channels?: (Channel | string)[]; + AssociationId: string | undefined; /** * @public - *

A list of up to 100 routing profile IDs or ARNs.

+ *

A valid resource type.

*/ - RoutingProfiles?: string[]; + ResourceType: InstanceStorageResourceType | string | undefined; } /** * @public - * @enum */ -export const Grouping = { - CHANNEL: "CHANNEL", - QUEUE: "QUEUE", - ROUTING_PROFILE: "ROUTING_PROFILE", -} as const; +export interface DisassociateLambdaFunctionRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance..

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The Amazon Resource Name (ARN) of the Lambda function being disassociated.

+ */ + FunctionArn: string | undefined; +} /** * @public */ -export type Grouping = (typeof Grouping)[keyof typeof Grouping]; +export interface DisassociateLexBotRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The name of the Amazon Lex bot. Maximum character limit of 50.

+ */ + BotName: string | undefined; + + /** + * @public + *

The Amazon Web Services Region in which the Amazon Lex bot has been created.

+ */ + LexRegion: string | undefined; +} /** * @public - * @enum */ -export const SortOrder = { - ASCENDING: "ASCENDING", - DESCENDING: "DESCENDING", -} as const; +export interface DisassociatePhoneNumberContactFlowRequest { + /** + * @public + *

A unique identifier for the phone number.

+ */ + PhoneNumberId: string | undefined; + + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; +} /** * @public */ -export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]; +export interface DisassociateQueueQuickConnectsRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier for the queue.

+ */ + QueueId: string | undefined; + + /** + * @public + *

The quick connects to disassociate from the queue.

+ */ + QuickConnectIds: string[] | undefined; +} /** * @public - *

The way to sort the resulting response based on metrics. By default resources are sorted - * based on AGENTS_ONLINE, DESCENDING. The metric collection is sorted - * based on the input metrics.

*/ -export interface CurrentMetricSortCriteria { +export interface DisassociateRoutingProfileQueuesRequest { /** * @public - *

The current metric names.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - SortByMetric?: CurrentMetricName | string; + InstanceId: string | undefined; /** * @public - *

The way to sort.

+ *

The identifier of the routing profile.

*/ - SortOrder?: SortOrder | string; + RoutingProfileId: string | undefined; + + /** + * @public + *

The queues to disassociate from this routing profile.

+ */ + QueueReferences: RoutingProfileQueueReference[] | undefined; } /** * @public */ -export interface GetCurrentMetricDataRequest { +export interface DisassociateSecurityKeyRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -222,341 +318,236 @@ export interface GetCurrentMetricDataRequest { /** * @public - *

The filters to apply to returned metrics. You can filter up to the following limits:

- *
    - *
  • - *

    Queues: 100

    - *
  • - *
  • - *

    Routing profiles: 100

    - *
  • - *
  • - *

    Channels: 3 (VOICE, CHAT, and TASK channels are supported.)

    - *
  • - *
- *

Metric data is retrieved only for the resources associated with the queues or routing - * profiles, and by any channels included in the filter. (You cannot filter by both queue AND - * routing profile.) You can include both resource IDs and resource ARNs in the same request.

- *

Currently tagging is only supported on the resources that are passed in the filter.

+ *

The existing association identifier that uniquely identifies the resource type and storage config for the given instance ID.

*/ - Filters: Filters | undefined; + AssociationId: string | undefined; +} +/** + * @public + */ +export interface DisassociateTrafficDistributionGroupUserRequest { /** * @public - *

The grouping applied to the metrics returned. For example, when grouped by - * QUEUE, the metrics returned apply to each queue rather than aggregated for all - * queues.

- *
    - *
  • - *

    If you group by CHANNEL, you should include a Channels filter. - * VOICE, CHAT, and TASK channels are supported.

    - *
  • - *
  • - *

    If you group by ROUTING_PROFILE, you must include either a queue or routing - * profile filter. In addition, a routing profile filter is required for metrics - * CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and - * OLDEST_CONTACT_AGE.

    - *
  • - *
  • - *

    If no Grouping is included in the request, a summary of metrics is - * returned.

    - *
  • - *
+ *

The identifier of the traffic distribution group. + * This can be the ID or the ARN if the API is being called in the Region where the traffic distribution group was created. + * The ARN must be provided if the call is from the replicated Region.

*/ - Groupings?: (Grouping | string)[]; + TrafficDistributionGroupId: string | undefined; /** * @public - *

The metrics to retrieve. Specify the name and unit for each metric. The following metrics - * are available. For a description of all the metrics, see Real-time Metrics - * Definitions in the Amazon Connect Administrator Guide.

- *
- *
AGENTS_AFTER_CONTACT_WORK
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: ACW - *

- *
- *
AGENTS_AVAILABLE
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: Available - *

- *
- *
AGENTS_ERROR
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: Error - *

- *
- *
AGENTS_NON_PRODUCTIVE
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: NPT (Non-Productive Time) - *

- *
- *
AGENTS_ON_CALL
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: On - * contact - *

- *
- *
AGENTS_ON_CONTACT
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: On - * contact - *

- *
- *
AGENTS_ONLINE
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: Online - *

- *
- *
AGENTS_STAFFED
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: Staffed - *

- *
- *
CONTACTS_IN_QUEUE
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: In - * queue - *

- *
- *
CONTACTS_SCHEDULED
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: Scheduled - *

- *
- *
OLDEST_CONTACT_AGE
- *
- *

Unit: SECONDS

- *

When you use groupings, Unit says SECONDS and the Value is returned in SECONDS.

- *

When you do not use groupings, Unit says SECONDS but the Value is returned in - * MILLISECONDS. For example, if you get a response like this:

- *

- * \{ "Metric": \{ "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" \}, "Value": 24113.0 - * \}

- *

The actual OLDEST_CONTACT_AGE is 24 seconds.

- *

Name in real-time metrics report: Oldest - *

- *
- *
SLOTS_ACTIVE
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: Active - *

- *
- *
SLOTS_AVAILABLE
- *
- *

Unit: COUNT

- *

Name in real-time metrics report: Availability - *

- *
- *
+ *

The identifier for the user. This can be the ID or the ARN of the user.

*/ - CurrentMetrics: CurrentMetric[] | undefined; + UserId: string | undefined; /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

- *

The token expires after 5 minutes from the time it is created. Subsequent requests that use - * the token must use the same request parameters as the request that generated the token.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - NextToken?: string; + InstanceId: string | undefined; +} - /** - * @public - *

The maximum number of results to return per page.

- */ - MaxResults?: number; +/** + * @public + */ +export interface DisassociateTrafficDistributionGroupUserResponse {} +/** + * @public + */ +export interface DismissUserContactRequest { /** * @public - *

The way to sort the resulting response based on metrics. You can enter one sort criteria. By - * default resources are sorted based on AGENTS_ONLINE, DESCENDING. The - * metric collection is sorted based on the input metrics.

- *

Note the following:

- *
    - *
  • - *

    Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not - * supported.

    - *
  • - *
+ *

The identifier of the user account.

*/ - SortCriteria?: CurrentMetricSortCriteria[]; -} + UserId: string | undefined; -/** - * @public - *

Contains the data for a real-time metric.

- */ -export interface CurrentMetricData { /** * @public - *

Information about the metric.

+ *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the + * instance.

*/ - Metric?: CurrentMetric; + InstanceId: string | undefined; /** * @public - *

The value of the metric.

+ *

The identifier of the contact.

*/ - Value?: number; + ContactId: string | undefined; } /** * @public - *

Information about the routing profile assigned to the user.

*/ -export interface RoutingProfileReference { +export interface DismissUserContactResponse {} + +/** + * @public + */ +export interface GetContactAttributesRequest { /** * @public - *

The identifier of the routing profile.

+ *

The identifier of the Amazon Connect instance.

*/ - Id?: string; + InstanceId: string | undefined; /** * @public - *

The Amazon Resource Name (ARN) of the routing profile.

+ *

The identifier of the initial contact.

*/ - Arn?: string; + InitialContactId: string | undefined; } /** * @public - *

Contains information about the dimensions for a set of metrics.

*/ -export interface Dimensions { +export interface GetContactAttributesResponse { /** * @public - *

Information about the queue for which metrics are returned.

+ *

Information about the attributes.

*/ - Queue?: QueueReference; + Attributes?: Record; +} - /** - * @public - *

The channel used for grouping and filters.

- */ - Channel?: Channel | string; +/** + * @public + * @enum + */ +export const CurrentMetricName = { + AGENTS_AFTER_CONTACT_WORK: "AGENTS_AFTER_CONTACT_WORK", + AGENTS_AVAILABLE: "AGENTS_AVAILABLE", + AGENTS_ERROR: "AGENTS_ERROR", + AGENTS_NON_PRODUCTIVE: "AGENTS_NON_PRODUCTIVE", + AGENTS_ONLINE: "AGENTS_ONLINE", + AGENTS_ON_CALL: "AGENTS_ON_CALL", + AGENTS_ON_CONTACT: "AGENTS_ON_CONTACT", + AGENTS_STAFFED: "AGENTS_STAFFED", + CONTACTS_IN_QUEUE: "CONTACTS_IN_QUEUE", + CONTACTS_SCHEDULED: "CONTACTS_SCHEDULED", + OLDEST_CONTACT_AGE: "OLDEST_CONTACT_AGE", + SLOTS_ACTIVE: "SLOTS_ACTIVE", + SLOTS_AVAILABLE: "SLOTS_AVAILABLE", +} as const; - /** - * @public - *

Information about the routing profile assigned to the user.

- */ - RoutingProfile?: RoutingProfileReference; -} +/** + * @public + */ +export type CurrentMetricName = (typeof CurrentMetricName)[keyof typeof CurrentMetricName]; /** * @public - *

Contains information about a set of real-time metrics.

+ * @enum */ -export interface CurrentMetricResult { +export const Unit = { + COUNT: "COUNT", + PERCENT: "PERCENT", + SECONDS: "SECONDS", +} as const; + +/** + * @public + */ +export type Unit = (typeof Unit)[keyof typeof Unit]; + +/** + * @public + *

Contains information about a real-time metric. For a description of each metric, see Real-time Metrics Definitions in the Amazon Connect Administrator + * Guide.

+ */ +export interface CurrentMetric { /** * @public - *

The dimensions for the metrics.

+ *

The name of the metric.

*/ - Dimensions?: Dimensions; + Name?: CurrentMetricName | string; /** * @public - *

The set of metrics.

+ *

The unit for the metric.

*/ - Collections?: CurrentMetricData[]; + Unit?: Unit | string; } /** * @public + *

Contains the filter to apply when retrieving metrics.

*/ -export interface GetCurrentMetricDataResponse { - /** - * @public - *

If there are additional results, this is the token for the next set of results.

- *

The token expires after 5 minutes from the time it is created. Subsequent requests that use - * the token must use the same request parameters as the request that generated the token.

- */ - NextToken?: string; - +export interface Filters { /** * @public - *

Information about the real-time metrics.

+ *

The queues to use to filter the metrics. You should specify at least one queue, and can + * specify up to 100 queues per request. The GetCurrentMetricsData API in particular + * requires a queue when you include a Filter in your request.

*/ - MetricResults?: CurrentMetricResult[]; + Queues?: string[]; /** * @public - *

The time at which the metrics were retrieved and cached for pagination.

+ *

The channel to use to filter the metrics.

*/ - DataSnapshotTime?: Date; + Channels?: (Channel | string)[]; /** * @public - *

The total count of the result, regardless of the current page size.

+ *

A list of up to 100 routing profile IDs or ARNs.

*/ - ApproximateTotalCount?: number; + RoutingProfiles?: string[]; } /** * @public - *

Filters user data based on the contact information that is associated to the users. It - * contains a list of contact states.

+ * @enum */ -export interface ContactFilter { - /** - * @public - *

A list of up to 9 contact states.

- */ - ContactStates?: (ContactState | string)[]; -} +export const Grouping = { + CHANNEL: "CHANNEL", + QUEUE: "QUEUE", + ROUTING_PROFILE: "ROUTING_PROFILE", +} as const; /** * @public - *

A filter for the user data.

*/ -export interface UserDataFilters { - /** - * @public - *

A list of up to 100 queues or ARNs.

- */ - Queues?: string[]; +export type Grouping = (typeof Grouping)[keyof typeof Grouping]; - /** - * @public - *

A filter for the user data based on the contact information that is associated to the user. - * It contains a list of contact states.

- */ - ContactFilter?: ContactFilter; +/** + * @public + * @enum + */ +export const SortOrder = { + ASCENDING: "ASCENDING", + DESCENDING: "DESCENDING", +} as const; - /** - * @public - *

A list of up to 100 routing profile IDs or ARNs.

- */ - RoutingProfiles?: string[]; +/** + * @public + */ +export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]; +/** + * @public + *

The way to sort the resulting response based on metrics. By default resources are sorted + * based on AGENTS_ONLINE, DESCENDING. The metric collection is sorted + * based on the input metrics.

+ */ +export interface CurrentMetricSortCriteria { /** * @public - *

A list of up to 100 agent IDs or ARNs.

+ *

The current metric names.

*/ - Agents?: string[]; + SortByMetric?: CurrentMetricName | string; /** * @public - *

A UserHierarchyGroup ID or ARN.

+ *

The way to sort.

*/ - UserHierarchyGroups?: string[]; + SortOrder?: SortOrder | string; } /** * @public */ -export interface GetCurrentUserDataRequest { +export interface GetCurrentMetricDataRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -565,8 +556,7 @@ export interface GetCurrentUserDataRequest { /** * @public - *

The filters to apply to returned user data. You can filter up to the following - * limits:

+ *

The filters to apply to returned metrics. You can filter up to the following limits:

*
    *
  • *

    Queues: 100

    @@ -575,25 +565,144 @@ export interface GetCurrentUserDataRequest { *

    Routing profiles: 100

    *
  • *
  • - *

    Agents: 100

    + *

    Channels: 3 (VOICE, CHAT, and TASK channels are supported.)

    + *
  • + *
+ *

Metric data is retrieved only for the resources associated with the queues or routing + * profiles, and by any channels included in the filter. (You cannot filter by both queue AND + * routing profile.) You can include both resource IDs and resource ARNs in the same request.

+ *

Currently tagging is only supported on the resources that are passed in the filter.

+ */ + Filters: Filters | undefined; + + /** + * @public + *

The grouping applied to the metrics returned. For example, when grouped by + * QUEUE, the metrics returned apply to each queue rather than aggregated for all + * queues.

+ *
    + *
  • + *

    If you group by CHANNEL, you should include a Channels filter. + * VOICE, CHAT, and TASK channels are supported.

    *
  • *
  • - *

    Contact states: 9

    + *

    If you group by ROUTING_PROFILE, you must include either a queue or routing + * profile filter. In addition, a routing profile filter is required for metrics + * CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and + * OLDEST_CONTACT_AGE.

    *
  • *
  • - *

    User hierarchy groups: 1

    + *

    If no Grouping is included in the request, a summary of metrics is + * returned.

    *
  • *
- *

The user data is retrieved for only the specified values/resources in the filter. A maximum - * of one filter can be passed from queues, routing profiles, agents, and user hierarchy groups.

- *

Currently tagging is only supported on the resources that are passed in the filter.

*/ - Filters: UserDataFilters | undefined; + Groupings?: (Grouping | string)[]; + + /** + * @public + *

The metrics to retrieve. Specify the name and unit for each metric. The following metrics + * are available. For a description of all the metrics, see Real-time Metrics + * Definitions in the Amazon Connect Administrator Guide.

+ *
+ *
AGENTS_AFTER_CONTACT_WORK
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: ACW + *

+ *
+ *
AGENTS_AVAILABLE
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: Available + *

+ *
+ *
AGENTS_ERROR
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: Error + *

+ *
+ *
AGENTS_NON_PRODUCTIVE
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: NPT (Non-Productive Time) + *

+ *
+ *
AGENTS_ON_CALL
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: On + * contact + *

+ *
+ *
AGENTS_ON_CONTACT
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: On + * contact + *

+ *
+ *
AGENTS_ONLINE
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: Online + *

+ *
+ *
AGENTS_STAFFED
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: Staffed + *

+ *
+ *
CONTACTS_IN_QUEUE
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: In + * queue + *

+ *
+ *
CONTACTS_SCHEDULED
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: Scheduled + *

+ *
+ *
OLDEST_CONTACT_AGE
+ *
+ *

Unit: SECONDS

+ *

When you use groupings, Unit says SECONDS and the Value is returned in SECONDS.

+ *

When you do not use groupings, Unit says SECONDS but the Value is returned in + * MILLISECONDS. For example, if you get a response like this:

+ *

+ * \{ "Metric": \{ "Name": "OLDEST_CONTACT_AGE", "Unit": "SECONDS" \}, "Value": 24113.0 + * \}

+ *

The actual OLDEST_CONTACT_AGE is 24 seconds.

+ *

Name in real-time metrics report: Oldest + *

+ *
+ *
SLOTS_ACTIVE
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: Active + *

+ *
+ *
SLOTS_AVAILABLE
+ *
+ *

Unit: COUNT

+ *

Name in real-time metrics report: Availability + *

+ *
+ *
+ */ + CurrentMetrics: CurrentMetric[] | undefined; /** * @public *

The token for the next set of results. Use the value returned in the previous * response in the next request to retrieve the next set of results.

+ *

The token expires after 5 minutes from the time it is created. Subsequent requests that use + * the token must use the same request parameters as the request that generated the token.

*/ NextToken?: string; @@ -602,70 +711,295 @@ export interface GetCurrentUserDataRequest { *

The maximum number of results to return per page.

*/ MaxResults?: number; + + /** + * @public + *

The way to sort the resulting response based on metrics. You can enter one sort criteria. By + * default resources are sorted based on AGENTS_ONLINE, DESCENDING. The + * metric collection is sorted based on the input metrics.

+ *

Note the following:

+ *
    + *
  • + *

    Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not + * supported.

    + *
  • + *
+ */ + SortCriteria?: CurrentMetricSortCriteria[]; } /** * @public - *

Information about the hierarchy group.

+ *

Contains the data for a real-time metric.

*/ -export interface HierarchyGroupSummaryReference { +export interface CurrentMetricData { /** * @public - *

The unique identifier for the hierarchy group.

+ *

Information about the metric.

*/ - Id?: string; + Metric?: CurrentMetric; /** * @public - *

The Amazon Resource Name (ARN) for the hierarchy group.

+ *

The value of the metric.

*/ - Arn?: string; + Value?: number; } /** * @public - *

Information about the levels in the hierarchy group.

+ *

Information about the routing profile assigned to the user.

*/ -export interface HierarchyPathReference { +export interface RoutingProfileReference { /** * @public - *

Information about level one.

+ *

The identifier of the routing profile.

*/ - LevelOne?: HierarchyGroupSummaryReference; + Id?: string; /** * @public - *

Information about level two.

+ *

The Amazon Resource Name (ARN) of the routing profile.

*/ - LevelTwo?: HierarchyGroupSummaryReference; + Arn?: string; +} +/** + * @public + *

Contains information about the dimensions for a set of metrics.

+ */ +export interface Dimensions { /** * @public - *

Information about level three.

+ *

Information about the queue for which metrics are returned.

*/ - LevelThree?: HierarchyGroupSummaryReference; + Queue?: QueueReference; /** * @public - *

Information about level four.

+ *

The channel used for grouping and filters.

*/ - LevelFour?: HierarchyGroupSummaryReference; + Channel?: Channel | string; /** * @public - *

Information about level five.

+ *

Information about the routing profile assigned to the user.

*/ - LevelFive?: HierarchyGroupSummaryReference; + RoutingProfile?: RoutingProfileReference; } /** * @public - *

Information about the user.

+ *

Contains information about a set of real-time metrics.

*/ -export interface UserReference { +export interface CurrentMetricResult { /** * @public - *

The unique identifier for the user.

+ *

The dimensions for the metrics.

+ */ + Dimensions?: Dimensions; + + /** + * @public + *

The set of metrics.

+ */ + Collections?: CurrentMetricData[]; +} + +/** + * @public + */ +export interface GetCurrentMetricDataResponse { + /** + * @public + *

If there are additional results, this is the token for the next set of results.

+ *

The token expires after 5 minutes from the time it is created. Subsequent requests that use + * the token must use the same request parameters as the request that generated the token.

+ */ + NextToken?: string; + + /** + * @public + *

Information about the real-time metrics.

+ */ + MetricResults?: CurrentMetricResult[]; + + /** + * @public + *

The time at which the metrics were retrieved and cached for pagination.

+ */ + DataSnapshotTime?: Date; + + /** + * @public + *

The total count of the result, regardless of the current page size.

+ */ + ApproximateTotalCount?: number; +} + +/** + * @public + *

Filters user data based on the contact information that is associated to the users. It + * contains a list of contact states.

+ */ +export interface ContactFilter { + /** + * @public + *

A list of up to 9 contact states.

+ */ + ContactStates?: (ContactState | string)[]; +} + +/** + * @public + *

A filter for the user data.

+ */ +export interface UserDataFilters { + /** + * @public + *

A list of up to 100 queues or ARNs.

+ */ + Queues?: string[]; + + /** + * @public + *

A filter for the user data based on the contact information that is associated to the user. + * It contains a list of contact states.

+ */ + ContactFilter?: ContactFilter; + + /** + * @public + *

A list of up to 100 routing profile IDs or ARNs.

+ */ + RoutingProfiles?: string[]; + + /** + * @public + *

A list of up to 100 agent IDs or ARNs.

+ */ + Agents?: string[]; + + /** + * @public + *

A UserHierarchyGroup ID or ARN.

+ */ + UserHierarchyGroups?: string[]; +} + +/** + * @public + */ +export interface GetCurrentUserDataRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The filters to apply to returned user data. You can filter up to the following + * limits:

+ *
    + *
  • + *

    Queues: 100

    + *
  • + *
  • + *

    Routing profiles: 100

    + *
  • + *
  • + *

    Agents: 100

    + *
  • + *
  • + *

    Contact states: 9

    + *
  • + *
  • + *

    User hierarchy groups: 1

    + *
  • + *
+ *

The user data is retrieved for only the specified values/resources in the filter. A maximum + * of one filter can be passed from queues, routing profiles, agents, and user hierarchy groups.

+ *

Currently tagging is only supported on the resources that are passed in the filter.

+ */ + Filters: UserDataFilters | undefined; + + /** + * @public + *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

+ */ + NextToken?: string; + + /** + * @public + *

The maximum number of results to return per page.

+ */ + MaxResults?: number; +} + +/** + * @public + *

Information about the hierarchy group.

+ */ +export interface HierarchyGroupSummaryReference { + /** + * @public + *

The unique identifier for the hierarchy group.

+ */ + Id?: string; + + /** + * @public + *

The Amazon Resource Name (ARN) for the hierarchy group.

+ */ + Arn?: string; +} + +/** + * @public + *

Information about the levels in the hierarchy group.

+ */ +export interface HierarchyPathReference { + /** + * @public + *

Information about level one.

+ */ + LevelOne?: HierarchyGroupSummaryReference; + + /** + * @public + *

Information about level two.

+ */ + LevelTwo?: HierarchyGroupSummaryReference; + + /** + * @public + *

Information about level three.

+ */ + LevelThree?: HierarchyGroupSummaryReference; + + /** + * @public + *

Information about level four.

+ */ + LevelFour?: HierarchyGroupSummaryReference; + + /** + * @public + *

Information about level five.

+ */ + LevelFive?: HierarchyGroupSummaryReference; +} + +/** + * @public + *

Information about the user.

+ */ +export interface UserReference { + /** + * @public + *

The unique identifier for the user.

*/ Id?: string; @@ -1696,671 +2030,119 @@ export interface GetMetricDataV2Request { *
*

Valid metric filter key: DISCONNECT_REASON *

- *

Unit: Count

- *

Valid groupings and filters: Queue, Channel, Routing Profile

- *
- *
SUM_RETRY_CALLBACK_ATTEMPTS
- *
- *

Unit: Count

- *

Valid groupings and filters: Queue, Channel, Routing Profile

- *
- * - */ - Metrics: MetricV2[] | undefined; - - /** - * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

- */ - NextToken?: string; - - /** - * @public - *

The maximum number of results to return per page.

- */ - MaxResults?: number; -} - -/** - * @public - *

Contains the name, thresholds, and metric filters.

- */ -export interface MetricDataV2 { - /** - * @public - *

The metric name, thresholds, and metric filters of the returned metric.

- */ - Metric?: MetricV2; - - /** - * @public - *

The corresponding value of the metric returned in the response.

- */ - Value?: number; -} - -/** - * @public - *

Contains information about the metric results.

- */ -export interface MetricResultV2 { - /** - * @public - *

The dimension for the metrics.

- */ - Dimensions?: Record; - - /** - * @public - *

The set of metrics.

- */ - Collections?: MetricDataV2[]; -} - -/** - * @public - */ -export interface GetMetricDataV2Response { - /** - * @public - *

If there are additional results, this is the token for the next set of results.

- */ - NextToken?: string; - - /** - * @public - *

Information about the metrics requested in the API request If no grouping is specified, a - * summary of metric data is returned.

- */ - MetricResults?: MetricResultV2[]; -} - -/** - * @public - */ -export interface GetPromptFileRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

A unique identifier for the prompt.

- */ - PromptId: string | undefined; -} - -/** - * @public - */ -export interface GetPromptFileResponse { - /** - * @public - *

A generated URL to the prompt that can be given to an unauthorized user so they can access - * the prompt in S3.

- */ - PromptPresignedUrl?: string; -} - -/** - * @public - */ -export interface GetTaskTemplateRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

A unique identifier for the task template.

- */ - TaskTemplateId: string | undefined; - - /** - * @public - *

The system generated version of a task template that is associated with a task, when the - * task is created.

- */ - SnapshotVersion?: string; -} - -/** - * @public - */ -export interface GetTaskTemplateResponse { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId?: string; - - /** - * @public - *

A unique identifier for the task template.

- */ - Id: string | undefined; - - /** - * @public - *

The Amazon Resource Name (ARN).

- */ - Arn: string | undefined; - - /** - * @public - *

The name of the task template.

- */ - Name: string | undefined; - - /** - * @public - *

The description of the task template.

- */ - Description?: string; - - /** - * @public - *

The identifier of the flow that runs by default when a task is created by referencing this template.

- */ - ContactFlowId?: string; - - /** - * @public - *

Constraints that are applicable to the fields listed.

- */ - Constraints?: TaskTemplateConstraints; - - /** - * @public - *

The default values for fields when a task is created by referencing this template.

- */ - Defaults?: TaskTemplateDefaults; - - /** - * @public - *

Fields that are part of the template.

- */ - Fields?: TaskTemplateField[]; - - /** - * @public - *

Marks a template as ACTIVE or INACTIVE for a task to refer to it. - * Tasks can only be created from ACTIVE templates. - * If a template is marked as INACTIVE, then a task that refers to this template cannot be created.

- */ - Status?: TaskTemplateStatus | string; - - /** - * @public - *

The timestamp when the task template was last modified.

- */ - LastModifiedTime?: Date; - - /** - * @public - *

The timestamp when the task template was created.

- */ - CreatedTime?: Date; - - /** - * @public - *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

- */ - Tags?: Record; -} - -/** - * @public - */ -export interface GetTrafficDistributionRequest { - /** - * @public - *

The identifier of the traffic distribution group.

- */ - Id: string | undefined; -} - -/** - * @public - *

The distribution of sign in traffic between the instance and its replica(s).

- */ -export interface SignInDistribution { - /** - * @public - *

The Amazon Web Services Region of the sign in distribution.

- */ - Region: string | undefined; - - /** - * @public - *

Whether sign in distribution is enabled.

- */ - Enabled: boolean | undefined; -} - -/** - * @public - *

The distribution of allowing signing in to the instance and its replica(s).

- */ -export interface SignInConfig { - /** - * @public - *

Information about traffic distributions.

- */ - Distributions: SignInDistribution[] | undefined; -} - -/** - * @public - *

The distribution of traffic between the instance and its replicas.

- */ -export interface TelephonyConfig { - /** - * @public - *

Information about traffic distributions.

- */ - Distributions: Distribution[] | undefined; -} - -/** - * @public - */ -export interface GetTrafficDistributionResponse { - /** - * @public - *

The distribution of traffic between the instance and its replicas.

- */ - TelephonyConfig?: TelephonyConfig; - - /** - * @public - *

The identifier of the traffic distribution group. - * This can be the ID or the ARN if the API is being called in the Region where the traffic distribution group was created. - * The ARN must be provided if the call is from the replicated Region.

- */ - Id?: string; - - /** - * @public - *

The Amazon Resource Name (ARN) of the traffic distribution group.

- */ - Arn?: string; - - /** - * @public - *

The distribution of allowing signing in to the instance and its replica(s).

- */ - SignInConfig?: SignInConfig; - - /** - * @public - *

The distribution of agents between the instance and its replica(s).

- */ - AgentConfig?: AgentConfig; -} - -/** - * @public - */ -export interface ListAgentStatusRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

- */ - NextToken?: string; - - /** - * @public - *

The maximum number of results to return per page.

- */ - MaxResults?: number; - - /** - * @public - *

Available agent status types.

- */ - AgentStatusTypes?: (AgentStatusType | string)[]; -} - -/** - * @public - */ -export interface ListAgentStatusResponse { - /** - * @public - *

If there are additional results, this is the token for the next set of results.

- */ - NextToken?: string; - - /** - * @public - *

A summary of agent statuses.

- */ - AgentStatusSummaryList?: AgentStatusSummary[]; -} - -/** - * @public - */ -export interface ListApprovedOriginsRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

- */ - NextToken?: string; - - /** - * @public - *

The maximum number of results to return per page.

- */ - MaxResults?: number; -} - -/** - * @public - */ -export interface ListApprovedOriginsResponse { - /** - * @public - *

The approved origins.

- */ - Origins?: string[]; - - /** - * @public - *

If there are additional results, this is the token for the next set of results.

- */ - NextToken?: string; -} - -/** - * @public - * @enum - */ -export const LexVersion = { - V1: "V1", - V2: "V2", -} as const; - -/** - * @public - */ -export type LexVersion = (typeof LexVersion)[keyof typeof LexVersion]; - -/** - * @public - */ -export interface ListBotsRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

- */ - NextToken?: string; - - /** - * @public - *

The maximum number of results to return per page.

- */ - MaxResults?: number; - - /** - * @public - *

The version of Amazon Lex or Amazon Lex V2.

- */ - LexVersion: LexVersion | string | undefined; -} - -/** - * @public - *

Configuration information of an Amazon Lex or Amazon Lex V2 bot.

- */ -export interface LexBotConfig { - /** - * @public - *

Configuration information of an Amazon Lex bot.

- */ - LexBot?: LexBot; - - /** - * @public - *

Configuration information of an Amazon Lex V2 bot.

- */ - LexV2Bot?: LexV2Bot; -} - -/** - * @public - */ -export interface ListBotsResponse { - /** - * @public - *

The names and Amazon Web Services Regions of the Amazon Lex or Amazon Lex V2 bots - * associated with the specified instance.

- */ - LexBots?: LexBotConfig[]; - - /** - * @public - *

If there are additional results, this is the token for the next set of results.

- */ - NextToken?: string; -} - -/** - * @public - */ -export interface ListContactEvaluationsRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The identifier of the contact in this instance of Amazon Connect.

- */ - ContactId: string | undefined; - - /** - * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

- * - *

This is not expected to be set because the value returned in the previous response is - * always null.

- *
- */ - NextToken?: string; -} - -/** - * @public - *

Summary information about a contact evaluation.

- */ -export interface EvaluationSummary { - /** - * @public - *

A unique identifier for the contact evaluation.

- */ - EvaluationId: string | undefined; - - /** - * @public - *

The Amazon Resource Name (ARN) for the contact evaluation resource.

- */ - EvaluationArn: string | undefined; - - /** - * @public - *

A title of the evaluation form.

- */ - EvaluationFormTitle: string | undefined; - - /** - * @public - *

The unique identifier for the evaluation form.

- */ - EvaluationFormId: string | undefined; - - /** - * @public - *

The status of the contact evaluation.

+ *

Unit: Count

+ *

Valid groupings and filters: Queue, Channel, Routing Profile

+ * + *
SUM_RETRY_CALLBACK_ATTEMPTS
+ *
+ *

Unit: Count

+ *

Valid groupings and filters: Queue, Channel, Routing Profile

+ *
+ * */ - Status: EvaluationStatus | string | undefined; + Metrics: MetricV2[] | undefined; /** * @public - *

The Amazon Resource Name (ARN) of the user who last updated the evaluation.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ - EvaluatorArn: string | undefined; + NextToken?: string; /** * @public - *

The overall score of the contact evaluation.

+ *

The maximum number of results to return per page.

*/ - Score?: EvaluationScore; + MaxResults?: number; +} +/** + * @public + *

Contains the name, thresholds, and metric filters.

+ */ +export interface MetricDataV2 { /** * @public - *

The timestamp for when the evaluation was created.

+ *

The metric name, thresholds, and metric filters of the returned metric.

*/ - CreatedTime: Date | undefined; + Metric?: MetricV2; /** * @public - *

The timestamp for when the evaluation was last updated.

+ *

The corresponding value of the metric returned in the response.

*/ - LastModifiedTime: Date | undefined; + Value?: number; } /** * @public + *

Contains information about the metric results.

*/ -export interface ListContactEvaluationsResponse { +export interface MetricResultV2 { /** * @public - *

Provides details about a list of contact evaluations belonging to an instance.

+ *

The dimension for the metrics.

*/ - EvaluationSummaryList: EvaluationSummary[] | undefined; + Dimensions?: Record; /** * @public - *

If there are additional results, this is the token for the next set of results.

- * - *

This is always returned as null in the response.

- *
+ *

The set of metrics.

*/ - NextToken?: string; + Collections?: MetricDataV2[]; } /** * @public */ -export interface ListContactFlowModulesRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - +export interface GetMetricDataV2Response { /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

If there are additional results, this is the token for the next set of results.

*/ NextToken?: string; /** * @public - *

The maximum number of results to return per page.

- */ - MaxResults?: number; - - /** - * @public - *

The state of the flow module.

+ *

Information about the metrics requested in the API request If no grouping is specified, a + * summary of metric data is returned.

*/ - ContactFlowModuleState?: ContactFlowModuleState | string; + MetricResults?: MetricResultV2[]; } /** * @public - *

Contains summary information about a flow.

*/ -export interface ContactFlowModuleSummary { - /** - * @public - *

The identifier of the flow module.

- */ - Id?: string; - - /** - * @public - *

The Amazon Resource Name (ARN) of the flow module.

- */ - Arn?: string; - +export interface GetPromptFileRequest { /** * @public - *

The name of the flow module.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - Name?: string; + InstanceId: string | undefined; /** * @public - *

The type of flow module.

+ *

A unique identifier for the prompt.

*/ - State?: ContactFlowModuleState | string; + PromptId: string | undefined; } /** * @public */ -export interface ListContactFlowModulesResponse { - /** - * @public - *

Information about the flow module.

- */ - ContactFlowModulesSummaryList?: ContactFlowModuleSummary[]; - +export interface GetPromptFileResponse { /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

A generated URL to the prompt that can be given to an unauthorized user so they can access + * the prompt in S3.

*/ - NextToken?: string; + PromptPresignedUrl?: string; } /** * @public */ -export interface ListContactFlowsRequest { +export interface GetTaskTemplateRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -2369,412 +2151,299 @@ export interface ListContactFlowsRequest { /** * @public - *

The type of flow.

- */ - ContactFlowTypes?: (ContactFlowType | string)[]; - - /** - * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

A unique identifier for the task template.

*/ - NextToken?: string; + TaskTemplateId: string | undefined; /** * @public - *

The maximum number of results to return per page. The default MaxResult size is 100.

+ *

The system generated version of a task template that is associated with a task, when the + * task is created.

*/ - MaxResults?: number; + SnapshotVersion?: string; } /** * @public - *

Contains summary information about a flow.

- *

You can also create and update flows using the Amazon Connect - * Flow language.

*/ -export interface ContactFlowSummary { +export interface GetTaskTemplateResponse { /** * @public - *

The identifier of the flow.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - Id?: string; + InstanceId?: string; /** * @public - *

The Amazon Resource Name (ARN) of the flow.

+ *

A unique identifier for the task template.

*/ - Arn?: string; + Id: string | undefined; /** * @public - *

The name of the flow.

+ *

The Amazon Resource Name (ARN).

*/ - Name?: string; + Arn: string | undefined; /** * @public - *

The type of flow.

+ *

The name of the task template.

*/ - ContactFlowType?: ContactFlowType | string; + Name: string | undefined; /** * @public - *

The type of flow.

+ *

The description of the task template.

*/ - ContactFlowState?: ContactFlowState | string; -} + Description?: string; -/** - * @public - */ -export interface ListContactFlowsResponse { /** * @public - *

Information about the flows.

+ *

The identifier of the flow that runs by default when a task is created by referencing this template.

*/ - ContactFlowSummaryList?: ContactFlowSummary[]; + ContactFlowId?: string; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

Constraints that are applicable to the fields listed.

*/ - NextToken?: string; -} + Constraints?: TaskTemplateConstraints; -/** - * @public - */ -export interface ListContactReferencesRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The default values for fields when a task is created by referencing this template.

*/ - InstanceId: string | undefined; + Defaults?: TaskTemplateDefaults; /** * @public - *

The identifier of the initial contact.

+ *

Fields that are part of the template.

*/ - ContactId: string | undefined; + Fields?: TaskTemplateField[]; /** * @public - *

The type of reference.

+ *

Marks a template as ACTIVE or INACTIVE for a task to refer to it. + * Tasks can only be created from ACTIVE templates. + * If a template is marked as INACTIVE, then a task that refers to this template cannot be created.

*/ - ReferenceTypes: (ReferenceType | string)[] | undefined; + Status?: TaskTemplateStatus | string; /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

- * - *

This is not expected to be set, because the value returned in the previous response is - * always null.

- *
+ *

The timestamp when the task template was last modified.

*/ - NextToken?: string; -} - -/** - * @public - * @enum - */ -export const ReferenceStatus = { - APPROVED: "APPROVED", - REJECTED: "REJECTED", -} as const; - -/** - * @public - */ -export type ReferenceStatus = (typeof ReferenceStatus)[keyof typeof ReferenceStatus]; + LastModifiedTime?: Date; -/** - * @public - *

Information about a reference when the referenceType is - * ATTACHMENT. Otherwise, null.

- */ -export interface AttachmentReference { /** * @public - *

Identifier of the attachment reference.

+ *

The timestamp when the task template was created.

*/ - Name?: string; + CreatedTime?: Date; /** * @public - *

The location path of the attachment reference.

+ *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

*/ - Value?: string; + Tags?: Record; +} +/** + * @public + */ +export interface GetTrafficDistributionRequest { /** * @public - *

Status of the attachment reference type.

+ *

The identifier of the traffic distribution group.

*/ - Status?: ReferenceStatus | string; + Id: string | undefined; } /** * @public - *

Information about a reference when the referenceType is DATE. - * Otherwise, null.

+ *

The distribution of sign in traffic between the instance and its replica(s).

*/ -export interface DateReference { +export interface SignInDistribution { /** * @public - *

Identifier of the date reference.

+ *

The Amazon Web Services Region of the sign in distribution.

*/ - Name?: string; + Region: string | undefined; /** * @public - *

A valid date.

+ *

Whether sign in distribution is enabled.

*/ - Value?: string; + Enabled: boolean | undefined; } /** * @public - *

Information about a reference when the referenceType is EMAIL. - * Otherwise, null.

+ *

The distribution of allowing signing in to the instance and its replica(s).

*/ -export interface EmailReference { +export interface SignInConfig { /** * @public - *

Identifier of the email reference.

+ *

Information about traffic distributions.

*/ - Name?: string; + Distributions: SignInDistribution[] | undefined; +} +/** + * @public + *

The distribution of traffic between the instance and its replicas.

+ */ +export interface TelephonyConfig { /** * @public - *

A valid email address.

+ *

Information about traffic distributions.

*/ - Value?: string; + Distributions: Distribution[] | undefined; } /** * @public - *

Information about a reference when the referenceType is NUMBER. - * Otherwise, null.

*/ -export interface NumberReference { +export interface GetTrafficDistributionResponse { /** * @public - *

Identifier of the number reference.

+ *

The distribution of traffic between the instance and its replicas.

*/ - Name?: string; + TelephonyConfig?: TelephonyConfig; /** * @public - *

A valid number.

+ *

The identifier of the traffic distribution group. + * This can be the ID or the ARN if the API is being called in the Region where the traffic distribution group was created. + * The ARN must be provided if the call is from the replicated Region.

*/ - Value?: string; -} + Id?: string; -/** - * @public - *

Information about a reference when the referenceType is STRING. - * Otherwise, null.

- */ -export interface StringReference { /** * @public - *

Identifier of the string reference.

+ *

The Amazon Resource Name (ARN) of the traffic distribution group.

*/ - Name?: string; + Arn?: string; /** * @public - *

A valid string.

+ *

The distribution of allowing signing in to the instance and its replica(s).

*/ - Value?: string; + SignInConfig?: SignInConfig; + + /** + * @public + *

The distribution of agents between the instance and its replica(s).

+ */ + AgentConfig?: AgentConfig; } /** * @public - *

The URL reference.

*/ -export interface UrlReference { +export interface ListAgentStatusRequest { /** * @public - *

Identifier of the URL reference.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - Name?: string; + InstanceId: string | undefined; /** * @public - *

A valid URL.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ - Value?: string; -} - -/** - * @public - *

Contains summary information about a reference. ReferenceSummary contains only - * one non null field between the URL and attachment based on the reference type.

- */ -export type ReferenceSummary = - | ReferenceSummary.AttachmentMember - | ReferenceSummary.DateMember - | ReferenceSummary.EmailMember - | ReferenceSummary.NumberMember - | ReferenceSummary.StringMember - | ReferenceSummary.UrlMember - | ReferenceSummary.$UnknownMember; + NextToken?: string; -/** - * @public - */ -export namespace ReferenceSummary { /** * @public - *

Information about the reference when the referenceType is URL. - * Otherwise, null.

+ *

The maximum number of results to return per page.

*/ - export interface UrlMember { - Url: UrlReference; - Attachment?: never; - String?: never; - Number?: never; - Date?: never; - Email?: never; - $unknown?: never; - } + MaxResults?: number; /** * @public - *

Information about the reference when the referenceType is - * ATTACHMENT. Otherwise, null.

+ *

Available agent status types.

*/ - export interface AttachmentMember { - Url?: never; - Attachment: AttachmentReference; - String?: never; - Number?: never; - Date?: never; - Email?: never; - $unknown?: never; - } + AgentStatusTypes?: (AgentStatusType | string)[]; +} +/** + * @public + */ +export interface ListAgentStatusResponse { /** * @public - *

Information about a reference when the referenceType is STRING. - * Otherwise, null.

+ *

If there are additional results, this is the token for the next set of results.

*/ - export interface StringMember { - Url?: never; - Attachment?: never; - String: StringReference; - Number?: never; - Date?: never; - Email?: never; - $unknown?: never; - } + NextToken?: string; /** * @public - *

Information about a reference when the referenceType is NUMBER. - * Otherwise, null.

+ *

A summary of agent statuses.

*/ - export interface NumberMember { - Url?: never; - Attachment?: never; - String?: never; - Number: NumberReference; - Date?: never; - Email?: never; - $unknown?: never; - } + AgentStatusSummaryList?: AgentStatusSummary[]; +} +/** + * @public + */ +export interface ListApprovedOriginsRequest { /** * @public - *

Information about a reference when the referenceType is DATE. - * Otherwise, null.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - export interface DateMember { - Url?: never; - Attachment?: never; - String?: never; - Number?: never; - Date: DateReference; - Email?: never; - $unknown?: never; - } + InstanceId: string | undefined; /** * @public - *

Information about a reference when the referenceType is EMAIL. - * Otherwise, null.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ - export interface EmailMember { - Url?: never; - Attachment?: never; - String?: never; - Number?: never; - Date?: never; - Email: EmailReference; - $unknown?: never; - } + NextToken?: string; /** * @public + *

The maximum number of results to return per page.

*/ - export interface $UnknownMember { - Url?: never; - Attachment?: never; - String?: never; - Number?: never; - Date?: never; - Email?: never; - $unknown: [string, any]; - } - - export interface Visitor { - Url: (value: UrlReference) => T; - Attachment: (value: AttachmentReference) => T; - String: (value: StringReference) => T; - Number: (value: NumberReference) => T; - Date: (value: DateReference) => T; - Email: (value: EmailReference) => T; - _: (name: string, value: any) => T; - } - - export const visit = (value: ReferenceSummary, visitor: Visitor): T => { - if (value.Url !== undefined) return visitor.Url(value.Url); - if (value.Attachment !== undefined) return visitor.Attachment(value.Attachment); - if (value.String !== undefined) return visitor.String(value.String); - if (value.Number !== undefined) return visitor.Number(value.Number); - if (value.Date !== undefined) return visitor.Date(value.Date); - if (value.Email !== undefined) return visitor.Email(value.Email); - return visitor._(value.$unknown[0], value.$unknown[1]); - }; + MaxResults?: number; } /** * @public */ -export interface ListContactReferencesResponse { +export interface ListApprovedOriginsResponse { /** * @public - *

Information about the flows.

+ *

The approved origins.

*/ - ReferenceSummaryList?: ReferenceSummary[]; + Origins?: string[]; /** * @public *

If there are additional results, this is the token for the next set of results.

- * - *

This is always returned as null in the response.

- *
*/ NextToken?: string; } /** * @public + * @enum */ -export interface ListDefaultVocabulariesRequest { +export const LexVersion = { + V1: "V1", + V2: "V2", +} as const; + +/** + * @public + */ +export type LexVersion = (typeof LexVersion)[keyof typeof LexVersion]; + +/** + * @public + */ +export interface ListBotsRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -2783,11 +2452,10 @@ export interface ListDefaultVocabulariesRequest { /** * @public - *

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, see - * What is Amazon Transcribe? - *

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ - LanguageCode?: VocabularyLanguageCode | string; + NextToken?: string; /** * @public @@ -2797,53 +2465,39 @@ export interface ListDefaultVocabulariesRequest { /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

The version of Amazon Lex or Amazon Lex V2.

*/ - NextToken?: string; + LexVersion: LexVersion | string | undefined; } /** * @public - *

Contains information about a default vocabulary.

+ *

Configuration information of an Amazon Lex or Amazon Lex V2 bot.

*/ -export interface DefaultVocabulary { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, see - * What is Amazon Transcribe? - *

- */ - LanguageCode: VocabularyLanguageCode | string | undefined; - +export interface LexBotConfig { /** * @public - *

The identifier of the custom vocabulary.

+ *

Configuration information of an Amazon Lex bot.

*/ - VocabularyId: string | undefined; + LexBot?: LexBot; /** * @public - *

A unique name of the custom vocabulary.

+ *

Configuration information of an Amazon Lex V2 bot.

*/ - VocabularyName: string | undefined; + LexV2Bot?: LexV2Bot; } /** * @public */ -export interface ListDefaultVocabulariesResponse { +export interface ListBotsResponse { /** * @public - *

A list of default vocabularies.

+ *

The names and Amazon Web Services Regions of the Amazon Lex or Amazon Lex V2 bots + * associated with the specified instance.

*/ - DefaultVocabularyList: DefaultVocabulary[] | undefined; + LexBots?: LexBotConfig[]; /** * @public @@ -2855,7 +2509,7 @@ export interface ListDefaultVocabulariesResponse { /** * @public */ -export interface ListEvaluationFormsRequest { +export interface ListContactEvaluationsRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -2864,206 +2518,256 @@ export interface ListEvaluationFormsRequest { /** * @public - *

The maximum number of results to return per page.

+ *

The identifier of the contact in this instance of Amazon Connect.

*/ - MaxResults?: number; + ContactId: string | undefined; /** * @public *

The token for the next set of results. Use the value returned in the previous * response in the next request to retrieve the next set of results.

+ * + *

This is not expected to be set because the value returned in the previous response is + * always null.

+ *
*/ NextToken?: string; } /** * @public - *

Summary information about an evaluation form.

+ *

Summary information about a contact evaluation.

*/ -export interface EvaluationFormSummary { +export interface EvaluationSummary { /** * @public - *

The unique identifier for the evaluation form.

+ *

A unique identifier for the contact evaluation.

*/ - EvaluationFormId: string | undefined; + EvaluationId: string | undefined; /** * @public - *

The Amazon Resource Name (ARN) for the evaluation form resource.

+ *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ - EvaluationFormArn: string | undefined; + EvaluationArn: string | undefined; /** * @public *

A title of the evaluation form.

*/ - Title: string | undefined; + EvaluationFormTitle: string | undefined; /** * @public - *

The timestamp for when the evaluation form was created.

+ *

The unique identifier for the evaluation form.

*/ - CreatedTime: Date | undefined; + EvaluationFormId: string | undefined; /** * @public - *

The Amazon Resource Name (ARN) of the user who created the evaluation form.

+ *

The status of the contact evaluation.

*/ - CreatedBy: string | undefined; + Status: EvaluationStatus | string | undefined; /** * @public - *

The timestamp for when the evaluation form was last updated.

+ *

The Amazon Resource Name (ARN) of the user who last updated the evaluation.

*/ - LastModifiedTime: Date | undefined; + EvaluatorArn: string | undefined; /** * @public - *

The Amazon Resource Name (ARN) of the user who last updated the evaluation form.

+ *

The overall score of the contact evaluation.

*/ - LastModifiedBy: string | undefined; + Score?: EvaluationScore; /** * @public - *

The timestamp for when the evaluation form was last activated.

+ *

The timestamp for when the evaluation was created.

*/ - LastActivatedTime?: Date; + CreatedTime: Date | undefined; /** * @public - *

The Amazon Resource Name (ARN) of the user who last activated the evaluation form.

+ *

The timestamp for when the evaluation was last updated.

*/ - LastActivatedBy?: string; + LastModifiedTime: Date | undefined; +} +/** + * @public + */ +export interface ListContactEvaluationsResponse { /** * @public - *

The version number of the latest evaluation form version.

+ *

Provides details about a list of contact evaluations belonging to an instance.

*/ - LatestVersion: number | undefined; + EvaluationSummaryList: EvaluationSummary[] | undefined; /** * @public - *

The version of the active evaluation form version.

+ *

If there are additional results, this is the token for the next set of results.

+ * + *

This is always returned as null in the response.

+ *
*/ - ActiveVersion?: number; + NextToken?: string; } /** * @public */ -export interface ListEvaluationFormsResponse { +export interface ListContactFlowModulesRequest { /** * @public - *

Provides details about a list of evaluation forms belonging to an instance.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - EvaluationFormSummaryList: EvaluationFormSummary[] | undefined; + InstanceId: string | undefined; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ NextToken?: string; + + /** + * @public + *

The maximum number of results to return per page.

+ */ + MaxResults?: number; + + /** + * @public + *

The state of the flow module.

+ */ + ContactFlowModuleState?: ContactFlowModuleState | string; } /** * @public + *

Contains summary information about a flow.

*/ -export interface ListEvaluationFormVersionsRequest { +export interface ContactFlowModuleSummary { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier of the flow module.

*/ - InstanceId: string | undefined; + Id?: string; /** * @public - *

The unique identifier for the evaluation form.

+ *

The Amazon Resource Name (ARN) of the flow module.

*/ - EvaluationFormId: string | undefined; + Arn?: string; /** * @public - *

The maximum number of results to return per page.

+ *

The name of the flow module.

*/ - MaxResults?: number; + Name?: string; /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

The type of flow module.

+ */ + State?: ContactFlowModuleState | string; +} + +/** + * @public + */ +export interface ListContactFlowModulesResponse { + /** + * @public + *

Information about the flow module.

+ */ + ContactFlowModulesSummaryList?: ContactFlowModuleSummary[]; + + /** + * @public + *

If there are additional results, this is the token for the next set of results.

*/ NextToken?: string; } /** * @public - *

Summary information about an evaluation form.

*/ -export interface EvaluationFormVersionSummary { +export interface ListContactFlowsRequest { /** * @public - *

The Amazon Resource Name (ARN) for the evaluation form resource.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - EvaluationFormArn: string | undefined; + InstanceId: string | undefined; /** * @public - *

The unique identifier for the evaluation form.

+ *

The type of flow.

*/ - EvaluationFormId: string | undefined; + ContactFlowTypes?: (ContactFlowType | string)[]; /** * @public - *

A version of the evaluation form.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ - EvaluationFormVersion: number | undefined; + NextToken?: string; /** * @public - *

The flag indicating whether the evaluation form is locked for changes.

+ *

The maximum number of results to return per page. The default MaxResult size is 100.

*/ - Locked: boolean | undefined; + MaxResults?: number; +} +/** + * @public + *

Contains summary information about a flow.

+ *

You can also create and update flows using the Amazon Connect + * Flow language.

+ */ +export interface ContactFlowSummary { /** * @public - *

The status of the evaluation form.

+ *

The identifier of the flow.

*/ - Status: EvaluationFormVersionStatus | string | undefined; + Id?: string; /** * @public - *

The timestamp for when the evaluation form was created.

+ *

The Amazon Resource Name (ARN) of the flow.

*/ - CreatedTime: Date | undefined; + Arn?: string; /** * @public - *

The Amazon Resource Name (ARN) of the user who created the evaluation form.

+ *

The name of the flow.

*/ - CreatedBy: string | undefined; + Name?: string; /** * @public - *

The timestamp for when the evaluation form was last updated.

+ *

The type of flow.

*/ - LastModifiedTime: Date | undefined; + ContactFlowType?: ContactFlowType | string; /** * @public - *

The Amazon Resource Name (ARN) of the user who last updated the evaluation form.

+ *

The type of flow.

*/ - LastModifiedBy: string | undefined; + ContactFlowState?: ContactFlowState | string; } /** * @public */ -export interface ListEvaluationFormVersionsResponse { +export interface ListContactFlowsResponse { /** * @public - *

Provides details about a list of evaluation forms belonging to an instance.

+ *

Information about the flows.

*/ - EvaluationFormVersionSummaryList: EvaluationFormVersionSummary[] | undefined; + ContactFlowSummaryList?: ContactFlowSummary[]; /** * @public @@ -3075,7 +2779,7 @@ export interface ListEvaluationFormVersionsResponse { /** * @public */ -export interface ListHoursOfOperationsRequest { +export interface ListContactReferencesRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -3084,197 +2788,319 @@ export interface ListHoursOfOperationsRequest { /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

The identifier of the initial contact.

*/ - NextToken?: string; + ContactId: string | undefined; /** * @public - *

The maximum number of results to return per page. The default MaxResult size is 100.

+ *

The type of reference.

*/ - MaxResults?: number; + ReferenceTypes: (ReferenceType | string)[] | undefined; + + /** + * @public + *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

+ * + *

This is not expected to be set, because the value returned in the previous response is + * always null.

+ *
+ */ + NextToken?: string; } /** * @public - *

Contains summary information about hours of operation for a contact center.

+ * @enum */ -export interface HoursOfOperationSummary { +export const ReferenceStatus = { + APPROVED: "APPROVED", + REJECTED: "REJECTED", +} as const; + +/** + * @public + */ +export type ReferenceStatus = (typeof ReferenceStatus)[keyof typeof ReferenceStatus]; + +/** + * @public + *

Information about a reference when the referenceType is + * ATTACHMENT. Otherwise, null.

+ */ +export interface AttachmentReference { /** * @public - *

The identifier of the hours of operation.

+ *

Identifier of the attachment reference.

*/ - Id?: string; + Name?: string; /** * @public - *

The Amazon Resource Name (ARN) of the hours of operation.

+ *

The location path of the attachment reference.

*/ - Arn?: string; + Value?: string; /** * @public - *

The name of the hours of operation.

+ *

Status of the attachment reference type.

*/ - Name?: string; + Status?: ReferenceStatus | string; } /** * @public + *

Information about a reference when the referenceType is DATE. + * Otherwise, null.

*/ -export interface ListHoursOfOperationsResponse { +export interface DateReference { /** * @public - *

Information about the hours of operation.

+ *

Identifier of the date reference.

*/ - HoursOfOperationSummaryList?: HoursOfOperationSummary[]; + Name?: string; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

A valid date.

*/ - NextToken?: string; + Value?: string; } /** * @public + *

Information about a reference when the referenceType is EMAIL. + * Otherwise, null.

*/ -export interface ListInstanceAttributesRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - +export interface EmailReference { /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

Identifier of the email reference.

*/ - NextToken?: string; + Name?: string; /** * @public - *

The maximum number of results to return per page.

+ *

A valid email address.

*/ - MaxResults?: number; + Value?: string; } /** * @public + *

Information about a reference when the referenceType is NUMBER. + * Otherwise, null.

*/ -export interface ListInstanceAttributesResponse { +export interface NumberReference { /** * @public - *

The attribute types.

+ *

Identifier of the number reference.

*/ - Attributes?: Attribute[]; + Name?: string; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

A valid number.

*/ - NextToken?: string; + Value?: string; } /** * @public + *

Information about a reference when the referenceType is STRING. + * Otherwise, null.

*/ -export interface ListInstancesRequest { +export interface StringReference { /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

Identifier of the string reference.

*/ - NextToken?: string; + Name?: string; /** * @public - *

The maximum number of results to return per page.

+ *

A valid string.

*/ - MaxResults?: number; + Value?: string; } /** * @public - *

Information about the instance.

+ *

The URL reference.

*/ -export interface InstanceSummary { +export interface UrlReference { /** * @public - *

The identifier of the instance.

+ *

Identifier of the URL reference.

*/ - Id?: string; + Name?: string; /** * @public - *

The Amazon Resource Name (ARN) of the instance.

+ *

A valid URL.

*/ - Arn?: string; + Value?: string; +} - /** - * @public - *

The identity management type of the instance.

- */ - IdentityManagementType?: DirectoryType | string; +/** + * @public + *

Contains summary information about a reference. ReferenceSummary contains only + * one non null field between the URL and attachment based on the reference type.

+ */ +export type ReferenceSummary = + | ReferenceSummary.AttachmentMember + | ReferenceSummary.DateMember + | ReferenceSummary.EmailMember + | ReferenceSummary.NumberMember + | ReferenceSummary.StringMember + | ReferenceSummary.UrlMember + | ReferenceSummary.$UnknownMember; +/** + * @public + */ +export namespace ReferenceSummary { /** * @public - *

The alias of the instance.

+ *

Information about the reference when the referenceType is URL. + * Otherwise, null.

*/ - InstanceAlias?: string; + export interface UrlMember { + Url: UrlReference; + Attachment?: never; + String?: never; + Number?: never; + Date?: never; + Email?: never; + $unknown?: never; + } /** * @public - *

When the instance was created.

+ *

Information about the reference when the referenceType is + * ATTACHMENT. Otherwise, null.

*/ - CreatedTime?: Date; + export interface AttachmentMember { + Url?: never; + Attachment: AttachmentReference; + String?: never; + Number?: never; + Date?: never; + Email?: never; + $unknown?: never; + } /** * @public - *

The service role of the instance.

+ *

Information about a reference when the referenceType is STRING. + * Otherwise, null.

*/ - ServiceRole?: string; + export interface StringMember { + Url?: never; + Attachment?: never; + String: StringReference; + Number?: never; + Date?: never; + Email?: never; + $unknown?: never; + } /** * @public - *

The state of the instance.

+ *

Information about a reference when the referenceType is NUMBER. + * Otherwise, null.

*/ - InstanceStatus?: InstanceStatus | string; + export interface NumberMember { + Url?: never; + Attachment?: never; + String?: never; + Number: NumberReference; + Date?: never; + Email?: never; + $unknown?: never; + } /** * @public - *

Whether inbound calls are enabled.

+ *

Information about a reference when the referenceType is DATE. + * Otherwise, null.

*/ - InboundCallsEnabled?: boolean; + export interface DateMember { + Url?: never; + Attachment?: never; + String?: never; + Number?: never; + Date: DateReference; + Email?: never; + $unknown?: never; + } /** * @public - *

Whether outbound calls are enabled.

+ *

Information about a reference when the referenceType is EMAIL. + * Otherwise, null.

*/ - OutboundCallsEnabled?: boolean; + export interface EmailMember { + Url?: never; + Attachment?: never; + String?: never; + Number?: never; + Date?: never; + Email: EmailReference; + $unknown?: never; + } /** * @public - *

This URL allows contact center users to access the Amazon Connect admin website.

*/ - InstanceAccessUrl?: string; + export interface $UnknownMember { + Url?: never; + Attachment?: never; + String?: never; + Number?: never; + Date?: never; + Email?: never; + $unknown: [string, any]; + } + + export interface Visitor { + Url: (value: UrlReference) => T; + Attachment: (value: AttachmentReference) => T; + String: (value: StringReference) => T; + Number: (value: NumberReference) => T; + Date: (value: DateReference) => T; + Email: (value: EmailReference) => T; + _: (name: string, value: any) => T; + } + + export const visit = (value: ReferenceSummary, visitor: Visitor): T => { + if (value.Url !== undefined) return visitor.Url(value.Url); + if (value.Attachment !== undefined) return visitor.Attachment(value.Attachment); + if (value.String !== undefined) return visitor.String(value.String); + if (value.Number !== undefined) return visitor.Number(value.Number); + if (value.Date !== undefined) return visitor.Date(value.Date); + if (value.Email !== undefined) return visitor.Email(value.Email); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; } /** * @public */ -export interface ListInstancesResponse { +export interface ListContactReferencesResponse { /** * @public - *

Information about the instances.

+ *

Information about the flows.

*/ - InstanceSummaryList?: InstanceSummary[]; + ReferenceSummaryList?: ReferenceSummary[]; /** * @public *

If there are additional results, this is the token for the next set of results.

+ * + *

This is always returned as null in the response.

+ *
*/ NextToken?: string; } @@ -3282,7 +3108,7 @@ export interface ListInstancesResponse { /** * @public */ -export interface ListInstanceStorageConfigsRequest { +export interface ListDefaultVocabulariesRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -3291,9 +3117,17 @@ export interface ListInstanceStorageConfigsRequest { /** * @public - *

A valid resource type.

+ *

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, see + * What is Amazon Transcribe? + *

*/ - ResourceType: InstanceStorageResourceType | string | undefined; + LanguageCode?: VocabularyLanguageCode | string; + + /** + * @public + *

The maximum number of results to return per page.

+ */ + MaxResults?: number; /** * @public @@ -3301,23 +3135,49 @@ export interface ListInstanceStorageConfigsRequest { * response in the next request to retrieve the next set of results.

*/ NextToken?: string; +} +/** + * @public + *

Contains information about a default vocabulary.

+ */ +export interface DefaultVocabulary { /** * @public - *

The maximum number of results to return per page.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - MaxResults?: number; + InstanceId: string | undefined; + + /** + * @public + *

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, see + * What is Amazon Transcribe? + *

+ */ + LanguageCode: VocabularyLanguageCode | string | undefined; + + /** + * @public + *

The identifier of the custom vocabulary.

+ */ + VocabularyId: string | undefined; + + /** + * @public + *

A unique name of the custom vocabulary.

+ */ + VocabularyName: string | undefined; } /** * @public */ -export interface ListInstanceStorageConfigsResponse { +export interface ListDefaultVocabulariesResponse { /** * @public - *

A valid storage type.

+ *

A list of default vocabularies.

*/ - StorageConfigs?: InstanceStorageConfig[]; + DefaultVocabularyList: DefaultVocabulary[] | undefined; /** * @public @@ -3329,7 +3189,7 @@ export interface ListInstanceStorageConfigsResponse { /** * @public */ -export interface ListIntegrationAssociationsRequest { +export interface ListEvaluationFormsRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -3338,87 +3198,99 @@ export interface ListIntegrationAssociationsRequest { /** * @public - *

The integration type.

+ *

The maximum number of results to return per page.

+ */ + MaxResults?: number; + + /** + * @public + *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

+ */ + NextToken?: string; +} + +/** + * @public + *

Summary information about an evaluation form.

+ */ +export interface EvaluationFormSummary { + /** + * @public + *

The unique identifier for the evaluation form.

*/ - IntegrationType?: IntegrationType | string; + EvaluationFormId: string | undefined; /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

The Amazon Resource Name (ARN) for the evaluation form resource.

*/ - NextToken?: string; + EvaluationFormArn: string | undefined; /** * @public - *

The maximum number of results to return per page.

+ *

A title of the evaluation form.

*/ - MaxResults?: number; -} + Title: string | undefined; -/** - * @public - *

Contains summary information about the associated AppIntegrations.

- */ -export interface IntegrationAssociationSummary { /** * @public - *

The identifier for the AppIntegration association.

+ *

The timestamp for when the evaluation form was created.

*/ - IntegrationAssociationId?: string; + CreatedTime: Date | undefined; /** * @public - *

The Amazon Resource Name (ARN) for the AppIntegration association.

+ *

The Amazon Resource Name (ARN) of the user who created the evaluation form.

*/ - IntegrationAssociationArn?: string; + CreatedBy: string | undefined; /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The timestamp for when the evaluation form was last updated.

*/ - InstanceId?: string; + LastModifiedTime: Date | undefined; /** * @public - *

The integration type.

+ *

The Amazon Resource Name (ARN) of the user who last updated the evaluation form.

*/ - IntegrationType?: IntegrationType | string; + LastModifiedBy: string | undefined; /** * @public - *

The Amazon Resource Name (ARN) for the AppIntegration.

+ *

The timestamp for when the evaluation form was last activated.

*/ - IntegrationArn?: string; + LastActivatedTime?: Date; /** * @public - *

The URL for the external application.

+ *

The Amazon Resource Name (ARN) of the user who last activated the evaluation form.

*/ - SourceApplicationUrl?: string; + LastActivatedBy?: string; /** * @public - *

The user-provided, friendly name for the external application.

+ *

The version number of the latest evaluation form version.

*/ - SourceApplicationName?: string; + LatestVersion: number | undefined; /** * @public - *

The name of the source.

+ *

The version of the active evaluation form version.

*/ - SourceType?: SourceType | string; + ActiveVersion?: number; } /** * @public */ -export interface ListIntegrationAssociationsResponse { +export interface ListEvaluationFormsResponse { /** * @public - *

The associations.

+ *

Provides details about a list of evaluation forms belonging to an instance.

*/ - IntegrationAssociationSummaryList?: IntegrationAssociationSummary[]; + EvaluationFormSummaryList: EvaluationFormSummary[] | undefined; /** * @public @@ -3430,7 +3302,7 @@ export interface ListIntegrationAssociationsResponse { /** * @public */ -export interface ListLambdaFunctionsRequest { +export interface ListEvaluationFormVersionsRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -3439,99 +3311,110 @@ export interface ListLambdaFunctionsRequest { /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

The unique identifier for the evaluation form.

*/ - NextToken?: string; + EvaluationFormId: string | undefined; /** * @public *

The maximum number of results to return per page.

*/ MaxResults?: number; + + /** + * @public + *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

+ */ + NextToken?: string; } /** * @public + *

Summary information about an evaluation form.

*/ -export interface ListLambdaFunctionsResponse { +export interface EvaluationFormVersionSummary { /** * @public - *

The Lambdafunction ARNs associated with the specified instance.

+ *

The Amazon Resource Name (ARN) for the evaluation form resource.

*/ - LambdaFunctions?: string[]; + EvaluationFormArn: string | undefined; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The unique identifier for the evaluation form.

*/ - NextToken?: string; -} + EvaluationFormId: string | undefined; -/** - * @public - */ -export interface ListLexBotsRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

A version of the evaluation form.

*/ - InstanceId: string | undefined; + EvaluationFormVersion: number | undefined; /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

The flag indicating whether the evaluation form is locked for changes.

*/ - NextToken?: string; + Locked: boolean | undefined; /** * @public - *

The maximum number of results to return per page. If no value is specified, the default is 10. - *

+ *

The status of the evaluation form.

*/ - MaxResults?: number; -} + Status: EvaluationFormVersionStatus | string | undefined; -/** - * @public - */ -export interface ListLexBotsResponse { /** * @public - *

The names and Amazon Web Services Regions of the Amazon Lex bots associated with the - * specified instance.

+ *

The timestamp for when the evaluation form was created.

*/ - LexBots?: LexBot[]; + CreatedTime: Date | undefined; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The Amazon Resource Name (ARN) of the user who created the evaluation form.

*/ - NextToken?: string; + CreatedBy: string | undefined; + + /** + * @public + *

The timestamp for when the evaluation form was last updated.

+ */ + LastModifiedTime: Date | undefined; + + /** + * @public + *

The Amazon Resource Name (ARN) of the user who last updated the evaluation form.

+ */ + LastModifiedBy: string | undefined; } /** * @public */ -export interface ListPhoneNumbersRequest { +export interface ListEvaluationFormVersionsResponse { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

Provides details about a list of evaluation forms belonging to an instance.

*/ - InstanceId: string | undefined; + EvaluationFormVersionSummaryList: EvaluationFormVersionSummary[] | undefined; /** * @public - *

The type of phone number.

+ *

If there are additional results, this is the token for the next set of results.

*/ - PhoneNumberTypes?: (PhoneNumberType | string)[]; + NextToken?: string; +} +/** + * @public + */ +export interface ListHoursOfOperationsRequest { /** * @public - *

The ISO country code.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - PhoneNumberCountryCodes?: (PhoneNumberCountryCode | string)[]; + InstanceId: string | undefined; /** * @public @@ -3549,49 +3432,37 @@ export interface ListPhoneNumbersRequest { /** * @public - *

Contains summary information about a phone number for a contact center.

+ *

Contains summary information about hours of operation for a contact center.

*/ -export interface PhoneNumberSummary { +export interface HoursOfOperationSummary { /** * @public - *

The identifier of the phone number.

+ *

The identifier of the hours of operation.

*/ Id?: string; /** * @public - *

The Amazon Resource Name (ARN) of the phone number.

+ *

The Amazon Resource Name (ARN) of the hours of operation.

*/ Arn?: string; /** * @public - *

The phone number.

- */ - PhoneNumber?: string; - - /** - * @public - *

The type of phone number.

- */ - PhoneNumberType?: PhoneNumberType | string; - - /** - * @public - *

The ISO country code.

+ *

The name of the hours of operation.

*/ - PhoneNumberCountryCode?: PhoneNumberCountryCode | string; + Name?: string; } /** * @public */ -export interface ListPhoneNumbersResponse { +export interface ListHoursOfOperationsResponse { /** * @public - *

Information about the phone numbers.

+ *

Information about the hours of operation.

*/ - PhoneNumberSummaryList?: PhoneNumberSummary[]; + HoursOfOperationSummaryList?: HoursOfOperationSummary[]; /** * @public @@ -3603,19 +3474,12 @@ export interface ListPhoneNumbersResponse { /** * @public */ -export interface ListPhoneNumbersV2Request { - /** - * @public - *

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to. If TargetArn input is not provided, this API lists numbers claimed - * to all the Amazon Connect instances belonging to your account in the same Amazon Web Services Region as the request.

- */ - TargetArn?: string; - +export interface ListInstanceAttributesRequest { /** * @public - *

The maximum number of results to return per page.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - MaxResults?: number; + InstanceId: string | undefined; /** * @public @@ -3626,141 +3490,121 @@ export interface ListPhoneNumbersV2Request { /** * @public - *

The ISO country code.

- */ - PhoneNumberCountryCodes?: (PhoneNumberCountryCode | string)[]; - - /** - * @public - *

The type of phone number.

- */ - PhoneNumberTypes?: (PhoneNumberType | string)[]; - - /** - * @public - *

The prefix of the phone number. If provided, it must contain + as part of the country code.

+ *

The maximum number of results to return per page.

*/ - PhoneNumberPrefix?: string; + MaxResults?: number; } /** * @public - *

Information about phone numbers that have been claimed to your Amazon Connect instance - * or traffic distribution group.

*/ -export interface ListPhoneNumbersSummary { +export interface ListInstanceAttributesResponse { /** * @public - *

A unique identifier for the phone number.

+ *

The attribute types.

*/ - PhoneNumberId?: string; + Attributes?: Attribute[]; /** * @public - *

The Amazon Resource Name (ARN) of the phone number.

+ *

If there are additional results, this is the token for the next set of results.

*/ - PhoneNumberArn?: string; + NextToken?: string; +} +/** + * @public + */ +export interface ListInstancesRequest { /** * @public - *

The phone number. Phone numbers are formatted [+] [country code] [subscriber number including area code].

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ - PhoneNumber?: string; + NextToken?: string; /** * @public - *

The ISO country code.

+ *

The maximum number of results to return per page.

*/ - PhoneNumberCountryCode?: PhoneNumberCountryCode | string; + MaxResults?: number; +} +/** + * @public + *

Information about the instance.

+ */ +export interface InstanceSummary { /** * @public - *

The type of phone number.

+ *

The identifier of the instance.

*/ - PhoneNumberType?: PhoneNumberType | string; + Id?: string; /** * @public - *

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

+ *

The Amazon Resource Name (ARN) of the instance.

*/ - TargetArn?: string; -} + Arn?: string; -/** - * @public - */ -export interface ListPhoneNumbersV2Response { /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The identity management type of the instance.

*/ - NextToken?: string; + IdentityManagementType?: DirectoryType | string; /** - * @public - *

Information about phone numbers that have been claimed to your Amazon Connect instances - * or traffic distribution groups.

+ * @public + *

The alias of the instance.

*/ - ListPhoneNumbersSummaryList?: ListPhoneNumbersSummary[]; -} + InstanceAlias?: string; -/** - * @public - */ -export interface ListPromptsRequest { /** * @public - *

The identifier of the Amazon Connect instance.

+ *

When the instance was created.

*/ - InstanceId: string | undefined; + CreatedTime?: Date; /** * @public - *

The token for the next set of results. Use the value returned in the previous response in - * the next request to retrieve the next set of results.

+ *

The service role of the instance.

*/ - NextToken?: string; + ServiceRole?: string; /** * @public - *

The maximum number of results to return per page. The default MaxResult size is 100.

+ *

The state of the instance.

*/ - MaxResults?: number; -} + InstanceStatus?: InstanceStatus | string; -/** - * @public - *

Contains information about the prompt.

- */ -export interface PromptSummary { /** * @public - *

The identifier of the prompt.

+ *

Whether inbound calls are enabled.

*/ - Id?: string; + InboundCallsEnabled?: boolean; /** * @public - *

The Amazon Resource Name (ARN) of the prompt.

+ *

Whether outbound calls are enabled.

*/ - Arn?: string; + OutboundCallsEnabled?: boolean; /** * @public - *

The name of the prompt.

+ *

This URL allows contact center users to access the Amazon Connect admin website.

*/ - Name?: string; + InstanceAccessUrl?: string; } /** * @public */ -export interface ListPromptsResponse { +export interface ListInstancesResponse { /** * @public - *

Information about the prompts.

+ *

Information about the instances.

*/ - PromptSummaryList?: PromptSummary[]; + InstanceSummaryList?: InstanceSummary[]; /** * @public @@ -3772,7 +3616,7 @@ export interface ListPromptsResponse { /** * @public */ -export interface ListQueueQuickConnectsRequest { +export interface ListInstanceStorageConfigsRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -3781,9 +3625,9 @@ export interface ListQueueQuickConnectsRequest { /** * @public - *

The identifier for the queue.

+ *

A valid resource type.

*/ - QueueId: string | undefined; + ResourceType: InstanceStorageResourceType | string | undefined; /** * @public @@ -3794,142 +3638,121 @@ export interface ListQueueQuickConnectsRequest { /** * @public - *

The maximum number of results to return per page. The default MaxResult size is 100.

+ *

The maximum number of results to return per page.

*/ MaxResults?: number; } /** * @public - *

Contains summary information about a quick connect.

*/ -export interface QuickConnectSummary { +export interface ListInstanceStorageConfigsResponse { /** * @public - *

The identifier for the quick connect.

+ *

A valid storage type.

*/ - Id?: string; + StorageConfigs?: InstanceStorageConfig[]; /** * @public - *

The Amazon Resource Name (ARN) of the quick connect.

+ *

If there are additional results, this is the token for the next set of results.

*/ - Arn?: string; + NextToken?: string; +} +/** + * @public + */ +export interface ListIntegrationAssociationsRequest { /** * @public - *

The name of the quick connect.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - Name?: string; + InstanceId: string | undefined; /** * @public - *

The type of quick connect. In the Amazon Connect console, when you create a quick connect, you are - * prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).

+ *

The integration type.

*/ - QuickConnectType?: QuickConnectType | string; -} + IntegrationType?: IntegrationType | string; -/** - * @public - */ -export interface ListQueueQuickConnectsResponse { /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ NextToken?: string; /** * @public - *

Information about the quick connects.

+ *

The maximum number of results to return per page.

*/ - QuickConnectSummaryList?: QuickConnectSummary[]; + MaxResults?: number; } /** * @public - * @enum - */ -export const QueueType = { - AGENT: "AGENT", - STANDARD: "STANDARD", -} as const; - -/** - * @public - */ -export type QueueType = (typeof QueueType)[keyof typeof QueueType]; - -/** - * @public + *

Contains summary information about the associated AppIntegrations.

*/ -export interface ListQueuesRequest { +export interface IntegrationAssociationSummary { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier for the AppIntegration association.

*/ - InstanceId: string | undefined; + IntegrationAssociationId?: string; /** * @public - *

The type of queue.

+ *

The Amazon Resource Name (ARN) for the AppIntegration association.

*/ - QueueTypes?: (QueueType | string)[]; + IntegrationAssociationArn?: string; /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - NextToken?: string; + InstanceId?: string; /** * @public - *

The maximum number of results to return per page. The default MaxResult size is 100.

+ *

The integration type.

*/ - MaxResults?: number; -} + IntegrationType?: IntegrationType | string; -/** - * @public - *

Contains summary information about a queue.

- */ -export interface QueueSummary { /** * @public - *

The identifier of the queue.

+ *

The Amazon Resource Name (ARN) for the AppIntegration.

*/ - Id?: string; + IntegrationArn?: string; /** * @public - *

The Amazon Resource Name (ARN) of the queue.

+ *

The URL for the external application.

*/ - Arn?: string; + SourceApplicationUrl?: string; /** * @public - *

The name of the queue.

+ *

The user-provided, friendly name for the external application.

*/ - Name?: string; + SourceApplicationName?: string; /** * @public - *

The type of queue.

+ *

The name of the source.

*/ - QueueType?: QueueType | string; + SourceType?: SourceType | string; } /** * @public */ -export interface ListQueuesResponse { +export interface ListIntegrationAssociationsResponse { /** * @public - *

Information about the queues.

+ *

The associations.

*/ - QueueSummaryList?: QueueSummary[]; + IntegrationAssociationSummaryList?: IntegrationAssociationSummary[]; /** * @public @@ -3941,7 +3764,7 @@ export interface ListQueuesResponse { /** * @public */ -export interface ListQuickConnectsRequest { +export interface ListLambdaFunctionsRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -3957,27 +3780,20 @@ export interface ListQuickConnectsRequest { /** * @public - *

The maximum number of results to return per page. The default MaxResult size is 100.

+ *

The maximum number of results to return per page.

*/ MaxResults?: number; - - /** - * @public - *

The type of quick connect. In the Amazon Connect console, when you create a quick connect, you are - * prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).

- */ - QuickConnectTypes?: (QuickConnectType | string)[]; } /** * @public */ -export interface ListQuickConnectsResponse { +export interface ListLambdaFunctionsResponse { /** * @public - *

Information about the quick connects.

+ *

The Lambdafunction ARNs associated with the specified instance.

*/ - QuickConnectSummaryList?: QuickConnectSummary[]; + LambdaFunctions?: string[]; /** * @public @@ -3989,19 +3805,13 @@ export interface ListQuickConnectsResponse { /** * @public */ -export interface ListRoutingProfileQueuesRequest { +export interface ListLexBotsRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ InstanceId: string | undefined; - /** - * @public - *

The identifier of the routing profile.

- */ - RoutingProfileId: string | undefined; - /** * @public *

The token for the next set of results. Use the value returned in the previous @@ -4011,83 +3821,51 @@ export interface ListRoutingProfileQueuesRequest { /** * @public - *

The maximum number of results to return per page. The default MaxResult size is 100.

+ *

The maximum number of results to return per page. If no value is specified, the default is 10. + *

*/ MaxResults?: number; } /** * @public - *

Contains summary information about a routing profile queue.

*/ -export interface RoutingProfileQueueConfigSummary { - /** - * @public - *

The identifier for the queue.

- */ - QueueId: string | undefined; - - /** - * @public - *

The Amazon Resource Name (ARN) of the queue.

- */ - QueueArn: string | undefined; - - /** - * @public - *

The name of the queue.

- */ - QueueName: string | undefined; - - /** - * @public - *

The order in which contacts are to be handled for the queue. For more information, see - * Queues: priority and - * delay.

- */ - Priority: number | undefined; - +export interface ListLexBotsResponse { /** * @public - *

The delay, in seconds, that a contact should be in the queue before they are routed to an - * available agent. For more information, see Queues: priority and - * delay in the Amazon Connect Administrator Guide.

+ *

The names and Amazon Web Services Regions of the Amazon Lex bots associated with the + * specified instance.

*/ - Delay: number | undefined; + LexBots?: LexBot[]; /** * @public - *

The channels this queue supports.

+ *

If there are additional results, this is the token for the next set of results.

*/ - Channel: Channel | string | undefined; + NextToken?: string; } /** * @public */ -export interface ListRoutingProfileQueuesResponse { +export interface ListPhoneNumbersRequest { /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - NextToken?: string; + InstanceId: string | undefined; /** * @public - *

Information about the routing profiles.

+ *

The type of phone number.

*/ - RoutingProfileQueueConfigSummaryList?: RoutingProfileQueueConfigSummary[]; -} + PhoneNumberTypes?: (PhoneNumberType | string)[]; -/** - * @public - */ -export interface ListRoutingProfilesRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The ISO country code.

*/ - InstanceId: string | undefined; + PhoneNumberCountryCodes?: (PhoneNumberCountryCode | string)[]; /** * @public @@ -4105,37 +3883,49 @@ export interface ListRoutingProfilesRequest { /** * @public - *

Contains summary information about a routing profile.

+ *

Contains summary information about a phone number for a contact center.

*/ -export interface RoutingProfileSummary { +export interface PhoneNumberSummary { + /** + * @public + *

The identifier of the phone number.

+ */ + Id?: string; + + /** + * @public + *

The Amazon Resource Name (ARN) of the phone number.

+ */ + Arn?: string; + /** * @public - *

The identifier of the routing profile.

+ *

The phone number.

*/ - Id?: string; + PhoneNumber?: string; /** * @public - *

The Amazon Resource Name (ARN) of the routing profile.

+ *

The type of phone number.

*/ - Arn?: string; + PhoneNumberType?: PhoneNumberType | string; /** * @public - *

The name of the routing profile.

+ *

The ISO country code.

*/ - Name?: string; + PhoneNumberCountryCode?: PhoneNumberCountryCode | string; } /** * @public */ -export interface ListRoutingProfilesResponse { +export interface ListPhoneNumbersResponse { /** * @public - *

Information about the routing profiles.

+ *

Information about the phone numbers.

*/ - RoutingProfileSummaryList?: RoutingProfileSummary[]; + PhoneNumberSummaryList?: PhoneNumberSummary[]; /** * @public @@ -4147,24 +3937,13 @@ export interface ListRoutingProfilesResponse { /** * @public */ -export interface ListRulesRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The publish status of the rule.

- */ - PublishStatus?: RulePublishStatus | string; - +export interface ListPhoneNumbersV2Request { /** * @public - *

The name of the event source.

+ *

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to. If TargetArn input is not provided, this API lists numbers claimed + * to all the Amazon Connect instances belonging to your account in the same Amazon Web Services Region as the request.

*/ - EventSourceName?: EventSourceName | string; + TargetArn?: string; /** * @public @@ -4178,136 +3957,144 @@ export interface ListRulesRequest { * response in the next request to retrieve the next set of results.

*/ NextToken?: string; -} -/** - * @public - *

A list of ActionTypes associated with a rule.

- */ -export interface RuleSummary { /** * @public - *

The name of the rule.

+ *

The ISO country code.

*/ - Name: string | undefined; + PhoneNumberCountryCodes?: (PhoneNumberCountryCode | string)[]; /** * @public - *

A unique identifier for the rule.

+ *

The type of phone number.

*/ - RuleId: string | undefined; + PhoneNumberTypes?: (PhoneNumberType | string)[]; /** * @public - *

The Amazon Resource Name (ARN) of the rule.

+ *

The prefix of the phone number. If provided, it must contain + as part of the country code.

*/ - RuleArn: string | undefined; + PhoneNumberPrefix?: string; +} +/** + * @public + *

Information about phone numbers that have been claimed to your Amazon Connect instance + * or traffic distribution group.

+ */ +export interface ListPhoneNumbersSummary { /** * @public - *

The name of the event source.

+ *

A unique identifier for the phone number.

*/ - EventSourceName: EventSourceName | string | undefined; + PhoneNumberId?: string; /** * @public - *

The publish status of the rule.

+ *

The Amazon Resource Name (ARN) of the phone number.

*/ - PublishStatus: RulePublishStatus | string | undefined; + PhoneNumberArn?: string; /** * @public - *

A list of ActionTypes associated with a rule.

+ *

The phone number. Phone numbers are formatted [+] [country code] [subscriber number including area code].

*/ - ActionSummaries: ActionSummary[] | undefined; + PhoneNumber?: string; /** * @public - *

The timestamp for when the rule was created.

+ *

The ISO country code.

*/ - CreatedTime: Date | undefined; + PhoneNumberCountryCode?: PhoneNumberCountryCode | string; /** * @public - *

The timestamp for when the rule was last updated.

+ *

The type of phone number.

*/ - LastUpdatedTime: Date | undefined; + PhoneNumberType?: PhoneNumberType | string; + + /** + * @public + *

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

+ */ + TargetArn?: string; } /** * @public */ -export interface ListRulesResponse { +export interface ListPhoneNumbersV2Response { /** * @public - *

Summary information about a rule.

+ *

If there are additional results, this is the token for the next set of results.

*/ - RuleSummaryList: RuleSummary[] | undefined; + NextToken?: string; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

Information about phone numbers that have been claimed to your Amazon Connect instances + * or traffic distribution groups.

*/ - NextToken?: string; + ListPhoneNumbersSummaryList?: ListPhoneNumbersSummary[]; } /** * @public */ -export interface ListSecurityKeysRequest { +export interface ListPromptsRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier of the Amazon Connect instance.

*/ InstanceId: string | undefined; /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

The token for the next set of results. Use the value returned in the previous response in + * the next request to retrieve the next set of results.

*/ NextToken?: string; /** * @public - *

The maximum number of results to return per page.

+ *

The maximum number of results to return per page. The default MaxResult size is 100.

*/ MaxResults?: number; } /** * @public - *

Configuration information of the security key.

+ *

Contains information about the prompt.

*/ -export interface SecurityKey { +export interface PromptSummary { /** * @public - *

The existing association identifier that uniquely identifies the resource type and storage config for the given instance ID.

+ *

The identifier of the prompt.

*/ - AssociationId?: string; + Id?: string; /** * @public - *

The key of the security key.

+ *

The Amazon Resource Name (ARN) of the prompt.

*/ - Key?: string; + Arn?: string; /** * @public - *

When the security key was created.

+ *

The name of the prompt.

*/ - CreationTime?: Date; + Name?: string; } /** * @public */ -export interface ListSecurityKeysResponse { +export interface ListPromptsResponse { /** * @public - *

The security keys.

+ *

Information about the prompts.

*/ - SecurityKeys?: SecurityKey[]; + PromptSummaryList?: PromptSummary[]; /** * @public @@ -4319,18 +4106,18 @@ export interface ListSecurityKeysResponse { /** * @public */ -export interface ListSecurityProfilePermissionsRequest { +export interface ListQueueQuickConnectsRequest { /** * @public - *

The identifier for the security profle.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - SecurityProfileId: string | undefined; + InstanceId: string | undefined; /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier for the queue.

*/ - InstanceId: string | undefined; + QueueId: string | undefined; /** * @public @@ -4341,40 +4128,89 @@ export interface ListSecurityProfilePermissionsRequest { /** * @public - *

The maximum number of results to return per page.

+ *

The maximum number of results to return per page. The default MaxResult size is 100.

*/ MaxResults?: number; } /** * @public + *

Contains summary information about a quick connect.

*/ -export interface ListSecurityProfilePermissionsResponse { +export interface QuickConnectSummary { /** * @public - *

The permissions granted to the security profile. For a complete list of valid permissions, - * see List - * of security profile permissions.

+ *

The identifier for the quick connect.

*/ - Permissions?: string[]; + Id?: string; + + /** + * @public + *

The Amazon Resource Name (ARN) of the quick connect.

+ */ + Arn?: string; + + /** + * @public + *

The name of the quick connect.

+ */ + Name?: string; + + /** + * @public + *

The type of quick connect. In the Amazon Connect console, when you create a quick connect, you are + * prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).

+ */ + QuickConnectType?: QuickConnectType | string; +} +/** + * @public + */ +export interface ListQueueQuickConnectsResponse { /** * @public *

If there are additional results, this is the token for the next set of results.

*/ NextToken?: string; + + /** + * @public + *

Information about the quick connects.

+ */ + QuickConnectSummaryList?: QuickConnectSummary[]; } /** * @public + * @enum */ -export interface ListSecurityProfilesRequest { +export const QueueType = { + AGENT: "AGENT", + STANDARD: "STANDARD", +} as const; + +/** + * @public + */ +export type QueueType = (typeof QueueType)[keyof typeof QueueType]; + +/** + * @public + */ +export interface ListQueuesRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ InstanceId: string | undefined; + /** + * @public + *

The type of queue.

+ */ + QueueTypes?: (QueueType | string)[]; + /** * @public *

The token for the next set of results. Use the value returned in the previous @@ -4391,72 +4227,103 @@ export interface ListSecurityProfilesRequest { /** * @public - *

Contains information about a security profile.

+ *

Contains summary information about a queue.

*/ -export interface SecurityProfileSummary { +export interface QueueSummary { /** * @public - *

The identifier of the security profile.

+ *

The identifier of the queue.

*/ Id?: string; /** * @public - *

The Amazon Resource Name (ARN) of the security profile.

+ *

The Amazon Resource Name (ARN) of the queue.

*/ Arn?: string; /** * @public - *

The name of the security profile.

+ *

The name of the queue.

*/ Name?: string; + + /** + * @public + *

The type of queue.

+ */ + QueueType?: QueueType | string; } /** * @public */ -export interface ListSecurityProfilesResponse { +export interface ListQueuesResponse { /** * @public - *

Information about the security profiles.

+ *

Information about the queues.

*/ - SecurityProfileSummaryList?: SecurityProfileSummary[]; + QueueSummaryList?: QueueSummary[]; /** * @public *

If there are additional results, this is the token for the next set of results.

*/ - NextToken?: string; + NextToken?: string; +} + +/** + * @public + */ +export interface ListQuickConnectsRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

+ */ + NextToken?: string; + + /** + * @public + *

The maximum number of results to return per page. The default MaxResult size is 100.

+ */ + MaxResults?: number; + + /** + * @public + *

The type of quick connect. In the Amazon Connect console, when you create a quick connect, you are + * prompted to assign one of the following types: Agent (USER), External (PHONE_NUMBER), or Queue (QUEUE).

+ */ + QuickConnectTypes?: (QuickConnectType | string)[]; } /** * @public */ -export interface ListTagsForResourceRequest { +export interface ListQuickConnectsResponse { /** * @public - *

The Amazon Resource Name (ARN) of the resource. All Amazon Connect resources (instances, queues, flows, routing - * profiles, etc) have an ARN. To locate the ARN for an instance, for example, see Find your Amazon Connect instance ID/ARN.

+ *

Information about the quick connects.

*/ - resourceArn: string | undefined; -} + QuickConnectSummaryList?: QuickConnectSummary[]; -/** - * @public - */ -export interface ListTagsForResourceResponse { /** * @public - *

Information about the tags.

+ *

If there are additional results, this is the token for the next set of results.

*/ - tags?: Record; + NextToken?: string; } /** * @public */ -export interface ListTaskTemplatesRequest { +export interface ListRoutingProfileQueuesRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -4465,118 +4332,96 @@ export interface ListTaskTemplatesRequest { /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

- * - *

It is not expected that you set this because the value returned in the previous response is - * always null.

- *
- */ - NextToken?: string; - - /** - * @public - *

The maximum number of results to return per page.

- * - *

It is not expected that you set this.

- *
+ *

The identifier of the routing profile.

*/ - MaxResults?: number; + RoutingProfileId: string | undefined; /** * @public - *

Marks a template as ACTIVE or INACTIVE for a task to refer to it. - * Tasks can only be created from ACTIVE templates. - * If a template is marked as INACTIVE, then a task that refers to this template cannot be created.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ - Status?: TaskTemplateStatus | string; + NextToken?: string; /** * @public - *

The name of the task template.

+ *

The maximum number of results to return per page. The default MaxResult size is 100.

*/ - Name?: string; + MaxResults?: number; } /** * @public - *

Contains summary information about the task template.

+ *

Contains summary information about a routing profile queue.

*/ -export interface TaskTemplateMetadata { - /** - * @public - *

A unique identifier for the task template.

- */ - Id?: string; - +export interface RoutingProfileQueueConfigSummary { /** * @public - *

The Amazon Resource Name (ARN) of the task template.

+ *

The identifier for the queue.

*/ - Arn?: string; + QueueId: string | undefined; /** * @public - *

The name of the task template.

+ *

The Amazon Resource Name (ARN) of the queue.

*/ - Name?: string; + QueueArn: string | undefined; /** * @public - *

The description of the task template.

+ *

The name of the queue.

*/ - Description?: string; + QueueName: string | undefined; /** * @public - *

Marks a template as ACTIVE or INACTIVE for a task to refer to it. - * Tasks can only be created from ACTIVE templates. - * If a template is marked as INACTIVE, then a task that refers to this template cannot be created.

+ *

The order in which contacts are to be handled for the queue. For more information, see + * Queues: priority and + * delay.

*/ - Status?: TaskTemplateStatus | string; + Priority: number | undefined; /** * @public - *

The timestamp when the task template was last modified.

+ *

The delay, in seconds, that a contact should be in the queue before they are routed to an + * available agent. For more information, see Queues: priority and + * delay in the Amazon Connect Administrator Guide.

*/ - LastModifiedTime?: Date; + Delay: number | undefined; /** * @public - *

The timestamp when the task template was created.

+ *

The channels this queue supports.

*/ - CreatedTime?: Date; + Channel: Channel | string | undefined; } /** * @public */ -export interface ListTaskTemplatesResponse { +export interface ListRoutingProfileQueuesResponse { /** * @public - *

Provides details about a list of task templates belonging to an instance.

+ *

If there are additional results, this is the token for the next set of results.

*/ - TaskTemplates?: TaskTemplateMetadata[]; + NextToken?: string; /** * @public - *

If there are additional results, this is the token for the next set of results.

- * - *

This is always returned as a null in the response.

- *
+ *

Information about the routing profiles.

*/ - NextToken?: string; + RoutingProfileQueueConfigSummaryList?: RoutingProfileQueueConfigSummary[]; } /** * @public */ -export interface ListTrafficDistributionGroupsRequest { +export interface ListRoutingProfilesRequest { /** * @public - *

The maximum number of results to return per page.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - MaxResults?: number; + InstanceId: string | undefined; /** * @public @@ -4587,115 +4432,73 @@ export interface ListTrafficDistributionGroupsRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The maximum number of results to return per page. The default MaxResult size is 100.

*/ - InstanceId?: string; + MaxResults?: number; } /** * @public - *

Information about traffic distribution groups.

+ *

Contains summary information about a routing profile.

*/ -export interface TrafficDistributionGroupSummary { +export interface RoutingProfileSummary { /** * @public - *

The identifier of the traffic distribution group. - * This can be the ID or the ARN if the API is being called in the Region where the traffic distribution group was created. - * The ARN must be provided if the call is from the replicated Region.

+ *

The identifier of the routing profile.

*/ Id?: string; /** * @public - *

The Amazon Resource Name (ARN) of the traffic distribution group.

+ *

The Amazon Resource Name (ARN) of the routing profile.

*/ Arn?: string; /** * @public - *

The name of the traffic distribution group.

+ *

The name of the routing profile.

*/ Name?: string; +} +/** + * @public + */ +export interface ListRoutingProfilesResponse { /** * @public - *

The Amazon Resource Name (ARN) of the traffic distribution group.

- */ - InstanceArn?: string; - - /** - * @public - *

The status of the traffic distribution group.

- * + *

Information about the routing profiles.

*/ - Status?: TrafficDistributionGroupStatus | string; + RoutingProfileSummaryList?: RoutingProfileSummary[]; /** * @public - *

Whether this is the default traffic distribution group created during instance - * replication. The default traffic distribution group cannot be deleted by the - * DeleteTrafficDistributionGroup API. The default traffic distribution group is deleted as - * part of the process for deleting a replica.

+ *

If there are additional results, this is the token for the next set of results.

*/ - IsDefault?: boolean; + NextToken?: string; } /** * @public */ -export interface ListTrafficDistributionGroupsResponse { +export interface ListRulesRequest { /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - NextToken?: string; + InstanceId: string | undefined; /** * @public - *

A list of traffic distribution groups.

+ *

The publish status of the rule.

*/ - TrafficDistributionGroupSummaryList?: TrafficDistributionGroupSummary[]; -} + PublishStatus?: RulePublishStatus | string; -/** - * @public - */ -export interface ListTrafficDistributionGroupUsersRequest { /** * @public - *

The identifier of the traffic distribution group. - * This can be the ID or the ARN if the API is being called in the Region where the traffic distribution group was created. - * The ARN must be provided if the call is from the replicated Region.

+ *

The name of the event source.

*/ - TrafficDistributionGroupId: string | undefined; + EventSourceName?: EventSourceName | string; /** * @public @@ -4713,51 +4516,85 @@ export interface ListTrafficDistributionGroupUsersRequest { /** * @public - *

Summary information about a traffic distribution group user.

+ *

A list of ActionTypes associated with a rule.

*/ -export interface TrafficDistributionGroupUserSummary { +export interface RuleSummary { /** * @public - *

The identifier for the user. This can be the ID or the ARN of the user.

+ *

The name of the rule.

*/ - UserId?: string; + Name: string | undefined; + + /** + * @public + *

A unique identifier for the rule.

+ */ + RuleId: string | undefined; + + /** + * @public + *

The Amazon Resource Name (ARN) of the rule.

+ */ + RuleArn: string | undefined; + + /** + * @public + *

The name of the event source.

+ */ + EventSourceName: EventSourceName | string | undefined; + + /** + * @public + *

The publish status of the rule.

+ */ + PublishStatus: RulePublishStatus | string | undefined; + + /** + * @public + *

A list of ActionTypes associated with a rule.

+ */ + ActionSummaries: ActionSummary[] | undefined; + + /** + * @public + *

The timestamp for when the rule was created.

+ */ + CreatedTime: Date | undefined; + + /** + * @public + *

The timestamp for when the rule was last updated.

+ */ + LastUpdatedTime: Date | undefined; } /** * @public */ -export interface ListTrafficDistributionGroupUsersResponse { +export interface ListRulesResponse { /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

Summary information about a rule.

*/ - NextToken?: string; + RuleSummaryList: RuleSummary[] | undefined; /** * @public - *

A list of traffic distribution group users.

+ *

If there are additional results, this is the token for the next set of results.

*/ - TrafficDistributionGroupUserSummaryList?: TrafficDistributionGroupUserSummary[]; + NextToken?: string; } /** * @public - *

Provides summary information about the use cases for the specified integration - * association.

*/ -export interface ListUseCasesRequest { +export interface ListSecurityKeysRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ InstanceId: string | undefined; - /** - * @public - *

The identifier for the integration association.

- */ - IntegrationAssociationId: string | undefined; - /** * @public *

The token for the next set of results. Use the value returned in the previous @@ -4774,40 +4611,37 @@ export interface ListUseCasesRequest { /** * @public - *

Contains the - * use - * case.

+ *

Configuration information of the security key.

*/ -export interface UseCase { +export interface SecurityKey { /** * @public - *

The identifier for the use case.

+ *

The existing association identifier that uniquely identifies the resource type and storage config for the given instance ID.

*/ - UseCaseId?: string; + AssociationId?: string; /** * @public - *

The Amazon Resource Name (ARN) for the use case.

+ *

The key of the security key.

*/ - UseCaseArn?: string; + Key?: string; /** * @public - *

The type of use case to associate to the integration association. Each integration - * association can have only one of each use case type.

+ *

When the security key was created.

*/ - UseCaseType?: UseCaseType | string; + CreationTime?: Date; } /** * @public */ -export interface ListUseCasesResponse { +export interface ListSecurityKeysResponse { /** * @public - *

The use cases.

+ *

The security keys.

*/ - UseCaseSummaryList?: UseCase[]; + SecurityKeys?: SecurityKey[]; /** * @public @@ -4819,7 +4653,13 @@ export interface ListUseCasesResponse { /** * @public */ -export interface ListUserHierarchyGroupsRequest { +export interface ListSecurityProfilePermissionsRequest { + /** + * @public + *

The identifier for the security profle.

+ */ + SecurityProfileId: string | undefined; + /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -4835,7 +4675,7 @@ export interface ListUserHierarchyGroupsRequest { /** * @public - *

The maximum number of results to return per page. The default MaxResult size is 100.

+ *

The maximum number of results to return per page.

*/ MaxResults?: number; } @@ -4843,12 +4683,14 @@ export interface ListUserHierarchyGroupsRequest { /** * @public */ -export interface ListUserHierarchyGroupsResponse { +export interface ListSecurityProfilePermissionsResponse { /** * @public - *

Information about the hierarchy groups.

+ *

The permissions granted to the security profile. For a complete list of valid permissions, + * see List + * of security profile permissions.

*/ - UserHierarchyGroupSummaryList?: HierarchyGroupSummary[]; + Permissions?: string[]; /** * @public @@ -4860,7 +4702,7 @@ export interface ListUserHierarchyGroupsResponse { /** * @public */ -export interface ListUsersRequest { +export interface ListSecurityProfilesRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -4883,37 +4725,37 @@ export interface ListUsersRequest { /** * @public - *

Contains summary information about a user.

+ *

Contains information about a security profile.

*/ -export interface UserSummary { +export interface SecurityProfileSummary { /** * @public - *

The identifier of the user account.

+ *

The identifier of the security profile.

*/ Id?: string; /** * @public - *

The Amazon Resource Name (ARN) of the user account.

+ *

The Amazon Resource Name (ARN) of the security profile.

*/ Arn?: string; /** * @public - *

The Amazon Connect user name of the user account.

+ *

The name of the security profile.

*/ - Username?: string; + Name?: string; } /** * @public */ -export interface ListUsersResponse { +export interface ListSecurityProfilesResponse { /** * @public - *

Information about the users.

+ *

Information about the security profiles.

*/ - UserSummaryList?: UserSummary[]; + SecurityProfileSummaryList?: SecurityProfileSummary[]; /** * @public @@ -4925,70 +4767,30 @@ export interface ListUsersResponse { /** * @public */ -export interface MonitorContactRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of - * the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The identifier of the contact.

- */ - ContactId: string | undefined; - - /** - * @public - *

The identifier of the user account.

- */ - UserId: string | undefined; - - /** - * @public - *

Specify which monitoring actions the user is allowed to take. For example, whether the user - * is allowed to escalate from silent monitoring to barge.

- */ - AllowedMonitorCapabilities?: (MonitorCapability | string)[]; - +export interface ListTagsForResourceRequest { /** * @public - *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. If not provided, the Amazon Web Services - * SDK populates this field. For more information about idempotency, see - * Making retries safe with idempotent APIs.

+ *

The Amazon Resource Name (ARN) of the resource. All Amazon Connect resources (instances, queues, flows, routing + * profiles, etc) have an ARN. To locate the ARN for an instance, for example, see Find your Amazon Connect instance ID/ARN.

*/ - ClientToken?: string; + resourceArn: string | undefined; } /** * @public */ -export interface MonitorContactResponse { - /** - * @public - *

The identifier of the contact.

- */ - ContactId?: string; - +export interface ListTagsForResourceResponse { /** * @public - *

The ARN of the contact.

+ *

Information about the tags.

*/ - ContactArn?: string; + tags?: Record; } /** * @public */ -export interface PutUserStatusRequest { - /** - * @public - *

The identifier of the user.

- */ - UserId: string | undefined; - +export interface ListTaskTemplatesRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -4997,327 +4799,268 @@ export interface PutUserStatusRequest { /** * @public - *

The identifier of the agent status.

- */ - AgentStatusId: string | undefined; -} - -/** - * @public - */ -export interface PutUserStatusResponse {} - -/** - * @public - */ -export interface ReleasePhoneNumberRequest { - /** - * @public - *

A unique identifier for the phone number.

- */ - PhoneNumberId: string | undefined; - - /** - * @public - *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. If not provided, the Amazon Web Services - * SDK populates this field. For more information about idempotency, see - * Making retries safe with idempotent APIs.

- */ - ClientToken?: string; -} - -/** - * @public - */ -export interface ReplicateInstanceRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance. You can provide the InstanceId, or the entire ARN.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

+ * + *

It is not expected that you set this because the value returned in the previous response is + * always null.

+ *
*/ - InstanceId: string | undefined; + NextToken?: string; /** * @public - *

The Amazon Web Services Region where to replicate the Amazon Connect instance.

+ *

The maximum number of results to return per page.

+ * + *

It is not expected that you set this.

+ *
*/ - ReplicaRegion: string | undefined; + MaxResults?: number; /** * @public - *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. If not provided, the Amazon Web Services - * SDK populates this field. For more information about idempotency, see - * Making retries safe with idempotent APIs.

+ *

Marks a template as ACTIVE or INACTIVE for a task to refer to it. + * Tasks can only be created from ACTIVE templates. + * If a template is marked as INACTIVE, then a task that refers to this template cannot be created.

*/ - ClientToken?: string; + Status?: TaskTemplateStatus | string; /** * @public - *

The alias for the replicated instance. The ReplicaAlias must be unique.

+ *

The name of the task template.

*/ - ReplicaAlias: string | undefined; + Name?: string; } /** * @public + *

Contains summary information about the task template.

*/ -export interface ReplicateInstanceResponse { +export interface TaskTemplateMetadata { /** * @public - *

The identifier of the replicated instance. You can find the instanceId in the - * ARN of the instance. The replicated instance has the same identifier as the instance it was - * replicated from.

+ *

A unique identifier for the task template.

*/ Id?: string; /** * @public - *

The Amazon Resource Name (ARN) of the replicated instance.

+ *

The Amazon Resource Name (ARN) of the task template.

*/ Arn?: string; -} - -/** - * @public - */ -export interface ResumeContactRecordingRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The identifier of the contact.

- */ - ContactId: string | undefined; /** * @public - *

The identifier of the contact. This is the identifier of the contact associated with the - * first interaction with the contact center.

+ *

The name of the task template.

*/ - InitialContactId: string | undefined; -} - -/** - * @public - */ -export interface ResumeContactRecordingResponse {} + Name?: string; -/** - * @public - */ -export interface SearchAvailablePhoneNumbersRequest { /** * @public - *

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

+ *

The description of the task template.

*/ - TargetArn: string | undefined; + Description?: string; /** * @public - *

The ISO country code.

+ *

Marks a template as ACTIVE or INACTIVE for a task to refer to it. + * Tasks can only be created from ACTIVE templates. + * If a template is marked as INACTIVE, then a task that refers to this template cannot be created.

*/ - PhoneNumberCountryCode: PhoneNumberCountryCode | string | undefined; + Status?: TaskTemplateStatus | string; /** * @public - *

The type of phone number.

+ *

The timestamp when the task template was last modified.

*/ - PhoneNumberType: PhoneNumberType | string | undefined; + LastModifiedTime?: Date; /** * @public - *

The prefix of the phone number. If provided, it must contain + as part of the country code.

+ *

The timestamp when the task template was created.

*/ - PhoneNumberPrefix?: string; + CreatedTime?: Date; +} +/** + * @public + */ +export interface ListTaskTemplatesResponse { /** * @public - *

The maximum number of results to return per page.

+ *

Provides details about a list of task templates belonging to an instance.

*/ - MaxResults?: number; + TaskTemplates?: TaskTemplateMetadata[]; /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

If there are additional results, this is the token for the next set of results.

+ * + *

This is always returned as a null in the response.

+ *
*/ NextToken?: string; } /** * @public - *

Information about available phone numbers.

*/ -export interface AvailableNumberSummary { +export interface ListTrafficDistributionGroupsRequest { /** * @public - *

The phone number. Phone numbers are formatted [+] [country code] [subscriber number including area code].

+ *

The maximum number of results to return per page.

*/ - PhoneNumber?: string; + MaxResults?: number; /** * @public - *

The ISO country code.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ - PhoneNumberCountryCode?: PhoneNumberCountryCode | string; + NextToken?: string; /** * @public - *

The type of phone number.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - PhoneNumberType?: PhoneNumberType | string; + InstanceId?: string; } /** * @public + *

Information about traffic distribution groups.

*/ -export interface SearchAvailablePhoneNumbersResponse { +export interface TrafficDistributionGroupSummary { /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The identifier of the traffic distribution group. + * This can be the ID or the ARN if the API is being called in the Region where the traffic distribution group was created. + * The ARN must be provided if the call is from the replicated Region.

*/ - NextToken?: string; + Id?: string; /** * @public - *

A list of available phone numbers that you can claim to your Amazon Connect instance or traffic distribution group.

+ *

The Amazon Resource Name (ARN) of the traffic distribution group.

*/ - AvailableNumbersList?: AvailableNumberSummary[]; -} - -/** - * @public - * @enum - */ -export const StringComparisonType = { - CONTAINS: "CONTAINS", - EXACT: "EXACT", - STARTS_WITH: "STARTS_WITH", -} as const; + Arn?: string; -/** - * @public - */ -export type StringComparisonType = (typeof StringComparisonType)[keyof typeof StringComparisonType]; + /** + * @public + *

The name of the traffic distribution group.

+ */ + Name?: string; -/** - * @public - *

A leaf node condition which can be used to specify a string condition.

- */ -export interface StringCondition { /** * @public - *

The name of the field in the string condition.

+ *

The Amazon Resource Name (ARN) of the traffic distribution group.

*/ - FieldName?: string; + InstanceArn?: string; /** * @public - *

The value of the string.

+ *

The status of the traffic distribution group.

+ * */ - Value?: string; + Status?: TrafficDistributionGroupStatus | string; /** * @public - *

The type of comparison to be made when evaluating the string condition.

+ *

Whether this is the default traffic distribution group created during instance + * replication. The default traffic distribution group cannot be deleted by the + * DeleteTrafficDistributionGroup API. The default traffic distribution group is deleted as + * part of the process for deleting a replica.

*/ - ComparisonType?: StringComparisonType | string; + IsDefault?: boolean; } /** * @public - *

A leaf node condition which can be used to specify a tag condition, for example, HAVE - * BPO = 123.

*/ -export interface TagCondition { +export interface ListTrafficDistributionGroupsResponse { /** * @public - *

The tag key in the tag condition.

+ *

If there are additional results, this is the token for the next set of results.

*/ - TagKey?: string; + NextToken?: string; /** * @public - *

The tag value in the tag condition.

+ *

A list of traffic distribution groups.

*/ - TagValue?: string; + TrafficDistributionGroupSummaryList?: TrafficDistributionGroupSummary[]; } /** * @public - *

An object that can be used to specify Tag conditions inside the SearchFilter. - * This accepts an OR of AND (List of List) input where:

- *
    - *
  • - *

    Top level list specifies conditions that need to be applied with OR - * operator

    - *
  • - *
  • - *

    Inner list specifies conditions that need to be applied with AND - * operator.

    - *
  • - *
*/ -export interface ControlPlaneTagFilter { +export interface ListTrafficDistributionGroupUsersRequest { /** * @public - *

A list of conditions which would be applied together with an OR condition. - *

+ *

The identifier of the traffic distribution group. + * This can be the ID or the ARN if the API is being called in the Region where the traffic distribution group was created. + * The ARN must be provided if the call is from the replicated Region.

*/ - OrConditions?: TagCondition[][]; + TrafficDistributionGroupId: string | undefined; /** * @public - *

A list of conditions which would be applied together with an AND - * condition.

+ *

The maximum number of results to return per page.

*/ - AndConditions?: TagCondition[]; + MaxResults?: number; /** * @public - *

A leaf node condition which can be used to specify a tag condition.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ - TagCondition?: TagCondition; + NextToken?: string; } /** * @public - *

Filters to be applied to search results.

+ *

Summary information about a traffic distribution group user.

*/ -export interface HoursOfOperationSearchFilter { +export interface TrafficDistributionGroupUserSummary { /** * @public - *

An object that can be used to specify Tag conditions inside the SearchFilter. - * This accepts an OR of AND (List of List) input where:

- *
    - *
  • - *

    Top level list specifies conditions that need to be applied with OR - * operator

    - *
  • - *
  • - *

    Inner list specifies conditions that need to be applied with AND - * operator.

    - *
  • - *
+ *

The identifier for the user. This can be the ID or the ARN of the user.

*/ - TagFilter?: ControlPlaneTagFilter; + UserId?: string; } /** * @public */ -export interface SearchHoursOfOperationsResponse { - /** - * @public - *

Information about the hours of operations.

- */ - HoursOfOperations?: HoursOfOperation[]; - +export interface ListTrafficDistributionGroupUsersResponse { /** * @public *

If there are additional results, this is the token for the next set of results.

@@ -5326,1599 +5069,1588 @@ export interface SearchHoursOfOperationsResponse { /** * @public - *

The total number of hours of operations which matched your search query.

+ *

A list of traffic distribution group users.

*/ - ApproximateTotalCount?: number; + TrafficDistributionGroupUserSummaryList?: TrafficDistributionGroupUserSummary[]; } /** * @public - *

Filters to be applied to search results.

+ *

Provides summary information about the use cases for the specified integration + * association.

*/ -export interface PromptSearchFilter { +export interface ListUseCasesRequest { /** * @public - *

An object that can be used to specify Tag conditions inside the SearchFilter. - * This accepts an OR of AND (List of List) input where:

- *
    - *
  • - *

    Top level list specifies conditions that need to be applied with OR - * operator

    - *
  • - *
  • - *

    Inner list specifies conditions that need to be applied with AND - * operator.

    - *
  • - *
+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - TagFilter?: ControlPlaneTagFilter; -} + InstanceId: string | undefined; -/** - * @public - */ -export interface SearchPromptsResponse { /** * @public - *

Information about the prompts.

+ *

The identifier for the integration association.

*/ - Prompts?: Prompt[]; + IntegrationAssociationId: string | undefined; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ NextToken?: string; - /** - * @public - *

The total number of quick connects which matched your search query.

- */ - ApproximateTotalCount?: number; -} - -/** - * @public - * @enum - */ -export const SearchableQueueType = { - STANDARD: "STANDARD", -} as const; - -/** - * @public - */ -export type SearchableQueueType = (typeof SearchableQueueType)[keyof typeof SearchableQueueType]; - -/** - * @public - *

Filters to be applied to search results.

- */ -export interface QueueSearchFilter { - /** - * @public - *

An object that can be used to specify Tag conditions inside the SearchFilter. - * This accepts an OR of AND (List of List) input where:

- *
    - *
  • - *

    Top level list specifies conditions that need to be applied with OR - * operator

    - *
  • - *
  • - *

    Inner list specifies conditions that need to be applied with AND - * operator.

    - *
  • - *
+ /** + * @public + *

The maximum number of results to return per page.

*/ - TagFilter?: ControlPlaneTagFilter; + MaxResults?: number; } /** * @public + *

Contains the + * use + * case.

*/ -export interface SearchQueuesResponse { +export interface UseCase { /** * @public - *

Information about the queues.

+ *

The identifier for the use case.

*/ - Queues?: Queue[]; + UseCaseId?: string; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The Amazon Resource Name (ARN) for the use case.

*/ - NextToken?: string; + UseCaseArn?: string; /** * @public - *

The total number of queues which matched your search query.

+ *

The type of use case to associate to the integration association. Each integration + * association can have only one of each use case type.

*/ - ApproximateTotalCount?: number; + UseCaseType?: UseCaseType | string; } /** * @public - *

Filters to be applied to search results.

*/ -export interface QuickConnectSearchFilter { +export interface ListUseCasesResponse { /** * @public - *

An object that can be used to specify Tag conditions inside the SearchFilter. - * This accepts an OR of AND (List of List) input where:

- *
    - *
  • - *

    Top level list specifies conditions that need to be applied with OR - * operator

    - *
  • - *
  • - *

    Inner list specifies conditions that need to be applied with AND - * operator.

    - *
  • - *
+ *

The use cases.

*/ - TagFilter?: ControlPlaneTagFilter; + UseCaseSummaryList?: UseCase[]; + + /** + * @public + *

If there are additional results, this is the token for the next set of results.

+ */ + NextToken?: string; } /** * @public */ -export interface SearchQuickConnectsResponse { +export interface ListUserHierarchyGroupsRequest { /** * @public - *

Information about the quick connects.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - QuickConnects?: QuickConnect[]; + InstanceId: string | undefined; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ NextToken?: string; /** * @public - *

The total number of quick connects which matched your search query.

- */ - ApproximateTotalCount?: number; -} - -/** - * @public - *

Maximum number (1000) of tags have been returned with current request. Consider changing - * request parameters to get more tags.

- */ -export class MaximumResultReturnedException extends __BaseException { - readonly name: "MaximumResultReturnedException" = "MaximumResultReturnedException"; - readonly $fault: "client" = "client"; - Message?: string; - /** - * @internal + *

The maximum number of results to return per page. The default MaxResult size is 100.

*/ - constructor(opts: __ExceptionOptionType) { - super({ - name: "MaximumResultReturnedException", - $fault: "client", - ...opts, - }); - Object.setPrototypeOf(this, MaximumResultReturnedException.prototype); - this.Message = opts.Message; - } + MaxResults?: number; } /** * @public - *

The search criteria to be used to return tags.

*/ -export interface TagSearchCondition { +export interface ListUserHierarchyGroupsResponse { /** * @public - *

The tag key used in the tag search condition.

+ *

Information about the hierarchy groups.

*/ - tagKey?: string; + UserHierarchyGroupSummaryList?: HierarchyGroupSummary[]; /** * @public - *

The tag value used in the tag search condition.

+ *

If there are additional results, this is the token for the next set of results.

*/ - tagValue?: string; + NextToken?: string; +} +/** + * @public + */ +export interface ListUsersRequest { /** * @public - *

The type of comparison to be made when evaluating the tag key in tag search - * condition.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - tagKeyComparisonType?: StringComparisonType | string; + InstanceId: string | undefined; /** * @public - *

The type of comparison to be made when evaluating the tag value in tag search - * condition.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ - tagValueComparisonType?: StringComparisonType | string; -} + NextToken?: string; -/** - * @public - *

The search criteria to be used to search tags.

- */ -export interface ResourceTagsSearchCriteria { /** * @public - *

The search criteria to be used to return tags.

+ *

The maximum number of results to return per page. The default MaxResult size is 100.

*/ - TagSearchCondition?: TagSearchCondition; + MaxResults?: number; } /** * @public + *

Contains summary information about a user.

*/ -export interface SearchResourceTagsRequest { +export interface UserSummary { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instanceId in the Amazon - * Resource Name (ARN) of the instance.

+ *

The identifier of the user account.

*/ - InstanceId: string | undefined; + Id?: string; /** * @public - *

The list of resource types to be used to search tags from. If not provided or if any empty - * list is provided, this API will search from all supported resource types.

+ *

The Amazon Resource Name (ARN) of the user account.

*/ - ResourceTypes?: string[]; + Arn?: string; /** * @public - *

The token for the next set of results. Use the value returned in the previous response in - * the next request to retrieve the next set of results.

+ *

The Amazon Connect user name of the user account.

*/ - NextToken?: string; + Username?: string; +} +/** + * @public + */ +export interface ListUsersResponse { /** * @public - *

The maximum number of results to return per page.

+ *

Information about the users.

*/ - MaxResults?: number; + UserSummaryList?: UserSummary[]; /** * @public - *

The search criteria to be used to return tags.

+ *

If there are additional results, this is the token for the next set of results.

*/ - SearchCriteria?: ResourceTagsSearchCriteria; + NextToken?: string; } /** * @public - *

A tag set contains tag key and tag value.

*/ -export interface TagSet { +export interface ListViewsRequest { /** * @public - *

The tag key in the tagSet.

+ *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

*/ - key?: string; + InstanceId: string | undefined; /** * @public - *

The tag value in the tagSet.

+ *

The type of the view.

*/ - value?: string; -} + Type?: ViewType | string; -/** - * @public - */ -export interface SearchResourceTagsResponse { /** * @public - *

A list of tags used in the Amazon Connect instance.

+ *

The token for the next set of results. Use the value returned in the previous response in the next request to + * retrieve the next set of results.

*/ - Tags?: TagSet[]; + NextToken?: string; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The maximum number of results to return per page. The default MaxResult size is 100.

*/ - NextToken?: string; + MaxResults?: number; } /** * @public - *

Filters to be applied to search results.

+ *

A summary of a view's metadata.

*/ -export interface RoutingProfileSearchFilter { +export interface ViewSummary { /** * @public - *

An object that can be used to specify Tag conditions inside the SearchFilter. - * This accepts an OR of AND (List of List) input where:

- *
    - *
  • - *

    Top level list specifies conditions that need to be applied with OR - * operator

    - *
  • - *
  • - *

    Inner list specifies conditions that need to be applied with AND - * operator.

    - *
  • - *
+ *

The identifier of the view.

*/ - TagFilter?: ControlPlaneTagFilter; -} + Id?: string; -/** - * @public - */ -export interface SearchRoutingProfilesResponse { /** * @public - *

Information about the routing profiles.

+ *

The Amazon Resource Name (ARN) of the view.

*/ - RoutingProfiles?: RoutingProfile[]; + Arn?: string; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The name of the view.

*/ - NextToken?: string; + Name?: string; /** * @public - *

The total number of routing profiles which matched your search query.

+ *

The type of the view.

*/ - ApproximateTotalCount?: number; -} + Type?: ViewType | string; -/** - * @public - *

Filters to be applied to search results.

- */ -export interface SecurityProfilesSearchFilter { /** * @public - *

An object that can be used to specify Tag conditions inside the SearchFilter. - * This accepts an OR of AND (List of List) input where:

- *
    - *
  • - *

    Top level list specifies conditions that need to be applied with OR - * operator

    - *
  • - *
  • - *

    Inner list specifies conditions that need to be applied with AND - * operator.

    - *
  • - *
+ *

Indicates the view status as either SAVED or PUBLISHED. The + * PUBLISHED status will initiate validation on the content.

*/ - TagFilter?: ControlPlaneTagFilter; + Status?: ViewStatus | string; + + /** + * @public + *

The description of the view.

+ */ + Description?: string; } /** * @public - *

Information about the returned security profiles.

*/ -export interface SecurityProfileSearchSummary { +export interface ListViewsResponse { /** * @public - *

The identifier of the security profile.

+ *

A list of view summaries.

*/ - Id?: string; + ViewsSummaryList?: ViewSummary[]; /** * @public - *

The organization resource identifier.

+ *

The token for the next set of results. Use the value returned in the previous response in the next request to + * retrieve the next set of results.

*/ - OrganizationResourceId?: string; + NextToken?: string; +} +/** + * @public + */ +export interface ListViewVersionsRequest { /** * @public - *

The Amazon Resource Name (ARN) of the security profile.

+ *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

*/ - Arn?: string; + InstanceId: string | undefined; /** * @public - *

The name of the security profile.

+ *

The identifier of the view. Both ViewArn and ViewId can be used.

*/ - SecurityProfileName?: string; + ViewId: string | undefined; /** * @public - *

The description of the security profile.

+ *

The token for the next set of results. Use the value returned in the previous response in the next request to + * retrieve the next set of results.

*/ - Description?: string; + NextToken?: string; /** * @public - *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

+ *

The maximum number of results to return per page. The default MaxResult size is 100.

*/ - Tags?: Record; + MaxResults?: number; } /** * @public + *

A summary of a view version's metadata.

*/ -export interface SearchSecurityProfilesResponse { +export interface ViewVersionSummary { /** * @public - *

Information about the security profiles.

+ *

The identifier of the view version.

*/ - SecurityProfiles?: SecurityProfileSearchSummary[]; + Id?: string; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

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

+ */ + Arn?: string; + + /** + * @public + *

The description of the view version.

*/ - NextToken?: string; + Description?: string; /** * @public - *

The total number of security profiles which matched your search query.

+ *

The name of the view version.

*/ - ApproximateTotalCount?: number; -} - -/** - * @public - * @enum - */ -export const HierarchyGroupMatchType = { - EXACT: "EXACT", - WITH_CHILD_GROUPS: "WITH_CHILD_GROUPS", -} as const; - -/** - * @public - */ -export type HierarchyGroupMatchType = (typeof HierarchyGroupMatchType)[keyof typeof HierarchyGroupMatchType]; + Name?: string; -/** - * @public - *

A leaf node condition which can be used to specify a hierarchy group condition.

- */ -export interface HierarchyGroupCondition { /** * @public - *

The value in the hierarchy group condition.

+ *

The type of the view version.

*/ - Value?: string; + Type?: ViewType | string; /** * @public - *

The type of hierarchy group match.

+ *

The sequentially incremented version of the view version.

*/ - HierarchyGroupMatchType?: HierarchyGroupMatchType | string; -} + Version?: number; -/** - * @public - *

Filters to be applied to search results.

- */ -export interface UserSearchFilter { /** * @public - *

An object that can be used to specify Tag conditions inside the SearchFilter. - * This accepts an OR of AND (List of List) input where:

- *
    - *
  • - *

    Top level list specifies conditions that need to be applied with OR - * operator

    - *
  • - *
  • - *

    Inner list specifies conditions that need to be applied with AND - * operator.

    - *
  • - *
+ *

The description of the view version.

*/ - TagFilter?: ControlPlaneTagFilter; + VersionDescription?: string; } /** * @public - *

The user's first name and last name.

*/ -export interface UserIdentityInfoLite { +export interface ListViewVersionsResponse { /** * @public - *

The user's first name.

+ *

A list of view version summaries.

*/ - FirstName?: string; + ViewVersionSummaryList?: ViewVersionSummary[]; /** * @public - *

The user's last name.

+ *

The token for the next set of results. Use the value returned in the previous response in the next request to + * retrieve the next set of results.

*/ - LastName?: string; + NextToken?: string; } /** * @public - *

Information about the returned users.

*/ -export interface UserSearchSummary { +export interface MonitorContactRequest { /** * @public - *

The Amazon Resource Name (ARN) of the user.

+ *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of + * the instance.

*/ - Arn?: string; + InstanceId: string | undefined; /** * @public - *

The directory identifier of the user.

+ *

The identifier of the contact.

*/ - DirectoryUserId?: string; + ContactId: string | undefined; /** * @public - *

The identifier of the user's hierarchy group.

+ *

The identifier of the user account.

*/ - HierarchyGroupId?: string; + UserId: string | undefined; /** * @public - *

The identifier of the user's summary.

+ *

Specify which monitoring actions the user is allowed to take. For example, whether the user + * is allowed to escalate from silent monitoring to barge.

*/ - Id?: string; + AllowedMonitorCapabilities?: (MonitorCapability | string)[]; /** * @public - *

The user's first name and last name.

+ *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. If not provided, the Amazon Web Services + * SDK populates this field. For more information about idempotency, see + * Making retries safe with idempotent APIs.

*/ - IdentityInfo?: UserIdentityInfoLite; + ClientToken?: string; +} +/** + * @public + */ +export interface MonitorContactResponse { /** * @public - *

Contains information about the phone configuration settings for a user.

+ *

The identifier of the contact.

*/ - PhoneConfig?: UserPhoneConfig; + ContactId?: string; /** * @public - *

The identifier of the user's routing profile.

+ *

The ARN of the contact.

*/ - RoutingProfileId?: string; + ContactArn?: string; +} +/** + * @public + */ +export interface PutUserStatusRequest { /** * @public - *

The identifiers of the user's security profiles.

+ *

The identifier of the user.

*/ - SecurityProfileIds?: string[]; + UserId: string | undefined; /** * @public - *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - Tags?: Record; + InstanceId: string | undefined; /** * @public - *

The name of the user.

+ *

The identifier of the agent status.

*/ - Username?: string; + AgentStatusId: string | undefined; } /** * @public */ -export interface SearchUsersResponse { - /** - * @public - *

Information about the users.

- */ - Users?: UserSearchSummary[]; +export interface PutUserStatusResponse {} +/** + * @public + */ +export interface ReleasePhoneNumberRequest { /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

A unique identifier for the phone number.

*/ - NextToken?: string; + PhoneNumberId: string | undefined; /** * @public - *

The total number of users who matched your search query.

+ *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. If not provided, the Amazon Web Services + * SDK populates this field. For more information about idempotency, see + * Making retries safe with idempotent APIs.

*/ - ApproximateTotalCount?: number; + ClientToken?: string; } /** * @public */ -export interface SearchVocabulariesRequest { +export interface ReplicateInstanceRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance. You can provide the InstanceId, or the entire ARN.

*/ InstanceId: string | undefined; /** * @public - *

The maximum number of results to return per page.

+ *

The Amazon Web Services Region where to replicate the Amazon Connect instance.

*/ - MaxResults?: number; + ReplicaRegion: string | undefined; /** * @public - *

The token for the next set of results. Use the value returned in the previous - * response in the next request to retrieve the next set of results.

+ *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. If not provided, the Amazon Web Services + * SDK populates this field. For more information about idempotency, see + * Making retries safe with idempotent APIs.

*/ - NextToken?: string; + ClientToken?: string; /** * @public - *

The current state of the custom vocabulary.

+ *

The alias for the replicated instance. The ReplicaAlias must be unique.

*/ - State?: VocabularyState | string; + ReplicaAlias: string | undefined; +} +/** + * @public + */ +export interface ReplicateInstanceResponse { /** * @public - *

The starting pattern of the name of the vocabulary.

+ *

The identifier of the replicated instance. You can find the instanceId in the + * ARN of the instance. The replicated instance has the same identifier as the instance it was + * replicated from.

*/ - NameStartsWith?: string; + Id?: string; /** * @public - *

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, see - * What is Amazon Transcribe? - *

+ *

The Amazon Resource Name (ARN) of the replicated instance.

*/ - LanguageCode?: VocabularyLanguageCode | string; + Arn?: string; } /** * @public - *

Contains summary information about the custom vocabulary.

*/ -export interface VocabularySummary { +export interface ResumeContactRecordingRequest { /** * @public - *

A unique name of the custom vocabulary.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - Name: string | undefined; + InstanceId: string | undefined; /** * @public - *

The identifier of the custom vocabulary.

+ *

The identifier of the contact.

*/ - Id: string | undefined; + ContactId: string | undefined; /** * @public - *

The Amazon Resource Name (ARN) of the custom vocabulary.

+ *

The identifier of the contact. This is the identifier of the contact associated with the + * first interaction with the contact center.

*/ - Arn: string | undefined; + InitialContactId: string | undefined; +} + +/** + * @public + */ +export interface ResumeContactRecordingResponse {} +/** + * @public + */ +export interface SearchAvailablePhoneNumbersRequest { /** * @public - *

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, see - * What is Amazon Transcribe? - *

+ *

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

*/ - LanguageCode: VocabularyLanguageCode | string | undefined; + TargetArn: string | undefined; /** * @public - *

The current state of the custom vocabulary.

+ *

The ISO country code.

*/ - State: VocabularyState | string | undefined; + PhoneNumberCountryCode: PhoneNumberCountryCode | string | undefined; /** * @public - *

The timestamp when the custom vocabulary was last modified.

+ *

The type of phone number.

*/ - LastModifiedTime: Date | undefined; + PhoneNumberType: PhoneNumberType | string | undefined; /** * @public - *

The reason why the custom vocabulary was not created.

+ *

The prefix of the phone number. If provided, it must contain + as part of the country code.

*/ - FailureReason?: string; -} + PhoneNumberPrefix?: string; -/** - * @public - */ -export interface SearchVocabulariesResponse { /** * @public - *

The list of the available custom vocabularies.

+ *

The maximum number of results to return per page.

*/ - VocabularySummaryList?: VocabularySummary[]; + MaxResults?: number; /** * @public - *

If there are additional results, this is the token for the next set of results.

+ *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

*/ NextToken?: string; } /** * @public - *

A chat message.

+ *

Information about available phone numbers.

*/ -export interface ChatMessage { - /** - * @public - *

The type of the content. Supported types are text/plain, - * text/markdown, application/json, and - * application/vnd.amazonaws.connect.message.interactive.response.

- */ - ContentType: string | undefined; - +export interface AvailableNumberSummary { /** - * @public - *

The content of the chat message.

- *
    - *
  • - *

    For text/plain and text/markdown, the Length Constraints are - * Minimum of 1, Maximum of 1024.

    - *
  • - *
  • - *

    For application/json, the Length Constraints are Minimum of 1, Maximum of - * 12000.

    - *
  • - *
  • - *

    For application/vnd.amazonaws.connect.message.interactive.response, the - * Length Constraints are Minimum of 1, Maximum of 12288.

    - *
  • - *
+ * @public + *

The phone number. Phone numbers are formatted [+] [country code] [subscriber number including area code].

*/ - Content: string | undefined; + PhoneNumber?: string; + + /** + * @public + *

The ISO country code.

+ */ + PhoneNumberCountryCode?: PhoneNumberCountryCode | string; + + /** + * @public + *

The type of phone number.

+ */ + PhoneNumberType?: PhoneNumberType | string; } /** * @public - *

The customer's details.

*/ -export interface ParticipantDetails { +export interface SearchAvailablePhoneNumbersResponse { /** * @public - *

Display name of the participant.

+ *

If there are additional results, this is the token for the next set of results.

*/ - DisplayName: string | undefined; + NextToken?: string; + + /** + * @public + *

A list of available phone numbers that you can claim to your Amazon Connect instance or traffic distribution group.

+ */ + AvailableNumbersList?: AvailableNumberSummary[]; } /** * @public * @enum */ -export const RehydrationType = { - ENTIRE_PAST_SESSION: "ENTIRE_PAST_SESSION", - FROM_SEGMENT: "FROM_SEGMENT", +export const StringComparisonType = { + CONTAINS: "CONTAINS", + EXACT: "EXACT", + STARTS_WITH: "STARTS_WITH", } as const; /** * @public */ -export type RehydrationType = (typeof RehydrationType)[keyof typeof RehydrationType]; +export type StringComparisonType = (typeof StringComparisonType)[keyof typeof StringComparisonType]; /** * @public - *

Enable persistent chats. For more information about enabling persistent chat, and for - * example use cases and how to configure for them, see Enable persistent chat.

+ *

A leaf node condition which can be used to specify a string condition.

*/ -export interface PersistentChat { +export interface StringCondition { /** * @public - *

The contactId that is used for rehydration depends on the rehydration type. RehydrationType - * is required for persistent chat.

- *
    - *
  • - *

    - * ENTIRE_PAST_SESSION: Rehydrates a chat from the most recently terminated past - * chat contact of the specified past ended chat session. To use this type, provide the - * initialContactId of the past ended chat session in the - * sourceContactId field. In this type, Amazon Connect determines the most - * recent chat contact on the specified chat session that has ended, and uses it to start a - * persistent chat.

    - *
  • - *
  • - *

    - * FROM_SEGMENT: Rehydrates a chat from the past chat contact that is specified - * in the sourceContactId field.

    - *
  • - *
- *

The actual contactId used for rehydration is provided in the response of this API.

+ *

The name of the field in the string condition.

*/ - RehydrationType?: RehydrationType | string; + FieldName?: string; /** * @public - *

The contactId from which a persistent chat session must be started.

+ *

The value of the string.

*/ - SourceContactId?: string; + Value?: string; + + /** + * @public + *

The type of comparison to be made when evaluating the string condition.

+ */ + ComparisonType?: StringComparisonType | string; } /** * @public + *

A leaf node condition which can be used to specify a tag condition, for example, HAVE + * BPO = 123.

*/ -export interface StartChatContactRequest { +export interface TagCondition { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The tag key in the tag condition.

*/ - InstanceId: string | undefined; + TagKey?: string; /** * @public - *

The identifier of the flow for initiating the chat. - * To - * see the ContactFlowId in the Amazon Connect console user interface, on the navigation menu go - * to Routing, Contact Flows. - * Choose the flow. On the flow page, under the name of the flow, choose Show - * additional flow information. The ContactFlowId is the last part of the ARN, shown - * here in bold:

- *

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx - *

+ *

The tag value in the tag condition.

*/ - ContactFlowId: string | undefined; + TagValue?: string; +} +/** + * @public + *

An object that can be used to specify Tag conditions inside the SearchFilter. + * This accepts an OR of AND (List of List) input where:

+ *
    + *
  • + *

    Top level list specifies conditions that need to be applied with OR + * operator

    + *
  • + *
  • + *

    Inner list specifies conditions that need to be applied with AND + * operator.

    + *
  • + *
+ */ +export interface ControlPlaneTagFilter { /** * @public - *

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes. They can be accessed in flows just like any other contact attributes.

- *

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys - * can include only alphanumeric, dash, and underscore characters.

+ *

A list of conditions which would be applied together with an OR condition. + *

*/ - Attributes?: Record; + OrConditions?: TagCondition[][]; /** * @public - *

Information identifying the participant.

+ *

A list of conditions which would be applied together with an AND + * condition.

*/ - ParticipantDetails: ParticipantDetails | undefined; + AndConditions?: TagCondition[]; /** * @public - *

The initial message to be sent to the newly created chat.

+ *

A leaf node condition which can be used to specify a tag condition.

*/ - InitialMessage?: ChatMessage; + TagCondition?: TagCondition; +} +/** + * @public + *

Filters to be applied to search results.

+ */ +export interface HoursOfOperationSearchFilter { /** * @public - *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. If not provided, the Amazon Web Services - * SDK populates this field. For more information about idempotency, see - * Making retries safe with idempotent APIs.

+ *

An object that can be used to specify Tag conditions inside the SearchFilter. + * This accepts an OR of AND (List of List) input where:

+ *
    + *
  • + *

    Top level list specifies conditions that need to be applied with OR + * operator

    + *
  • + *
  • + *

    Inner list specifies conditions that need to be applied with AND + * operator.

    + *
  • + *
*/ - ClientToken?: string; + TagFilter?: ControlPlaneTagFilter; +} +/** + * @public + */ +export interface SearchHoursOfOperationsResponse { /** * @public - *

The total duration of the newly started chat session. If not specified, the chat session - * duration defaults to 25 hour. The minimum configurable time is 60 minutes. The maximum - * configurable time is 10,080 minutes (7 days).

+ *

Information about the hours of operations.

*/ - ChatDurationInMinutes?: number; + HoursOfOperations?: HoursOfOperation[]; /** * @public - *

The supported chat message content types. Supported types are text/plain, - * text/markdown, application/json, - * application/vnd.amazonaws.connect.message.interactive, and - * application/vnd.amazonaws.connect.message.interactive.response.

- *

Content types must always contain text/plain. You can then put any other - * supported type in the list. For example, all the following lists are valid because they contain - * text/plain: [text/plain, text/markdown, application/json], - * [text/markdown, text/plain], [text/plain, application/json, - * application/vnd.amazonaws.connect.message.interactive.response].

- * - *

The type application/vnd.amazonaws.connect.message.interactive is required to - * use the Show - * view flow block.

- *
+ *

If there are additional results, this is the token for the next set of results.

*/ - SupportedMessagingContentTypes?: string[]; + NextToken?: string; /** * @public - *

Enable persistent chats. For more information about enabling persistent chat, and for - * example use cases and how to configure for them, see Enable persistent chat.

+ *

The total number of hours of operations which matched your search query.

*/ - PersistentChat?: PersistentChat; + ApproximateTotalCount?: number; +} +/** + * @public + *

Filters to be applied to search results.

+ */ +export interface PromptSearchFilter { /** * @public - *

The unique identifier for an Amazon Connect contact. This identifier is related to the - * chat starting.

- * - *

You cannot provide data for both RelatedContactId and PersistentChat.

- *
+ *

An object that can be used to specify Tag conditions inside the SearchFilter. + * This accepts an OR of AND (List of List) input where:

+ *
    + *
  • + *

    Top level list specifies conditions that need to be applied with OR + * operator

    + *
  • + *
  • + *

    Inner list specifies conditions that need to be applied with AND + * operator.

    + *
  • + *
*/ - RelatedContactId?: string; + TagFilter?: ControlPlaneTagFilter; } /** * @public */ -export interface StartChatContactResponse { +export interface SearchPromptsResponse { /** * @public - *

The identifier of this contact within the Amazon Connect instance.

+ *

Information about the prompts.

*/ - ContactId?: string; + Prompts?: Prompt[]; /** * @public - *

The identifier for a chat participant. The participantId for a chat participant is the same - * throughout the chat lifecycle.

+ *

If there are additional results, this is the token for the next set of results.

*/ - ParticipantId?: string; + NextToken?: string; /** * @public - *

The token used by the chat participant to call CreateParticipantConnection. The participant token is valid for the lifetime of a chat - * participant.

+ *

The total number of quick connects which matched your search query.

*/ - ParticipantToken?: string; + ApproximateTotalCount?: number; +} + +/** + * @public + * @enum + */ +export const SearchableQueueType = { + STANDARD: "STANDARD", +} as const; + +/** + * @public + */ +export type SearchableQueueType = (typeof SearchableQueueType)[keyof typeof SearchableQueueType]; +/** + * @public + *

Filters to be applied to search results.

+ */ +export interface QueueSearchFilter { /** * @public - *

The contactId from which a persistent chat session is started. This field is populated only - * for persistent chats.

+ *

An object that can be used to specify Tag conditions inside the SearchFilter. + * This accepts an OR of AND (List of List) input where:

+ *
    + *
  • + *

    Top level list specifies conditions that need to be applied with OR + * operator

    + *
  • + *
  • + *

    Inner list specifies conditions that need to be applied with AND + * operator.

    + *
  • + *
*/ - ContinuedFromContactId?: string; + TagFilter?: ControlPlaneTagFilter; } /** * @public */ -export interface StartContactEvaluationRequest { +export interface SearchQueuesResponse { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

Information about the queues.

*/ - InstanceId: string | undefined; + Queues?: Queue[]; /** * @public - *

The identifier of the contact in this instance of Amazon Connect.

+ *

If there are additional results, this is the token for the next set of results.

*/ - ContactId: string | undefined; + NextToken?: string; /** * @public - *

The unique identifier for the evaluation form.

+ *

The total number of queues which matched your search query.

*/ - EvaluationFormId: string | undefined; + ApproximateTotalCount?: number; +} +/** + * @public + *

Filters to be applied to search results.

+ */ +export interface QuickConnectSearchFilter { /** * @public - *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. If not provided, the Amazon Web Services - * SDK populates this field. For more information about idempotency, see - * Making retries safe with idempotent APIs.

+ *

An object that can be used to specify Tag conditions inside the SearchFilter. + * This accepts an OR of AND (List of List) input where:

+ *
    + *
  • + *

    Top level list specifies conditions that need to be applied with OR + * operator

    + *
  • + *
  • + *

    Inner list specifies conditions that need to be applied with AND + * operator.

    + *
  • + *
*/ - ClientToken?: string; + TagFilter?: ControlPlaneTagFilter; } /** * @public */ -export interface StartContactEvaluationResponse { +export interface SearchQuickConnectsResponse { /** * @public - *

A unique identifier for the contact evaluation.

+ *

Information about the quick connects.

*/ - EvaluationId: string | undefined; + QuickConnects?: QuickConnect[]; /** * @public - *

The Amazon Resource Name (ARN) for the contact evaluation resource.

+ *

If there are additional results, this is the token for the next set of results.

*/ - EvaluationArn: string | undefined; -} - -/** - * @public - * @enum - */ -export const VoiceRecordingTrack = { - ALL: "ALL", - FROM_AGENT: "FROM_AGENT", - TO_AGENT: "TO_AGENT", -} as const; + NextToken?: string; -/** - * @public - */ -export type VoiceRecordingTrack = (typeof VoiceRecordingTrack)[keyof typeof VoiceRecordingTrack]; + /** + * @public + *

The total number of quick connects which matched your search query.

+ */ + ApproximateTotalCount?: number; +} /** * @public - *

Contains information about the recording configuration settings.

+ *

Maximum number (1000) of tags have been returned with current request. Consider changing + * request parameters to get more tags.

*/ -export interface VoiceRecordingConfiguration { +export class MaximumResultReturnedException extends __BaseException { + readonly name: "MaximumResultReturnedException" = "MaximumResultReturnedException"; + readonly $fault: "client" = "client"; + Message?: string; /** - * @public - *

Identifies which track is being recorded.

+ * @internal */ - VoiceRecordingTrack?: VoiceRecordingTrack | string; + constructor(opts: __ExceptionOptionType) { + super({ + name: "MaximumResultReturnedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, MaximumResultReturnedException.prototype); + this.Message = opts.Message; + } } /** * @public + *

The search criteria to be used to return tags.

*/ -export interface StartContactRecordingRequest { +export interface TagSearchCondition { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The tag key used in the tag search condition.

*/ - InstanceId: string | undefined; + tagKey?: string; /** * @public - *

The identifier of the contact.

+ *

The tag value used in the tag search condition.

*/ - ContactId: string | undefined; + tagValue?: string; /** * @public - *

The identifier of the contact. This is the identifier of the contact associated with the - * first interaction with the contact center.

+ *

The type of comparison to be made when evaluating the tag key in tag search + * condition.

*/ - InitialContactId: string | undefined; + tagKeyComparisonType?: StringComparisonType | string; /** * @public - *

The person being recorded.

+ *

The type of comparison to be made when evaluating the tag value in tag search + * condition.

*/ - VoiceRecordingConfiguration: VoiceRecordingConfiguration | undefined; + tagValueComparisonType?: StringComparisonType | string; } /** * @public + *

The search criteria to be used to search tags.

*/ -export interface StartContactRecordingResponse {} - -/** - * @public - *

The streaming configuration, such as the Amazon SNS streaming endpoint.

- */ -export interface ChatStreamingConfiguration { +export interface ResourceTagsSearchCriteria { /** * @public - *

The Amazon Resource Name (ARN) of the standard Amazon SNS topic. The Amazon Resource Name (ARN) of the streaming endpoint that is used - * to publish real-time message streaming for chat conversations.

+ *

The search criteria to be used to return tags.

*/ - StreamingEndpointArn: string | undefined; + TagSearchCondition?: TagSearchCondition; } /** * @public */ -export interface StartContactStreamingRequest { +export interface SearchResourceTagsRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier of the Amazon Connect instance. You can find the instanceId in the Amazon + * Resource Name (ARN) of the instance.

*/ InstanceId: string | undefined; /** * @public - *

The identifier of the contact. This is the identifier of the contact associated with the - * first interaction with the contact center.

+ *

The list of resource types to be used to search tags from. If not provided or if any empty + * list is provided, this API will search from all supported resource types.

*/ - ContactId: string | undefined; + ResourceTypes?: string[]; /** * @public - *

The streaming configuration, such as the Amazon SNS streaming endpoint.

+ *

The token for the next set of results. Use the value returned in the previous response in + * the next request to retrieve the next set of results.

*/ - ChatStreamingConfiguration: ChatStreamingConfiguration | undefined; + NextToken?: string; /** * @public - *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. If not provided, the Amazon Web Services - * SDK populates this field. For more information about idempotency, see - * Making retries safe with idempotent APIs.

+ *

The maximum number of results to return per page.

*/ - ClientToken?: string; + MaxResults?: number; + + /** + * @public + *

The search criteria to be used to return tags.

+ */ + SearchCriteria?: ResourceTagsSearchCriteria; } /** * @public + *

A tag set contains tag key and tag value.

*/ -export interface StartContactStreamingResponse { +export interface TagSet { /** * @public - *

The identifier of the streaming configuration enabled.

+ *

The tag key in the tagSet.

*/ - StreamingId: string | undefined; + key?: string; + + /** + * @public + *

The tag value in the tagSet.

+ */ + value?: string; } /** * @public - *

Outbound calls to the destination number are not allowed.

*/ -export class DestinationNotAllowedException extends __BaseException { - readonly name: "DestinationNotAllowedException" = "DestinationNotAllowedException"; - readonly $fault: "client" = "client"; +export interface SearchResourceTagsResponse { /** * @public - *

The message about the outbound calls.

+ *

A list of tags used in the Amazon Connect instance.

*/ - Message?: string; + Tags?: TagSet[]; + /** - * @internal + * @public + *

If there are additional results, this is the token for the next set of results.

*/ - constructor(opts: __ExceptionOptionType) { - super({ - name: "DestinationNotAllowedException", - $fault: "client", - ...opts, - }); - Object.setPrototypeOf(this, DestinationNotAllowedException.prototype); - this.Message = opts.Message; - } + NextToken?: string; } /** * @public - *

The contact is not permitted.

+ *

Filters to be applied to search results.

*/ -export class OutboundContactNotPermittedException extends __BaseException { - readonly name: "OutboundContactNotPermittedException" = "OutboundContactNotPermittedException"; - readonly $fault: "client" = "client"; +export interface RoutingProfileSearchFilter { /** * @public - *

The message about the contact.

- */ - Message?: string; - /** - * @internal + *

An object that can be used to specify Tag conditions inside the SearchFilter. + * This accepts an OR of AND (List of List) input where:

+ *
    + *
  • + *

    Top level list specifies conditions that need to be applied with OR + * operator

    + *
  • + *
  • + *

    Inner list specifies conditions that need to be applied with AND + * operator.

    + *
  • + *
*/ - constructor(opts: __ExceptionOptionType) { - super({ - name: "OutboundContactNotPermittedException", - $fault: "client", - ...opts, - }); - Object.setPrototypeOf(this, OutboundContactNotPermittedException.prototype); - this.Message = opts.Message; - } + TagFilter?: ControlPlaneTagFilter; } /** * @public - *

Configuration of the answering machine detection.

*/ -export interface AnswerMachineDetectionConfig { +export interface SearchRoutingProfilesResponse { /** * @public - *

The flag to indicate if answer machine detection analysis needs to be performed for a voice - * call. If set to true, TrafficType must be set as CAMPAIGN. - *

+ *

Information about the routing profiles.

*/ - EnableAnswerMachineDetection?: boolean; + RoutingProfiles?: RoutingProfile[]; /** * @public - *

Wait for the answering machine prompt.

+ *

If there are additional results, this is the token for the next set of results.

*/ - AwaitAnswerMachinePrompt?: boolean; -} + NextToken?: string; -/** - * @public - * @enum - */ -export const TrafficType = { - CAMPAIGN: "CAMPAIGN", - GENERAL: "GENERAL", -} as const; + /** + * @public + *

The total number of routing profiles which matched your search query.

+ */ + ApproximateTotalCount?: number; +} /** * @public + *

Filters to be applied to search results.

*/ -export type TrafficType = (typeof TrafficType)[keyof typeof TrafficType]; +export interface SecurityProfilesSearchFilter { + /** + * @public + *

An object that can be used to specify Tag conditions inside the SearchFilter. + * This accepts an OR of AND (List of List) input where:

+ *
    + *
  • + *

    Top level list specifies conditions that need to be applied with OR + * operator

    + *
  • + *
  • + *

    Inner list specifies conditions that need to be applied with AND + * operator.

    + *
  • + *
+ */ + TagFilter?: ControlPlaneTagFilter; +} /** * @public + *

Information about the returned security profiles.

*/ -export interface StartOutboundVoiceContactRequest { +export interface SecurityProfileSearchSummary { /** * @public - *

The phone number of the customer, in E.164 format.

+ *

The identifier of the security profile.

*/ - DestinationPhoneNumber: string | undefined; + Id?: string; /** * @public - *

The - * identifier of the flow for the outbound call. To see the ContactFlowId in the Amazon Connect - * console user interface, on the navigation menu go to Routing, - * Contact Flows. Choose the flow. On the flow page, under the - * name of the flow, choose Show additional flow information. The - * ContactFlowId is the last part of the ARN, shown here in bold:

- *

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx - *

+ *

The organization resource identifier.

*/ - ContactFlowId: string | undefined; + OrganizationResourceId?: string; /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The Amazon Resource Name (ARN) of the security profile.

*/ - InstanceId: string | undefined; + Arn?: string; /** * @public - *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. If not provided, the Amazon Web Services - * SDK populates this field. For more information about idempotency, see - * Making retries safe with idempotent APIs. The token is valid for 7 days after creation. If a contact is already started, - * the contact ID is returned. - *

+ *

The name of the security profile.

*/ - ClientToken?: string; + SecurityProfileName?: string; /** * @public - *

The phone number associated with the Amazon Connect instance, in E.164 format. If you do - * not specify a source phone number, you must specify a queue.

+ *

The description of the security profile.

*/ - SourcePhoneNumber?: string; + Description?: string; /** * @public - *

The queue for the call. If you specify a queue, the phone displayed for caller ID is the - * phone number specified in the queue. If you do not specify a queue, the queue defined in the flow - * is used. If you do not specify a queue, you must specify a source phone number.

+ *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

*/ - QueueId?: string; + Tags?: Record; +} +/** + * @public + */ +export interface SearchSecurityProfilesResponse { /** * @public - *

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in flows just like any other contact attributes.

- *

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys - * can include only alphanumeric, dash, and underscore characters.

+ *

Information about the security profiles.

*/ - Attributes?: Record; + SecurityProfiles?: SecurityProfileSearchSummary[]; /** * @public - *

Configuration of the answering machine detection for this outbound call.

+ *

If there are additional results, this is the token for the next set of results.

*/ - AnswerMachineDetectionConfig?: AnswerMachineDetectionConfig; + NextToken?: string; /** * @public - *

The campaign identifier of the outbound communication.

+ *

The total number of security profiles which matched your search query.

*/ - CampaignId?: string; + ApproximateTotalCount?: number; +} + +/** + * @public + * @enum + */ +export const HierarchyGroupMatchType = { + EXACT: "EXACT", + WITH_CHILD_GROUPS: "WITH_CHILD_GROUPS", +} as const; + +/** + * @public + */ +export type HierarchyGroupMatchType = (typeof HierarchyGroupMatchType)[keyof typeof HierarchyGroupMatchType]; +/** + * @public + *

A leaf node condition which can be used to specify a hierarchy group condition.

+ */ +export interface HierarchyGroupCondition { /** * @public - *

Denotes the class of traffic. Calls with different traffic types are handled differently by - * Amazon Connect. The default value is GENERAL. Use CAMPAIGN if - * EnableAnswerMachineDetection is set to true. For all other cases, use - * GENERAL.

+ *

The value in the hierarchy group condition.

*/ - TrafficType?: TrafficType | string; + Value?: string; + + /** + * @public + *

The type of hierarchy group match.

+ */ + HierarchyGroupMatchType?: HierarchyGroupMatchType | string; } /** * @public + *

Filters to be applied to search results.

*/ -export interface StartOutboundVoiceContactResponse { +export interface UserSearchFilter { /** * @public - *

The identifier of this contact within the Amazon Connect instance.

+ *

An object that can be used to specify Tag conditions inside the SearchFilter. + * This accepts an OR of AND (List of List) input where:

+ *
    + *
  • + *

    Top level list specifies conditions that need to be applied with OR + * operator

    + *
  • + *
  • + *

    Inner list specifies conditions that need to be applied with AND + * operator.

    + *
  • + *
*/ - ContactId?: string; + TagFilter?: ControlPlaneTagFilter; } /** * @public + *

The user's first name and last name.

*/ -export interface StartTaskContactRequest { +export interface UserIdentityInfoLite { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The user's first name.

*/ - InstanceId: string | undefined; + FirstName?: string; /** * @public - *

The identifier of the previous chat, voice, or task contact.

+ *

The user's last name.

*/ - PreviousContactId?: string; + LastName?: string; +} +/** + * @public + *

Information about the returned users.

+ */ +export interface UserSearchSummary { /** * @public - *

The identifier of the flow for initiating the tasks. To see the ContactFlowId in the Amazon Connect console user interface, on the navigation menu go to Routing, Contact Flows. Choose the flow. On the - * flow page, under the name of the flow, choose Show additional flow - * information. The ContactFlowId is the last part of the ARN, shown here in bold:

- *

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx - *

+ *

The Amazon Resource Name (ARN) of the user.

*/ - ContactFlowId?: string; + Arn?: string; /** * @public - *

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in flows just like any other contact attributes.

- *

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys - * can include only alphanumeric, dash, and underscore characters.

+ *

The directory identifier of the user.

*/ - Attributes?: Record; + DirectoryUserId?: string; /** * @public - *

The name of a task that is shown to an agent in the Contact Control Panel (CCP).

+ *

The identifier of the user's hierarchy group.

*/ - Name: string | undefined; + HierarchyGroupId?: string; /** * @public - *

A formatted URL that is shown to an agent in the Contact Control Panel (CCP).

+ *

The identifier of the user's summary.

*/ - References?: Record; + Id?: string; /** * @public - *

A description of the task that is shown to an agent in the Contact Control Panel - * (CCP).

+ *

The user's first name and last name.

*/ - Description?: string; + IdentityInfo?: UserIdentityInfoLite; /** * @public - *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. If not provided, the Amazon Web Services - * SDK populates this field. For more information about idempotency, see - * Making retries safe with idempotent APIs.

+ *

Contains information about the phone configuration settings for a user.

*/ - ClientToken?: string; + PhoneConfig?: UserPhoneConfig; /** * @public - *

The timestamp, in Unix Epoch seconds format, at which to start running the inbound flow. The scheduled time cannot be in the past. It must be within up to 6 days in future.

+ *

The identifier of the user's routing profile.

*/ - ScheduledTime?: Date; + RoutingProfileId?: string; /** * @public - *

A unique identifier for the task template.

+ *

The identifiers of the user's security profiles.

*/ - TaskTemplateId?: string; + SecurityProfileIds?: string[]; /** * @public - *

The identifier for the quick connect.

+ *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

*/ - QuickConnectId?: string; + Tags?: Record; /** * @public - *

The contactId that is related to this contact.

+ *

The name of the user.

*/ - RelatedContactId?: string; + Username?: string; } /** * @public */ -export interface StartTaskContactResponse { +export interface SearchUsersResponse { /** * @public - *

The identifier of this contact within the Amazon Connect instance.

+ *

Information about the users.

*/ - ContactId?: string; -} + Users?: UserSearchSummary[]; -/** - * @public - *

The contact with the specified ID is not active or does not exist. Applies to Voice calls - * only, not to Chat, Task, or Voice Callback.

- */ -export class ContactNotFoundException extends __BaseException { - readonly name: "ContactNotFoundException" = "ContactNotFoundException"; - readonly $fault: "client" = "client"; /** * @public - *

The message.

+ *

If there are additional results, this is the token for the next set of results.

*/ - Message?: string; + NextToken?: string; + /** - * @internal + * @public + *

The total number of users who matched your search query.

*/ - constructor(opts: __ExceptionOptionType) { - super({ - name: "ContactNotFoundException", - $fault: "client", - ...opts, - }); - Object.setPrototypeOf(this, ContactNotFoundException.prototype); - this.Message = opts.Message; - } + ApproximateTotalCount?: number; } /** * @public */ -export interface StopContactRequest { +export interface SearchVocabulariesRequest { /** * @public - *

The ID of the contact.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - ContactId: string | undefined; + InstanceId: string | undefined; /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The maximum number of results to return per page.

*/ - InstanceId: string | undefined; -} - -/** - * @public - */ -export interface StopContactResponse {} + MaxResults?: number; + + /** + * @public + *

The token for the next set of results. Use the value returned in the previous + * response in the next request to retrieve the next set of results.

+ */ + NextToken?: string; -/** - * @public - */ -export interface StopContactRecordingRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The current state of the custom vocabulary.

*/ - InstanceId: string | undefined; + State?: VocabularyState | string; /** * @public - *

The identifier of the contact.

+ *

The starting pattern of the name of the vocabulary.

*/ - ContactId: string | undefined; + NameStartsWith?: string; /** * @public - *

The identifier of the contact. This is the identifier of the contact associated with the - * first interaction with the contact center.

+ *

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, see + * What is Amazon Transcribe? + *

*/ - InitialContactId: string | undefined; + LanguageCode?: VocabularyLanguageCode | string; } /** * @public + *

Contains summary information about the custom vocabulary.

*/ -export interface StopContactRecordingResponse {} - -/** - * @public - */ -export interface StopContactStreamingRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - +export interface VocabularySummary { /** * @public - *

The identifier of the contact. This is the identifier of the contact that is associated with - * the first interaction with the contact center.

+ *

A unique name of the custom vocabulary.

*/ - ContactId: string | undefined; + Name: string | undefined; /** * @public - *

The identifier of the streaming configuration enabled.

+ *

The identifier of the custom vocabulary.

*/ - StreamingId: string | undefined; -} - -/** - * @public - */ -export interface StopContactStreamingResponse {} + Id: string | undefined; -/** - * @public - *

Information about input answers for a contact evaluation.

- */ -export interface EvaluationAnswerInput { /** * @public - *

The value for an answer in a contact evaluation.

+ *

The Amazon Resource Name (ARN) of the custom vocabulary.

*/ - Value?: EvaluationAnswerData; -} + Arn: string | undefined; -/** - * @public - */ -export interface SubmitContactEvaluationRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The language code of the vocabulary entries. For a list of languages and their corresponding language codes, see + * What is Amazon Transcribe? + *

*/ - InstanceId: string | undefined; + LanguageCode: VocabularyLanguageCode | string | undefined; /** * @public - *

A unique identifier for the contact evaluation.

+ *

The current state of the custom vocabulary.

*/ - EvaluationId: string | undefined; + State: VocabularyState | string | undefined; /** * @public - *

A map of question identifiers to answer value.

+ *

The timestamp when the custom vocabulary was last modified.

*/ - Answers?: Record; + LastModifiedTime: Date | undefined; /** * @public - *

A map of question identifiers to note value.

+ *

The reason why the custom vocabulary was not created.

*/ - Notes?: Record; + FailureReason?: string; } /** * @public */ -export interface SubmitContactEvaluationResponse { +export interface SearchVocabulariesResponse { /** * @public - *

A unique identifier for the contact evaluation.

+ *

The list of the available custom vocabularies.

*/ - EvaluationId: string | undefined; + VocabularySummaryList?: VocabularySummary[]; /** * @public - *

The Amazon Resource Name (ARN) for the contact evaluation resource.

+ *

If there are additional results, this is the token for the next set of results.

*/ - EvaluationArn: string | undefined; + NextToken?: string; } /** * @public + *

A chat message.

*/ -export interface SuspendContactRecordingRequest { +export interface ChatMessage { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The type of the content. Supported types are text/plain, + * text/markdown, application/json, and + * application/vnd.amazonaws.connect.message.interactive.response.

*/ - InstanceId: string | undefined; + ContentType: string | undefined; /** * @public - *

The identifier of the contact.

+ *

The content of the chat message.

+ *
    + *
  • + *

    For text/plain and text/markdown, the Length Constraints are + * Minimum of 1, Maximum of 1024.

    + *
  • + *
  • + *

    For application/json, the Length Constraints are Minimum of 1, Maximum of + * 12000.

    + *
  • + *
  • + *

    For application/vnd.amazonaws.connect.message.interactive.response, the + * Length Constraints are Minimum of 1, Maximum of 12288.

    + *
  • + *
*/ - ContactId: string | undefined; + Content: string | undefined; +} +/** + * @public + *

The customer's details.

+ */ +export interface ParticipantDetails { /** * @public - *

The identifier of the contact. This is the identifier of the contact associated with the - * first interaction with the contact center.

+ *

Display name of the participant.

*/ - InitialContactId: string | undefined; + DisplayName: string | undefined; } +/** + * @public + * @enum + */ +export const RehydrationType = { + ENTIRE_PAST_SESSION: "ENTIRE_PAST_SESSION", + FROM_SEGMENT: "FROM_SEGMENT", +} as const; + /** * @public */ -export interface SuspendContactRecordingResponse {} +export type RehydrationType = (typeof RehydrationType)[keyof typeof RehydrationType]; /** * @public + *

Enable persistent chats. For more information about enabling persistent chat, and for + * example use cases and how to configure for them, see Enable persistent chat.

*/ -export interface TagResourceRequest { +export interface PersistentChat { /** * @public - *

The Amazon Resource Name (ARN) of the resource.

+ *

The contactId that is used for rehydration depends on the rehydration type. RehydrationType + * is required for persistent chat.

+ *
    + *
  • + *

    + * ENTIRE_PAST_SESSION: Rehydrates a chat from the most recently terminated past + * chat contact of the specified past ended chat session. To use this type, provide the + * initialContactId of the past ended chat session in the + * sourceContactId field. In this type, Amazon Connect determines the most + * recent chat contact on the specified chat session that has ended, and uses it to start a + * persistent chat.

    + *
  • + *
  • + *

    + * FROM_SEGMENT: Rehydrates a chat from the past chat contact that is specified + * in the sourceContactId field.

    + *
  • + *
+ *

The actual contactId used for rehydration is provided in the response of this API.

*/ - resourceArn: string | undefined; + RehydrationType?: RehydrationType | string; /** * @public - *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

+ *

The contactId from which a persistent chat session must be started.

*/ - tags: Record | undefined; + SourceContactId?: string; } /** * @public */ -export interface TransferContactRequest { +export interface StartChatContactRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -6927,27 +6659,37 @@ export interface TransferContactRequest { /** * @public - *

The identifier of the contact in this instance of Amazon Connect.

+ *

The identifier of the flow for initiating the chat. + * To + * see the ContactFlowId in the Amazon Connect console user interface, on the navigation menu go + * to Routing, Contact Flows. + * Choose the flow. On the flow page, under the name of the flow, choose Show + * additional flow information. The ContactFlowId is the last part of the ARN, shown + * here in bold:

+ *

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx + *

*/ - ContactId: string | undefined; + ContactFlowId: string | undefined; /** * @public - *

The identifier for the queue.

+ *

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes. They can be accessed in flows just like any other contact attributes.

+ *

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys + * can include only alphanumeric, dash, and underscore characters.

*/ - QueueId?: string; + Attributes?: Record; /** * @public - *

The identifier for the user. This can be the ID or the ARN of the user.

+ *

Information identifying the participant.

*/ - UserId?: string; + ParticipantDetails: ParticipantDetails | undefined; /** * @public - *

The identifier of the flow.

+ *

The initial message to be sent to the newly created chat.

*/ - ContactFlowId: string | undefined; + InitialMessage?: ChatMessage; /** * @public @@ -6957,93 +6699,88 @@ export interface TransferContactRequest { * Making retries safe with idempotent APIs.

*/ ClientToken?: string; -} - -/** - * @public - */ -export interface TransferContactResponse { - /** - * @public - *

The identifier of the contact in this instance of Amazon Connect.

- */ - ContactId?: string; - - /** - * @public - *

The Amazon Resource Name (ARN) of the contact.

- */ - ContactArn?: string; -} - -/** - * @public - */ -export interface UntagResourceRequest { - /** - * @public - *

The Amazon Resource Name (ARN) of the resource.

- */ - resourceArn: string | undefined; /** * @public - *

The tag keys.

+ *

The total duration of the newly started chat session. If not specified, the chat session + * duration defaults to 25 hour. The minimum configurable time is 60 minutes. The maximum + * configurable time is 10,080 minutes (7 days).

*/ - tagKeys: string[] | undefined; -} + ChatDurationInMinutes?: number; -/** - * @public - */ -export interface UpdateAgentStatusRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The supported chat message content types. Supported types are text/plain, + * text/markdown, application/json, + * application/vnd.amazonaws.connect.message.interactive, and + * application/vnd.amazonaws.connect.message.interactive.response.

+ *

Content types must always contain text/plain. You can then put any other + * supported type in the list. For example, all the following lists are valid because they contain + * text/plain: [text/plain, text/markdown, application/json], + * [text/markdown, text/plain], [text/plain, application/json, + * application/vnd.amazonaws.connect.message.interactive.response].

+ * + *

The type application/vnd.amazonaws.connect.message.interactive is required to + * use the Show + * view flow block.

+ *
*/ - InstanceId: string | undefined; + SupportedMessagingContentTypes?: string[]; /** * @public - *

The identifier of the agent status.

+ *

Enable persistent chats. For more information about enabling persistent chat, and for + * example use cases and how to configure for them, see Enable persistent chat.

*/ - AgentStatusId: string | undefined; + PersistentChat?: PersistentChat; /** * @public - *

The name of the agent status.

+ *

The unique identifier for an Amazon Connect contact. This identifier is related to the + * chat starting.

+ * + *

You cannot provide data for both RelatedContactId and PersistentChat.

+ *
*/ - Name?: string; + RelatedContactId?: string; +} +/** + * @public + */ +export interface StartChatContactResponse { /** * @public - *

The description of the agent status.

+ *

The identifier of this contact within the Amazon Connect instance.

*/ - Description?: string; + ContactId?: string; /** * @public - *

The state of the agent status.

+ *

The identifier for a chat participant. The participantId for a chat participant is the same + * throughout the chat lifecycle.

*/ - State?: AgentStatusState | string; + ParticipantId?: string; /** * @public - *

The display order of the agent status.

+ *

The token used by the chat participant to call CreateParticipantConnection. The participant token is valid for the lifetime of a chat + * participant.

*/ - DisplayOrder?: number; + ParticipantToken?: string; /** * @public - *

A number indicating the reset order of the agent status.

+ *

The contactId from which a persistent chat session is started. This field is populated only + * for persistent chats.

*/ - ResetOrderNumber?: boolean; + ContinuedFromContactId?: string; } /** * @public */ -export interface UpdateContactRequest { +export interface StartContactEvaluationRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7052,71 +6789,74 @@ export interface UpdateContactRequest { /** * @public - *

The identifier of the contact. This is the identifier of the contact associated with the - * first interaction with your contact center.

+ *

The identifier of the contact in this instance of Amazon Connect.

*/ ContactId: string | undefined; /** * @public - *

The name of the contact.

+ *

The unique identifier for the evaluation form.

*/ - Name?: string; + EvaluationFormId: string | undefined; /** * @public - *

The description of the contact.

+ *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. If not provided, the Amazon Web Services + * SDK populates this field. For more information about idempotency, see + * Making retries safe with idempotent APIs.

*/ - Description?: string; + ClientToken?: string; +} +/** + * @public + */ +export interface StartContactEvaluationResponse { /** * @public - *

Well-formed data on contact, shown to agents on Contact Control Panel (CCP).

+ *

A unique identifier for the contact evaluation.

*/ - References?: Record; + EvaluationId: string | undefined; + + /** + * @public + *

The Amazon Resource Name (ARN) for the contact evaluation resource.

+ */ + EvaluationArn: string | undefined; } /** * @public + * @enum */ -export interface UpdateContactResponse {} +export const VoiceRecordingTrack = { + ALL: "ALL", + FROM_AGENT: "FROM_AGENT", + TO_AGENT: "TO_AGENT", +} as const; /** * @public */ -export interface UpdateContactAttributesRequest { - /** - * @public - *

The identifier of the contact. This is the identifier of the contact associated with the - * first interaction with the contact center.

- */ - InitialContactId: string | undefined; - - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; +export type VoiceRecordingTrack = (typeof VoiceRecordingTrack)[keyof typeof VoiceRecordingTrack]; +/** + * @public + *

Contains information about the recording configuration settings.

+ */ +export interface VoiceRecordingConfiguration { /** * @public - *

The Amazon Connect attributes. These attributes can be accessed in flows just like any - * other contact attributes.

- *

You can have up to 32,768 UTF-8 bytes across all attributes for a contact. Attribute keys - * can include only alphanumeric, dash, and underscore characters.

+ *

Identifies which track is being recorded.

*/ - Attributes: Record | undefined; + VoiceRecordingTrack?: VoiceRecordingTrack | string; } /** * @public */ -export interface UpdateContactAttributesResponse {} - -/** - * @public - */ -export interface UpdateContactEvaluationRequest { +export interface StartContactRecordingRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7125,73 +6865,46 @@ export interface UpdateContactEvaluationRequest { /** * @public - *

A unique identifier for the contact evaluation.

+ *

The identifier of the contact.

*/ - EvaluationId: string | undefined; + ContactId: string | undefined; /** * @public - *

A map of question identifiers to answer value.

+ *

The identifier of the contact. This is the identifier of the contact associated with the + * first interaction with the contact center.

*/ - Answers?: Record; + InitialContactId: string | undefined; /** * @public - *

A map of question identifiers to note value.

+ *

The person being recorded.

*/ - Notes?: Record; + VoiceRecordingConfiguration: VoiceRecordingConfiguration | undefined; } /** * @public */ -export interface UpdateContactEvaluationResponse { - /** - * @public - *

A unique identifier for the contact evaluation.

- */ - EvaluationId: string | undefined; - - /** - * @public - *

The Amazon Resource Name (ARN) for the contact evaluation resource.

- */ - EvaluationArn: string | undefined; -} +export interface StartContactRecordingResponse {} /** * @public + *

The streaming configuration, such as the Amazon SNS streaming endpoint.

*/ -export interface UpdateContactFlowContentRequest { - /** - * @public - *

The identifier of the Amazon Connect instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The identifier of the flow.

- */ - ContactFlowId: string | undefined; - +export interface ChatStreamingConfiguration { /** * @public - *

The JSON string that represents flow's content. For an example, see Example - * contact flow in Amazon Connect Flow language.

+ *

The Amazon Resource Name (ARN) of the standard Amazon SNS topic. The Amazon Resource Name (ARN) of the streaming endpoint that is used + * to publish real-time message streaming for chat conversations.

*/ - Content: string | undefined; + StreamingEndpointArn: string | undefined; } /** * @public */ -export interface UpdateContactFlowContentResponse {} - -/** - * @public - */ -export interface UpdateContactFlowMetadataRequest { +export interface StartContactStreamingRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7200,140 +6913,224 @@ export interface UpdateContactFlowMetadataRequest { /** * @public - *

The identifier of the flow.

+ *

The identifier of the contact. This is the identifier of the contact associated with the + * first interaction with the contact center.

*/ - ContactFlowId: string | undefined; + ContactId: string | undefined; /** * @public - *

The name of the flow.

+ *

The streaming configuration, such as the Amazon SNS streaming endpoint.

*/ - Name?: string; + ChatStreamingConfiguration: ChatStreamingConfiguration | undefined; /** * @public - *

The description of the flow.

+ *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. If not provided, the Amazon Web Services + * SDK populates this field. For more information about idempotency, see + * Making retries safe with idempotent APIs.

*/ - Description?: string; + ClientToken?: string; +} +/** + * @public + */ +export interface StartContactStreamingResponse { /** * @public - *

The state of flow.

+ *

The identifier of the streaming configuration enabled.

*/ - ContactFlowState?: ContactFlowState | string; + StreamingId: string | undefined; } /** * @public + *

Outbound calls to the destination number are not allowed.

*/ -export interface UpdateContactFlowMetadataResponse {} +export class DestinationNotAllowedException extends __BaseException { + readonly name: "DestinationNotAllowedException" = "DestinationNotAllowedException"; + readonly $fault: "client" = "client"; + /** + * @public + *

The message about the outbound calls.

+ */ + Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "DestinationNotAllowedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, DestinationNotAllowedException.prototype); + this.Message = opts.Message; + } +} /** * @public + *

The contact is not permitted.

*/ -export interface UpdateContactFlowModuleContentRequest { +export class OutboundContactNotPermittedException extends __BaseException { + readonly name: "OutboundContactNotPermittedException" = "OutboundContactNotPermittedException"; + readonly $fault: "client" = "client"; /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The message about the contact.

*/ - InstanceId: string | undefined; + Message?: string; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "OutboundContactNotPermittedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, OutboundContactNotPermittedException.prototype); + this.Message = opts.Message; + } +} +/** + * @public + *

Configuration of the answering machine detection.

+ */ +export interface AnswerMachineDetectionConfig { /** * @public - *

The identifier of the flow module.

+ *

The flag to indicate if answer machine detection analysis needs to be performed for a voice + * call. If set to true, TrafficType must be set as CAMPAIGN. + *

*/ - ContactFlowModuleId: string | undefined; + EnableAnswerMachineDetection?: boolean; /** * @public - *

The content of the flow module.

+ *

Wait for the answering machine prompt.

*/ - Content: string | undefined; + AwaitAnswerMachinePrompt?: boolean; } /** * @public + * @enum */ -export interface UpdateContactFlowModuleContentResponse {} +export const TrafficType = { + CAMPAIGN: "CAMPAIGN", + GENERAL: "GENERAL", +} as const; /** * @public */ -export interface UpdateContactFlowModuleMetadataRequest { +export type TrafficType = (typeof TrafficType)[keyof typeof TrafficType]; + +/** + * @public + */ +export interface StartOutboundVoiceContactRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The phone number of the customer, in E.164 format.

*/ - InstanceId: string | undefined; + DestinationPhoneNumber: string | undefined; /** * @public - *

The identifier of the flow module.

+ *

The + * identifier of the flow for the outbound call. To see the ContactFlowId in the Amazon Connect + * console user interface, on the navigation menu go to Routing, + * Contact Flows. Choose the flow. On the flow page, under the + * name of the flow, choose Show additional flow information. The + * ContactFlowId is the last part of the ARN, shown here in bold:

+ *

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx + *

*/ - ContactFlowModuleId: string | undefined; + ContactFlowId: string | undefined; /** * @public - *

The name of the flow module.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - Name?: string; + InstanceId: string | undefined; /** * @public - *

The description of the flow module.

+ *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. If not provided, the Amazon Web Services + * SDK populates this field. For more information about idempotency, see + * Making retries safe with idempotent APIs. The token is valid for 7 days after creation. If a contact is already started, + * the contact ID is returned. + *

*/ - Description?: string; + ClientToken?: string; /** * @public - *

The state of flow module.

+ *

The phone number associated with the Amazon Connect instance, in E.164 format. If you do + * not specify a source phone number, you must specify a queue.

*/ - State?: ContactFlowModuleState | string; -} + SourcePhoneNumber?: string; -/** - * @public - */ -export interface UpdateContactFlowModuleMetadataResponse {} + /** + * @public + *

The queue for the call. If you specify a queue, the phone displayed for caller ID is the + * phone number specified in the queue. If you do not specify a queue, the queue defined in the flow + * is used. If you do not specify a queue, you must specify a source phone number.

+ */ + QueueId?: string; -/** - * @public - */ -export interface UpdateContactFlowNameRequest { /** * @public - *

The identifier of the Amazon Connect instance.

+ *

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in flows just like any other contact attributes.

+ *

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys + * can include only alphanumeric, dash, and underscore characters.

*/ - InstanceId: string | undefined; + Attributes?: Record; /** * @public - *

The identifier of the flow.

+ *

Configuration of the answering machine detection for this outbound call.

*/ - ContactFlowId: string | undefined; + AnswerMachineDetectionConfig?: AnswerMachineDetectionConfig; /** * @public - *

The name of the flow.

+ *

The campaign identifier of the outbound communication.

*/ - Name?: string; + CampaignId?: string; /** * @public - *

The description of the flow.

+ *

Denotes the class of traffic. Calls with different traffic types are handled differently by + * Amazon Connect. The default value is GENERAL. Use CAMPAIGN if + * EnableAnswerMachineDetection is set to true. For all other cases, use + * GENERAL.

*/ - Description?: string; + TrafficType?: TrafficType | string; } /** * @public */ -export interface UpdateContactFlowNameResponse {} +export interface StartOutboundVoiceContactResponse { + /** + * @public + *

The identifier of this contact within the Amazon Connect instance.

+ */ + ContactId?: string; +} /** * @public */ -export interface UpdateContactScheduleRequest { +export interface StartTaskContactRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7342,332 +7139,307 @@ export interface UpdateContactScheduleRequest { /** * @public - *

The identifier of the contact.

+ *

The identifier of the previous chat, voice, or task contact.

*/ - ContactId: string | undefined; + PreviousContactId?: string; /** * @public - *

The timestamp, in Unix Epoch seconds format, at which to start running the inbound flow. The scheduled time cannot be in the past. It must be within up to 6 days in future.

+ *

The identifier of the flow for initiating the tasks. To see the ContactFlowId in the Amazon Connect console user interface, on the navigation menu go to Routing, Contact Flows. Choose the flow. On the + * flow page, under the name of the flow, choose Show additional flow + * information. The ContactFlowId is the last part of the ARN, shown here in bold:

+ *

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx + *

*/ - ScheduledTime: Date | undefined; -} - -/** - * @public - */ -export interface UpdateContactScheduleResponse {} + ContactFlowId?: string; -/** - * @public - */ -export interface UpdateEvaluationFormResponse { /** * @public - *

The unique identifier for the evaluation form.

+ *

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in flows just like any other contact attributes.

+ *

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys + * can include only alphanumeric, dash, and underscore characters.

*/ - EvaluationFormId: string | undefined; + Attributes?: Record; /** * @public - *

The Amazon Resource Name (ARN) for the contact evaluation resource.

+ *

The name of a task that is shown to an agent in the Contact Control Panel (CCP).

*/ - EvaluationFormArn: string | undefined; + Name: string | undefined; /** * @public - *

The version of the updated evaluation form resource.

+ *

A formatted URL that is shown to an agent in the Contact Control Panel (CCP).

*/ - EvaluationFormVersion: number | undefined; -} + References?: Record; -/** - * @public - */ -export interface UpdateHoursOfOperationRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

A description of the task that is shown to an agent in the Contact Control Panel + * (CCP).

*/ - InstanceId: string | undefined; + Description?: string; /** * @public - *

The identifier of the hours of operation.

+ *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. If not provided, the Amazon Web Services + * SDK populates this field. For more information about idempotency, see + * Making retries safe with idempotent APIs.

*/ - HoursOfOperationId: string | undefined; + ClientToken?: string; /** * @public - *

The name of the hours of operation.

+ *

The timestamp, in Unix Epoch seconds format, at which to start running the inbound flow. The scheduled time cannot be in the past. It must be within up to 6 days in future.

*/ - Name?: string; + ScheduledTime?: Date; /** * @public - *

The description of the hours of operation.

+ *

A unique identifier for the task template.

*/ - Description?: string; + TaskTemplateId?: string; /** * @public - *

The time zone of the hours of operation.

+ *

The identifier for the quick connect.

*/ - TimeZone?: string; + QuickConnectId?: string; /** * @public - *

Configuration information of the hours of operation.

+ *

The contactId that is related to this contact.

*/ - Config?: HoursOfOperationConfig[]; + RelatedContactId?: string; } /** * @public */ -export interface UpdateInstanceAttributeRequest { +export interface StartTaskContactResponse { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier of this contact within the Amazon Connect instance.

*/ - InstanceId: string | undefined; + ContactId?: string; +} +/** + * @public + *

The contact with the specified ID is not active or does not exist. Applies to Voice calls + * only, not to Chat or Task contacts.

+ */ +export class ContactNotFoundException extends __BaseException { + readonly name: "ContactNotFoundException" = "ContactNotFoundException"; + readonly $fault: "client" = "client"; /** * @public - *

The type of attribute.

- * - *

Only allowlisted customers can consume USE_CUSTOM_TTS_VOICES. To access this feature, - * contact Amazon Web Services Support for allowlisting.

- *
+ *

The message.

*/ - AttributeType: InstanceAttributeType | string | undefined; - + Message?: string; /** - * @public - *

The value for the attribute. Maximum character limit is 100.

+ * @internal */ - Value: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "ContactNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ContactNotFoundException.prototype); + this.Message = opts.Message; + } } /** * @public */ -export interface UpdateInstanceStorageConfigRequest { +export interface StopContactRequest { + /** + * @public + *

The ID of the contact.

+ */ + ContactId: string | undefined; + /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ InstanceId: string | undefined; +} + +/** + * @public + */ +export interface StopContactResponse {} +/** + * @public + */ +export interface StopContactRecordingRequest { /** * @public - *

The existing association identifier that uniquely identifies the resource type and storage config for the given instance ID.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - AssociationId: string | undefined; + InstanceId: string | undefined; /** * @public - *

A valid resource type.

+ *

The identifier of the contact.

*/ - ResourceType: InstanceStorageResourceType | string | undefined; + ContactId: string | undefined; /** * @public - *

The storage configuration for the instance.

+ *

The identifier of the contact. This is the identifier of the contact associated with the + * first interaction with the contact center.

*/ - StorageConfig: InstanceStorageConfig | undefined; + InitialContactId: string | undefined; } /** * @public - * @enum - */ -export const TimerEligibleParticipantRoles = { - AGENT: "AGENT", - CUSTOMER: "CUSTOMER", -} as const; - -/** - * @public - */ -export type TimerEligibleParticipantRoles = - (typeof TimerEligibleParticipantRoles)[keyof typeof TimerEligibleParticipantRoles]; - -/** - * @public - * @enum */ -export const ParticipantTimerType = { - DISCONNECT_NONCUSTOMER: "DISCONNECT_NONCUSTOMER", - IDLE: "IDLE", -} as const; +export interface StopContactRecordingResponse {} /** * @public */ -export type ParticipantTimerType = (typeof ParticipantTimerType)[keyof typeof ParticipantTimerType]; +export interface StopContactStreamingRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; -/** - * @public - * @enum - */ -export const ParticipantTimerAction = { - Unset: "Unset", -} as const; + /** + * @public + *

The identifier of the contact. This is the identifier of the contact that is associated with + * the first interaction with the contact center.

+ */ + ContactId: string | undefined; + + /** + * @public + *

The identifier of the streaming configuration enabled.

+ */ + StreamingId: string | undefined; +} /** * @public */ -export type ParticipantTimerAction = (typeof ParticipantTimerAction)[keyof typeof ParticipantTimerAction]; +export interface StopContactStreamingResponse {} /** * @public - *

The value of the timer. Either the timer action (Unset to delete the timer), or - * the duration of the timer in minutes. Only one value can be set.

- *

For more information about how chat timeouts work, see - * Set up chat timeouts for human participants.

+ *

Information about input answers for a contact evaluation.

*/ -export type ParticipantTimerValue = - | ParticipantTimerValue.ParticipantTimerActionMember - | ParticipantTimerValue.ParticipantTimerDurationInMinutesMember - | ParticipantTimerValue.$UnknownMember; +export interface EvaluationAnswerInput { + /** + * @public + *

The value for an answer in a contact evaluation.

+ */ + Value?: EvaluationAnswerData; +} /** * @public */ -export namespace ParticipantTimerValue { +export interface SubmitContactEvaluationRequest { /** * @public - *

The timer action. Currently only one value is allowed: Unset. It deletes a - * timer.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - export interface ParticipantTimerActionMember { - ParticipantTimerAction: ParticipantTimerAction | string; - ParticipantTimerDurationInMinutes?: never; - $unknown?: never; - } + InstanceId: string | undefined; /** * @public - *

The duration of a timer, in minutes.

+ *

A unique identifier for the contact evaluation.

*/ - export interface ParticipantTimerDurationInMinutesMember { - ParticipantTimerAction?: never; - ParticipantTimerDurationInMinutes: number; - $unknown?: never; - } + EvaluationId: string | undefined; /** * @public + *

A map of question identifiers to answer value.

*/ - export interface $UnknownMember { - ParticipantTimerAction?: never; - ParticipantTimerDurationInMinutes?: never; - $unknown: [string, any]; - } - - export interface Visitor { - ParticipantTimerAction: (value: ParticipantTimerAction | string) => T; - ParticipantTimerDurationInMinutes: (value: number) => T; - _: (name: string, value: any) => T; - } + Answers?: Record; - export const visit = (value: ParticipantTimerValue, visitor: Visitor): T => { - if (value.ParticipantTimerAction !== undefined) return visitor.ParticipantTimerAction(value.ParticipantTimerAction); - if (value.ParticipantTimerDurationInMinutes !== undefined) - return visitor.ParticipantTimerDurationInMinutes(value.ParticipantTimerDurationInMinutes); - return visitor._(value.$unknown[0], value.$unknown[1]); - }; + /** + * @public + *

A map of question identifiers to note value.

+ */ + Notes?: Record; } /** * @public - *

Configuration information for the timer. After the timer configuration is set, it persists - * for the duration of the chat. It persists across new contacts in the chain, for example, transfer - * contacts.

- *

For more information about how chat timeouts work, see - * Set up chat timeouts for human participants.

*/ -export interface ParticipantTimerConfiguration { - /** - * @public - *

The role of the participant in the chat conversation.

- */ - ParticipantRole: TimerEligibleParticipantRoles | string | undefined; - +export interface SubmitContactEvaluationResponse { /** * @public - *

The type of timer. IDLE indicates the timer applies for considering a human - * chat participant as idle. DISCONNECT_NONCUSTOMER indicates the timer applies to - * automatically disconnecting a chat participant due to idleness.

+ *

A unique identifier for the contact evaluation.

*/ - TimerType: ParticipantTimerType | string | undefined; + EvaluationId: string | undefined; /** * @public - *

The value of the timer. Either the timer action (Unset to delete the timer), or the duration - * of the timer in minutes. Only one value can be set.

+ *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ - TimerValue: ParticipantTimerValue | undefined; + EvaluationArn: string | undefined; } /** * @public - *

Configuration information for the chat participant role.

*/ -export interface ChatParticipantRoleConfig { +export interface SuspendContactRecordingRequest { /** * @public - *

A list of participant timers. You can specify any unique combination of role and timer type. - * Duplicate entries error out the request with a 400.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - ParticipantTimerConfigList: ParticipantTimerConfiguration[] | undefined; + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the contact.

+ */ + ContactId: string | undefined; + + /** + * @public + *

The identifier of the contact. This is the identifier of the contact associated with the + * first interaction with the contact center.

+ */ + InitialContactId: string | undefined; } /** * @public - *

Configuration information for the chat participant role.

*/ -export type UpdateParticipantRoleConfigChannelInfo = - | UpdateParticipantRoleConfigChannelInfo.ChatMember - | UpdateParticipantRoleConfigChannelInfo.$UnknownMember; +export interface SuspendContactRecordingResponse {} /** * @public */ -export namespace UpdateParticipantRoleConfigChannelInfo { +export interface TagResourceRequest { /** * @public - *

Configuration information for the chat participant role.

+ *

The Amazon Resource Name (ARN) of the resource.

*/ - export interface ChatMember { - Chat: ChatParticipantRoleConfig; - $unknown?: never; - } + resourceArn: string | undefined; /** * @public + *

The tags used to organize, track, or control access for this resource. For example, \{ "tags": \{"key1":"value1", "key2":"value2"\} \}.

*/ - export interface $UnknownMember { - Chat?: never; - $unknown: [string, any]; - } - - export interface Visitor { - Chat: (value: ChatParticipantRoleConfig) => T; - _: (name: string, value: any) => T; - } - - export const visit = (value: UpdateParticipantRoleConfigChannelInfo, visitor: Visitor): T => { - if (value.Chat !== undefined) return visitor.Chat(value.Chat); - return visitor._(value.$unknown[0], value.$unknown[1]); - }; + tags: Record | undefined; } /** * @public */ -export interface UpdateParticipantRoleConfigRequest { +export interface TransferContactRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7682,31 +7454,21 @@ export interface UpdateParticipantRoleConfigRequest { /** * @public - *

The Amazon Connect channel you want to configure.

+ *

The identifier for the queue.

*/ - ChannelConfiguration: UpdateParticipantRoleConfigChannelInfo | undefined; -} - -/** - * @public - */ -export interface UpdateParticipantRoleConfigResponse {} + QueueId?: string; -/** - * @public - */ -export interface UpdatePhoneNumberRequest { /** * @public - *

A unique identifier for the phone number.

+ *

The identifier for the user. This can be the ID or the ARN of the user.

*/ - PhoneNumberId: string | undefined; + UserId?: string; /** * @public - *

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

+ *

The identifier of the flow.

*/ - TargetArn: string | undefined; + ContactFlowId: string | undefined; /** * @public @@ -7721,24 +7483,41 @@ export interface UpdatePhoneNumberRequest { /** * @public */ -export interface UpdatePhoneNumberResponse { +export interface TransferContactResponse { /** * @public - *

A unique identifier for the phone number.

+ *

The identifier of the contact in this instance of Amazon Connect.

*/ - PhoneNumberId?: string; + ContactId?: string; /** * @public - *

The Amazon Resource Name (ARN) of the phone number.

+ *

The Amazon Resource Name (ARN) of the contact.

*/ - PhoneNumberArn?: string; + ContactArn?: string; } /** * @public */ -export interface UpdatePromptRequest { +export interface UntagResourceRequest { + /** + * @public + *

The Amazon Resource Name (ARN) of the resource.

+ */ + resourceArn: string | undefined; + + /** + * @public + *

The tag keys.

+ */ + tagKeys: string[] | undefined; +} + +/** + * @public + */ +export interface UpdateAgentStatusRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7747,50 +7526,45 @@ export interface UpdatePromptRequest { /** * @public - *

A unique identifier for the prompt.

+ *

The identifier of the agent status.

*/ - PromptId: string | undefined; + AgentStatusId: string | undefined; /** * @public - *

The name of the prompt.

+ *

The name of the agent status.

*/ Name?: string; /** * @public - *

A description of the prompt.

+ *

The description of the agent status.

*/ Description?: string; /** * @public - *

The URI for the S3 bucket where the prompt is stored.

+ *

The state of the agent status.

*/ - S3Uri?: string; -} + State?: AgentStatusState | string; -/** - * @public - */ -export interface UpdatePromptResponse { /** * @public - *

The Amazon Resource Name (ARN) of the prompt.

+ *

The display order of the agent status.

*/ - PromptARN?: string; + DisplayOrder?: number; /** * @public - *

A unique identifier for the prompt.

+ *

A number indicating the reset order of the agent status.

*/ - PromptId?: string; + ResetOrderNumber?: boolean; } /** * @public */ -export interface UpdateQueueHoursOfOperationRequest { +export interface UpdateContactRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7799,44 +7573,71 @@ export interface UpdateQueueHoursOfOperationRequest { /** * @public - *

The identifier for the queue.

+ *

The identifier of the contact. This is the identifier of the contact associated with the + * first interaction with your contact center.

*/ - QueueId: string | undefined; + ContactId: string | undefined; /** * @public - *

The identifier for the hours of operation.

+ *

The name of the contact.

*/ - HoursOfOperationId: string | undefined; + Name?: string; + + /** + * @public + *

The description of the contact.

+ */ + Description?: string; + + /** + * @public + *

Well-formed data on contact, shown to agents on Contact Control Panel (CCP).

+ */ + References?: Record; } /** * @public */ -export interface UpdateQueueMaxContactsRequest { +export interface UpdateContactResponse {} + +/** + * @public + */ +export interface UpdateContactAttributesRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier of the contact. This is the identifier of the contact associated with the + * first interaction with the contact center.

*/ - InstanceId: string | undefined; + InitialContactId: string | undefined; /** * @public - *

The identifier for the queue.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - QueueId: string | undefined; + InstanceId: string | undefined; /** * @public - *

The maximum number of contacts that can be in the queue before it is considered full.

+ *

The Amazon Connect attributes. These attributes can be accessed in flows just like any + * other contact attributes.

+ *

You can have up to 32,768 UTF-8 bytes across all attributes for a contact. Attribute keys + * can include only alphanumeric, dash, and underscore characters.

*/ - MaxContacts?: number; + Attributes: Record | undefined; } /** * @public */ -export interface UpdateQueueNameRequest { +export interface UpdateContactAttributesResponse {} + +/** + * @public + */ +export interface UpdateContactEvaluationRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7845,96 +7646,73 @@ export interface UpdateQueueNameRequest { /** * @public - *

The identifier for the queue.

+ *

A unique identifier for the contact evaluation.

*/ - QueueId: string | undefined; + EvaluationId: string | undefined; /** * @public - *

The name of the queue.

+ *

A map of question identifiers to answer value.

*/ - Name?: string; + Answers?: Record; /** * @public - *

The description of the queue.

+ *

A map of question identifiers to note value.

*/ - Description?: string; + Notes?: Record; } /** * @public */ -export interface UpdateQueueOutboundCallerConfigRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - +export interface UpdateContactEvaluationResponse { /** * @public - *

The identifier for the queue.

+ *

A unique identifier for the contact evaluation.

*/ - QueueId: string | undefined; + EvaluationId: string | undefined; /** * @public - *

The outbound caller ID name, number, and outbound whisper flow.

+ *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ - OutboundCallerConfig: OutboundCallerConfig | undefined; + EvaluationArn: string | undefined; } /** * @public */ -export interface UpdateQueueStatusRequest { +export interface UpdateContactFlowContentRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier of the Amazon Connect instance.

*/ InstanceId: string | undefined; /** * @public - *

The identifier for the queue.

+ *

The identifier of the flow.

*/ - QueueId: string | undefined; + ContactFlowId: string | undefined; /** * @public - *

The status of the queue.

+ *

The JSON string that represents flow's content. For an example, see Example + * contact flow in Amazon Connect Flow language.

*/ - Status: QueueStatus | string | undefined; + Content: string | undefined; } /** * @public */ -export interface UpdateQuickConnectConfigRequest { - /** - * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

- */ - InstanceId: string | undefined; - - /** - * @public - *

The identifier for the quick connect.

- */ - QuickConnectId: string | undefined; - - /** - * @public - *

Information about the configuration settings for the quick connect.

- */ - QuickConnectConfig: QuickConnectConfig | undefined; -} +export interface UpdateContactFlowContentResponse {} /** * @public */ -export interface UpdateQuickConnectNameRequest { +export interface UpdateContactFlowMetadataRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7943,27 +7721,38 @@ export interface UpdateQuickConnectNameRequest { /** * @public - *

The identifier for the quick connect.

+ *

The identifier of the flow.

*/ - QuickConnectId: string | undefined; + ContactFlowId: string | undefined; /** * @public - *

The name of the quick connect.

+ *

The name of the flow.

*/ Name?: string; /** * @public - *

The description of the quick connect.

+ *

The description of the flow.

*/ Description?: string; + + /** + * @public + *

The state of flow.

+ */ + ContactFlowState?: ContactFlowState | string; } /** * @public */ -export interface UpdateRoutingProfileAgentAvailabilityTimerRequest { +export interface UpdateContactFlowMetadataResponse {} + +/** + * @public + */ +export interface UpdateContactFlowModuleContentRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7972,23 +7761,26 @@ export interface UpdateRoutingProfileAgentAvailabilityTimerRequest { /** * @public - *

The identifier of the routing profile.

+ *

The identifier of the flow module.

*/ - RoutingProfileId: string | undefined; + ContactFlowModuleId: string | undefined; /** * @public - *

Whether agents with this routing profile will have their routing order calculated based on - * time since their last inbound contact or longest idle - * time.

+ *

The content of the flow module.

*/ - AgentAvailabilityTimer: AgentAvailabilityTimer | string | undefined; + Content: string | undefined; } /** * @public */ -export interface UpdateRoutingProfileConcurrencyRequest { +export interface UpdateContactFlowModuleContentResponse {} + +/** + * @public + */ +export interface UpdateContactFlowModuleMetadataRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -7997,65 +7789,59 @@ export interface UpdateRoutingProfileConcurrencyRequest { /** * @public - *

The identifier of the routing profile.

- */ - RoutingProfileId: string | undefined; - - /** - * @public - *

The channels that agents can handle in the Contact Control Panel (CCP).

+ *

The identifier of the flow module.

*/ - MediaConcurrencies: MediaConcurrency[] | undefined; -} + ContactFlowModuleId: string | undefined; -/** - * @public - */ -export interface UpdateRoutingProfileDefaultOutboundQueueRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The name of the flow module.

*/ - InstanceId: string | undefined; + Name?: string; /** * @public - *

The identifier of the routing profile.

+ *

The description of the flow module.

*/ - RoutingProfileId: string | undefined; + Description?: string; /** * @public - *

The identifier for the default outbound queue.

+ *

The state of flow module.

*/ - DefaultOutboundQueueId: string | undefined; + State?: ContactFlowModuleState | string; } /** * @public */ -export interface UpdateRoutingProfileNameRequest { +export interface UpdateContactFlowModuleMetadataResponse {} + +/** + * @public + */ +export interface UpdateContactFlowNameRequest { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The identifier of the Amazon Connect instance.

*/ InstanceId: string | undefined; /** * @public - *

The identifier of the routing profile.

+ *

The identifier of the flow.

*/ - RoutingProfileId: string | undefined; + ContactFlowId: string | undefined; /** * @public - *

The name of the routing profile. Must not be more than 127 characters.

+ *

The name of the flow.

*/ Name?: string; /** * @public - *

The description of the routing profile. Must not be more than 250 characters.

+ *

The description of the flow.

*/ Description?: string; } @@ -8063,7 +7849,12 @@ export interface UpdateRoutingProfileNameRequest { /** * @public */ -export interface UpdateRoutingProfileQueuesRequest { +export interface UpdateContactFlowNameResponse {} + +/** + * @public + */ +export interface UpdateContactScheduleRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -8072,86 +7863,90 @@ export interface UpdateRoutingProfileQueuesRequest { /** * @public - *

The identifier of the routing profile.

+ *

The identifier of the contact.

*/ - RoutingProfileId: string | undefined; + ContactId: string | undefined; /** * @public - *

The queues to be updated for this routing profile. - * Queues must first be associated to the routing - * profile. You can do this using AssociateRoutingProfileQueues.

+ *

The timestamp, in Unix Epoch seconds format, at which to start running the inbound flow. The scheduled time cannot be in the past. It must be within up to 6 days in future.

*/ - QueueConfigs: RoutingProfileQueueConfig[] | undefined; + ScheduledTime: Date | undefined; } /** * @public */ -export interface UpdateRuleRequest { +export interface UpdateContactScheduleResponse {} + +/** + * @public + */ +export interface UpdateEvaluationFormResponse { /** * @public - *

A unique identifier for the rule.

+ *

The unique identifier for the evaluation form.

*/ - RuleId: string | undefined; + EvaluationFormId: string | undefined; /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The Amazon Resource Name (ARN) for the contact evaluation resource.

*/ - InstanceId: string | undefined; + EvaluationFormArn: string | undefined; /** * @public - *

The name of the rule. You can change the name only if TriggerEventSource is one - * of the following values: OnZendeskTicketCreate | - * OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate - *

+ *

The version of the updated evaluation form resource.

*/ - Name: string | undefined; + EvaluationFormVersion: number | undefined; +} +/** + * @public + */ +export interface UpdateHoursOfOperationRequest { /** * @public - *

The conditions of the rule.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - Function: string | undefined; + InstanceId: string | undefined; /** * @public - *

A list of actions to be run when the rule is triggered.

+ *

The identifier of the hours of operation.

*/ - Actions: RuleAction[] | undefined; + HoursOfOperationId: string | undefined; /** * @public - *

The publish status of the rule.

+ *

The name of the hours of operation.

*/ - PublishStatus: RulePublishStatus | string | undefined; -} + Name?: string; -/** - * @public - */ -export interface UpdateSecurityProfileRequest { /** * @public - *

The description of the security profile.

+ *

The description of the hours of operation.

*/ Description?: string; /** * @public - *

The permissions granted to a security profile. For a list of valid permissions, see List of security - * profile permissions.

+ *

The time zone of the hours of operation.

*/ - Permissions?: string[]; + TimeZone?: string; /** * @public - *

The identifier for the security profle.

+ *

Configuration information of the hours of operation.

*/ - SecurityProfileId: string | undefined; + Config?: HoursOfOperationConfig[]; +} +/** + * @public + */ +export interface UpdateInstanceAttributeRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

@@ -8160,249 +7955,340 @@ export interface UpdateSecurityProfileRequest { /** * @public - *

The list of tags that a security profile uses to restrict access to resources in Amazon Connect.

+ *

The type of attribute.

+ * + *

Only allowlisted customers can consume USE_CUSTOM_TTS_VOICES. To access this feature, + * contact Amazon Web Services Support for allowlisting.

+ *
*/ - AllowedAccessControlTags?: Record; + AttributeType: InstanceAttributeType | string | undefined; /** * @public - *

The list of resources that a security profile applies tag restrictions to in Amazon Connect.

+ *

The value for the attribute. Maximum character limit is 100.

*/ - TagRestrictedResources?: string[]; + Value: string | undefined; } /** * @public */ -export interface UpdateTaskTemplateRequest { +export interface UpdateInstanceStorageConfigRequest { /** * @public - *

A unique identifier for the task template.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - TaskTemplateId: string | undefined; + InstanceId: string | undefined; /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The existing association identifier that uniquely identifies the resource type and storage config for the given instance ID.

*/ - InstanceId: string | undefined; + AssociationId: string | undefined; /** * @public - *

The name of the task template.

+ *

A valid resource type.

*/ - Name?: string; + ResourceType: InstanceStorageResourceType | string | undefined; + + /** + * @public + *

The storage configuration for the instance.

+ */ + StorageConfig: InstanceStorageConfig | undefined; +} + +/** + * @public + * @enum + */ +export const TimerEligibleParticipantRoles = { + AGENT: "AGENT", + CUSTOMER: "CUSTOMER", +} as const; + +/** + * @public + */ +export type TimerEligibleParticipantRoles = + (typeof TimerEligibleParticipantRoles)[keyof typeof TimerEligibleParticipantRoles]; + +/** + * @public + * @enum + */ +export const ParticipantTimerType = { + DISCONNECT_NONCUSTOMER: "DISCONNECT_NONCUSTOMER", + IDLE: "IDLE", +} as const; + +/** + * @public + */ +export type ParticipantTimerType = (typeof ParticipantTimerType)[keyof typeof ParticipantTimerType]; + +/** + * @public + * @enum + */ +export const ParticipantTimerAction = { + Unset: "Unset", +} as const; + +/** + * @public + */ +export type ParticipantTimerAction = (typeof ParticipantTimerAction)[keyof typeof ParticipantTimerAction]; - /** - * @public - *

The description of the task template.

- */ - Description?: string; +/** + * @public + *

The value of the timer. Either the timer action (Unset to delete the timer), or + * the duration of the timer in minutes. Only one value can be set.

+ *

For more information about how chat timeouts work, see + * Set up chat timeouts for human participants.

+ */ +export type ParticipantTimerValue = + | ParticipantTimerValue.ParticipantTimerActionMember + | ParticipantTimerValue.ParticipantTimerDurationInMinutesMember + | ParticipantTimerValue.$UnknownMember; +/** + * @public + */ +export namespace ParticipantTimerValue { /** * @public - *

The identifier of the flow that runs by default when a task is created by referencing this template.

+ *

The timer action. Currently only one value is allowed: Unset. It deletes a + * timer.

*/ - ContactFlowId?: string; + export interface ParticipantTimerActionMember { + ParticipantTimerAction: ParticipantTimerAction | string; + ParticipantTimerDurationInMinutes?: never; + $unknown?: never; + } /** * @public - *

Constraints that are applicable to the fields listed.

+ *

The duration of a timer, in minutes.

*/ - Constraints?: TaskTemplateConstraints; + export interface ParticipantTimerDurationInMinutesMember { + ParticipantTimerAction?: never; + ParticipantTimerDurationInMinutes: number; + $unknown?: never; + } /** * @public - *

The default values for fields when a task is created by referencing this template.

*/ - Defaults?: TaskTemplateDefaults; + export interface $UnknownMember { + ParticipantTimerAction?: never; + ParticipantTimerDurationInMinutes?: never; + $unknown: [string, any]; + } - /** - * @public - *

Marks a template as ACTIVE or INACTIVE for a task to refer to it. - * Tasks can only be created from ACTIVE templates. - * If a template is marked as INACTIVE, then a task that refers to this template cannot be created.

- */ - Status?: TaskTemplateStatus | string; + export interface Visitor { + ParticipantTimerAction: (value: ParticipantTimerAction | string) => T; + ParticipantTimerDurationInMinutes: (value: number) => T; + _: (name: string, value: any) => T; + } - /** - * @public - *

Fields that are part of the template.

- */ - Fields?: TaskTemplateField[]; + export const visit = (value: ParticipantTimerValue, visitor: Visitor): T => { + if (value.ParticipantTimerAction !== undefined) return visitor.ParticipantTimerAction(value.ParticipantTimerAction); + if (value.ParticipantTimerDurationInMinutes !== undefined) + return visitor.ParticipantTimerDurationInMinutes(value.ParticipantTimerDurationInMinutes); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; } /** * @public + *

Configuration information for the timer. After the timer configuration is set, it persists + * for the duration of the chat. It persists across new contacts in the chain, for example, transfer + * contacts.

+ *

For more information about how chat timeouts work, see + * Set up chat timeouts for human participants.

*/ -export interface UpdateTaskTemplateResponse { +export interface ParticipantTimerConfiguration { /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

The role of the participant in the chat conversation.

*/ - InstanceId?: string; + ParticipantRole: TimerEligibleParticipantRoles | string | undefined; /** * @public - *

The identifier of the task template resource.

+ *

The type of timer. IDLE indicates the timer applies for considering a human + * chat participant as idle. DISCONNECT_NONCUSTOMER indicates the timer applies to + * automatically disconnecting a chat participant due to idleness.

*/ - Id?: string; + TimerType: ParticipantTimerType | string | undefined; /** * @public - *

The Amazon Resource Name (ARN) for the task template resource.

+ *

The value of the timer. Either the timer action (Unset to delete the timer), or the duration + * of the timer in minutes. Only one value can be set.

*/ - Arn?: string; + TimerValue: ParticipantTimerValue | undefined; +} +/** + * @public + *

Configuration information for the chat participant role.

+ */ +export interface ChatParticipantRoleConfig { /** * @public - *

The name of the task template.

+ *

A list of participant timers. You can specify any unique combination of role and timer type. + * Duplicate entries error out the request with a 400.

*/ - Name?: string; + ParticipantTimerConfigList: ParticipantTimerConfiguration[] | undefined; +} - /** - * @public - *

The description of the task template.

- */ - Description?: string; +/** + * @public + *

Configuration information for the chat participant role.

+ */ +export type UpdateParticipantRoleConfigChannelInfo = + | UpdateParticipantRoleConfigChannelInfo.ChatMember + | UpdateParticipantRoleConfigChannelInfo.$UnknownMember; +/** + * @public + */ +export namespace UpdateParticipantRoleConfigChannelInfo { /** * @public - *

The identifier of the flow that runs by default when a task is created by referencing this template.

+ *

Configuration information for the chat participant role.

*/ - ContactFlowId?: string; + export interface ChatMember { + Chat: ChatParticipantRoleConfig; + $unknown?: never; + } /** * @public - *

Constraints that are applicable to the fields listed.

*/ - Constraints?: TaskTemplateConstraints; + export interface $UnknownMember { + Chat?: never; + $unknown: [string, any]; + } - /** - * @public - *

The default values for fields when a task is created by referencing this template.

- */ - Defaults?: TaskTemplateDefaults; + export interface Visitor { + Chat: (value: ChatParticipantRoleConfig) => T; + _: (name: string, value: any) => T; + } - /** - * @public - *

Fields that are part of the template.

- */ - Fields?: TaskTemplateField[]; + export const visit = (value: UpdateParticipantRoleConfigChannelInfo, visitor: Visitor): T => { + if (value.Chat !== undefined) return visitor.Chat(value.Chat); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; +} +/** + * @public + */ +export interface UpdateParticipantRoleConfigRequest { /** * @public - *

Marks a template as ACTIVE or INACTIVE for a task to refer to it. - * Tasks can only be created from ACTIVE templates. - * If a template is marked as INACTIVE, then a task that refers to this template cannot be created.

+ *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ - Status?: TaskTemplateStatus | string; + InstanceId: string | undefined; /** * @public - *

The timestamp when the task template was last modified.

+ *

The identifier of the contact in this instance of Amazon Connect.

*/ - LastModifiedTime?: Date; + ContactId: string | undefined; /** * @public - *

The timestamp when the task template was created.

+ *

The Amazon Connect channel you want to configure.

*/ - CreatedTime?: Date; + ChannelConfiguration: UpdateParticipantRoleConfigChannelInfo | undefined; } /** * @public */ -export interface UpdateTrafficDistributionRequest { - /** - * @public - *

The identifier of the traffic distribution group. - * This can be the ID or the ARN if the API is being called in the Region where the traffic distribution group was created. - * The ARN must be provided if the call is from the replicated Region.

- */ - Id: string | undefined; +export interface UpdateParticipantRoleConfigResponse {} +/** + * @public + */ +export interface UpdatePhoneNumberRequest { /** * @public - *

The distribution of traffic between the instance and its replica(s).

+ *

A unique identifier for the phone number.

*/ - TelephonyConfig?: TelephonyConfig; + PhoneNumberId: string | undefined; /** * @public - *

The distribution of allowing signing in to the instance and its replica(s).

+ *

The Amazon Resource Name (ARN) for Amazon Connect instances or traffic distribution groups that phone numbers are claimed to.

*/ - SignInConfig?: SignInConfig; + TargetArn: string | undefined; /** * @public - *

The distribution of agents between the instance and its replica(s).

+ *

A unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. If not provided, the Amazon Web Services + * SDK populates this field. For more information about idempotency, see + * Making retries safe with idempotent APIs.

*/ - AgentConfig?: AgentConfig; + ClientToken?: string; } /** * @public */ -export interface UpdateTrafficDistributionResponse {} - -/** - * @public - */ -export interface UpdateUserHierarchyRequest { +export interface UpdatePhoneNumberResponse { /** * @public - *

The identifier of the hierarchy group.

+ *

A unique identifier for the phone number.

*/ - HierarchyGroupId?: string; + PhoneNumberId?: string; /** * @public - *

The identifier of the user account.

+ *

The Amazon Resource Name (ARN) of the phone number.

*/ - UserId: string | undefined; + PhoneNumberArn?: string; +} +/** + * @public + */ +export interface UpdatePromptRequest { /** * @public *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

*/ InstanceId: string | undefined; -} -/** - * @public - */ -export interface UpdateUserHierarchyGroupNameRequest { /** * @public - *

The name of the hierarchy group. Must not be more than 100 characters.

+ *

A unique identifier for the prompt.

*/ - Name: string | undefined; + PromptId: string | undefined; /** * @public - *

The identifier of the hierarchy group.

+ *

The name of the prompt.

*/ - HierarchyGroupId: string | undefined; + Name?: string; /** * @public - *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ *

A description of the prompt.

*/ - InstanceId: string | undefined; -} + Description?: string; -/** - * @public - *

Contains information about the hierarchy level to update.

- */ -export interface HierarchyLevelUpdate { /** * @public - *

The name of the user hierarchy level. Must not be more than 50 characters.

+ *

The URI for the S3 bucket where the prompt is stored.

*/ - Name: string | undefined; + S3Uri?: string; } /** @@ -8440,6 +8326,42 @@ export const ListInstancesResponseFilterSensitiveLog = (obj: ListInstancesRespon }), }); +/** + * @internal + */ +export const ViewSummaryFilterSensitiveLog = (obj: ViewSummary): any => ({ + ...obj, + ...(obj.Name && { Name: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const ListViewsResponseFilterSensitiveLog = (obj: ListViewsResponse): any => ({ + ...obj, + ...(obj.ViewsSummaryList && { + ViewsSummaryList: obj.ViewsSummaryList.map((item) => ViewSummaryFilterSensitiveLog(item)), + }), +}); + +/** + * @internal + */ +export const ViewVersionSummaryFilterSensitiveLog = (obj: ViewVersionSummary): any => ({ + ...obj, + ...(obj.Name && { Name: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const ListViewVersionsResponseFilterSensitiveLog = (obj: ListViewVersionsResponse): any => ({ + ...obj, + ...(obj.ViewVersionSummaryList && { + ViewVersionSummaryList: obj.ViewVersionSummaryList.map((item) => ViewVersionSummaryFilterSensitiveLog(item)), + }), +}); + /** * @internal */ diff --git a/clients/client-connect/src/models/models_2.ts b/clients/client-connect/src/models/models_2.ts index f0b9b091a51dd..674c2b2065915 100644 --- a/clients/client-connect/src/models/models_2.ts +++ b/clients/client-connect/src/models/models_2.ts @@ -1,15 +1,34 @@ // smithy-typescript generated code +import { SENSITIVE_STRING } from "@smithy/smithy-client"; + import { + AgentAvailabilityTimer, + AgentConfig, Evaluation, EvaluationFormQuestion, EvaluationFormScoringStrategy, EvaluationFormVersionStatus, + MediaConcurrency, + OutboundCallerConfig, + QueueStatus, + QuickConnectConfig, + RoutingProfileQueueConfig, + RuleAction, + RulePublishStatus, + TaskTemplateConstraints, + TaskTemplateDefaults, + TaskTemplateField, + TaskTemplateStatus, UserIdentityInfo, UserPhoneConfig, + View, + ViewFilterSensitiveLog, + ViewInputContent, + ViewInputContentFilterSensitiveLog, + ViewStatus, } from "./models_0"; import { HierarchyGroupCondition, - HierarchyLevelUpdate, HoursOfOperationSearchFilter, PromptSearchFilter, QueueSearchFilter, @@ -17,10 +36,647 @@ import { RoutingProfileSearchFilter, SearchableQueueType, SecurityProfilesSearchFilter, + SignInConfig, StringCondition, + TelephonyConfig, UserSearchFilter, } from "./models_1"; +/** + * @public + */ +export interface UpdatePromptResponse { + /** + * @public + *

The Amazon Resource Name (ARN) of the prompt.

+ */ + PromptARN?: string; + + /** + * @public + *

A unique identifier for the prompt.

+ */ + PromptId?: string; +} + +/** + * @public + */ +export interface UpdateQueueHoursOfOperationRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier for the queue.

+ */ + QueueId: string | undefined; + + /** + * @public + *

The identifier for the hours of operation.

+ */ + HoursOfOperationId: string | undefined; +} + +/** + * @public + */ +export interface UpdateQueueMaxContactsRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier for the queue.

+ */ + QueueId: string | undefined; + + /** + * @public + *

The maximum number of contacts that can be in the queue before it is considered full.

+ */ + MaxContacts?: number; +} + +/** + * @public + */ +export interface UpdateQueueNameRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier for the queue.

+ */ + QueueId: string | undefined; + + /** + * @public + *

The name of the queue.

+ */ + Name?: string; + + /** + * @public + *

The description of the queue.

+ */ + Description?: string; +} + +/** + * @public + */ +export interface UpdateQueueOutboundCallerConfigRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier for the queue.

+ */ + QueueId: string | undefined; + + /** + * @public + *

The outbound caller ID name, number, and outbound whisper flow.

+ */ + OutboundCallerConfig: OutboundCallerConfig | undefined; +} + +/** + * @public + */ +export interface UpdateQueueStatusRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier for the queue.

+ */ + QueueId: string | undefined; + + /** + * @public + *

The status of the queue.

+ */ + Status: QueueStatus | string | undefined; +} + +/** + * @public + */ +export interface UpdateQuickConnectConfigRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier for the quick connect.

+ */ + QuickConnectId: string | undefined; + + /** + * @public + *

Information about the configuration settings for the quick connect.

+ */ + QuickConnectConfig: QuickConnectConfig | undefined; +} + +/** + * @public + */ +export interface UpdateQuickConnectNameRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier for the quick connect.

+ */ + QuickConnectId: string | undefined; + + /** + * @public + *

The name of the quick connect.

+ */ + Name?: string; + + /** + * @public + *

The description of the quick connect.

+ */ + Description?: string; +} + +/** + * @public + */ +export interface UpdateRoutingProfileAgentAvailabilityTimerRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the routing profile.

+ */ + RoutingProfileId: string | undefined; + + /** + * @public + *

Whether agents with this routing profile will have their routing order calculated based on + * time since their last inbound contact or longest idle + * time.

+ */ + AgentAvailabilityTimer: AgentAvailabilityTimer | string | undefined; +} + +/** + * @public + */ +export interface UpdateRoutingProfileConcurrencyRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the routing profile.

+ */ + RoutingProfileId: string | undefined; + + /** + * @public + *

The channels that agents can handle in the Contact Control Panel (CCP).

+ */ + MediaConcurrencies: MediaConcurrency[] | undefined; +} + +/** + * @public + */ +export interface UpdateRoutingProfileDefaultOutboundQueueRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the routing profile.

+ */ + RoutingProfileId: string | undefined; + + /** + * @public + *

The identifier for the default outbound queue.

+ */ + DefaultOutboundQueueId: string | undefined; +} + +/** + * @public + */ +export interface UpdateRoutingProfileNameRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the routing profile.

+ */ + RoutingProfileId: string | undefined; + + /** + * @public + *

The name of the routing profile. Must not be more than 127 characters.

+ */ + Name?: string; + + /** + * @public + *

The description of the routing profile. Must not be more than 250 characters.

+ */ + Description?: string; +} + +/** + * @public + */ +export interface UpdateRoutingProfileQueuesRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the routing profile.

+ */ + RoutingProfileId: string | undefined; + + /** + * @public + *

The queues to be updated for this routing profile. + * Queues must first be associated to the routing + * profile. You can do this using AssociateRoutingProfileQueues.

+ */ + QueueConfigs: RoutingProfileQueueConfig[] | undefined; +} + +/** + * @public + */ +export interface UpdateRuleRequest { + /** + * @public + *

A unique identifier for the rule.

+ */ + RuleId: string | undefined; + + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The name of the rule. You can change the name only if TriggerEventSource is one + * of the following values: OnZendeskTicketCreate | + * OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate + *

+ */ + Name: string | undefined; + + /** + * @public + *

The conditions of the rule.

+ */ + Function: string | undefined; + + /** + * @public + *

A list of actions to be run when the rule is triggered.

+ */ + Actions: RuleAction[] | undefined; + + /** + * @public + *

The publish status of the rule.

+ */ + PublishStatus: RulePublishStatus | string | undefined; +} + +/** + * @public + */ +export interface UpdateSecurityProfileRequest { + /** + * @public + *

The description of the security profile.

+ */ + Description?: string; + + /** + * @public + *

The permissions granted to a security profile. For a list of valid permissions, see List of security + * profile permissions.

+ */ + Permissions?: string[]; + + /** + * @public + *

The identifier for the security profle.

+ */ + SecurityProfileId: string | undefined; + + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The list of tags that a security profile uses to restrict access to resources in Amazon Connect.

+ */ + AllowedAccessControlTags?: Record; + + /** + * @public + *

The list of resources that a security profile applies tag restrictions to in Amazon Connect.

+ */ + TagRestrictedResources?: string[]; +} + +/** + * @public + */ +export interface UpdateTaskTemplateRequest { + /** + * @public + *

A unique identifier for the task template.

+ */ + TaskTemplateId: string | undefined; + + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The name of the task template.

+ */ + Name?: string; + + /** + * @public + *

The description of the task template.

+ */ + Description?: string; + + /** + * @public + *

The identifier of the flow that runs by default when a task is created by referencing this template.

+ */ + ContactFlowId?: string; + + /** + * @public + *

Constraints that are applicable to the fields listed.

+ */ + Constraints?: TaskTemplateConstraints; + + /** + * @public + *

The default values for fields when a task is created by referencing this template.

+ */ + Defaults?: TaskTemplateDefaults; + + /** + * @public + *

Marks a template as ACTIVE or INACTIVE for a task to refer to it. + * Tasks can only be created from ACTIVE templates. + * If a template is marked as INACTIVE, then a task that refers to this template cannot be created.

+ */ + Status?: TaskTemplateStatus | string; + + /** + * @public + *

Fields that are part of the template.

+ */ + Fields?: TaskTemplateField[]; +} + +/** + * @public + */ +export interface UpdateTaskTemplateResponse { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId?: string; + + /** + * @public + *

The identifier of the task template resource.

+ */ + Id?: string; + + /** + * @public + *

The Amazon Resource Name (ARN) for the task template resource.

+ */ + Arn?: string; + + /** + * @public + *

The name of the task template.

+ */ + Name?: string; + + /** + * @public + *

The description of the task template.

+ */ + Description?: string; + + /** + * @public + *

The identifier of the flow that runs by default when a task is created by referencing this template.

+ */ + ContactFlowId?: string; + + /** + * @public + *

Constraints that are applicable to the fields listed.

+ */ + Constraints?: TaskTemplateConstraints; + + /** + * @public + *

The default values for fields when a task is created by referencing this template.

+ */ + Defaults?: TaskTemplateDefaults; + + /** + * @public + *

Fields that are part of the template.

+ */ + Fields?: TaskTemplateField[]; + + /** + * @public + *

Marks a template as ACTIVE or INACTIVE for a task to refer to it. + * Tasks can only be created from ACTIVE templates. + * If a template is marked as INACTIVE, then a task that refers to this template cannot be created.

+ */ + Status?: TaskTemplateStatus | string; + + /** + * @public + *

The timestamp when the task template was last modified.

+ */ + LastModifiedTime?: Date; + + /** + * @public + *

The timestamp when the task template was created.

+ */ + CreatedTime?: Date; +} + +/** + * @public + */ +export interface UpdateTrafficDistributionRequest { + /** + * @public + *

The identifier of the traffic distribution group. + * This can be the ID or the ARN if the API is being called in the Region where the traffic distribution group was created. + * The ARN must be provided if the call is from the replicated Region.

+ */ + Id: string | undefined; + + /** + * @public + *

The distribution of traffic between the instance and its replica(s).

+ */ + TelephonyConfig?: TelephonyConfig; + + /** + * @public + *

The distribution of allowing signing in to the instance and its replica(s).

+ */ + SignInConfig?: SignInConfig; + + /** + * @public + *

The distribution of agents between the instance and its replica(s).

+ */ + AgentConfig?: AgentConfig; +} + +/** + * @public + */ +export interface UpdateTrafficDistributionResponse {} + +/** + * @public + */ +export interface UpdateUserHierarchyRequest { + /** + * @public + *

The identifier of the hierarchy group.

+ */ + HierarchyGroupId?: string; + + /** + * @public + *

The identifier of the user account.

+ */ + UserId: string | undefined; + + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; +} + +/** + * @public + */ +export interface UpdateUserHierarchyGroupNameRequest { + /** + * @public + *

The name of the hierarchy group. Must not be more than 100 characters.

+ */ + Name: string | undefined; + + /** + * @public + *

The identifier of the hierarchy group.

+ */ + HierarchyGroupId: string | undefined; + + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

+ */ + InstanceId: string | undefined; +} + +/** + * @public + *

Contains information about the hierarchy level to update.

+ */ +export interface HierarchyLevelUpdate { + /** + * @public + *

The name of the user hierarchy level. Must not be more than 50 characters.

+ */ + Name: string | undefined; +} + /** * @public *

Contains information about the level hierarchy to update.

@@ -168,6 +824,83 @@ export interface UpdateUserSecurityProfilesRequest { InstanceId: string | undefined; } +/** + * @public + */ +export interface UpdateViewContentRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the view. Both ViewArn and ViewId can be used.

+ */ + ViewId: string | undefined; + + /** + * @public + *

Indicates the view status as either SAVED or PUBLISHED. The + * PUBLISHED status will initiate validation on the content.

+ */ + Status: ViewStatus | string | undefined; + + /** + * @public + *

View content containing all content necessary to render a view except for runtime input data + * and the runtime input schema, which is auto-generated by this operation.

+ *

The total uncompressed content has a maximum file size of 400kB.

+ */ + Content: ViewInputContent | undefined; +} + +/** + * @public + */ +export interface UpdateViewContentResponse { + /** + * @public + *

A view resource object. Contains metadata and content necessary to render the view.

+ */ + View?: View; +} + +/** + * @public + */ +export interface UpdateViewMetadataRequest { + /** + * @public + *

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

+ */ + InstanceId: string | undefined; + + /** + * @public + *

The identifier of the view. Both ViewArn and ViewId can be used.

+ */ + ViewId: string | undefined; + + /** + * @public + *

The name of the view.

+ */ + Name?: string; + + /** + * @public + *

The description of the view.

+ */ + Description?: string; +} + +/** + * @public + */ +export interface UpdateViewMetadataResponse {} + /** * @public *

Information about an item from an evaluation form. The item must be either a section or a @@ -1035,3 +1768,27 @@ export interface SearchUsersRequest { */ SearchCriteria?: UserSearchCriteria; } + +/** + * @internal + */ +export const UpdateViewContentRequestFilterSensitiveLog = (obj: UpdateViewContentRequest): any => ({ + ...obj, + ...(obj.Content && { Content: ViewInputContentFilterSensitiveLog(obj.Content) }), +}); + +/** + * @internal + */ +export const UpdateViewContentResponseFilterSensitiveLog = (obj: UpdateViewContentResponse): any => ({ + ...obj, + ...(obj.View && { View: ViewFilterSensitiveLog(obj.View) }), +}); + +/** + * @internal + */ +export const UpdateViewMetadataRequestFilterSensitiveLog = (obj: UpdateViewMetadataRequest): any => ({ + ...obj, + ...(obj.Name && { Name: SENSITIVE_STRING }), +}); diff --git a/clients/client-connect/src/pagination/ListViewVersionsPaginator.ts b/clients/client-connect/src/pagination/ListViewVersionsPaginator.ts new file mode 100644 index 0000000000000..804fdc0fb8364 --- /dev/null +++ b/clients/client-connect/src/pagination/ListViewVersionsPaginator.ts @@ -0,0 +1,50 @@ +// smithy-typescript generated code +import { Paginator } from "@smithy/types"; + +import { + ListViewVersionsCommand, + ListViewVersionsCommandInput, + ListViewVersionsCommandOutput, +} from "../commands/ListViewVersionsCommand"; +import { ConnectClient } from "../ConnectClient"; +import { ConnectPaginationConfiguration } from "./Interfaces"; + +/** + * @internal + */ +const makePagedClientRequest = async ( + client: ConnectClient, + input: ListViewVersionsCommandInput, + ...args: any +): Promise => { + // @ts-ignore + return await client.send(new ListViewVersionsCommand(input), ...args); +}; +/** + * @public + */ +export async function* paginateListViewVersions( + config: ConnectPaginationConfiguration, + input: ListViewVersionsCommandInput, + ...additionalArguments: any +): Paginator { + // ToDo: replace with actual type instead of typeof input.NextToken + let token: typeof input.NextToken | undefined = config.startingToken || undefined; + let hasNext = true; + let page: ListViewVersionsCommandOutput; + while (hasNext) { + input.NextToken = token; + input["MaxResults"] = config.pageSize; + if (config.client instanceof ConnectClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected Connect | ConnectClient"); + } + yield page; + const prevToken = token; + token = page.NextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + // @ts-ignore + return undefined; +} diff --git a/clients/client-connect/src/pagination/ListViewsPaginator.ts b/clients/client-connect/src/pagination/ListViewsPaginator.ts new file mode 100644 index 0000000000000..e9809310d6e78 --- /dev/null +++ b/clients/client-connect/src/pagination/ListViewsPaginator.ts @@ -0,0 +1,46 @@ +// smithy-typescript generated code +import { Paginator } from "@smithy/types"; + +import { ListViewsCommand, ListViewsCommandInput, ListViewsCommandOutput } from "../commands/ListViewsCommand"; +import { ConnectClient } from "../ConnectClient"; +import { ConnectPaginationConfiguration } from "./Interfaces"; + +/** + * @internal + */ +const makePagedClientRequest = async ( + client: ConnectClient, + input: ListViewsCommandInput, + ...args: any +): Promise => { + // @ts-ignore + return await client.send(new ListViewsCommand(input), ...args); +}; +/** + * @public + */ +export async function* paginateListViews( + config: ConnectPaginationConfiguration, + input: ListViewsCommandInput, + ...additionalArguments: any +): Paginator { + // ToDo: replace with actual type instead of typeof input.NextToken + let token: typeof input.NextToken | undefined = config.startingToken || undefined; + let hasNext = true; + let page: ListViewsCommandOutput; + while (hasNext) { + input.NextToken = token; + input["MaxResults"] = config.pageSize; + if (config.client instanceof ConnectClient) { + page = await makePagedClientRequest(config.client, input, ...additionalArguments); + } else { + throw new Error("Invalid client, expected Connect | ConnectClient"); + } + yield page; + const prevToken = token; + token = page.NextToken; + hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken)); + } + // @ts-ignore + return undefined; +} diff --git a/clients/client-connect/src/pagination/index.ts b/clients/client-connect/src/pagination/index.ts index 83acec4c6032f..2144fa76bfe14 100644 --- a/clients/client-connect/src/pagination/index.ts +++ b/clients/client-connect/src/pagination/index.ts @@ -42,6 +42,8 @@ export * from "./ListTrafficDistributionGroupsPaginator"; export * from "./ListUseCasesPaginator"; export * from "./ListUserHierarchyGroupsPaginator"; export * from "./ListUsersPaginator"; +export * from "./ListViewVersionsPaginator"; +export * from "./ListViewsPaginator"; export * from "./SearchAvailablePhoneNumbersPaginator"; export * from "./SearchHoursOfOperationsPaginator"; export * from "./SearchPromptsPaginator"; diff --git a/clients/client-connect/src/protocols/Aws_restJson1.ts b/clients/client-connect/src/protocols/Aws_restJson1.ts index ad0fc01b738d0..dbf282d23f7e8 100644 --- a/clients/client-connect/src/protocols/Aws_restJson1.ts +++ b/clients/client-connect/src/protocols/Aws_restJson1.ts @@ -114,6 +114,8 @@ import { CreateUserHierarchyGroupCommandInput, CreateUserHierarchyGroupCommandOutput, } from "../commands/CreateUserHierarchyGroupCommand"; +import { CreateViewCommandInput, CreateViewCommandOutput } from "../commands/CreateViewCommand"; +import { CreateViewVersionCommandInput, CreateViewVersionCommandOutput } from "../commands/CreateViewVersionCommand"; import { CreateVocabularyCommandInput, CreateVocabularyCommandOutput } from "../commands/CreateVocabularyCommand"; import { DeactivateEvaluationFormCommandInput, @@ -164,6 +166,8 @@ import { DeleteUserHierarchyGroupCommandInput, DeleteUserHierarchyGroupCommandOutput, } from "../commands/DeleteUserHierarchyGroupCommand"; +import { DeleteViewCommandInput, DeleteViewCommandOutput } from "../commands/DeleteViewCommand"; +import { DeleteViewVersionCommandInput, DeleteViewVersionCommandOutput } from "../commands/DeleteViewVersionCommand"; import { DeleteVocabularyCommandInput, DeleteVocabularyCommandOutput } from "../commands/DeleteVocabularyCommand"; import { DescribeAgentStatusCommandInput, @@ -231,6 +235,7 @@ import { DescribeUserHierarchyStructureCommandInput, DescribeUserHierarchyStructureCommandOutput, } from "../commands/DescribeUserHierarchyStructureCommand"; +import { DescribeViewCommandInput, DescribeViewCommandOutput } from "../commands/DescribeViewCommand"; import { DescribeVocabularyCommandInput, DescribeVocabularyCommandOutput } from "../commands/DescribeVocabularyCommand"; import { DisassociateApprovedOriginCommandInput, @@ -384,6 +389,8 @@ import { ListUserHierarchyGroupsCommandOutput, } from "../commands/ListUserHierarchyGroupsCommand"; import { ListUsersCommandInput, ListUsersCommandOutput } from "../commands/ListUsersCommand"; +import { ListViewsCommandInput, ListViewsCommandOutput } from "../commands/ListViewsCommand"; +import { ListViewVersionsCommandInput, ListViewVersionsCommandOutput } from "../commands/ListViewVersionsCommand"; import { MonitorContactCommandInput, MonitorContactCommandOutput } from "../commands/MonitorContactCommand"; import { PutUserStatusCommandInput, PutUserStatusCommandOutput } from "../commands/PutUserStatusCommand"; import { ReleasePhoneNumberCommandInput, ReleasePhoneNumberCommandOutput } from "../commands/ReleasePhoneNumberCommand"; @@ -591,6 +598,8 @@ import { UpdateUserSecurityProfilesCommandInput, UpdateUserSecurityProfilesCommandOutput, } from "../commands/UpdateUserSecurityProfilesCommand"; +import { UpdateViewContentCommandInput, UpdateViewContentCommandOutput } from "../commands/UpdateViewContentCommand"; +import { UpdateViewMetadataCommandInput, UpdateViewMetadataCommandOutput } from "../commands/UpdateViewMetadataCommand"; import { ConnectServiceException as __BaseException } from "../models/ConnectServiceException"; import { AccessDeniedException, @@ -677,10 +686,12 @@ import { TaskTemplateField, TaskTemplateFieldIdentifier, ThrottlingException, + TooManyRequestsException, UserIdentityInfo, UserPhoneConfig, UserQuickConnectConfig, - Vocabulary, + View, + ViewInputContent, } from "../models/models_0"; import { AnswerMachineDetectionConfig, @@ -704,7 +715,6 @@ import { FilterV2, Grouping, HierarchyGroupCondition, - HierarchyLevelUpdate, HistoricalMetric, HistoricalMetricData, HistoricalMetricResult, @@ -742,6 +752,7 @@ import { UserDataFilters, UserNotFoundException, UserSearchFilter, + Vocabulary, VocabularySummary, VoiceRecordingConfiguration, } from "../models/models_1"; @@ -750,6 +761,7 @@ import { EvaluationFormContent, EvaluationFormItem, EvaluationFormSection, + HierarchyLevelUpdate, HierarchyStructureUpdate, HoursOfOperationSearchCriteria, PromptSearchCriteria, @@ -1888,6 +1900,74 @@ export const se_CreateUserHierarchyGroupCommand = async ( }); }; +/** + * serializeAws_restJson1CreateViewCommand + */ +export const se_CreateViewCommand = async ( + input: CreateViewCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/views/{InstanceId}"; + resolvedPath = __resolvedPath(resolvedPath, input, "InstanceId", () => input.InstanceId!, "{InstanceId}", false); + let body: any; + body = JSON.stringify( + take(input, { + ClientToken: [], + Content: (_) => _json(_), + Description: [], + Name: [], + Status: [], + Tags: (_) => _json(_), + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "PUT", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1CreateViewVersionCommand + */ +export const se_CreateViewVersionCommand = async ( + input: CreateViewVersionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/views/{InstanceId}/{ViewId}/versions"; + resolvedPath = __resolvedPath(resolvedPath, input, "InstanceId", () => input.InstanceId!, "{InstanceId}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "ViewId", () => input.ViewId!, "{ViewId}", false); + let body: any; + body = JSON.stringify( + take(input, { + VersionDescription: [], + ViewContentSha256: [], + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "PUT", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1CreateVocabularyCommand */ @@ -2518,6 +2598,65 @@ export const se_DeleteUserHierarchyGroupCommand = async ( }); }; +/** + * serializeAws_restJson1DeleteViewCommand + */ +export const se_DeleteViewCommand = async ( + input: DeleteViewCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/views/{InstanceId}/{ViewId}"; + resolvedPath = __resolvedPath(resolvedPath, input, "InstanceId", () => input.InstanceId!, "{InstanceId}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "ViewId", () => input.ViewId!, "{ViewId}", false); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "DELETE", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1DeleteViewVersionCommand + */ +export const se_DeleteViewVersionCommand = async ( + input: DeleteViewVersionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + + "/views/{InstanceId}/{ViewId}/versions/{ViewVersion}"; + resolvedPath = __resolvedPath(resolvedPath, input, "InstanceId", () => input.InstanceId!, "{InstanceId}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "ViewId", () => input.ViewId!, "{ViewId}", false); + resolvedPath = __resolvedPath( + resolvedPath, + input, + "ViewVersion", + () => input.ViewVersion!.toString(), + "{ViewVersion}", + false + ); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "DELETE", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1DeleteVocabularyCommand */ @@ -3190,6 +3329,31 @@ export const se_DescribeUserHierarchyStructureCommand = async ( }); }; +/** + * serializeAws_restJson1DescribeViewCommand + */ +export const se_DescribeViewCommand = async ( + input: DescribeViewCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/views/{InstanceId}/{ViewId}"; + resolvedPath = __resolvedPath(resolvedPath, input, "InstanceId", () => input.InstanceId!, "{InstanceId}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "ViewId", () => input.ViewId!, "{ViewId}", false); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + body, + }); +}; + /** * serializeAws_restJson1DescribeVocabularyCommand */ @@ -4999,6 +5163,65 @@ export const se_ListUsersCommand = async ( }); }; +/** + * serializeAws_restJson1ListViewsCommand + */ +export const se_ListViewsCommand = async ( + input: ListViewsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/views/{InstanceId}"; + resolvedPath = __resolvedPath(resolvedPath, input, "InstanceId", () => input.InstanceId!, "{InstanceId}", false); + const query: any = map({ + type: [, input.Type!], + nextToken: [, input.NextToken!], + maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults!.toString()], + }); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + query, + body, + }); +}; + +/** + * serializeAws_restJson1ListViewVersionsCommand + */ +export const se_ListViewVersionsCommand = async ( + input: ListViewVersionsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = {}; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/views/{InstanceId}/{ViewId}/versions"; + resolvedPath = __resolvedPath(resolvedPath, input, "InstanceId", () => input.InstanceId!, "{InstanceId}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "ViewId", () => input.ViewId!, "{ViewId}", false); + const query: any = map({ + nextToken: [, input.NextToken!], + maxResults: [() => input.MaxResults !== void 0, () => input.MaxResults!.toString()], + }); + let body: any; + return new __HttpRequest({ + protocol, + hostname, + port, + method: "GET", + headers, + path: resolvedPath, + query, + body, + }); +}; + /** * serializeAws_restJson1MonitorContactCommand */ @@ -7480,6 +7703,72 @@ export const se_UpdateUserSecurityProfilesCommand = async ( }); }; +/** + * serializeAws_restJson1UpdateViewContentCommand + */ +export const se_UpdateViewContentCommand = async ( + input: UpdateViewContentCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/views/{InstanceId}/{ViewId}"; + resolvedPath = __resolvedPath(resolvedPath, input, "InstanceId", () => input.InstanceId!, "{InstanceId}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "ViewId", () => input.ViewId!, "{ViewId}", false); + let body: any; + body = JSON.stringify( + take(input, { + Content: (_) => _json(_), + Status: [], + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + +/** + * serializeAws_restJson1UpdateViewMetadataCommand + */ +export const se_UpdateViewMetadataCommand = async ( + input: UpdateViewMetadataCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const { hostname, protocol = "https", port, path: basePath } = await context.endpoint(); + const headers: any = { + "content-type": "application/json", + }; + let resolvedPath = + `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/views/{InstanceId}/{ViewId}/metadata"; + resolvedPath = __resolvedPath(resolvedPath, input, "InstanceId", () => input.InstanceId!, "{InstanceId}", false); + resolvedPath = __resolvedPath(resolvedPath, input, "ViewId", () => input.ViewId!, "{ViewId}", false); + let body: any; + body = JSON.stringify( + take(input, { + Description: [], + Name: [], + }) + ); + return new __HttpRequest({ + protocol, + hostname, + port, + method: "POST", + headers, + path: resolvedPath, + body, + }); +}; + /** * deserializeAws_restJson1ActivateEvaluationFormCommand */ @@ -9492,6 +9781,145 @@ const de_CreateUserHierarchyGroupCommandError = async ( } }; +/** + * deserializeAws_restJson1CreateViewCommand + */ +export const de_CreateViewCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CreateViewCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + View: (_) => de_View(_, context), + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1CreateViewCommandError + */ +const de_CreateViewCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.connect#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "DuplicateResourceException": + case "com.amazonaws.connect#DuplicateResourceException": + throw await de_DuplicateResourceExceptionRes(parsedOutput, context); + case "InternalServiceException": + case "com.amazonaws.connect#InternalServiceException": + throw await de_InternalServiceExceptionRes(parsedOutput, context); + case "InvalidParameterException": + case "com.amazonaws.connect#InvalidParameterException": + throw await de_InvalidParameterExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.connect#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.connect#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.connect#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.connect#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.connect#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1CreateViewVersionCommand + */ +export const de_CreateViewVersionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CreateViewVersionCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + View: (_) => de_View(_, context), + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1CreateViewVersionCommandError + */ +const de_CreateViewVersionCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.connect#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServiceException": + case "com.amazonaws.connect#InternalServiceException": + throw await de_InternalServiceExceptionRes(parsedOutput, context); + case "InvalidParameterException": + case "com.amazonaws.connect#InvalidParameterException": + throw await de_InvalidParameterExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.connect#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.connect#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.connect#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.connect#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.connect#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1CreateVocabularyCommand */ @@ -10619,6 +11047,128 @@ const de_DeleteUserHierarchyGroupCommandError = async ( } }; +/** + * deserializeAws_restJson1DeleteViewCommand + */ +export const de_DeleteViewCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_DeleteViewCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1DeleteViewCommandError + */ +const de_DeleteViewCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.connect#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServiceException": + case "com.amazonaws.connect#InternalServiceException": + throw await de_InternalServiceExceptionRes(parsedOutput, context); + case "InvalidParameterException": + case "com.amazonaws.connect#InvalidParameterException": + throw await de_InvalidParameterExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.connect#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.connect#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.connect#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.connect#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1DeleteViewVersionCommand + */ +export const de_DeleteViewVersionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_DeleteViewVersionCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1DeleteViewVersionCommandError + */ +const de_DeleteViewVersionCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.connect#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServiceException": + case "com.amazonaws.connect#InternalServiceException": + throw await de_InternalServiceExceptionRes(parsedOutput, context); + case "InvalidParameterException": + case "com.amazonaws.connect#InvalidParameterException": + throw await de_InvalidParameterExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.connect#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.connect#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.connect#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.connect#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1DeleteVocabularyCommand */ @@ -11904,9 +12454,71 @@ const de_DescribeUserHierarchyStructureCommandError = async ( case "ResourceNotFoundException": case "com.amazonaws.connect#ResourceNotFoundException": throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); - case "ThrottlingException": - case "com.amazonaws.connect#ThrottlingException": - throw await de_ThrottlingExceptionRes(parsedOutput, context); + case "ThrottlingException": + case "com.amazonaws.connect#ThrottlingException": + throw await de_ThrottlingExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1DescribeViewCommand + */ +export const de_DescribeViewCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_DescribeViewCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + View: (_) => de_View(_, context), + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1DescribeViewCommandError + */ +const de_DescribeViewCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.connect#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServiceException": + case "com.amazonaws.connect#InternalServiceException": + throw await de_InternalServiceExceptionRes(parsedOutput, context); + case "InvalidParameterException": + case "com.amazonaws.connect#InvalidParameterException": + throw await de_InvalidParameterExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.connect#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.connect#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.connect#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); default: const parsedBody = parsedOutput.body; return throwDefaultError({ @@ -15267,6 +15879,132 @@ const de_ListUsersCommandError = async ( } }; +/** + * deserializeAws_restJson1ListViewsCommand + */ +export const de_ListViewsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListViewsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + NextToken: __expectString, + ViewsSummaryList: _json, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListViewsCommandError + */ +const de_ListViewsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.connect#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServiceException": + case "com.amazonaws.connect#InternalServiceException": + throw await de_InternalServiceExceptionRes(parsedOutput, context); + case "InvalidParameterException": + case "com.amazonaws.connect#InvalidParameterException": + throw await de_InvalidParameterExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.connect#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.connect#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.connect#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1ListViewVersionsCommand + */ +export const de_ListViewVersionsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_ListViewVersionsCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + NextToken: __expectString, + ViewVersionSummaryList: _json, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListViewVersionsCommandError + */ +const de_ListViewVersionsCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.connect#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServiceException": + case "com.amazonaws.connect#InternalServiceException": + throw await de_InternalServiceExceptionRes(parsedOutput, context); + case "InvalidParameterException": + case "com.amazonaws.connect#InvalidParameterException": + throw await de_InvalidParameterExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.connect#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.connect#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.connect#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + /** * deserializeAws_restJson1MonitorContactCommand */ @@ -19274,6 +20012,135 @@ const de_UpdateUserSecurityProfilesCommandError = async ( } }; +/** + * deserializeAws_restJson1UpdateViewContentCommand + */ +export const de_UpdateViewContentCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_UpdateViewContentCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + View: (_) => de_View(_, context), + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1UpdateViewContentCommandError + */ +const de_UpdateViewContentCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.connect#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "InternalServiceException": + case "com.amazonaws.connect#InternalServiceException": + throw await de_InternalServiceExceptionRes(parsedOutput, context); + case "InvalidParameterException": + case "com.amazonaws.connect#InvalidParameterException": + throw await de_InvalidParameterExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.connect#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.connect#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.connect#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.connect#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + +/** + * deserializeAws_restJson1UpdateViewMetadataCommand + */ +export const de_UpdateViewMetadataCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_UpdateViewMetadataCommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + +/** + * deserializeAws_restJson1UpdateViewMetadataCommandError + */ +const de_UpdateViewMetadataCommandError = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + const parsedOutput: any = { + ...output, + body: await parseErrorBody(output.body, context), + }; + const errorCode = loadRestJsonErrorCode(output, parsedOutput.body); + switch (errorCode) { + case "AccessDeniedException": + case "com.amazonaws.connect#AccessDeniedException": + throw await de_AccessDeniedExceptionRes(parsedOutput, context); + case "DuplicateResourceException": + case "com.amazonaws.connect#DuplicateResourceException": + throw await de_DuplicateResourceExceptionRes(parsedOutput, context); + case "InternalServiceException": + case "com.amazonaws.connect#InternalServiceException": + throw await de_InternalServiceExceptionRes(parsedOutput, context); + case "InvalidParameterException": + case "com.amazonaws.connect#InvalidParameterException": + throw await de_InvalidParameterExceptionRes(parsedOutput, context); + case "InvalidRequestException": + case "com.amazonaws.connect#InvalidRequestException": + throw await de_InvalidRequestExceptionRes(parsedOutput, context); + case "ResourceInUseException": + case "com.amazonaws.connect#ResourceInUseException": + throw await de_ResourceInUseExceptionRes(parsedOutput, context); + case "ResourceNotFoundException": + case "com.amazonaws.connect#ResourceNotFoundException": + throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "TooManyRequestsException": + case "com.amazonaws.connect#TooManyRequestsException": + throw await de_TooManyRequestsExceptionRes(parsedOutput, context); + default: + const parsedBody = parsedOutput.body; + return throwDefaultError({ + output, + parsedBody, + errorCode, + }); + } +}; + const throwDefaultError = withBaseException(__BaseException); /** * deserializeAws_restJson1AccessDeniedExceptionRes @@ -19695,6 +20562,26 @@ const de_ThrottlingExceptionRes = async (parsedOutput: any, context: __SerdeCont return __decorateServiceException(exception, parsedOutput.body); }; +/** + * deserializeAws_restJson1TooManyRequestsExceptionRes + */ +const de_TooManyRequestsExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const contents: any = map({}); + const data: any = parsedOutput.body; + const doc = take(data, { + Message: __expectString, + }); + Object.assign(contents, doc); + const exception = new TooManyRequestsException({ + $metadata: deserializeMetadata(parsedOutput), + ...contents, + }); + return __decorateServiceException(exception, parsedOutput.body); +}; + /** * deserializeAws_restJson1UserNotFoundExceptionRes */ @@ -20307,6 +21194,10 @@ const se_UserSearchCriteria = (input: UserSearchCriteria, context: __SerdeContex // se_UserTagMap omitted. +// se_ViewActions omitted. + +// se_ViewInputContent omitted. + // se_VoiceRecordingConfiguration omitted. // de_ActionSummaries omitted. @@ -21406,6 +22297,39 @@ const de_UserDataList = (output: any, context: __SerdeContext): UserData[] => { // de_UserTagMap omitted. +/** + * deserializeAws_restJson1View + */ +const de_View = (output: any, context: __SerdeContext): View => { + return take(output, { + Arn: __expectString, + Content: _json, + CreatedTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + Description: __expectString, + Id: __expectString, + LastModifiedTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + Name: __expectString, + Status: __expectString, + Tags: _json, + Type: __expectString, + Version: __expectInt32, + VersionDescription: __expectString, + ViewContentSha256: __expectString, + }) as any; +}; + +// de_ViewActions omitted. + +// de_ViewContent omitted. + +// de_ViewsSummaryList omitted. + +// de_ViewSummary omitted. + +// de_ViewVersionSummary omitted. + +// de_ViewVersionSummaryList omitted. + /** * deserializeAws_restJson1Vocabulary */ diff --git a/codegen/sdk-codegen/aws-models/connect.json b/codegen/sdk-codegen/aws-models/connect.json index 894aaa6b281b2..9b6c2db087c84 100644 --- a/codegen/sdk-codegen/aws-models/connect.json +++ b/codegen/sdk-codegen/aws-models/connect.json @@ -693,6 +693,12 @@ { "target": "com.amazonaws.connect#CreateUserHierarchyGroup" }, + { + "target": "com.amazonaws.connect#CreateView" + }, + { + "target": "com.amazonaws.connect#CreateViewVersion" + }, { "target": "com.amazonaws.connect#CreateVocabulary" }, @@ -753,6 +759,12 @@ { "target": "com.amazonaws.connect#DeleteUserHierarchyGroup" }, + { + "target": "com.amazonaws.connect#DeleteView" + }, + { + "target": "com.amazonaws.connect#DeleteViewVersion" + }, { "target": "com.amazonaws.connect#DeleteVocabulary" }, @@ -819,6 +831,9 @@ { "target": "com.amazonaws.connect#DescribeUserHierarchyStructure" }, + { + "target": "com.amazonaws.connect#DescribeView" + }, { "target": "com.amazonaws.connect#DescribeVocabulary" }, @@ -990,6 +1005,12 @@ { "target": "com.amazonaws.connect#ListUsers" }, + { + "target": "com.amazonaws.connect#ListViews" + }, + { + "target": "com.amazonaws.connect#ListViewVersions" + }, { "target": "com.amazonaws.connect#MonitorContact" }, @@ -1196,6 +1217,12 @@ }, { "target": "com.amazonaws.connect#UpdateUserSecurityProfiles" + }, + { + "target": "com.amazonaws.connect#UpdateViewContent" + }, + { + "target": "com.amazonaws.connect#UpdateViewMetadata" } ], "traits": { @@ -3908,7 +3935,7 @@ "code": "ContactNotFoundException", "httpResponseCode": 410 }, - "smithy.api#documentation": "

The contact with the specified ID is not active or does not exist. Applies to Voice calls\n only, not to Chat, Task, or Voice Callback.

", + "smithy.api#documentation": "

The contact with the specified ID is not active or does not exist. Applies to Voice calls\n only, not to Chat or Task contacts.

", "smithy.api#error": "client", "smithy.api#httpError": 410 } @@ -5014,7 +5041,7 @@ } ], "traits": { - "smithy.api#documentation": "

This API is in preview release for Amazon Connect and is subject to change.

\n

Creates a new queue for the specified Amazon Connect instance.

\n \n

If the number being used in the input is claimed to a traffic distribution group, and you are calling this API\n using an instance in the Amazon Web Services Region where the traffic distribution group was created, you can use\n either a full phone number ARN or UUID value for the OutboundCallerIdNumberId value\n of the OutboundCallerConfig request body parameter. However, if the number is claimed to a\n traffic distribution group and you are calling this API using an instance in the alternate Amazon Web Services Region\n associated with the traffic distribution group, you must provide a full phone number ARN. If a UUID is provided\n in\n this scenario, you will receive a\n ResourceNotFoundException.

\n

Only use the phone number ARN format that doesn't contain instance in the\n path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid. This is\n the same ARN format that is returned when you call the ListPhoneNumbersV2\n API.

\n
", + "smithy.api#documentation": "

This API is in preview release for Amazon Connect and is subject to change.

\n

Creates a new queue for the specified Amazon Connect instance.

\n \n
    \n
  • \n

    If the phone number is claimed to a traffic distribution group that was created in the\n same Region as the Amazon Connect instance where you are calling this API, then you can use a\n full phone number ARN or a UUID for OutboundCallerIdNumberId. However, if the phone number is claimed\n to a traffic distribution group that is in one Region, and you are calling this API from an instance in another Amazon Web Services Region that is associated with the traffic distribution group, you must provide a full phone number ARN. If a\n UUID is provided in this scenario, you will receive a\n ResourceNotFoundException.

    \n
  • \n
  • \n

    Only use the phone number ARN format that doesn't contain instance in the\n path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid. This\n is the same ARN format that is returned when you call the ListPhoneNumbersV2\n API.

    \n
  • \n
  • \n

    If you plan to use IAM policies to allow/deny access to this API for phone\n number resources claimed to a traffic distribution group, see Allow or Deny queue API actions for phone numbers in a replica Region.

    \n
  • \n
\n
", "smithy.api#http": { "method": "PUT", "uri": "/queues/{InstanceId}", @@ -5731,7 +5758,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a traffic distribution group given an Amazon Connect instance that has been replicated.

\n

For more information about creating traffic distribution groups, see Set up traffic distribution groups in\n the Amazon Connect Administrator Guide.

", + "smithy.api#documentation": "

Creates a traffic distribution group given an Amazon Connect instance that has been replicated.

\n \n

You can change the SignInConfig distribution only for a \ndefault TrafficDistributionGroup (see the IsDefault parameter in the \nTrafficDistributionGroup\n data type). If you call\n UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup,\n an InvalidRequestException is returned.

\n
\n

For more information about creating traffic distribution groups, see Set up traffic distribution groups in\n the Amazon Connect Administrator Guide.

", "smithy.api#http": { "method": "PUT", "uri": "/traffic-distribution-group", @@ -6120,6 +6147,216 @@ "smithy.api#output": {} } }, + "com.amazonaws.connect#CreateView": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#CreateViewRequest" + }, + "output": { + "target": "com.amazonaws.connect#CreateViewResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#DuplicateResourceException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceInUseException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.connect#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates a new view with the possible status of SAVED or PUBLISHED.

\n

The views will have a unique name for each connect instance.

\n

It performs basic content validation if the status is SAVED or full content validation if the status \n is set to PUBLISHED. An error is returned if validation fails. It associates either \n the $SAVED qualifier or both of the $SAVED and $LATEST qualifiers with the \n provided view content based on the status. The view is idempotent if ClientToken is provided.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/views/{InstanceId}", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.connect#CreateViewRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#ViewsInstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of \n the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ClientToken": { + "target": "com.amazonaws.connect#ViewsClientToken", + "traits": { + "smithy.api#documentation": "

A unique Id for each create view request to avoid duplicate view creation. For example, the view \n is idempotent ClientToken is provided.

" + } + }, + "Status": { + "target": "com.amazonaws.connect#ViewStatus", + "traits": { + "smithy.api#documentation": "

Indicates the view status as either SAVED or PUBLISHED. The \n PUBLISHED status will initiate validation on the content.

", + "smithy.api#required": {} + } + }, + "Content": { + "target": "com.amazonaws.connect#ViewInputContent", + "traits": { + "smithy.api#documentation": "

View content containing all content necessary to render a view except for runtime input data.

\n

The total uncompressed content has a maximum file size of 400kB.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.connect#ViewDescription", + "traits": { + "smithy.api#documentation": "

The description of the view.

" + } + }, + "Name": { + "target": "com.amazonaws.connect#ViewName", + "traits": { + "smithy.api#documentation": "

The name of the view.

", + "smithy.api#required": {} + } + }, + "Tags": { + "target": "com.amazonaws.connect#TagMap", + "traits": { + "smithy.api#documentation": "

The tags associated with the view resource (not specific to view version).These tags can be used \n to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#CreateViewResponse": { + "type": "structure", + "members": { + "View": { + "target": "com.amazonaws.connect#View", + "traits": { + "smithy.api#documentation": "

A view resource object. Contains metadata and content necessary to render the view.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.connect#CreateViewVersion": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#CreateViewVersionRequest" + }, + "output": { + "target": "com.amazonaws.connect#CreateViewVersionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceInUseException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.connect#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

Publishes a new version of the view identifier.

\n

Versions are immutable and monotonically increasing.

\n

It returns the highest version if there is no change in content compared to that version. An error \n is displayed if the supplied ViewContentSha256 is different from the ViewContentSha256 of the \n $LATEST alias.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/views/{InstanceId}/{ViewId}/versions", + "code": 200 + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.connect#CreateViewVersionRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#ViewsInstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ViewId": { + "target": "com.amazonaws.connect#ViewId", + "traits": { + "smithy.api#documentation": "

The identifier of the view. Both ViewArn and ViewId can be used.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VersionDescription": { + "target": "com.amazonaws.connect#ViewDescription", + "traits": { + "smithy.api#documentation": "

The description for the version being published.

" + } + }, + "ViewContentSha256": { + "target": "com.amazonaws.connect#ViewContentSha256", + "traits": { + "smithy.api#documentation": "

Indicates the checksum value of the latest published view content.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#CreateViewVersionResponse": { + "type": "structure", + "members": { + "View": { + "target": "com.amazonaws.connect#View", + "traits": { + "smithy.api#documentation": "

All view data is contained within the View object.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.connect#CreateVocabulary": { "type": "operation", "input": { @@ -7727,13 +7964,13 @@ "smithy.api#input": {} } }, - "com.amazonaws.connect#DeleteVocabulary": { + "com.amazonaws.connect#DeleteView": { "type": "operation", "input": { - "target": "com.amazonaws.connect#DeleteVocabularyRequest" + "target": "com.amazonaws.connect#DeleteViewRequest" }, "output": { - "target": "com.amazonaws.connect#DeleteVocabularyResponse" + "target": "com.amazonaws.connect#DeleteViewResponse" }, "errors": [ { @@ -7742,6 +7979,9 @@ { "target": "com.amazonaws.connect#InternalServiceException" }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, { "target": "com.amazonaws.connect#InvalidRequestException" }, @@ -7752,33 +7992,33 @@ "target": "com.amazonaws.connect#ResourceNotFoundException" }, { - "target": "com.amazonaws.connect#ThrottlingException" + "target": "com.amazonaws.connect#TooManyRequestsException" } ], "traits": { - "smithy.api#documentation": "

Deletes the vocabulary that has the given identifier.

", + "smithy.api#documentation": "

Deletes the view entirely. It deletes the view and all associated qualifiers (versions and aliases).

", "smithy.api#http": { - "method": "POST", - "uri": "/vocabulary-remove/{InstanceId}/{VocabularyId}", + "method": "DELETE", + "uri": "/views/{InstanceId}/{ViewId}", "code": 200 } } }, - "com.amazonaws.connect#DeleteVocabularyRequest": { + "com.amazonaws.connect#DeleteViewRequest": { "type": "structure", "members": { "InstanceId": { - "target": "com.amazonaws.connect#InstanceId", + "target": "com.amazonaws.connect#ViewsInstanceId", "traits": { - "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "VocabularyId": { - "target": "com.amazonaws.connect#VocabularyId", + "ViewId": { + "target": "com.amazonaws.connect#ViewId", "traits": { - "smithy.api#documentation": "

The identifier of the custom vocabulary.

", + "smithy.api#documentation": "

The identifier of the view. Both ViewArn and ViewId can be used.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -7788,44 +8028,25 @@ "smithy.api#input": {} } }, - "com.amazonaws.connect#DeleteVocabularyResponse": { + "com.amazonaws.connect#DeleteViewResponse": { "type": "structure", - "members": { - "VocabularyArn": { - "target": "com.amazonaws.connect#ARN", - "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the custom vocabulary.

", - "smithy.api#required": {} - } - }, - "VocabularyId": { - "target": "com.amazonaws.connect#VocabularyId", - "traits": { - "smithy.api#documentation": "

The identifier of the custom vocabulary.

", - "smithy.api#required": {} - } - }, - "State": { - "target": "com.amazonaws.connect#VocabularyState", - "traits": { - "smithy.api#documentation": "

The current state of the custom vocabulary.

", - "smithy.api#required": {} - } - } - }, + "members": {}, "traits": { "smithy.api#output": {} } }, - "com.amazonaws.connect#DescribeAgentStatus": { + "com.amazonaws.connect#DeleteViewVersion": { "type": "operation", "input": { - "target": "com.amazonaws.connect#DescribeAgentStatusRequest" + "target": "com.amazonaws.connect#DeleteViewVersionRequest" }, "output": { - "target": "com.amazonaws.connect#DescribeAgentStatusResponse" + "target": "com.amazonaws.connect#DeleteViewVersionResponse" }, "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, { "target": "com.amazonaws.connect#InternalServiceException" }, @@ -7835,37 +8056,49 @@ { "target": "com.amazonaws.connect#InvalidRequestException" }, + { + "target": "com.amazonaws.connect#ResourceInUseException" + }, { "target": "com.amazonaws.connect#ResourceNotFoundException" }, { - "target": "com.amazonaws.connect#ThrottlingException" + "target": "com.amazonaws.connect#TooManyRequestsException" } ], "traits": { - "smithy.api#documentation": "

This API is in preview release for Amazon Connect and is subject to change.

\n

Describes an agent status.

", + "smithy.api#documentation": "

Deletes the particular version specified in ViewVersion identifier.

", "smithy.api#http": { - "method": "GET", - "uri": "/agent-status/{InstanceId}/{AgentStatusId}", + "method": "DELETE", + "uri": "/views/{InstanceId}/{ViewId}/versions/{ViewVersion}", "code": 200 } } }, - "com.amazonaws.connect#DescribeAgentStatusRequest": { + "com.amazonaws.connect#DeleteViewVersionRequest": { "type": "structure", "members": { "InstanceId": { - "target": "com.amazonaws.connect#InstanceId", + "target": "com.amazonaws.connect#ViewsInstanceId", "traits": { - "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "AgentStatusId": { - "target": "com.amazonaws.connect#AgentStatusId", + "ViewId": { + "target": "com.amazonaws.connect#ViewId", "traits": { - "smithy.api#documentation": "

The identifier for the agent status.

", + "smithy.api#documentation": "

The identifier of the view. Both ViewArn and ViewId can be used.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ViewVersion": { + "target": "com.amazonaws.connect#ViewVersion", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The version number of the view.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -7875,13 +8108,168 @@ "smithy.api#input": {} } }, - "com.amazonaws.connect#DescribeAgentStatusResponse": { + "com.amazonaws.connect#DeleteViewVersionResponse": { "type": "structure", - "members": { - "AgentStatus": { - "target": "com.amazonaws.connect#AgentStatus", - "traits": { - "smithy.api#documentation": "

The agent status.

" + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.connect#DeleteVocabulary": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#DeleteVocabularyRequest" + }, + "output": { + "target": "com.amazonaws.connect#DeleteVocabularyResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceInUseException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Deletes the vocabulary that has the given identifier.

", + "smithy.api#http": { + "method": "POST", + "uri": "/vocabulary-remove/{InstanceId}/{VocabularyId}", + "code": 200 + } + } + }, + "com.amazonaws.connect#DeleteVocabularyRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#InstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "VocabularyId": { + "target": "com.amazonaws.connect#VocabularyId", + "traits": { + "smithy.api#documentation": "

The identifier of the custom vocabulary.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#DeleteVocabularyResponse": { + "type": "structure", + "members": { + "VocabularyArn": { + "target": "com.amazonaws.connect#ARN", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the custom vocabulary.

", + "smithy.api#required": {} + } + }, + "VocabularyId": { + "target": "com.amazonaws.connect#VocabularyId", + "traits": { + "smithy.api#documentation": "

The identifier of the custom vocabulary.

", + "smithy.api#required": {} + } + }, + "State": { + "target": "com.amazonaws.connect#VocabularyState", + "traits": { + "smithy.api#documentation": "

The current state of the custom vocabulary.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.connect#DescribeAgentStatus": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#DescribeAgentStatusRequest" + }, + "output": { + "target": "com.amazonaws.connect#DescribeAgentStatusResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

This API is in preview release for Amazon Connect and is subject to change.

\n

Describes an agent status.

", + "smithy.api#http": { + "method": "GET", + "uri": "/agent-status/{InstanceId}/{AgentStatusId}", + "code": 200 + } + } + }, + "com.amazonaws.connect#DescribeAgentStatusRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#InstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "AgentStatusId": { + "target": "com.amazonaws.connect#AgentStatusId", + "traits": { + "smithy.api#documentation": "

The identifier for the agent status.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#DescribeAgentStatusResponse": { + "type": "structure", + "members": { + "AgentStatus": { + "target": "com.amazonaws.connect#AgentStatus", + "traits": { + "smithy.api#documentation": "

The agent status.

" } } }, @@ -9316,6 +9704,81 @@ "smithy.api#output": {} } }, + "com.amazonaws.connect#DescribeView": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#DescribeViewRequest" + }, + "output": { + "target": "com.amazonaws.connect#DescribeViewResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves the view for the specified Amazon Connect instance and view identifier.

\n

The view identifier can be supplied as a ViewId or ARN.

\n

\n $SAVED needs to be supplied if a view is unpublished.

\n

The view identifier can contain an optional qualifier, for example, :$SAVED, which \n is either an actual version number or an Amazon Connect managed qualifier $SAVED | $LATEST. \n If it is not supplied, then $LATEST is assumed for customer managed views and an error is \n returned if there is no published content available. Version 1 is assumed for Amazon Web Services managed views.

", + "smithy.api#http": { + "method": "GET", + "uri": "/views/{InstanceId}/{ViewId}", + "code": 200 + } + } + }, + "com.amazonaws.connect#DescribeViewRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#ViewsInstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ViewId": { + "target": "com.amazonaws.connect#ViewId", + "traits": { + "smithy.api#documentation": "

The ViewId of the view. This must be an ARN for Amazon Web Services managed views.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#DescribeViewResponse": { + "type": "structure", + "members": { + "View": { + "target": "com.amazonaws.connect#View", + "traits": { + "smithy.api#documentation": "

All view data is contained within the View object.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.connect#DescribeVocabulary": { "type": "operation", "input": { @@ -16054,7 +16517,7 @@ } ], "traits": { - "smithy.api#documentation": "

Provides information about the phone numbers for the specified Amazon Connect instance.

\n

For more information about phone numbers, see Set Up Phone Numbers for Your\n Contact Center in the Amazon Connect Administrator\n Guide.

\n \n

The phone number Arn value that is returned from each of the items in the\n PhoneNumberSummaryList cannot be used to tag phone number resources. It will fail with\n a ResourceNotFoundException. Instead, use the ListPhoneNumbersV2 API.\n It returns the new phone number ARN that can be used to tag phone number resources.

\n
", + "smithy.api#documentation": "

Provides information about the phone numbers for the specified Amazon Connect instance.

\n

For more information about phone numbers, see Set Up Phone Numbers for Your\n Contact Center in the Amazon Connect Administrator\n Guide.

\n \n
    \n
  • \n

    We recommend using ListPhoneNumbersV2 to\n return phone number types. ListPhoneNumbers doesn't support number types UIFN,\n SHARED, THIRD_PARTY_TF, and THIRD_PARTY_DID. While it returns\n numbers of those types, it incorrectly lists them as TOLL_FREE or DID.

    \n
  • \n
  • \n

    The phone number Arn value that is returned from each of the items in the\n PhoneNumberSummaryList cannot be used to tag phone number resources. It will fail\n with a ResourceNotFoundException. Instead, use the ListPhoneNumbersV2 API.\n It returns the new phone number ARN that can be used to tag phone number resources.

    \n
  • \n
\n
", "smithy.api#http": { "method": "GET", "uri": "/phone-numbers-summary/{InstanceId}", @@ -17877,21 +18340,224 @@ "smithy.api#output": {} } }, - "com.amazonaws.connect#Long": { - "type": "long" - }, - "com.amazonaws.connect#MaxResult10": { - "type": "integer", - "traits": { - "smithy.api#default": 0, - "smithy.api#range": { - "min": 1, - "max": 10 + "com.amazonaws.connect#ListViewVersions": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#ListViewVersionsRequest" + }, + "output": { + "target": "com.amazonaws.connect#ListViewVersionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#TooManyRequestsException" } - } - }, - "com.amazonaws.connect#MaxResult100": { - "type": "integer", + ], + "traits": { + "smithy.api#documentation": "

Returns all the available versions for the specified Amazon Connect instance and view identifier.

\n

Results will be sorted from highest to lowest.

", + "smithy.api#http": { + "method": "GET", + "uri": "/views/{InstanceId}/{ViewId}/versions", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ViewVersionSummaryList", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.connect#ListViewVersionsRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#ViewsInstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ViewId": { + "target": "com.amazonaws.connect#ViewId", + "traits": { + "smithy.api#documentation": "

The identifier of the view. Both ViewArn and ViewId can be used.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.connect#ViewsNextToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results. Use the value returned in the previous response in the next request to \n retrieve the next set of results.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.connect#MaxResults", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

The maximum number of results to return per page. The default MaxResult size is 100.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#ListViewVersionsResponse": { + "type": "structure", + "members": { + "ViewVersionSummaryList": { + "target": "com.amazonaws.connect#ViewVersionSummaryList", + "traits": { + "smithy.api#documentation": "

A list of view version summaries.

" + } + }, + "NextToken": { + "target": "com.amazonaws.connect#ViewsNextToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results. Use the value returned in the previous response in the next request to \n retrieve the next set of results.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.connect#ListViews": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#ListViewsRequest" + }, + "output": { + "target": "com.amazonaws.connect#ListViewsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns views in the given instance.

\n

Results are sorted primarily by type, and secondarily by name.

", + "smithy.api#http": { + "method": "GET", + "uri": "/views/{InstanceId}", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "ViewsSummaryList", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.connect#ListViewsRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#ViewsInstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Type": { + "target": "com.amazonaws.connect#ViewType", + "traits": { + "smithy.api#documentation": "

The type of the view.

", + "smithy.api#httpQuery": "type" + } + }, + "NextToken": { + "target": "com.amazonaws.connect#ViewsNextToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results. Use the value returned in the previous response in the next request to \n retrieve the next set of results.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "MaxResults": { + "target": "com.amazonaws.connect#MaxResults", + "traits": { + "smithy.api#default": null, + "smithy.api#documentation": "

The maximum number of results to return per page. The default MaxResult size is 100.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#ListViewsResponse": { + "type": "structure", + "members": { + "ViewsSummaryList": { + "target": "com.amazonaws.connect#ViewsSummaryList", + "traits": { + "smithy.api#documentation": "

A list of view summaries.

" + } + }, + "NextToken": { + "target": "com.amazonaws.connect#ViewsNextToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results. Use the value returned in the previous response in the next request to \n retrieve the next set of results.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.connect#Long": { + "type": "long" + }, + "com.amazonaws.connect#MaxResult10": { + "type": "integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.connect#MaxResult100": { + "type": "integer", "traits": { "smithy.api#default": 0, "smithy.api#range": { @@ -17950,6 +18616,16 @@ } } }, + "com.amazonaws.connect#MaxResults": { + "type": "integer", + "traits": { + "smithy.api#default": 0, + "smithy.api#range": { + "min": 1, + "max": 100 + } + } + }, "com.amazonaws.connect#MaximumResultReturnedException": { "type": "structure", "members": { @@ -24797,7 +25473,7 @@ } ], "traits": { - "smithy.api#documentation": "

Ends the specified contact. This call does not work for the following initiation\n methods:

\n
    \n
  • \n

    DISCONNECT

    \n
  • \n
  • \n

    TRANSFER

    \n
  • \n
  • \n

    QUEUE_TRANSFER

    \n
  • \n
", + "smithy.api#documentation": "

Ends the specified contact. This call does not work for voice contacts that use the\n following initiation methods:

\n
    \n
  • \n

    DISCONNECT

    \n
  • \n
  • \n

    TRANSFER

    \n
  • \n
  • \n

    QUEUE_TRANSFER

    \n
  • \n
\n

Chat and task contacts, however, can be terminated in any state, regardless of initiation\n method.

", "smithy.api#http": { "method": "POST", "uri": "/contact/stop", @@ -25990,6 +26666,19 @@ "com.amazonaws.connect#Timestamp": { "type": "timestamp" }, + "com.amazonaws.connect#TooManyRequestsException": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.connect#Message" + } + }, + "traits": { + "smithy.api#documentation": "

Displayed when rate-related API limits are exceeded.

", + "smithy.api#error": "client", + "smithy.api#httpError": 429 + } + }, "com.amazonaws.connect#TrafficDistributionGroup": { "type": "structure", "members": { @@ -26039,7 +26728,7 @@ "target": "com.amazonaws.connect#Boolean", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

Whether this is the default traffic distribution group created during instance\n replication. The default traffic distribution group cannot be deleted by the\n DeleteTrafficDistributionGroup API. The default traffic distribution group is deleted as\n part of the process for deleting a replica.

\n \n

You can change the SignInConfig only for a default TrafficDistributionGroup. If you call\n UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup,\n an InvalidRequestException is returned.

\n
" + "smithy.api#documentation": "

Whether this is the default traffic distribution group created during instance\n replication. The default traffic distribution group cannot be deleted by the\n DeleteTrafficDistributionGroup API. The default traffic distribution group is deleted as\n part of the process for deleting a replica.

\n \n

You can change the SignInConfig distribution only for a \ndefault TrafficDistributionGroup (see the IsDefault parameter in the \nTrafficDistributionGroup\n data type). If you call\n UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup,\n an InvalidRequestException is returned.

\n
" } } }, @@ -28100,7 +28789,7 @@ } ], "traits": { - "smithy.api#documentation": "

This API is in preview release for Amazon Connect and is subject to change.

\n

Updates the outbound caller ID name, number, and outbound whisper flow for a specified\n queue.

\n \n

If the number being used in the input is claimed to a traffic distribution group, and you are calling this API\n using an instance in the Amazon Web Services Region where the traffic distribution group was created, you can use\n either a full phone number ARN or UUID value for the OutboundCallerIdNumberId value\n of the OutboundCallerConfig request body parameter. However, if the number is claimed to a\n traffic distribution group and you are calling this API using an instance in the alternate Amazon Web Services Region\n associated with the traffic distribution group, you must provide a full phone number ARN. If a UUID is provided\n in\n this scenario, you will receive a\n ResourceNotFoundException.

\n

Only use the phone number ARN format that doesn't contain instance in the\n path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid. This is\n the same ARN format that is returned when you call the ListPhoneNumbersV2\n API.

\n
", + "smithy.api#documentation": "

This API is in preview release for Amazon Connect and is subject to change.

\n

Updates the outbound caller ID name, number, and outbound whisper flow for a specified\n queue.

\n \n
    \n
  • \n

    If the phone number is claimed to a traffic distribution group that was created in the\n same Region as the Amazon Connect instance where you are calling this API, then you can use a\n full phone number ARN or a UUID for OutboundCallerIdNumberId. However, if the phone number is claimed\n to a traffic distribution group that is in one Region, and you are calling this API from an instance in another Amazon Web Services Region that is associated with the traffic distribution group, you must provide a full phone number ARN. If a\n UUID is provided in this scenario, you will receive a\n ResourceNotFoundException.

    \n
  • \n
  • \n

    Only use the phone number ARN format that doesn't contain instance in the\n path, for example, arn:aws:connect:us-east-1:1234567890:phone-number/uuid. This\n is the same ARN format that is returned when you call the ListPhoneNumbersV2\n API.

    \n
  • \n
  • \n

    If you plan to use IAM policies to allow/deny access to this API for phone\n number resources claimed to a traffic distribution group, see Allow or Deny queue API actions for phone numbers in a replica Region.

    \n
  • \n
\n
", "smithy.api#http": { "method": "POST", "uri": "/queues/{InstanceId}/{QueueId}/outbound-caller-config", @@ -29064,7 +29753,7 @@ } ], "traits": { - "smithy.api#documentation": "

Updates the traffic distribution for a given traffic distribution group.

\n \n

You can change the SignInConfig only for a default TrafficDistributionGroup. If you call\n UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup,\n an InvalidRequestException is returned.

\n
\n

For more information about updating a traffic distribution group, see Update telephony\n traffic distribution across Amazon Web Services Regions\n in the Amazon Connect Administrator Guide.

", + "smithy.api#documentation": "

Updates the traffic distribution for a given traffic distribution group.

\n \n

You can change the SignInConfig distribution only for a \ndefault TrafficDistributionGroup (see the IsDefault parameter in the \nTrafficDistributionGroup\n data type). If you call\n UpdateTrafficDistribution with a modified SignInConfig and a non-default TrafficDistributionGroup,\n an InvalidRequestException is returned.

\n
\n

For more information about updating a traffic distribution group, see Update telephony\n traffic distribution across Amazon Web Services Regions\n in the Amazon Connect Administrator Guide.

", "smithy.api#http": { "method": "PUT", "uri": "/traffic-distribution/{Id}", @@ -29565,66 +30254,244 @@ "smithy.api#input": {} } }, - "com.amazonaws.connect#Url": { - "type": "string" - }, - "com.amazonaws.connect#UrlReference": { - "type": "structure", - "members": { - "Name": { - "target": "com.amazonaws.connect#ReferenceKey", - "traits": { - "smithy.api#documentation": "

Identifier of the URL reference.

" - } + "com.amazonaws.connect#UpdateViewContent": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#UpdateViewContentRequest" + }, + "output": { + "target": "com.amazonaws.connect#UpdateViewContentResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" }, - "Value": { - "target": "com.amazonaws.connect#ReferenceValue", - "traits": { - "smithy.api#documentation": "

A valid URL.

" - } + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceInUseException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#TooManyRequestsException" } - }, + ], "traits": { - "smithy.api#documentation": "

The URL reference.

" + "smithy.api#documentation": "

Updates the view content of the given view identifier in the specified Amazon Connect instance.

\n

It performs content validation if Status is set to SAVED and performs full content validation if \n Status is PUBLISHED. Note that the $SAVED alias' content will always be updated, \n but the $LATEST alias' content will only be updated if Status is PUBLISHED.

", + "smithy.api#http": { + "method": "POST", + "uri": "/views/{InstanceId}/{ViewId}", + "code": 200 + } } }, - "com.amazonaws.connect#UseCase": { + "com.amazonaws.connect#UpdateViewContentRequest": { "type": "structure", "members": { - "UseCaseId": { - "target": "com.amazonaws.connect#UseCaseId", + "InstanceId": { + "target": "com.amazonaws.connect#ViewsInstanceId", "traits": { - "smithy.api#documentation": "

The identifier for the use case.

" + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "UseCaseArn": { - "target": "com.amazonaws.connect#ARN", + "ViewId": { + "target": "com.amazonaws.connect#ViewId", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the use case.

" + "smithy.api#documentation": "

The identifier of the view. Both ViewArn and ViewId can be used.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} } }, - "UseCaseType": { - "target": "com.amazonaws.connect#UseCaseType", + "Status": { + "target": "com.amazonaws.connect#ViewStatus", "traits": { - "smithy.api#documentation": "

The type of use case to associate to the integration association. Each integration\n association can have only one of each use case type.

" + "smithy.api#documentation": "

Indicates the view status as either SAVED or PUBLISHED. The \n PUBLISHED status will initiate validation on the content.

", + "smithy.api#required": {} + } + }, + "Content": { + "target": "com.amazonaws.connect#ViewInputContent", + "traits": { + "smithy.api#documentation": "

View content containing all content necessary to render a view except for runtime input data \n and the runtime input schema, which is auto-generated by this operation.

\n

The total uncompressed content has a maximum file size of 400kB.

", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

Contains the\n use\n case.

" + "smithy.api#input": {} } }, - "com.amazonaws.connect#UseCaseId": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 200 + "com.amazonaws.connect#UpdateViewContentResponse": { + "type": "structure", + "members": { + "View": { + "target": "com.amazonaws.connect#View", + "traits": { + "smithy.api#documentation": "

A view resource object. Contains metadata and content necessary to render the view.

" + } } + }, + "traits": { + "smithy.api#output": {} } }, - "com.amazonaws.connect#UseCaseSummaryList": { - "type": "list", + "com.amazonaws.connect#UpdateViewMetadata": { + "type": "operation", + "input": { + "target": "com.amazonaws.connect#UpdateViewMetadataRequest" + }, + "output": { + "target": "com.amazonaws.connect#UpdateViewMetadataResponse" + }, + "errors": [ + { + "target": "com.amazonaws.connect#AccessDeniedException" + }, + { + "target": "com.amazonaws.connect#DuplicateResourceException" + }, + { + "target": "com.amazonaws.connect#InternalServiceException" + }, + { + "target": "com.amazonaws.connect#InvalidParameterException" + }, + { + "target": "com.amazonaws.connect#InvalidRequestException" + }, + { + "target": "com.amazonaws.connect#ResourceInUseException" + }, + { + "target": "com.amazonaws.connect#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.connect#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

Updates the view metadata. Note that either Name or Description \n must be provided.

", + "smithy.api#http": { + "method": "POST", + "uri": "/views/{InstanceId}/{ViewId}/metadata", + "code": 200 + } + } + }, + "com.amazonaws.connect#UpdateViewMetadataRequest": { + "type": "structure", + "members": { + "InstanceId": { + "target": "com.amazonaws.connect#ViewsInstanceId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ViewId": { + "target": "com.amazonaws.connect#ViewId", + "traits": { + "smithy.api#documentation": "

The identifier of the view. Both ViewArn and ViewId can be used.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "Name": { + "target": "com.amazonaws.connect#ViewName", + "traits": { + "smithy.api#documentation": "

The name of the view.

" + } + }, + "Description": { + "target": "com.amazonaws.connect#ViewDescription", + "traits": { + "smithy.api#documentation": "

The description of the view.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.connect#UpdateViewMetadataResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.connect#Url": { + "type": "string" + }, + "com.amazonaws.connect#UrlReference": { + "type": "structure", + "members": { + "Name": { + "target": "com.amazonaws.connect#ReferenceKey", + "traits": { + "smithy.api#documentation": "

Identifier of the URL reference.

" + } + }, + "Value": { + "target": "com.amazonaws.connect#ReferenceValue", + "traits": { + "smithy.api#documentation": "

A valid URL.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

The URL reference.

" + } + }, + "com.amazonaws.connect#UseCase": { + "type": "structure", + "members": { + "UseCaseId": { + "target": "com.amazonaws.connect#UseCaseId", + "traits": { + "smithy.api#documentation": "

The identifier for the use case.

" + } + }, + "UseCaseArn": { + "target": "com.amazonaws.connect#ARN", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) for the use case.

" + } + }, + "UseCaseType": { + "target": "com.amazonaws.connect#UseCaseType", + "traits": { + "smithy.api#documentation": "

The type of use case to associate to the integration association. Each integration\n association can have only one of each use case type.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the\n use\n case.

" + } + }, + "com.amazonaws.connect#UseCaseId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 200 + } + } + }, + "com.amazonaws.connect#UseCaseSummaryList": { + "type": "list", "member": { "target": "com.amazonaws.connect#UseCase" } @@ -30161,6 +31028,383 @@ } } }, + "com.amazonaws.connect#View": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.connect#ViewId", + "traits": { + "smithy.api#documentation": "

The identifier of the view.

" + } + }, + "Arn": { + "target": "com.amazonaws.connect#ARN", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the view.

" + } + }, + "Name": { + "target": "com.amazonaws.connect#ViewName", + "traits": { + "smithy.api#documentation": "

The name of the view.

" + } + }, + "Status": { + "target": "com.amazonaws.connect#ViewStatus", + "traits": { + "smithy.api#documentation": "

Indicates the view status as either SAVED or PUBLISHED. The \n PUBLISHED status will initiate validation on the content.

" + } + }, + "Type": { + "target": "com.amazonaws.connect#ViewType", + "traits": { + "smithy.api#documentation": "

The type of the view - CUSTOMER_MANAGED.

" + } + }, + "Description": { + "target": "com.amazonaws.connect#ViewDescription", + "traits": { + "smithy.api#documentation": "

The description of the view.

" + } + }, + "Version": { + "target": "com.amazonaws.connect#ViewVersion", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

Current version of the view.

" + } + }, + "VersionDescription": { + "target": "com.amazonaws.connect#ViewDescription", + "traits": { + "smithy.api#documentation": "

The description of the version.

" + } + }, + "Content": { + "target": "com.amazonaws.connect#ViewContent", + "traits": { + "smithy.api#documentation": "

View content containing all content necessary to render a view except for runtime input data.

" + } + }, + "Tags": { + "target": "com.amazonaws.connect#TagMap", + "traits": { + "smithy.api#documentation": "

The tags associated with the view resource (not specific to view version).

" + } + }, + "CreatedTime": { + "target": "com.amazonaws.connect#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp of when the view was created.

" + } + }, + "LastModifiedTime": { + "target": "com.amazonaws.connect#Timestamp", + "traits": { + "smithy.api#documentation": "

Latest timestamp of the UpdateViewContent or CreateViewVersion operations.

" + } + }, + "ViewContentSha256": { + "target": "com.amazonaws.connect#ViewContentSha256", + "traits": { + "smithy.api#documentation": "

Indicates the checksum value of the latest published view content.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A view resource object. Contains metadata and content necessary to render the view.

" + } + }, + "com.amazonaws.connect#ViewAction": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^([\\p{L}\\p{N}_.:\\/=+\\-@()']+[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@()']*)$", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.connect#ViewActions": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#ViewAction" + } + }, + "com.amazonaws.connect#ViewContent": { + "type": "structure", + "members": { + "InputSchema": { + "target": "com.amazonaws.connect#ViewInputSchema", + "traits": { + "smithy.api#documentation": "

The data schema matching data that the view template must be provided to render.

" + } + }, + "Template": { + "target": "com.amazonaws.connect#ViewTemplate", + "traits": { + "smithy.api#documentation": "

The view template representing the structure of the view.

" + } + }, + "Actions": { + "target": "com.amazonaws.connect#ViewActions", + "traits": { + "smithy.api#documentation": "

A list of possible actions from the view.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

View content containing all content necessary to render a view except for runtime input data.

" + } + }, + "com.amazonaws.connect#ViewContentSha256": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9]$" + } + }, + "com.amazonaws.connect#ViewDescription": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 4096 + }, + "smithy.api#pattern": "^([\\p{L}\\p{N}_.:\\/=+\\-@,()']+[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@,()']*)$" + } + }, + "com.amazonaws.connect#ViewId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 500 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\_\\-:\\/$]+$" + } + }, + "com.amazonaws.connect#ViewInputContent": { + "type": "structure", + "members": { + "Template": { + "target": "com.amazonaws.connect#ViewTemplate", + "traits": { + "smithy.api#documentation": "

The view template representing the structure of the view.

" + } + }, + "Actions": { + "target": "com.amazonaws.connect#ViewActions", + "traits": { + "smithy.api#documentation": "

A list of possible actions from the view.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

View content containing all content necessary to render a view except \n for runtime input data and the runtime input schema, which is auto-generated \n by this operation.

" + } + }, + "com.amazonaws.connect#ViewInputSchema": { + "type": "string", + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.connect#ViewName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 255 + }, + "smithy.api#pattern": "^([\\p{L}\\p{N}_.:\\/=+\\-@()']+[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@()']*)$", + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.connect#ViewStatus": { + "type": "enum", + "members": { + "PUBLISHED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PUBLISHED" + } + }, + "SAVED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SAVED" + } + } + } + }, + "com.amazonaws.connect#ViewSummary": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.connect#ViewId", + "traits": { + "smithy.api#documentation": "

The identifier of the view.

" + } + }, + "Arn": { + "target": "com.amazonaws.connect#ARN", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the view.

" + } + }, + "Name": { + "target": "com.amazonaws.connect#ViewName", + "traits": { + "smithy.api#documentation": "

The name of the view.

" + } + }, + "Type": { + "target": "com.amazonaws.connect#ViewType", + "traits": { + "smithy.api#documentation": "

The type of the view.

" + } + }, + "Status": { + "target": "com.amazonaws.connect#ViewStatus", + "traits": { + "smithy.api#documentation": "

Indicates the view status as either SAVED or PUBLISHED. The \n PUBLISHED status will initiate validation on the content.

" + } + }, + "Description": { + "target": "com.amazonaws.connect#ViewDescription", + "traits": { + "smithy.api#documentation": "

The description of the view.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A summary of a view's metadata.

" + } + }, + "com.amazonaws.connect#ViewTemplate": { + "type": "string" + }, + "com.amazonaws.connect#ViewType": { + "type": "enum", + "members": { + "CUSTOMER_MANAGED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CUSTOMER_MANAGED" + } + }, + "AWS_MANAGED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_MANAGED" + } + } + } + }, + "com.amazonaws.connect#ViewVersion": { + "type": "integer", + "traits": { + "smithy.api#default": 0 + } + }, + "com.amazonaws.connect#ViewVersionSummary": { + "type": "structure", + "members": { + "Id": { + "target": "com.amazonaws.connect#ViewId", + "traits": { + "smithy.api#documentation": "

The identifier of the view version.

" + } + }, + "Arn": { + "target": "com.amazonaws.connect#ARN", + "traits": { + "smithy.api#documentation": "

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

" + } + }, + "Description": { + "target": "com.amazonaws.connect#ViewDescription", + "traits": { + "smithy.api#documentation": "

The description of the view version.

" + } + }, + "Name": { + "target": "com.amazonaws.connect#ViewName", + "traits": { + "smithy.api#documentation": "

The name of the view version.

" + } + }, + "Type": { + "target": "com.amazonaws.connect#ViewType", + "traits": { + "smithy.api#documentation": "

The type of the view version.

" + } + }, + "Version": { + "target": "com.amazonaws.connect#ViewVersion", + "traits": { + "smithy.api#default": 0, + "smithy.api#documentation": "

The sequentially incremented version of the view version.

" + } + }, + "VersionDescription": { + "target": "com.amazonaws.connect#ViewDescription", + "traits": { + "smithy.api#documentation": "

The description of the view version.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

A summary of a view version's metadata.

" + } + }, + "com.amazonaws.connect#ViewVersionSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#ViewVersionSummary" + } + }, + "com.amazonaws.connect#ViewsClientToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 500 + }, + "smithy.api#pattern": "^([\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@]*)$" + } + }, + "com.amazonaws.connect#ViewsInstanceId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#pattern": "^[a-zA-Z0-9\\_\\-:\\/]+$" + } + }, + "com.amazonaws.connect#ViewsNextToken": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 4096 + }, + "smithy.api#pattern": "^[a-zA-Z0-9=\\/+_.-]+$" + } + }, + "com.amazonaws.connect#ViewsSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.connect#ViewSummary" + } + }, "com.amazonaws.connect#Vocabulary": { "type": "structure", "members": {