aws-sdk-connect 1.36.0 → 1.37.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -55,12 +55,17 @@ module Aws::Connect
55
55
  ContactFlowTypes = Shapes::ListShape.new(name: 'ContactFlowTypes')
56
56
  ContactId = Shapes::StringShape.new(name: 'ContactId')
57
57
  ContactNotFoundException = Shapes::StructureShape.new(name: 'ContactNotFoundException')
58
+ ContactReferences = Shapes::MapShape.new(name: 'ContactReferences')
58
59
  CreateContactFlowRequest = Shapes::StructureShape.new(name: 'CreateContactFlowRequest')
59
60
  CreateContactFlowResponse = Shapes::StructureShape.new(name: 'CreateContactFlowResponse')
60
61
  CreateInstanceRequest = Shapes::StructureShape.new(name: 'CreateInstanceRequest')
61
62
  CreateInstanceResponse = Shapes::StructureShape.new(name: 'CreateInstanceResponse')
63
+ CreateIntegrationAssociationRequest = Shapes::StructureShape.new(name: 'CreateIntegrationAssociationRequest')
64
+ CreateIntegrationAssociationResponse = Shapes::StructureShape.new(name: 'CreateIntegrationAssociationResponse')
62
65
  CreateRoutingProfileRequest = Shapes::StructureShape.new(name: 'CreateRoutingProfileRequest')
63
66
  CreateRoutingProfileResponse = Shapes::StructureShape.new(name: 'CreateRoutingProfileResponse')
67
+ CreateUseCaseRequest = Shapes::StructureShape.new(name: 'CreateUseCaseRequest')
68
+ CreateUseCaseResponse = Shapes::StructureShape.new(name: 'CreateUseCaseResponse')
64
69
  CreateUserHierarchyGroupRequest = Shapes::StructureShape.new(name: 'CreateUserHierarchyGroupRequest')
65
70
  CreateUserHierarchyGroupResponse = Shapes::StructureShape.new(name: 'CreateUserHierarchyGroupResponse')
66
71
  CreateUserRequest = Shapes::StructureShape.new(name: 'CreateUserRequest')
@@ -75,6 +80,8 @@ module Aws::Connect
75
80
  CurrentMetrics = Shapes::ListShape.new(name: 'CurrentMetrics')
76
81
  Delay = Shapes::IntegerShape.new(name: 'Delay')
77
82
  DeleteInstanceRequest = Shapes::StructureShape.new(name: 'DeleteInstanceRequest')
83
+ DeleteIntegrationAssociationRequest = Shapes::StructureShape.new(name: 'DeleteIntegrationAssociationRequest')
84
+ DeleteUseCaseRequest = Shapes::StructureShape.new(name: 'DeleteUseCaseRequest')
78
85
  DeleteUserHierarchyGroupRequest = Shapes::StructureShape.new(name: 'DeleteUserHierarchyGroupRequest')
79
86
  DeleteUserRequest = Shapes::StructureShape.new(name: 'DeleteUserRequest')
80
87
  DescribeContactFlowRequest = Shapes::StructureShape.new(name: 'DescribeContactFlowRequest')
@@ -93,6 +100,7 @@ module Aws::Connect
93
100
  DescribeUserHierarchyStructureResponse = Shapes::StructureShape.new(name: 'DescribeUserHierarchyStructureResponse')
94
101
  DescribeUserRequest = Shapes::StructureShape.new(name: 'DescribeUserRequest')
95
102
  DescribeUserResponse = Shapes::StructureShape.new(name: 'DescribeUserResponse')
103
+ Description = Shapes::StringShape.new(name: 'Description')
96
104
  DestinationNotAllowedException = Shapes::StructureShape.new(name: 'DestinationNotAllowedException')
97
105
  Dimensions = Shapes::StructureShape.new(name: 'Dimensions')
98
106
  DirectoryAlias = Shapes::StringShape.new(name: 'DirectoryAlias')
@@ -159,6 +167,10 @@ module Aws::Connect
159
167
  InstanceStorageResourceType = Shapes::StringShape.new(name: 'InstanceStorageResourceType')
160
168
  InstanceSummary = Shapes::StructureShape.new(name: 'InstanceSummary')
161
169
  InstanceSummaryList = Shapes::ListShape.new(name: 'InstanceSummaryList')
170
+ IntegrationAssociationId = Shapes::StringShape.new(name: 'IntegrationAssociationId')
171
+ IntegrationAssociationSummary = Shapes::StructureShape.new(name: 'IntegrationAssociationSummary')
172
+ IntegrationAssociationSummaryList = Shapes::ListShape.new(name: 'IntegrationAssociationSummaryList')
173
+ IntegrationType = Shapes::StringShape.new(name: 'IntegrationType')
162
174
  InternalServiceException = Shapes::StructureShape.new(name: 'InternalServiceException')
163
175
  InvalidContactFlowException = Shapes::StructureShape.new(name: 'InvalidContactFlowException')
164
176
  InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
@@ -183,6 +195,8 @@ module Aws::Connect
183
195
  ListInstanceStorageConfigsResponse = Shapes::StructureShape.new(name: 'ListInstanceStorageConfigsResponse')
184
196
  ListInstancesRequest = Shapes::StructureShape.new(name: 'ListInstancesRequest')
185
197
  ListInstancesResponse = Shapes::StructureShape.new(name: 'ListInstancesResponse')
198
+ ListIntegrationAssociationsRequest = Shapes::StructureShape.new(name: 'ListIntegrationAssociationsRequest')
199
+ ListIntegrationAssociationsResponse = Shapes::StructureShape.new(name: 'ListIntegrationAssociationsResponse')
186
200
  ListLambdaFunctionsRequest = Shapes::StructureShape.new(name: 'ListLambdaFunctionsRequest')
187
201
  ListLambdaFunctionsResponse = Shapes::StructureShape.new(name: 'ListLambdaFunctionsResponse')
188
202
  ListLexBotsRequest = Shapes::StructureShape.new(name: 'ListLexBotsRequest')
@@ -203,6 +217,8 @@ module Aws::Connect
203
217
  ListSecurityProfilesResponse = Shapes::StructureShape.new(name: 'ListSecurityProfilesResponse')
204
218
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
205
219
  ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
220
+ ListUseCasesRequest = Shapes::StructureShape.new(name: 'ListUseCasesRequest')
221
+ ListUseCasesResponse = Shapes::StructureShape.new(name: 'ListUseCasesResponse')
206
222
  ListUserHierarchyGroupsRequest = Shapes::StructureShape.new(name: 'ListUserHierarchyGroupsRequest')
207
223
  ListUserHierarchyGroupsResponse = Shapes::StructureShape.new(name: 'ListUserHierarchyGroupsResponse')
208
224
  ListUsersRequest = Shapes::StructureShape.new(name: 'ListUsersRequest')
@@ -216,6 +232,7 @@ module Aws::Connect
216
232
  MediaConcurrencies = Shapes::ListShape.new(name: 'MediaConcurrencies')
217
233
  MediaConcurrency = Shapes::StructureShape.new(name: 'MediaConcurrency')
218
234
  Message = Shapes::StringShape.new(name: 'Message')
235
+ Name = Shapes::StringShape.new(name: 'Name')
219
236
  NextToken = Shapes::StringShape.new(name: 'NextToken')
220
237
  Origin = Shapes::StringShape.new(name: 'Origin')
221
238
  OriginsList = Shapes::ListShape.new(name: 'OriginsList')
@@ -252,6 +269,10 @@ module Aws::Connect
252
269
  QueueType = Shapes::StringShape.new(name: 'QueueType')
253
270
  QueueTypes = Shapes::ListShape.new(name: 'QueueTypes')
254
271
  Queues = Shapes::ListShape.new(name: 'Queues')
272
+ Reference = Shapes::StructureShape.new(name: 'Reference')
273
+ ReferenceKey = Shapes::StringShape.new(name: 'ReferenceKey')
274
+ ReferenceType = Shapes::StringShape.new(name: 'ReferenceType')
275
+ ReferenceValue = Shapes::StringShape.new(name: 'ReferenceValue')
255
276
  ResourceConflictException = Shapes::StructureShape.new(name: 'ResourceConflictException')
256
277
  ResourceInUseException = Shapes::StructureShape.new(name: 'ResourceInUseException')
257
278
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
@@ -280,12 +301,16 @@ module Aws::Connect
280
301
  SecurityProfileSummaryList = Shapes::ListShape.new(name: 'SecurityProfileSummaryList')
281
302
  SecurityToken = Shapes::StringShape.new(name: 'SecurityToken')
282
303
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
304
+ SourceApplicationName = Shapes::StringShape.new(name: 'SourceApplicationName')
305
+ SourceType = Shapes::StringShape.new(name: 'SourceType')
283
306
  StartChatContactRequest = Shapes::StructureShape.new(name: 'StartChatContactRequest')
284
307
  StartChatContactResponse = Shapes::StructureShape.new(name: 'StartChatContactResponse')
285
308
  StartContactRecordingRequest = Shapes::StructureShape.new(name: 'StartContactRecordingRequest')
286
309
  StartContactRecordingResponse = Shapes::StructureShape.new(name: 'StartContactRecordingResponse')
287
310
  StartOutboundVoiceContactRequest = Shapes::StructureShape.new(name: 'StartOutboundVoiceContactRequest')
288
311
  StartOutboundVoiceContactResponse = Shapes::StructureShape.new(name: 'StartOutboundVoiceContactResponse')
312
+ StartTaskContactRequest = Shapes::StructureShape.new(name: 'StartTaskContactRequest')
313
+ StartTaskContactResponse = Shapes::StructureShape.new(name: 'StartTaskContactResponse')
289
314
  Statistic = Shapes::StringShape.new(name: 'Statistic')
290
315
  StopContactRecordingRequest = Shapes::StructureShape.new(name: 'StopContactRecordingRequest')
291
316
  StopContactRecordingResponse = Shapes::StructureShape.new(name: 'StopContactRecordingResponse')
@@ -304,6 +329,7 @@ module Aws::Connect
304
329
  ThresholdValue = Shapes::FloatShape.new(name: 'ThresholdValue')
305
330
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
306
331
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
332
+ URI = Shapes::StringShape.new(name: 'URI')
307
333
  Unit = Shapes::StringShape.new(name: 'Unit')
308
334
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
309
335
  UpdateContactAttributesRequest = Shapes::StructureShape.new(name: 'UpdateContactAttributesRequest')
@@ -323,6 +349,10 @@ module Aws::Connect
323
349
  UpdateUserPhoneConfigRequest = Shapes::StructureShape.new(name: 'UpdateUserPhoneConfigRequest')
324
350
  UpdateUserRoutingProfileRequest = Shapes::StructureShape.new(name: 'UpdateUserRoutingProfileRequest')
325
351
  UpdateUserSecurityProfilesRequest = Shapes::StructureShape.new(name: 'UpdateUserSecurityProfilesRequest')
352
+ UseCase = Shapes::StructureShape.new(name: 'UseCase')
353
+ UseCaseId = Shapes::StringShape.new(name: 'UseCaseId')
354
+ UseCaseSummaryList = Shapes::ListShape.new(name: 'UseCaseSummaryList')
355
+ UseCaseType = Shapes::StringShape.new(name: 'UseCaseType')
326
356
  User = Shapes::StructureShape.new(name: 'User')
327
357
  UserId = Shapes::StringShape.new(name: 'UserId')
328
358
  UserIdentityInfo = Shapes::StructureShape.new(name: 'UserIdentityInfo')
@@ -407,6 +437,9 @@ module Aws::Connect
407
437
  ContactNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "Message"))
408
438
  ContactNotFoundException.struct_class = Types::ContactNotFoundException
409
439
 
440
+ ContactReferences.key = Shapes::ShapeRef.new(shape: ReferenceKey)
441
+ ContactReferences.value = Shapes::ShapeRef.new(shape: Reference)
442
+
410
443
  CreateContactFlowRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
411
444
  CreateContactFlowRequest.add_member(:name, Shapes::ShapeRef.new(shape: ContactFlowName, required: true, location_name: "Name"))
412
445
  CreateContactFlowRequest.add_member(:type, Shapes::ShapeRef.new(shape: ContactFlowType, required: true, location_name: "Type"))
@@ -431,6 +464,18 @@ module Aws::Connect
431
464
  CreateInstanceResponse.add_member(:arn, Shapes::ShapeRef.new(shape: ARN, location_name: "Arn"))
432
465
  CreateInstanceResponse.struct_class = Types::CreateInstanceResponse
433
466
 
467
+ CreateIntegrationAssociationRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
468
+ CreateIntegrationAssociationRequest.add_member(:integration_type, Shapes::ShapeRef.new(shape: IntegrationType, required: true, location_name: "IntegrationType"))
469
+ CreateIntegrationAssociationRequest.add_member(:integration_arn, Shapes::ShapeRef.new(shape: ARN, required: true, location_name: "IntegrationArn"))
470
+ CreateIntegrationAssociationRequest.add_member(:source_application_url, Shapes::ShapeRef.new(shape: URI, required: true, location_name: "SourceApplicationUrl"))
471
+ CreateIntegrationAssociationRequest.add_member(:source_application_name, Shapes::ShapeRef.new(shape: SourceApplicationName, required: true, location_name: "SourceApplicationName"))
472
+ CreateIntegrationAssociationRequest.add_member(:source_type, Shapes::ShapeRef.new(shape: SourceType, required: true, location_name: "SourceType"))
473
+ CreateIntegrationAssociationRequest.struct_class = Types::CreateIntegrationAssociationRequest
474
+
475
+ CreateIntegrationAssociationResponse.add_member(:integration_association_id, Shapes::ShapeRef.new(shape: IntegrationAssociationId, location_name: "IntegrationAssociationId"))
476
+ CreateIntegrationAssociationResponse.add_member(:integration_association_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "IntegrationAssociationArn"))
477
+ CreateIntegrationAssociationResponse.struct_class = Types::CreateIntegrationAssociationResponse
478
+
434
479
  CreateRoutingProfileRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
435
480
  CreateRoutingProfileRequest.add_member(:name, Shapes::ShapeRef.new(shape: RoutingProfileName, required: true, location_name: "Name"))
436
481
  CreateRoutingProfileRequest.add_member(:description, Shapes::ShapeRef.new(shape: RoutingProfileDescription, required: true, location_name: "Description"))
@@ -444,6 +489,15 @@ module Aws::Connect
444
489
  CreateRoutingProfileResponse.add_member(:routing_profile_id, Shapes::ShapeRef.new(shape: RoutingProfileId, location_name: "RoutingProfileId"))
445
490
  CreateRoutingProfileResponse.struct_class = Types::CreateRoutingProfileResponse
446
491
 
492
+ CreateUseCaseRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
493
+ CreateUseCaseRequest.add_member(:integration_association_id, Shapes::ShapeRef.new(shape: IntegrationAssociationId, required: true, location: "uri", location_name: "IntegrationAssociationId"))
494
+ CreateUseCaseRequest.add_member(:use_case_type, Shapes::ShapeRef.new(shape: UseCaseType, required: true, location_name: "UseCaseType"))
495
+ CreateUseCaseRequest.struct_class = Types::CreateUseCaseRequest
496
+
497
+ CreateUseCaseResponse.add_member(:use_case_id, Shapes::ShapeRef.new(shape: UseCaseId, location_name: "UseCaseId"))
498
+ CreateUseCaseResponse.add_member(:use_case_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "UseCaseArn"))
499
+ CreateUseCaseResponse.struct_class = Types::CreateUseCaseResponse
500
+
447
501
  CreateUserHierarchyGroupRequest.add_member(:name, Shapes::ShapeRef.new(shape: HierarchyGroupName, required: true, location_name: "Name"))
448
502
  CreateUserHierarchyGroupRequest.add_member(:parent_group_id, Shapes::ShapeRef.new(shape: HierarchyGroupId, location_name: "ParentGroupId"))
449
503
  CreateUserHierarchyGroupRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
@@ -496,6 +550,15 @@ module Aws::Connect
496
550
  DeleteInstanceRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
497
551
  DeleteInstanceRequest.struct_class = Types::DeleteInstanceRequest
498
552
 
553
+ DeleteIntegrationAssociationRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
554
+ DeleteIntegrationAssociationRequest.add_member(:integration_association_id, Shapes::ShapeRef.new(shape: IntegrationAssociationId, required: true, location: "uri", location_name: "IntegrationAssociationId"))
555
+ DeleteIntegrationAssociationRequest.struct_class = Types::DeleteIntegrationAssociationRequest
556
+
557
+ DeleteUseCaseRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
558
+ DeleteUseCaseRequest.add_member(:integration_association_id, Shapes::ShapeRef.new(shape: IntegrationAssociationId, required: true, location: "uri", location_name: "IntegrationAssociationId"))
559
+ DeleteUseCaseRequest.add_member(:use_case_id, Shapes::ShapeRef.new(shape: UseCaseId, required: true, location: "uri", location_name: "UseCaseId"))
560
+ DeleteUseCaseRequest.struct_class = Types::DeleteUseCaseRequest
561
+
499
562
  DeleteUserHierarchyGroupRequest.add_member(:hierarchy_group_id, Shapes::ShapeRef.new(shape: HierarchyGroupId, required: true, location: "uri", location_name: "HierarchyGroupId"))
500
563
  DeleteUserHierarchyGroupRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
501
564
  DeleteUserHierarchyGroupRequest.struct_class = Types::DeleteUserHierarchyGroupRequest
@@ -756,6 +819,18 @@ module Aws::Connect
756
819
 
757
820
  InstanceSummaryList.member = Shapes::ShapeRef.new(shape: InstanceSummary)
758
821
 
822
+ IntegrationAssociationSummary.add_member(:integration_association_id, Shapes::ShapeRef.new(shape: IntegrationAssociationId, location_name: "IntegrationAssociationId"))
823
+ IntegrationAssociationSummary.add_member(:integration_association_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "IntegrationAssociationArn"))
824
+ IntegrationAssociationSummary.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, location_name: "InstanceId"))
825
+ IntegrationAssociationSummary.add_member(:integration_type, Shapes::ShapeRef.new(shape: IntegrationType, location_name: "IntegrationType"))
826
+ IntegrationAssociationSummary.add_member(:integration_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "IntegrationArn"))
827
+ IntegrationAssociationSummary.add_member(:source_application_url, Shapes::ShapeRef.new(shape: URI, location_name: "SourceApplicationUrl"))
828
+ IntegrationAssociationSummary.add_member(:source_application_name, Shapes::ShapeRef.new(shape: SourceApplicationName, location_name: "SourceApplicationName"))
829
+ IntegrationAssociationSummary.add_member(:source_type, Shapes::ShapeRef.new(shape: SourceType, location_name: "SourceType"))
830
+ IntegrationAssociationSummary.struct_class = Types::IntegrationAssociationSummary
831
+
832
+ IntegrationAssociationSummaryList.member = Shapes::ShapeRef.new(shape: IntegrationAssociationSummary)
833
+
759
834
  InternalServiceException.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "Message"))
760
835
  InternalServiceException.struct_class = Types::InternalServiceException
761
836
 
@@ -843,6 +918,15 @@ module Aws::Connect
843
918
  ListInstancesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
844
919
  ListInstancesResponse.struct_class = Types::ListInstancesResponse
845
920
 
921
+ ListIntegrationAssociationsRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
922
+ ListIntegrationAssociationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
923
+ ListIntegrationAssociationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResult100, location: "querystring", location_name: "maxResults", metadata: {"box"=>true}))
924
+ ListIntegrationAssociationsRequest.struct_class = Types::ListIntegrationAssociationsRequest
925
+
926
+ ListIntegrationAssociationsResponse.add_member(:integration_association_summary_list, Shapes::ShapeRef.new(shape: IntegrationAssociationSummaryList, location_name: "IntegrationAssociationSummaryList"))
927
+ ListIntegrationAssociationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
928
+ ListIntegrationAssociationsResponse.struct_class = Types::ListIntegrationAssociationsResponse
929
+
846
930
  ListLambdaFunctionsRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
847
931
  ListLambdaFunctionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
848
932
  ListLambdaFunctionsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResult25, location: "querystring", location_name: "maxResults", metadata: {"box"=>true}))
@@ -934,6 +1018,16 @@ module Aws::Connect
934
1018
  ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
935
1019
  ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
936
1020
 
1021
+ ListUseCasesRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
1022
+ ListUseCasesRequest.add_member(:integration_association_id, Shapes::ShapeRef.new(shape: IntegrationAssociationId, required: true, location: "uri", location_name: "IntegrationAssociationId"))
1023
+ ListUseCasesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
1024
+ ListUseCasesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResult100, location: "querystring", location_name: "maxResults", metadata: {"box"=>true}))
1025
+ ListUseCasesRequest.struct_class = Types::ListUseCasesRequest
1026
+
1027
+ ListUseCasesResponse.add_member(:use_case_summary_list, Shapes::ShapeRef.new(shape: UseCaseSummaryList, location_name: "UseCaseSummaryList"))
1028
+ ListUseCasesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
1029
+ ListUseCasesResponse.struct_class = Types::ListUseCasesResponse
1030
+
937
1031
  ListUserHierarchyGroupsRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
938
1032
  ListUserHierarchyGroupsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
939
1033
  ListUserHierarchyGroupsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResult1000, location: "querystring", location_name: "maxResults", metadata: {"box"=>true}))
@@ -1007,6 +1101,10 @@ module Aws::Connect
1007
1101
 
1008
1102
  Queues.member = Shapes::ShapeRef.new(shape: QueueId)
1009
1103
 
1104
+ Reference.add_member(:value, Shapes::ShapeRef.new(shape: ReferenceValue, required: true, location_name: "Value"))
1105
+ Reference.add_member(:type, Shapes::ShapeRef.new(shape: ReferenceType, required: true, location_name: "Type"))
1106
+ Reference.struct_class = Types::Reference
1107
+
1010
1108
  ResourceConflictException.add_member(:message, Shapes::ShapeRef.new(shape: Message, location_name: "Message"))
1011
1109
  ResourceConflictException.struct_class = Types::ResourceConflictException
1012
1110
 
@@ -1122,6 +1220,19 @@ module Aws::Connect
1122
1220
  StartOutboundVoiceContactResponse.add_member(:contact_id, Shapes::ShapeRef.new(shape: ContactId, location_name: "ContactId"))
1123
1221
  StartOutboundVoiceContactResponse.struct_class = Types::StartOutboundVoiceContactResponse
1124
1222
 
1223
+ StartTaskContactRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "InstanceId"))
1224
+ StartTaskContactRequest.add_member(:previous_contact_id, Shapes::ShapeRef.new(shape: ContactId, location_name: "PreviousContactId"))
1225
+ StartTaskContactRequest.add_member(:contact_flow_id, Shapes::ShapeRef.new(shape: ContactFlowId, required: true, location_name: "ContactFlowId"))
1226
+ StartTaskContactRequest.add_member(:attributes, Shapes::ShapeRef.new(shape: Attributes, location_name: "Attributes"))
1227
+ StartTaskContactRequest.add_member(:name, Shapes::ShapeRef.new(shape: Name, required: true, location_name: "Name"))
1228
+ StartTaskContactRequest.add_member(:references, Shapes::ShapeRef.new(shape: ContactReferences, location_name: "References"))
1229
+ StartTaskContactRequest.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "Description"))
1230
+ StartTaskContactRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "ClientToken", metadata: {"idempotencyToken"=>true}))
1231
+ StartTaskContactRequest.struct_class = Types::StartTaskContactRequest
1232
+
1233
+ StartTaskContactResponse.add_member(:contact_id, Shapes::ShapeRef.new(shape: ContactId, location_name: "ContactId"))
1234
+ StartTaskContactResponse.struct_class = Types::StartTaskContactResponse
1235
+
1125
1236
  StopContactRecordingRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "InstanceId"))
1126
1237
  StopContactRecordingRequest.add_member(:contact_id, Shapes::ShapeRef.new(shape: ContactId, required: true, location_name: "ContactId"))
1127
1238
  StopContactRecordingRequest.add_member(:initial_contact_id, Shapes::ShapeRef.new(shape: ContactId, required: true, location_name: "InitialContactId"))
@@ -1246,6 +1357,13 @@ module Aws::Connect
1246
1357
  UpdateUserSecurityProfilesRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "InstanceId"))
1247
1358
  UpdateUserSecurityProfilesRequest.struct_class = Types::UpdateUserSecurityProfilesRequest
1248
1359
 
1360
+ UseCase.add_member(:use_case_id, Shapes::ShapeRef.new(shape: UseCaseId, location_name: "UseCaseId"))
1361
+ UseCase.add_member(:use_case_arn, Shapes::ShapeRef.new(shape: ARN, location_name: "UseCaseArn"))
1362
+ UseCase.add_member(:use_case_type, Shapes::ShapeRef.new(shape: UseCaseType, location_name: "UseCaseType"))
1363
+ UseCase.struct_class = Types::UseCase
1364
+
1365
+ UseCaseSummaryList.member = Shapes::ShapeRef.new(shape: UseCase)
1366
+
1249
1367
  User.add_member(:id, Shapes::ShapeRef.new(shape: UserId, location_name: "Id"))
1250
1368
  User.add_member(:arn, Shapes::ShapeRef.new(shape: ARN, location_name: "Arn"))
1251
1369
  User.add_member(:username, Shapes::ShapeRef.new(shape: AgentUsername, location_name: "Username"))
@@ -1417,6 +1535,19 @@ module Aws::Connect
1417
1535
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1418
1536
  end)
1419
1537
 
1538
+ api.add_operation(:create_integration_association, Seahorse::Model::Operation.new.tap do |o|
1539
+ o.name = "CreateIntegrationAssociation"
1540
+ o.http_method = "PUT"
1541
+ o.http_request_uri = "/instance/{InstanceId}/integration-associations"
1542
+ o.input = Shapes::ShapeRef.new(shape: CreateIntegrationAssociationRequest)
1543
+ o.output = Shapes::ShapeRef.new(shape: CreateIntegrationAssociationResponse)
1544
+ o.errors << Shapes::ShapeRef.new(shape: DuplicateResourceException)
1545
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1546
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1547
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1548
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1549
+ end)
1550
+
1420
1551
  api.add_operation(:create_routing_profile, Seahorse::Model::Operation.new.tap do |o|
1421
1552
  o.name = "CreateRoutingProfile"
1422
1553
  o.http_method = "PUT"
@@ -1432,6 +1563,19 @@ module Aws::Connect
1432
1563
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1433
1564
  end)
1434
1565
 
1566
+ api.add_operation(:create_use_case, Seahorse::Model::Operation.new.tap do |o|
1567
+ o.name = "CreateUseCase"
1568
+ o.http_method = "PUT"
1569
+ o.http_request_uri = "/instance/{InstanceId}/integration-associations/{IntegrationAssociationId}/use-cases"
1570
+ o.input = Shapes::ShapeRef.new(shape: CreateUseCaseRequest)
1571
+ o.output = Shapes::ShapeRef.new(shape: CreateUseCaseResponse)
1572
+ o.errors << Shapes::ShapeRef.new(shape: DuplicateResourceException)
1573
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1574
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1575
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1576
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1577
+ end)
1578
+
1435
1579
  api.add_operation(:create_user, Seahorse::Model::Operation.new.tap do |o|
1436
1580
  o.name = "CreateUser"
1437
1581
  o.http_method = "PUT"
@@ -1473,6 +1617,30 @@ module Aws::Connect
1473
1617
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1474
1618
  end)
1475
1619
 
1620
+ api.add_operation(:delete_integration_association, Seahorse::Model::Operation.new.tap do |o|
1621
+ o.name = "DeleteIntegrationAssociation"
1622
+ o.http_method = "DELETE"
1623
+ o.http_request_uri = "/instance/{InstanceId}/integration-associations/{IntegrationAssociationId}"
1624
+ o.input = Shapes::ShapeRef.new(shape: DeleteIntegrationAssociationRequest)
1625
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1626
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1627
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1628
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1629
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1630
+ end)
1631
+
1632
+ api.add_operation(:delete_use_case, Seahorse::Model::Operation.new.tap do |o|
1633
+ o.name = "DeleteUseCase"
1634
+ o.http_method = "DELETE"
1635
+ o.http_request_uri = "/instance/{InstanceId}/integration-associations/{IntegrationAssociationId}/use-cases/{UseCaseId}"
1636
+ o.input = Shapes::ShapeRef.new(shape: DeleteUseCaseRequest)
1637
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1638
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1639
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1640
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1641
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1642
+ end)
1643
+
1476
1644
  api.add_operation(:delete_user, Seahorse::Model::Operation.new.tap do |o|
1477
1645
  o.name = "DeleteUser"
1478
1646
  o.http_method = "DELETE"
@@ -1855,6 +2023,24 @@ module Aws::Connect
1855
2023
  )
1856
2024
  end)
1857
2025
 
2026
+ api.add_operation(:list_integration_associations, Seahorse::Model::Operation.new.tap do |o|
2027
+ o.name = "ListIntegrationAssociations"
2028
+ o.http_method = "GET"
2029
+ o.http_request_uri = "/instance/{InstanceId}/integration-associations"
2030
+ o.input = Shapes::ShapeRef.new(shape: ListIntegrationAssociationsRequest)
2031
+ o.output = Shapes::ShapeRef.new(shape: ListIntegrationAssociationsResponse)
2032
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2033
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
2034
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
2035
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
2036
+ o[:pager] = Aws::Pager.new(
2037
+ limit_key: "max_results",
2038
+ tokens: {
2039
+ "next_token" => "next_token"
2040
+ }
2041
+ )
2042
+ end)
2043
+
1858
2044
  api.add_operation(:list_lambda_functions, Seahorse::Model::Operation.new.tap do |o|
1859
2045
  o.name = "ListLambdaFunctions"
1860
2046
  o.http_method = "GET"
@@ -2039,6 +2225,24 @@ module Aws::Connect
2039
2225
  o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
2040
2226
  end)
2041
2227
 
2228
+ api.add_operation(:list_use_cases, Seahorse::Model::Operation.new.tap do |o|
2229
+ o.name = "ListUseCases"
2230
+ o.http_method = "GET"
2231
+ o.http_request_uri = "/instance/{InstanceId}/integration-associations/{IntegrationAssociationId}/use-cases"
2232
+ o.input = Shapes::ShapeRef.new(shape: ListUseCasesRequest)
2233
+ o.output = Shapes::ShapeRef.new(shape: ListUseCasesResponse)
2234
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2235
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
2236
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
2237
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
2238
+ o[:pager] = Aws::Pager.new(
2239
+ limit_key: "max_results",
2240
+ tokens: {
2241
+ "next_token" => "next_token"
2242
+ }
2243
+ )
2244
+ end)
2245
+
2042
2246
  api.add_operation(:list_user_hierarchy_groups, Seahorse::Model::Operation.new.tap do |o|
2043
2247
  o.name = "ListUserHierarchyGroups"
2044
2248
  o.http_method = "GET"
@@ -2128,6 +2332,20 @@ module Aws::Connect
2128
2332
  o.errors << Shapes::ShapeRef.new(shape: OutboundContactNotPermittedException)
2129
2333
  end)
2130
2334
 
2335
+ api.add_operation(:start_task_contact, Seahorse::Model::Operation.new.tap do |o|
2336
+ o.name = "StartTaskContact"
2337
+ o.http_method = "PUT"
2338
+ o.http_request_uri = "/contact/task"
2339
+ o.input = Shapes::ShapeRef.new(shape: StartTaskContactRequest)
2340
+ o.output = Shapes::ShapeRef.new(shape: StartTaskContactResponse)
2341
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
2342
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2343
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
2344
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
2345
+ o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException)
2346
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
2347
+ end)
2348
+
2131
2349
  api.add_operation(:stop_contact, Seahorse::Model::Operation.new.tap do |o|
2132
2350
  o.name = "StopContact"
2133
2351
  o.http_method = "POST"
@@ -168,7 +168,7 @@ module Aws::Connect
168
168
  # {
169
169
  # queue_reference: { # required
170
170
  # queue_id: "QueueId", # required
171
- # channel: "VOICE", # required, accepts VOICE, CHAT
171
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
172
172
  # },
173
173
  # priority: 1, # required
174
174
  # delay: 1, # required
@@ -535,6 +535,72 @@ module Aws::Connect
535
535
  include Aws::Structure
536
536
  end
537
537
 
538
+ # @note When making an API call, you may pass CreateIntegrationAssociationRequest
539
+ # data as a hash:
540
+ #
541
+ # {
542
+ # instance_id: "InstanceId", # required
543
+ # integration_type: "EVENT", # required, accepts EVENT
544
+ # integration_arn: "ARN", # required
545
+ # source_application_url: "URI", # required
546
+ # source_application_name: "SourceApplicationName", # required
547
+ # source_type: "SALESFORCE", # required, accepts SALESFORCE, ZENDESK
548
+ # }
549
+ #
550
+ # @!attribute [rw] instance_id
551
+ # The identifier of the Amazon Connect instance.
552
+ # @return [String]
553
+ #
554
+ # @!attribute [rw] integration_type
555
+ # The type of information to be ingested.
556
+ # @return [String]
557
+ #
558
+ # @!attribute [rw] integration_arn
559
+ # The Amazon Resource Name (ARN) of the integration.
560
+ # @return [String]
561
+ #
562
+ # @!attribute [rw] source_application_url
563
+ # The URL for the external application.
564
+ # @return [String]
565
+ #
566
+ # @!attribute [rw] source_application_name
567
+ # The name of the external application.
568
+ # @return [String]
569
+ #
570
+ # @!attribute [rw] source_type
571
+ # The type of the data source.
572
+ # @return [String]
573
+ #
574
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreateIntegrationAssociationRequest AWS API Documentation
575
+ #
576
+ class CreateIntegrationAssociationRequest < Struct.new(
577
+ :instance_id,
578
+ :integration_type,
579
+ :integration_arn,
580
+ :source_application_url,
581
+ :source_application_name,
582
+ :source_type)
583
+ SENSITIVE = []
584
+ include Aws::Structure
585
+ end
586
+
587
+ # @!attribute [rw] integration_association_id
588
+ # The identifier for the association.
589
+ # @return [String]
590
+ #
591
+ # @!attribute [rw] integration_association_arn
592
+ # The Amazon Resource Name (ARN) for the association.
593
+ # @return [String]
594
+ #
595
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreateIntegrationAssociationResponse AWS API Documentation
596
+ #
597
+ class CreateIntegrationAssociationResponse < Struct.new(
598
+ :integration_association_id,
599
+ :integration_association_arn)
600
+ SENSITIVE = []
601
+ include Aws::Structure
602
+ end
603
+
538
604
  # @note When making an API call, you may pass CreateRoutingProfileRequest
539
605
  # data as a hash:
540
606
  #
@@ -547,7 +613,7 @@ module Aws::Connect
547
613
  # {
548
614
  # queue_reference: { # required
549
615
  # queue_id: "QueueId", # required
550
- # channel: "VOICE", # required, accepts VOICE, CHAT
616
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
551
617
  # },
552
618
  # priority: 1, # required
553
619
  # delay: 1, # required
@@ -555,7 +621,7 @@ module Aws::Connect
555
621
  # ],
556
622
  # media_concurrencies: [ # required
557
623
  # {
558
- # channel: "VOICE", # required, accepts VOICE, CHAT
624
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
559
625
  # concurrency: 1, # required
560
626
  # },
561
627
  # ],
@@ -627,6 +693,56 @@ module Aws::Connect
627
693
  include Aws::Structure
628
694
  end
629
695
 
696
+ # @note When making an API call, you may pass CreateUseCaseRequest
697
+ # data as a hash:
698
+ #
699
+ # {
700
+ # instance_id: "InstanceId", # required
701
+ # integration_association_id: "IntegrationAssociationId", # required
702
+ # use_case_type: "RULES_EVALUATION", # required, accepts RULES_EVALUATION
703
+ # }
704
+ #
705
+ # @!attribute [rw] instance_id
706
+ # The identifier of the Amazon Connect instance.
707
+ # @return [String]
708
+ #
709
+ # @!attribute [rw] integration_association_id
710
+ # The identifier for the AppIntegration association.
711
+ # @return [String]
712
+ #
713
+ # @!attribute [rw] use_case_type
714
+ # The type of use case to associate to the AppIntegration association.
715
+ # Each AppIntegration association can have only one of each use case
716
+ # type.
717
+ # @return [String]
718
+ #
719
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreateUseCaseRequest AWS API Documentation
720
+ #
721
+ class CreateUseCaseRequest < Struct.new(
722
+ :instance_id,
723
+ :integration_association_id,
724
+ :use_case_type)
725
+ SENSITIVE = []
726
+ include Aws::Structure
727
+ end
728
+
729
+ # @!attribute [rw] use_case_id
730
+ # The identifier of the use case.
731
+ # @return [String]
732
+ #
733
+ # @!attribute [rw] use_case_arn
734
+ # The Amazon Resource Name (ARN) for the use case.
735
+ # @return [String]
736
+ #
737
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreateUseCaseResponse AWS API Documentation
738
+ #
739
+ class CreateUseCaseResponse < Struct.new(
740
+ :use_case_id,
741
+ :use_case_arn)
742
+ SENSITIVE = []
743
+ include Aws::Structure
744
+ end
745
+
630
746
  # @note When making an API call, you may pass CreateUserHierarchyGroupRequest
631
747
  # data as a hash:
632
748
  #
@@ -916,6 +1032,62 @@ module Aws::Connect
916
1032
  include Aws::Structure
917
1033
  end
918
1034
 
1035
+ # @note When making an API call, you may pass DeleteIntegrationAssociationRequest
1036
+ # data as a hash:
1037
+ #
1038
+ # {
1039
+ # instance_id: "InstanceId", # required
1040
+ # integration_association_id: "IntegrationAssociationId", # required
1041
+ # }
1042
+ #
1043
+ # @!attribute [rw] instance_id
1044
+ # The identifier of the Amazon Connect instance.
1045
+ # @return [String]
1046
+ #
1047
+ # @!attribute [rw] integration_association_id
1048
+ # The identifier for the AppIntegration association.
1049
+ # @return [String]
1050
+ #
1051
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DeleteIntegrationAssociationRequest AWS API Documentation
1052
+ #
1053
+ class DeleteIntegrationAssociationRequest < Struct.new(
1054
+ :instance_id,
1055
+ :integration_association_id)
1056
+ SENSITIVE = []
1057
+ include Aws::Structure
1058
+ end
1059
+
1060
+ # @note When making an API call, you may pass DeleteUseCaseRequest
1061
+ # data as a hash:
1062
+ #
1063
+ # {
1064
+ # instance_id: "InstanceId", # required
1065
+ # integration_association_id: "IntegrationAssociationId", # required
1066
+ # use_case_id: "UseCaseId", # required
1067
+ # }
1068
+ #
1069
+ # @!attribute [rw] instance_id
1070
+ # The identifier of the Amazon Connect instance.
1071
+ # @return [String]
1072
+ #
1073
+ # @!attribute [rw] integration_association_id
1074
+ # The identifier for the AppIntegration association.
1075
+ # @return [String]
1076
+ #
1077
+ # @!attribute [rw] use_case_id
1078
+ # The identifier for the use case.
1079
+ # @return [String]
1080
+ #
1081
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DeleteUseCaseRequest AWS API Documentation
1082
+ #
1083
+ class DeleteUseCaseRequest < Struct.new(
1084
+ :instance_id,
1085
+ :integration_association_id,
1086
+ :use_case_id)
1087
+ SENSITIVE = []
1088
+ include Aws::Structure
1089
+ end
1090
+
919
1091
  # @note When making an API call, you may pass DeleteUserHierarchyGroupRequest
920
1092
  # data as a hash:
921
1093
  #
@@ -1413,7 +1585,7 @@ module Aws::Connect
1413
1585
  # queue_references: [ # required
1414
1586
  # {
1415
1587
  # queue_id: "QueueId", # required
1416
- # channel: "VOICE", # required, accepts VOICE, CHAT
1588
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
1417
1589
  # },
1418
1590
  # ],
1419
1591
  # }
@@ -1513,7 +1685,7 @@ module Aws::Connect
1513
1685
  #
1514
1686
  # {
1515
1687
  # queues: ["QueueId"],
1516
- # channels: ["VOICE"], # accepts VOICE, CHAT
1688
+ # channels: ["VOICE"], # accepts VOICE, CHAT, TASK
1517
1689
  # }
1518
1690
  #
1519
1691
  # @!attribute [rw] queues
@@ -1578,7 +1750,7 @@ module Aws::Connect
1578
1750
  # instance_id: "InstanceId", # required
1579
1751
  # filters: { # required
1580
1752
  # queues: ["QueueId"],
1581
- # channels: ["VOICE"], # accepts VOICE, CHAT
1753
+ # channels: ["VOICE"], # accepts VOICE, CHAT, TASK
1582
1754
  # },
1583
1755
  # groupings: ["QUEUE"], # accepts QUEUE, CHANNEL
1584
1756
  # current_metrics: [ # required
@@ -1599,16 +1771,16 @@ module Aws::Connect
1599
1771
  # The queues, up to 100, or channels, to use to filter the metrics
1600
1772
  # returned. Metric data is retrieved only for the resources associated
1601
1773
  # with the queues or channels included in the filter. You can include
1602
- # both queue IDs and queue ARNs in the same request. Both `VOICE` and
1603
- # `CHAT` channels are supported.
1774
+ # both queue IDs and queue ARNs in the same request. VOICE, CHAT, and
1775
+ # TASK channels are supported.
1604
1776
  # @return [Types::Filters]
1605
1777
  #
1606
1778
  # @!attribute [rw] groupings
1607
1779
  # The grouping applied to the metrics returned. For example, when
1608
1780
  # grouped by `QUEUE`, the metrics returned apply to each queue rather
1609
1781
  # than aggregated for all queues. If you group by `CHANNEL`, you
1610
- # should include a Channels filter. Both `VOICE` and `CHAT` channels
1611
- # are supported.
1782
+ # should include a Channels filter. VOICE, CHAT, and TASK channels are
1783
+ # supported.
1612
1784
  #
1613
1785
  # If no `Grouping` is included in the request, a summary of metrics is
1614
1786
  # returned.
@@ -1819,7 +1991,7 @@ module Aws::Connect
1819
1991
  # end_time: Time.now, # required
1820
1992
  # filters: { # required
1821
1993
  # queues: ["QueueId"],
1822
- # channels: ["VOICE"], # accepts VOICE, CHAT
1994
+ # channels: ["VOICE"], # accepts VOICE, CHAT, TASK
1823
1995
  # },
1824
1996
  # groupings: ["QUEUE"], # accepts QUEUE, CHANNEL
1825
1997
  # historical_metrics: [ # required
@@ -1866,8 +2038,8 @@ module Aws::Connect
1866
2038
  # The queues, up to 100, or channels, to use to filter the metrics
1867
2039
  # returned. Metric data is retrieved only for the resources associated
1868
2040
  # with the queues or channels included in the filter. You can include
1869
- # both queue IDs and queue ARNs in the same request. Both `VOICE` and
1870
- # `CHAT` channels are supported.
2041
+ # both queue IDs and queue ARNs in the same request. VOICE, CHAT, and
2042
+ # TASK channels are supported.
1871
2043
  # @return [Types::Filters]
1872
2044
  #
1873
2045
  # @!attribute [rw] groupings
@@ -2631,6 +2803,55 @@ module Aws::Connect
2631
2803
  include Aws::Structure
2632
2804
  end
2633
2805
 
2806
+ # Contains summary information about the associated AppIntegrations.
2807
+ #
2808
+ # @!attribute [rw] integration_association_id
2809
+ # The identifier for the AppIntegration association.
2810
+ # @return [String]
2811
+ #
2812
+ # @!attribute [rw] integration_association_arn
2813
+ # The Amazon Resource Name (ARN) for the AppIntegration association.
2814
+ # @return [String]
2815
+ #
2816
+ # @!attribute [rw] instance_id
2817
+ # The identifier of the Amazon Connect instance.
2818
+ # @return [String]
2819
+ #
2820
+ # @!attribute [rw] integration_type
2821
+ # The integration type.
2822
+ # @return [String]
2823
+ #
2824
+ # @!attribute [rw] integration_arn
2825
+ # The Amazon Resource Name (ARN) for the AppIntegration.
2826
+ # @return [String]
2827
+ #
2828
+ # @!attribute [rw] source_application_url
2829
+ # The URL for the external application.
2830
+ # @return [String]
2831
+ #
2832
+ # @!attribute [rw] source_application_name
2833
+ # The user-provided, friendly name for the external application.
2834
+ # @return [String]
2835
+ #
2836
+ # @!attribute [rw] source_type
2837
+ # The name of the source.
2838
+ # @return [String]
2839
+ #
2840
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/IntegrationAssociationSummary AWS API Documentation
2841
+ #
2842
+ class IntegrationAssociationSummary < Struct.new(
2843
+ :integration_association_id,
2844
+ :integration_association_arn,
2845
+ :instance_id,
2846
+ :integration_type,
2847
+ :integration_arn,
2848
+ :source_application_url,
2849
+ :source_application_name,
2850
+ :source_type)
2851
+ SENSITIVE = []
2852
+ include Aws::Structure
2853
+ end
2854
+
2634
2855
  # Request processing failed due to an error or failure with the service.
2635
2856
  #
2636
2857
  # @!attribute [rw] message
@@ -3123,6 +3344,57 @@ module Aws::Connect
3123
3344
  include Aws::Structure
3124
3345
  end
3125
3346
 
3347
+ # @note When making an API call, you may pass ListIntegrationAssociationsRequest
3348
+ # data as a hash:
3349
+ #
3350
+ # {
3351
+ # instance_id: "InstanceId", # required
3352
+ # next_token: "NextToken",
3353
+ # max_results: 1,
3354
+ # }
3355
+ #
3356
+ # @!attribute [rw] instance_id
3357
+ # The identifier of the Amazon Connect instance.
3358
+ # @return [String]
3359
+ #
3360
+ # @!attribute [rw] next_token
3361
+ # The token for the next set of results. Use the value returned in the
3362
+ # previous response in the next request to retrieve the next set of
3363
+ # results.
3364
+ # @return [String]
3365
+ #
3366
+ # @!attribute [rw] max_results
3367
+ # The maximimum number of results to return per page.
3368
+ # @return [Integer]
3369
+ #
3370
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListIntegrationAssociationsRequest AWS API Documentation
3371
+ #
3372
+ class ListIntegrationAssociationsRequest < Struct.new(
3373
+ :instance_id,
3374
+ :next_token,
3375
+ :max_results)
3376
+ SENSITIVE = []
3377
+ include Aws::Structure
3378
+ end
3379
+
3380
+ # @!attribute [rw] integration_association_summary_list
3381
+ # The AppIntegration associations.
3382
+ # @return [Array<Types::IntegrationAssociationSummary>]
3383
+ #
3384
+ # @!attribute [rw] next_token
3385
+ # If there are additional results, this is the token for the next set
3386
+ # of results.
3387
+ # @return [String]
3388
+ #
3389
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListIntegrationAssociationsResponse AWS API Documentation
3390
+ #
3391
+ class ListIntegrationAssociationsResponse < Struct.new(
3392
+ :integration_association_summary_list,
3393
+ :next_token)
3394
+ SENSITIVE = []
3395
+ include Aws::Structure
3396
+ end
3397
+
3126
3398
  # @note When making an API call, you may pass ListLambdaFunctionsRequest
3127
3399
  # data as a hash:
3128
3400
  #
@@ -3638,6 +3910,66 @@ module Aws::Connect
3638
3910
  include Aws::Structure
3639
3911
  end
3640
3912
 
3913
+ # Provides summary information about the use cases for the specified
3914
+ # Amazon Connect AppIntegration association.
3915
+ #
3916
+ # @note When making an API call, you may pass ListUseCasesRequest
3917
+ # data as a hash:
3918
+ #
3919
+ # {
3920
+ # instance_id: "InstanceId", # required
3921
+ # integration_association_id: "IntegrationAssociationId", # required
3922
+ # next_token: "NextToken",
3923
+ # max_results: 1,
3924
+ # }
3925
+ #
3926
+ # @!attribute [rw] instance_id
3927
+ # The identifier of the Amazon Connect instance.
3928
+ # @return [String]
3929
+ #
3930
+ # @!attribute [rw] integration_association_id
3931
+ # The identifier for the integration association.
3932
+ # @return [String]
3933
+ #
3934
+ # @!attribute [rw] next_token
3935
+ # The token for the next set of results. Use the value returned in the
3936
+ # previous response in the next request to retrieve the next set of
3937
+ # results.
3938
+ # @return [String]
3939
+ #
3940
+ # @!attribute [rw] max_results
3941
+ # The maximimum number of results to return per page.
3942
+ # @return [Integer]
3943
+ #
3944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListUseCasesRequest AWS API Documentation
3945
+ #
3946
+ class ListUseCasesRequest < Struct.new(
3947
+ :instance_id,
3948
+ :integration_association_id,
3949
+ :next_token,
3950
+ :max_results)
3951
+ SENSITIVE = []
3952
+ include Aws::Structure
3953
+ end
3954
+
3955
+ # @!attribute [rw] use_case_summary_list
3956
+ # The use cases.
3957
+ # @return [Array<Types::UseCase>]
3958
+ #
3959
+ # @!attribute [rw] next_token
3960
+ # If there are additional results, this is the token for the next set
3961
+ # of results.
3962
+ # @return [String]
3963
+ #
3964
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListUseCasesResponse AWS API Documentation
3965
+ #
3966
+ class ListUseCasesResponse < Struct.new(
3967
+ :use_case_summary_list,
3968
+ :next_token)
3969
+ SENSITIVE = []
3970
+ include Aws::Structure
3971
+ end
3972
+
3641
3973
  # @note When making an API call, you may pass ListUserHierarchyGroupsRequest
3642
3974
  # data as a hash:
3643
3975
  #
@@ -3747,7 +4079,7 @@ module Aws::Connect
3747
4079
  # data as a hash:
3748
4080
  #
3749
4081
  # {
3750
- # channel: "VOICE", # required, accepts VOICE, CHAT
4082
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
3751
4083
  # concurrency: 1, # required
3752
4084
  # }
3753
4085
  #
@@ -3927,6 +4259,35 @@ module Aws::Connect
3927
4259
  include Aws::Structure
3928
4260
  end
3929
4261
 
4262
+ # A link that an agent selects to complete a given task. You can have up
4263
+ # to 4,096 UTF-8 bytes across all references for a contact.
4264
+ #
4265
+ # @note When making an API call, you may pass Reference
4266
+ # data as a hash:
4267
+ #
4268
+ # {
4269
+ # value: "ReferenceValue", # required
4270
+ # type: "URL", # required, accepts URL
4271
+ # }
4272
+ #
4273
+ # @!attribute [rw] value
4274
+ # A formatted URL that will be shown to an agent in the Contact
4275
+ # Control Panel (CCP)
4276
+ # @return [String]
4277
+ #
4278
+ # @!attribute [rw] type
4279
+ # A valid URL.
4280
+ # @return [String]
4281
+ #
4282
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/Reference AWS API Documentation
4283
+ #
4284
+ class Reference < Struct.new(
4285
+ :value,
4286
+ :type)
4287
+ SENSITIVE = []
4288
+ include Aws::Structure
4289
+ end
4290
+
3930
4291
  # A resource already has that name.
3931
4292
  #
3932
4293
  # @!attribute [rw] message
@@ -4073,7 +4434,7 @@ module Aws::Connect
4073
4434
  # {
4074
4435
  # queue_reference: { # required
4075
4436
  # queue_id: "QueueId", # required
4076
- # channel: "VOICE", # required, accepts VOICE, CHAT
4437
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
4077
4438
  # },
4078
4439
  # priority: 1, # required
4079
4440
  # delay: 1, # required
@@ -4170,7 +4531,7 @@ module Aws::Connect
4170
4531
  #
4171
4532
  # {
4172
4533
  # queue_id: "QueueId", # required
4173
- # channel: "VOICE", # required, accepts VOICE, CHAT
4534
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
4174
4535
  # }
4175
4536
  #
4176
4537
  # @!attribute [rw] queue_id
@@ -4553,6 +4914,106 @@ module Aws::Connect
4553
4914
  include Aws::Structure
4554
4915
  end
4555
4916
 
4917
+ # @note When making an API call, you may pass StartTaskContactRequest
4918
+ # data as a hash:
4919
+ #
4920
+ # {
4921
+ # instance_id: "InstanceId", # required
4922
+ # previous_contact_id: "ContactId",
4923
+ # contact_flow_id: "ContactFlowId", # required
4924
+ # attributes: {
4925
+ # "AttributeName" => "AttributeValue",
4926
+ # },
4927
+ # name: "Name", # required
4928
+ # references: {
4929
+ # "ReferenceKey" => {
4930
+ # value: "ReferenceValue", # required
4931
+ # type: "URL", # required, accepts URL
4932
+ # },
4933
+ # },
4934
+ # description: "Description",
4935
+ # client_token: "ClientToken",
4936
+ # }
4937
+ #
4938
+ # @!attribute [rw] instance_id
4939
+ # The identifier of the Amazon Connect instance.
4940
+ # @return [String]
4941
+ #
4942
+ # @!attribute [rw] previous_contact_id
4943
+ # The identifier of the previous chat, voice, or task contact.
4944
+ # @return [String]
4945
+ #
4946
+ # @!attribute [rw] contact_flow_id
4947
+ # The identifier of the contact flow for initiating the tasks. To see
4948
+ # the ContactFlowId in the Amazon Connect console user interface, on
4949
+ # the navigation menu go to **Routing**, **Contact Flows**. Choose the
4950
+ # contact flow. On the contact flow page, under the name of the
4951
+ # contact flow, choose **Show additional flow information**. The
4952
+ # ContactFlowId is the last part of the ARN, shown here in bold:
4953
+ #
4954
+ # arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/**846ec553-a005-41c0-8341-xxxxxxxxxxxx**
4955
+ # @return [String]
4956
+ #
4957
+ # @!attribute [rw] attributes
4958
+ # A custom key-value pair using an attribute map. The attributes are
4959
+ # standard Amazon Connect attributes, and can be accessed in contact
4960
+ # flows just like any other contact attributes.
4961
+ #
4962
+ # There can be up to 32,768 UTF-8 bytes across all key-value pairs per
4963
+ # contact. Attribute keys can include only alphanumeric, dash, and
4964
+ # underscore characters.
4965
+ # @return [Hash<String,String>]
4966
+ #
4967
+ # @!attribute [rw] name
4968
+ # The name of a task that is shown to an agent in the Contact Control
4969
+ # Panel (CCP).
4970
+ # @return [String]
4971
+ #
4972
+ # @!attribute [rw] references
4973
+ # A formatted URL that is shown to an agent in the Contact Control
4974
+ # Panel (CCP).
4975
+ # @return [Hash<String,Types::Reference>]
4976
+ #
4977
+ # @!attribute [rw] description
4978
+ # A description of the task that is shown to an agent in the Contact
4979
+ # Control Panel (CCP).
4980
+ # @return [String]
4981
+ #
4982
+ # @!attribute [rw] client_token
4983
+ # A unique, case-sensitive identifier that you provide to ensure the
4984
+ # idempotency of the request.
4985
+ #
4986
+ # **A suitable default value is auto-generated.** You should normally
4987
+ # not need to pass this option.
4988
+ # @return [String]
4989
+ #
4990
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/StartTaskContactRequest AWS API Documentation
4991
+ #
4992
+ class StartTaskContactRequest < Struct.new(
4993
+ :instance_id,
4994
+ :previous_contact_id,
4995
+ :contact_flow_id,
4996
+ :attributes,
4997
+ :name,
4998
+ :references,
4999
+ :description,
5000
+ :client_token)
5001
+ SENSITIVE = []
5002
+ include Aws::Structure
5003
+ end
5004
+
5005
+ # @!attribute [rw] contact_id
5006
+ # The identifier of this contact within the Amazon Connect instance.
5007
+ # @return [String]
5008
+ #
5009
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/StartTaskContactResponse AWS API Documentation
5010
+ #
5011
+ class StartTaskContactResponse < Struct.new(
5012
+ :contact_id)
5013
+ SENSITIVE = []
5014
+ include Aws::Structure
5015
+ end
5016
+
4556
5017
  # @note When making an API call, you may pass StopContactRecordingRequest
4557
5018
  # data as a hash:
4558
5019
  #
@@ -4967,7 +5428,7 @@ module Aws::Connect
4967
5428
  # routing_profile_id: "RoutingProfileId", # required
4968
5429
  # media_concurrencies: [ # required
4969
5430
  # {
4970
- # channel: "VOICE", # required, accepts VOICE, CHAT
5431
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
4971
5432
  # concurrency: 1, # required
4972
5433
  # },
4973
5434
  # ],
@@ -5075,7 +5536,7 @@ module Aws::Connect
5075
5536
  # {
5076
5537
  # queue_reference: { # required
5077
5538
  # queue_id: "QueueId", # required
5078
- # channel: "VOICE", # required, accepts VOICE, CHAT
5539
+ # channel: "VOICE", # required, accepts VOICE, CHAT, TASK
5079
5540
  # },
5080
5541
  # priority: 1, # required
5081
5542
  # delay: 1, # required
@@ -5092,7 +5553,9 @@ module Aws::Connect
5092
5553
  # @return [String]
5093
5554
  #
5094
5555
  # @!attribute [rw] queue_configs
5095
- # The queues to be updated for this routing profile.
5556
+ # The queues to be updated for this routing profile. Queues must first
5557
+ # be associated to the routing profile. You can do this using
5558
+ # AssociateRoutingProfileQueues.
5096
5559
  # @return [Array<Types::RoutingProfileQueueConfig>]
5097
5560
  #
5098
5561
  # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateRoutingProfileQueuesRequest AWS API Documentation
@@ -5342,6 +5805,32 @@ module Aws::Connect
5342
5805
  include Aws::Structure
5343
5806
  end
5344
5807
 
5808
+ # Contains the use case.
5809
+ #
5810
+ # @!attribute [rw] use_case_id
5811
+ # The identifier for the use case.
5812
+ # @return [String]
5813
+ #
5814
+ # @!attribute [rw] use_case_arn
5815
+ # The Amazon Resource Name (ARN) for the use case.
5816
+ # @return [String]
5817
+ #
5818
+ # @!attribute [rw] use_case_type
5819
+ # The type of use case to associate to the AppIntegration association.
5820
+ # Each AppIntegration association can have only one of each use case
5821
+ # type.
5822
+ # @return [String]
5823
+ #
5824
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UseCase AWS API Documentation
5825
+ #
5826
+ class UseCase < Struct.new(
5827
+ :use_case_id,
5828
+ :use_case_arn,
5829
+ :use_case_type)
5830
+ SENSITIVE = []
5831
+ include Aws::Structure
5832
+ end
5833
+
5345
5834
  # Contains information about a user account for a Amazon Connect
5346
5835
  # instance.
5347
5836
  #