aws-sdk-connect 1.71.0 → 1.74.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1425,6 +1425,118 @@ module Aws::Connect
1425
1425
  req.send_request(options)
1426
1426
  end
1427
1427
 
1428
+ # Creates a new task template in the specified Amazon Connect instance.
1429
+ #
1430
+ # @option params [required, String] :instance_id
1431
+ # The identifier of the Amazon Connect instance. You can find the
1432
+ # instanceId in the ARN of the instance.
1433
+ #
1434
+ # @option params [required, String] :name
1435
+ # The name of the task template.
1436
+ #
1437
+ # @option params [String] :description
1438
+ # The description of the task template.
1439
+ #
1440
+ # @option params [String] :contact_flow_id
1441
+ # The identifier of the flow that runs by default when a task is created
1442
+ # by referencing this template.
1443
+ #
1444
+ # @option params [Types::TaskTemplateConstraints] :constraints
1445
+ # Constraints that are applicable to the fields listed.
1446
+ #
1447
+ # @option params [Types::TaskTemplateDefaults] :defaults
1448
+ # The default values for fields when a task is created by referencing
1449
+ # this template.
1450
+ #
1451
+ # @option params [String] :status
1452
+ # Marks a template as `ACTIVE` or `INACTIVE` for a task to refer to it.
1453
+ # Tasks can only be created from `ACTIVE` templates. If a template is
1454
+ # marked as `INACTIVE`, then a task that refers to this template cannot
1455
+ # be created.
1456
+ #
1457
+ # @option params [required, Array<Types::TaskTemplateField>] :fields
1458
+ # Fields that are part of the template.
1459
+ #
1460
+ # @option params [String] :client_token
1461
+ # A unique, case-sensitive identifier that you provide to ensure the
1462
+ # idempotency of the request.
1463
+ #
1464
+ # **A suitable default value is auto-generated.** You should normally
1465
+ # not need to pass this option.**
1466
+ #
1467
+ # @return [Types::CreateTaskTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1468
+ #
1469
+ # * {Types::CreateTaskTemplateResponse#id #id} => String
1470
+ # * {Types::CreateTaskTemplateResponse#arn #arn} => String
1471
+ #
1472
+ # @example Request syntax with placeholder values
1473
+ #
1474
+ # resp = client.create_task_template({
1475
+ # instance_id: "InstanceId", # required
1476
+ # name: "TaskTemplateName", # required
1477
+ # description: "TaskTemplateDescription",
1478
+ # contact_flow_id: "ContactFlowId",
1479
+ # constraints: {
1480
+ # required_fields: [
1481
+ # {
1482
+ # id: {
1483
+ # name: "TaskTemplateFieldName",
1484
+ # },
1485
+ # },
1486
+ # ],
1487
+ # read_only_fields: [
1488
+ # {
1489
+ # id: {
1490
+ # name: "TaskTemplateFieldName",
1491
+ # },
1492
+ # },
1493
+ # ],
1494
+ # invisible_fields: [
1495
+ # {
1496
+ # id: {
1497
+ # name: "TaskTemplateFieldName",
1498
+ # },
1499
+ # },
1500
+ # ],
1501
+ # },
1502
+ # defaults: {
1503
+ # default_field_values: [
1504
+ # {
1505
+ # id: {
1506
+ # name: "TaskTemplateFieldName",
1507
+ # },
1508
+ # default_value: "TaskTemplateFieldValue",
1509
+ # },
1510
+ # ],
1511
+ # },
1512
+ # status: "ACTIVE", # accepts ACTIVE, INACTIVE
1513
+ # fields: [ # required
1514
+ # {
1515
+ # id: { # required
1516
+ # name: "TaskTemplateFieldName",
1517
+ # },
1518
+ # description: "TaskTemplateFieldDescription",
1519
+ # type: "NAME", # accepts NAME, DESCRIPTION, SCHEDULED_TIME, QUICK_CONNECT, URL, NUMBER, TEXT, TEXT_AREA, DATE_TIME, BOOLEAN, SINGLE_SELECT, EMAIL
1520
+ # single_select_options: ["TaskTemplateSingleSelectOption"],
1521
+ # },
1522
+ # ],
1523
+ # client_token: "ClientToken",
1524
+ # })
1525
+ #
1526
+ # @example Response structure
1527
+ #
1528
+ # resp.id #=> String
1529
+ # resp.arn #=> String
1530
+ #
1531
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreateTaskTemplate AWS API Documentation
1532
+ #
1533
+ # @overload create_task_template(params = {})
1534
+ # @param [Hash] params ({})
1535
+ def create_task_template(params = {}, options = {})
1536
+ req = build_request(:create_task_template, params)
1537
+ req.send_request(options)
1538
+ end
1539
+
1428
1540
  # Creates a use case for an integration association.
1429
1541
  #
1430
1542
  # @option params [required, String] :instance_id
@@ -1901,6 +2013,33 @@ module Aws::Connect
1901
2013
  req.send_request(options)
1902
2014
  end
1903
2015
 
2016
+ # Deletes the task template.
2017
+ #
2018
+ # @option params [required, String] :instance_id
2019
+ # The identifier of the Amazon Connect instance. You can find the
2020
+ # instanceId in the ARN of the instance.
2021
+ #
2022
+ # @option params [required, String] :task_template_id
2023
+ # A unique identifier for the task template.
2024
+ #
2025
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2026
+ #
2027
+ # @example Request syntax with placeholder values
2028
+ #
2029
+ # resp = client.delete_task_template({
2030
+ # instance_id: "InstanceId", # required
2031
+ # task_template_id: "TaskTemplateId", # required
2032
+ # })
2033
+ #
2034
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DeleteTaskTemplate AWS API Documentation
2035
+ #
2036
+ # @overload delete_task_template(params = {})
2037
+ # @param [Hash] params ({})
2038
+ def delete_task_template(params = {}, options = {})
2039
+ req = build_request(:delete_task_template, params)
2040
+ req.send_request(options)
2041
+ end
2042
+
1904
2043
  # Deletes a use case from an integration association.
1905
2044
  #
1906
2045
  # @option params [required, String] :instance_id
@@ -2334,12 +2473,12 @@ module Aws::Connect
2334
2473
  #
2335
2474
  # resp = client.describe_instance_attribute({
2336
2475
  # instance_id: "InstanceId", # required
2337
- # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE
2476
+ # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE, HIGH_VOLUME_OUTBOUND
2338
2477
  # })
2339
2478
  #
2340
2479
  # @example Response structure
2341
2480
  #
2342
- # resp.attribute.attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE"
2481
+ # resp.attribute.attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE", "HIGH_VOLUME_OUTBOUND"
2343
2482
  # resp.attribute.value #=> String
2344
2483
  #
2345
2484
  # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DescribeInstanceAttribute AWS API Documentation
@@ -3349,6 +3488,92 @@ module Aws::Connect
3349
3488
  req.send_request(options)
3350
3489
  end
3351
3490
 
3491
+ # Gets the real-time active user data from the specified Amazon Connect
3492
+ # instance.
3493
+ #
3494
+ # @option params [required, String] :instance_id
3495
+ # The identifier of the Amazon Connect instance. You can find the
3496
+ # instanceId in the ARN of the instance.
3497
+ #
3498
+ # @option params [required, Types::UserDataFilters] :filters
3499
+ # Filters up to 100 `Queues`, or up to 9 `ContactStates`. The user data
3500
+ # is retrieved only for those users who are associated with the queues
3501
+ # and have contacts that are in the specified `ContactState`.
3502
+ #
3503
+ # @option params [String] :next_token
3504
+ # The token for the next set of results. Use the value returned in the
3505
+ # previous response in the next request to retrieve the next set of
3506
+ # results.
3507
+ #
3508
+ # @option params [Integer] :max_results
3509
+ # The maximum number of results to return per page.
3510
+ #
3511
+ # @return [Types::GetCurrentUserDataResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3512
+ #
3513
+ # * {Types::GetCurrentUserDataResponse#next_token #next_token} => String
3514
+ # * {Types::GetCurrentUserDataResponse#user_data_list #user_data_list} => Array&lt;Types::UserData&gt;
3515
+ #
3516
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3517
+ #
3518
+ # @example Request syntax with placeholder values
3519
+ #
3520
+ # resp = client.get_current_user_data({
3521
+ # instance_id: "InstanceId", # required
3522
+ # filters: { # required
3523
+ # queues: ["QueueId"],
3524
+ # contact_filter: {
3525
+ # contact_states: ["INCOMING"], # accepts INCOMING, PENDING, CONNECTING, CONNECTED, CONNECTED_ONHOLD, MISSED, ERROR, ENDED, REJECTED
3526
+ # },
3527
+ # },
3528
+ # next_token: "NextToken",
3529
+ # max_results: 1,
3530
+ # })
3531
+ #
3532
+ # @example Response structure
3533
+ #
3534
+ # resp.next_token #=> String
3535
+ # resp.user_data_list #=> Array
3536
+ # resp.user_data_list[0].user.id #=> String
3537
+ # resp.user_data_list[0].user.arn #=> String
3538
+ # resp.user_data_list[0].routing_profile.id #=> String
3539
+ # resp.user_data_list[0].routing_profile.arn #=> String
3540
+ # resp.user_data_list[0].hierarchy_path.level_one.id #=> String
3541
+ # resp.user_data_list[0].hierarchy_path.level_one.arn #=> String
3542
+ # resp.user_data_list[0].hierarchy_path.level_two.id #=> String
3543
+ # resp.user_data_list[0].hierarchy_path.level_two.arn #=> String
3544
+ # resp.user_data_list[0].hierarchy_path.level_three.id #=> String
3545
+ # resp.user_data_list[0].hierarchy_path.level_three.arn #=> String
3546
+ # resp.user_data_list[0].hierarchy_path.level_four.id #=> String
3547
+ # resp.user_data_list[0].hierarchy_path.level_four.arn #=> String
3548
+ # resp.user_data_list[0].hierarchy_path.level_five.id #=> String
3549
+ # resp.user_data_list[0].hierarchy_path.level_five.arn #=> String
3550
+ # resp.user_data_list[0].status.status_start_timestamp #=> Time
3551
+ # resp.user_data_list[0].status.status_arn #=> String
3552
+ # resp.user_data_list[0].available_slots_by_channel #=> Hash
3553
+ # resp.user_data_list[0].available_slots_by_channel["Channel"] #=> Integer
3554
+ # resp.user_data_list[0].max_slots_by_channel #=> Hash
3555
+ # resp.user_data_list[0].max_slots_by_channel["Channel"] #=> Integer
3556
+ # resp.user_data_list[0].active_slots_by_channel #=> Hash
3557
+ # resp.user_data_list[0].active_slots_by_channel["Channel"] #=> Integer
3558
+ # resp.user_data_list[0].contacts #=> Array
3559
+ # resp.user_data_list[0].contacts[0].contact_id #=> String
3560
+ # resp.user_data_list[0].contacts[0].channel #=> String, one of "VOICE", "CHAT", "TASK"
3561
+ # resp.user_data_list[0].contacts[0].initiation_method #=> String, one of "INBOUND", "OUTBOUND", "TRANSFER", "QUEUE_TRANSFER", "CALLBACK", "API"
3562
+ # resp.user_data_list[0].contacts[0].agent_contact_state #=> String, one of "INCOMING", "PENDING", "CONNECTING", "CONNECTED", "CONNECTED_ONHOLD", "MISSED", "ERROR", "ENDED", "REJECTED"
3563
+ # resp.user_data_list[0].contacts[0].state_start_timestamp #=> Time
3564
+ # resp.user_data_list[0].contacts[0].connected_to_agent_timestamp #=> Time
3565
+ # resp.user_data_list[0].contacts[0].queue.id #=> String
3566
+ # resp.user_data_list[0].contacts[0].queue.arn #=> String
3567
+ #
3568
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/GetCurrentUserData AWS API Documentation
3569
+ #
3570
+ # @overload get_current_user_data(params = {})
3571
+ # @param [Hash] params ({})
3572
+ def get_current_user_data(params = {}, options = {})
3573
+ req = build_request(:get_current_user_data, params)
3574
+ req.send_request(options)
3575
+ end
3576
+
3352
3577
  # Retrieves a token for federation.
3353
3578
  #
3354
3579
  # <note markdown="1"> This API doesn't support root users. If you try to invoke
@@ -3679,6 +3904,82 @@ module Aws::Connect
3679
3904
  req.send_request(options)
3680
3905
  end
3681
3906
 
3907
+ # Gets details about a specific task template in the specified Amazon
3908
+ # Connect instance.
3909
+ #
3910
+ # @option params [required, String] :instance_id
3911
+ # The identifier of the Amazon Connect instance. You can find the
3912
+ # instanceId in the ARN of the instance.
3913
+ #
3914
+ # @option params [required, String] :task_template_id
3915
+ # A unique identifier for the task template.
3916
+ #
3917
+ # @option params [String] :snapshot_version
3918
+ # The system generated version of a task template that is associated
3919
+ # with a task, when the task is created.
3920
+ #
3921
+ # @return [Types::GetTaskTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3922
+ #
3923
+ # * {Types::GetTaskTemplateResponse#instance_id #instance_id} => String
3924
+ # * {Types::GetTaskTemplateResponse#id #id} => String
3925
+ # * {Types::GetTaskTemplateResponse#arn #arn} => String
3926
+ # * {Types::GetTaskTemplateResponse#name #name} => String
3927
+ # * {Types::GetTaskTemplateResponse#description #description} => String
3928
+ # * {Types::GetTaskTemplateResponse#contact_flow_id #contact_flow_id} => String
3929
+ # * {Types::GetTaskTemplateResponse#constraints #constraints} => Types::TaskTemplateConstraints
3930
+ # * {Types::GetTaskTemplateResponse#defaults #defaults} => Types::TaskTemplateDefaults
3931
+ # * {Types::GetTaskTemplateResponse#fields #fields} => Array&lt;Types::TaskTemplateField&gt;
3932
+ # * {Types::GetTaskTemplateResponse#status #status} => String
3933
+ # * {Types::GetTaskTemplateResponse#last_modified_time #last_modified_time} => Time
3934
+ # * {Types::GetTaskTemplateResponse#created_time #created_time} => Time
3935
+ # * {Types::GetTaskTemplateResponse#tags #tags} => Hash&lt;String,String&gt;
3936
+ #
3937
+ # @example Request syntax with placeholder values
3938
+ #
3939
+ # resp = client.get_task_template({
3940
+ # instance_id: "InstanceId", # required
3941
+ # task_template_id: "TaskTemplateId", # required
3942
+ # snapshot_version: "SnapshotVersion",
3943
+ # })
3944
+ #
3945
+ # @example Response structure
3946
+ #
3947
+ # resp.instance_id #=> String
3948
+ # resp.id #=> String
3949
+ # resp.arn #=> String
3950
+ # resp.name #=> String
3951
+ # resp.description #=> String
3952
+ # resp.contact_flow_id #=> String
3953
+ # resp.constraints.required_fields #=> Array
3954
+ # resp.constraints.required_fields[0].id.name #=> String
3955
+ # resp.constraints.read_only_fields #=> Array
3956
+ # resp.constraints.read_only_fields[0].id.name #=> String
3957
+ # resp.constraints.invisible_fields #=> Array
3958
+ # resp.constraints.invisible_fields[0].id.name #=> String
3959
+ # resp.defaults.default_field_values #=> Array
3960
+ # resp.defaults.default_field_values[0].id.name #=> String
3961
+ # resp.defaults.default_field_values[0].default_value #=> String
3962
+ # resp.fields #=> Array
3963
+ # resp.fields[0].id.name #=> String
3964
+ # resp.fields[0].description #=> String
3965
+ # resp.fields[0].type #=> String, one of "NAME", "DESCRIPTION", "SCHEDULED_TIME", "QUICK_CONNECT", "URL", "NUMBER", "TEXT", "TEXT_AREA", "DATE_TIME", "BOOLEAN", "SINGLE_SELECT", "EMAIL"
3966
+ # resp.fields[0].single_select_options #=> Array
3967
+ # resp.fields[0].single_select_options[0] #=> String
3968
+ # resp.status #=> String, one of "ACTIVE", "INACTIVE"
3969
+ # resp.last_modified_time #=> Time
3970
+ # resp.created_time #=> Time
3971
+ # resp.tags #=> Hash
3972
+ # resp.tags["TagKey"] #=> String
3973
+ #
3974
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/GetTaskTemplate AWS API Documentation
3975
+ #
3976
+ # @overload get_task_template(params = {})
3977
+ # @param [Hash] params ({})
3978
+ def get_task_template(params = {}, options = {})
3979
+ req = build_request(:get_task_template, params)
3980
+ req.send_request(options)
3981
+ end
3982
+
3682
3983
  # This API is in preview release for Amazon Connect and is subject to
3683
3984
  # change.
3684
3985
  #
@@ -3987,7 +4288,7 @@ module Aws::Connect
3987
4288
  # resp = client.list_contact_references({
3988
4289
  # instance_id: "InstanceId", # required
3989
4290
  # contact_id: "ContactId", # required
3990
- # reference_types: ["URL"], # required, accepts URL, ATTACHMENT
4291
+ # reference_types: ["URL"], # required, accepts URL, ATTACHMENT, NUMBER, STRING, DATE, EMAIL
3991
4292
  # next_token: "NextToken",
3992
4293
  # })
3993
4294
  #
@@ -3999,6 +4300,14 @@ module Aws::Connect
3999
4300
  # resp.reference_summary_list[0].attachment.name #=> String
4000
4301
  # resp.reference_summary_list[0].attachment.value #=> String
4001
4302
  # resp.reference_summary_list[0].attachment.status #=> String, one of "APPROVED", "REJECTED"
4303
+ # resp.reference_summary_list[0].string.name #=> String
4304
+ # resp.reference_summary_list[0].string.value #=> String
4305
+ # resp.reference_summary_list[0].number.name #=> String
4306
+ # resp.reference_summary_list[0].number.value #=> String
4307
+ # resp.reference_summary_list[0].date.name #=> String
4308
+ # resp.reference_summary_list[0].date.value #=> String
4309
+ # resp.reference_summary_list[0].email.name #=> String
4310
+ # resp.reference_summary_list[0].email.value #=> String
4002
4311
  # resp.next_token #=> String
4003
4312
  #
4004
4313
  # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListContactReferences AWS API Documentation
@@ -4158,7 +4467,7 @@ module Aws::Connect
4158
4467
  # @example Response structure
4159
4468
  #
4160
4469
  # resp.attributes #=> Array
4161
- # resp.attributes[0].attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE"
4470
+ # resp.attributes[0].attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE", "HIGH_VOLUME_OUTBOUND"
4162
4471
  # resp.attributes[0].value #=> String
4163
4472
  # resp.next_token #=> String
4164
4473
  #
@@ -5097,6 +5406,72 @@ module Aws::Connect
5097
5406
  req.send_request(options)
5098
5407
  end
5099
5408
 
5409
+ # Lists task templates for the specified Amazon Connect instance.
5410
+ #
5411
+ # @option params [required, String] :instance_id
5412
+ # The identifier of the Amazon Connect instance. You can find the
5413
+ # instanceId in the ARN of the instance.
5414
+ #
5415
+ # @option params [String] :next_token
5416
+ # The token for the next set of results. Use the value returned in the
5417
+ # previous response in the next request to retrieve the next set of
5418
+ # results.
5419
+ #
5420
+ # It is not expected that you set this because the value returned in the
5421
+ # previous response is always null.
5422
+ #
5423
+ # @option params [Integer] :max_results
5424
+ # The maximum number of results to return per page.
5425
+ #
5426
+ # It is not expected that you set this.
5427
+ #
5428
+ # @option params [String] :status
5429
+ # Marks a template as `ACTIVE` or `INACTIVE` for a task to refer to it.
5430
+ # Tasks can only be created from `ACTIVE` templates. If a template is
5431
+ # marked as `INACTIVE`, then a task that refers to this template cannot
5432
+ # be created.
5433
+ #
5434
+ # @option params [String] :name
5435
+ # The name of the task template.
5436
+ #
5437
+ # @return [Types::ListTaskTemplatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5438
+ #
5439
+ # * {Types::ListTaskTemplatesResponse#task_templates #task_templates} => Array&lt;Types::TaskTemplateMetadata&gt;
5440
+ # * {Types::ListTaskTemplatesResponse#next_token #next_token} => String
5441
+ #
5442
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5443
+ #
5444
+ # @example Request syntax with placeholder values
5445
+ #
5446
+ # resp = client.list_task_templates({
5447
+ # instance_id: "InstanceId", # required
5448
+ # next_token: "NextToken",
5449
+ # max_results: 1,
5450
+ # status: "ACTIVE", # accepts ACTIVE, INACTIVE
5451
+ # name: "TaskTemplateName",
5452
+ # })
5453
+ #
5454
+ # @example Response structure
5455
+ #
5456
+ # resp.task_templates #=> Array
5457
+ # resp.task_templates[0].id #=> String
5458
+ # resp.task_templates[0].arn #=> String
5459
+ # resp.task_templates[0].name #=> String
5460
+ # resp.task_templates[0].description #=> String
5461
+ # resp.task_templates[0].status #=> String, one of "ACTIVE", "INACTIVE"
5462
+ # resp.task_templates[0].last_modified_time #=> Time
5463
+ # resp.task_templates[0].created_time #=> Time
5464
+ # resp.next_token #=> String
5465
+ #
5466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListTaskTemplates AWS API Documentation
5467
+ #
5468
+ # @overload list_task_templates(params = {})
5469
+ # @param [Hash] params ({})
5470
+ def list_task_templates(params = {}, options = {})
5471
+ req = build_request(:list_task_templates, params)
5472
+ req.send_request(options)
5473
+ end
5474
+
5100
5475
  # Lists the use cases for the integration association.
5101
5476
  #
5102
5477
  # @option params [required, String] :instance_id
@@ -5965,7 +6340,7 @@ module Aws::Connect
5965
6340
  # @option params [String] :previous_contact_id
5966
6341
  # The identifier of the previous chat, voice, or task contact.
5967
6342
  #
5968
- # @option params [required, String] :contact_flow_id
6343
+ # @option params [String] :contact_flow_id
5969
6344
  # The identifier of the contact flow for initiating the tasks. To see
5970
6345
  # the ContactFlowId in the Amazon Connect console user interface, on the
5971
6346
  # navigation menu go to **Routing**, **Contact Flows**. Choose the
@@ -6008,6 +6383,12 @@ module Aws::Connect
6008
6383
  # the inbound contact flow. The scheduled time cannot be in the past. It
6009
6384
  # must be within up to 6 days in future.
6010
6385
  #
6386
+ # @option params [String] :task_template_id
6387
+ # A unique identifier for the task template.
6388
+ #
6389
+ # @option params [String] :quick_connect_id
6390
+ # The identifier for the quick connect.
6391
+ #
6011
6392
  # @return [Types::StartTaskContactResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6012
6393
  #
6013
6394
  # * {Types::StartTaskContactResponse#contact_id #contact_id} => String
@@ -6017,7 +6398,7 @@ module Aws::Connect
6017
6398
  # resp = client.start_task_contact({
6018
6399
  # instance_id: "InstanceId", # required
6019
6400
  # previous_contact_id: "ContactId",
6020
- # contact_flow_id: "ContactFlowId", # required
6401
+ # contact_flow_id: "ContactFlowId",
6021
6402
  # attributes: {
6022
6403
  # "AttributeName" => "AttributeValue",
6023
6404
  # },
@@ -6025,12 +6406,14 @@ module Aws::Connect
6025
6406
  # references: {
6026
6407
  # "ReferenceKey" => {
6027
6408
  # value: "ReferenceValue", # required
6028
- # type: "URL", # required, accepts URL, ATTACHMENT
6409
+ # type: "URL", # required, accepts URL, ATTACHMENT, NUMBER, STRING, DATE, EMAIL
6029
6410
  # },
6030
6411
  # },
6031
6412
  # description: "Description",
6032
6413
  # client_token: "ClientToken",
6033
6414
  # scheduled_time: Time.now,
6415
+ # task_template_id: "TaskTemplateId",
6416
+ # quick_connect_id: "QuickConnectId",
6034
6417
  # })
6035
6418
  #
6036
6419
  # @example Response structure
@@ -6200,8 +6583,8 @@ module Aws::Connect
6200
6583
  # Adds the specified tags to the specified resource.
6201
6584
  #
6202
6585
  # The supported resource types are users, routing profiles, queues,
6203
- # quick connects, contact flows, agent status, hours of operation, and
6204
- # phone number.
6586
+ # quick connects, contact flows, agent status, hours of operation, phone
6587
+ # number, security profiles, and task templates.
6205
6588
  #
6206
6589
  # For sample policies that use tags, see [Amazon Connect Identity-Based
6207
6590
  # Policy Examples][1] in the *Amazon Connect Administrator Guide*.
@@ -6237,6 +6620,79 @@ module Aws::Connect
6237
6620
  req.send_request(options)
6238
6621
  end
6239
6622
 
6623
+ # Transfers contacts from one agent or queue to another agent or queue
6624
+ # at any point after a contact is created. You can transfer a contact to
6625
+ # another queue by providing the contact flow which orchestrates the
6626
+ # contact to the destination queue. This gives you more control over
6627
+ # contact handling and helps you adhere to the service level agreement
6628
+ # (SLA) guaranteed to your customers.
6629
+ #
6630
+ # Note the following requirements:
6631
+ #
6632
+ # * Transfer is supported for only `TASK` contacts.
6633
+ #
6634
+ # * Do not use both `QueueId` and `UserId` in the same call.
6635
+ #
6636
+ # * The following contact flow types are supported: Inbound contact
6637
+ # flow, Transfer to agent flow, and Transfer to queue flow.
6638
+ #
6639
+ # * The `TransferContact` API can be called only on active contacts.
6640
+ #
6641
+ # * A contact cannot be transferred more than 11 times.
6642
+ #
6643
+ # @option params [required, String] :instance_id
6644
+ # The identifier of the Amazon Connect instance. You can find the
6645
+ # instanceId in the ARN of the instance.
6646
+ #
6647
+ # @option params [required, String] :contact_id
6648
+ # The identifier of the contact in this instance of Amazon Connect.
6649
+ #
6650
+ # @option params [String] :queue_id
6651
+ # The identifier for the queue.
6652
+ #
6653
+ # @option params [String] :user_id
6654
+ # The identifier for the user.
6655
+ #
6656
+ # @option params [required, String] :contact_flow_id
6657
+ # The identifier of the contact flow.
6658
+ #
6659
+ # @option params [String] :client_token
6660
+ # A unique, case-sensitive identifier that you provide to ensure the
6661
+ # idempotency of the request.
6662
+ #
6663
+ # **A suitable default value is auto-generated.** You should normally
6664
+ # not need to pass this option.**
6665
+ #
6666
+ # @return [Types::TransferContactResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6667
+ #
6668
+ # * {Types::TransferContactResponse#contact_id #contact_id} => String
6669
+ # * {Types::TransferContactResponse#contact_arn #contact_arn} => String
6670
+ #
6671
+ # @example Request syntax with placeholder values
6672
+ #
6673
+ # resp = client.transfer_contact({
6674
+ # instance_id: "InstanceId", # required
6675
+ # contact_id: "ContactId", # required
6676
+ # queue_id: "QueueId",
6677
+ # user_id: "AgentResourceId",
6678
+ # contact_flow_id: "ContactFlowId", # required
6679
+ # client_token: "ClientToken",
6680
+ # })
6681
+ #
6682
+ # @example Response structure
6683
+ #
6684
+ # resp.contact_id #=> String
6685
+ # resp.contact_arn #=> String
6686
+ #
6687
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/TransferContact AWS API Documentation
6688
+ #
6689
+ # @overload transfer_contact(params = {})
6690
+ # @param [Hash] params ({})
6691
+ def transfer_contact(params = {}, options = {})
6692
+ req = build_request(:transfer_contact, params)
6693
+ req.send_request(options)
6694
+ end
6695
+
6240
6696
  # Removes the specified tags from the specified resource.
6241
6697
  #
6242
6698
  # @option params [required, String] :resource_arn
@@ -6338,7 +6794,7 @@ module Aws::Connect
6338
6794
  # The description of the contact.
6339
6795
  #
6340
6796
  # @option params [Hash<String,Types::Reference>] :references
6341
- # A formatted URL that is shown to an agent in the Contact Control Panel
6797
+ # Well-formed data on contact, shown to agents on Contact Control Panel
6342
6798
  # (CCP).
6343
6799
  #
6344
6800
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
@@ -6353,7 +6809,7 @@ module Aws::Connect
6353
6809
  # references: {
6354
6810
  # "ReferenceKey" => {
6355
6811
  # value: "ReferenceValue", # required
6356
- # type: "URL", # required, accepts URL, ATTACHMENT
6812
+ # type: "URL", # required, accepts URL, ATTACHMENT, NUMBER, STRING, DATE, EMAIL
6357
6813
  # },
6358
6814
  # },
6359
6815
  # })
@@ -6748,7 +7204,7 @@ module Aws::Connect
6748
7204
  #
6749
7205
  # resp = client.update_instance_attribute({
6750
7206
  # instance_id: "InstanceId", # required
6751
- # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE
7207
+ # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE, HIGH_VOLUME_OUTBOUND
6752
7208
  # value: "InstanceAttributeValue", # required
6753
7209
  # })
6754
7210
  #
@@ -7321,6 +7777,148 @@ module Aws::Connect
7321
7777
  req.send_request(options)
7322
7778
  end
7323
7779
 
7780
+ # Updates details about a specific task template in the specified Amazon
7781
+ # Connect instance. This operation does not support partial updates.
7782
+ # Instead it does a full update of template content.
7783
+ #
7784
+ # @option params [required, String] :task_template_id
7785
+ # A unique identifier for the task template.
7786
+ #
7787
+ # @option params [required, String] :instance_id
7788
+ # The identifier of the Amazon Connect instance. You can find the
7789
+ # instanceId in the ARN of the instance.
7790
+ #
7791
+ # @option params [String] :name
7792
+ # The name of the task template.
7793
+ #
7794
+ # @option params [String] :description
7795
+ # The description of the task template.
7796
+ #
7797
+ # @option params [String] :contact_flow_id
7798
+ # The identifier of the flow that runs by default when a task is created
7799
+ # by referencing this template.
7800
+ #
7801
+ # @option params [Types::TaskTemplateConstraints] :constraints
7802
+ # Constraints that are applicable to the fields listed.
7803
+ #
7804
+ # @option params [Types::TaskTemplateDefaults] :defaults
7805
+ # The default values for fields when a task is created by referencing
7806
+ # this template.
7807
+ #
7808
+ # @option params [String] :status
7809
+ # Marks a template as `ACTIVE` or `INACTIVE` for a task to refer to it.
7810
+ # Tasks can only be created from `ACTIVE` templates. If a template is
7811
+ # marked as `INACTIVE`, then a task that refers to this template cannot
7812
+ # be created.
7813
+ #
7814
+ # @option params [Array<Types::TaskTemplateField>] :fields
7815
+ # Fields that are part of the template.
7816
+ #
7817
+ # @return [Types::UpdateTaskTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7818
+ #
7819
+ # * {Types::UpdateTaskTemplateResponse#instance_id #instance_id} => String
7820
+ # * {Types::UpdateTaskTemplateResponse#id #id} => String
7821
+ # * {Types::UpdateTaskTemplateResponse#arn #arn} => String
7822
+ # * {Types::UpdateTaskTemplateResponse#name #name} => String
7823
+ # * {Types::UpdateTaskTemplateResponse#description #description} => String
7824
+ # * {Types::UpdateTaskTemplateResponse#contact_flow_id #contact_flow_id} => String
7825
+ # * {Types::UpdateTaskTemplateResponse#constraints #constraints} => Types::TaskTemplateConstraints
7826
+ # * {Types::UpdateTaskTemplateResponse#defaults #defaults} => Types::TaskTemplateDefaults
7827
+ # * {Types::UpdateTaskTemplateResponse#fields #fields} => Array&lt;Types::TaskTemplateField&gt;
7828
+ # * {Types::UpdateTaskTemplateResponse#status #status} => String
7829
+ # * {Types::UpdateTaskTemplateResponse#last_modified_time #last_modified_time} => Time
7830
+ # * {Types::UpdateTaskTemplateResponse#created_time #created_time} => Time
7831
+ #
7832
+ # @example Request syntax with placeholder values
7833
+ #
7834
+ # resp = client.update_task_template({
7835
+ # task_template_id: "TaskTemplateId", # required
7836
+ # instance_id: "InstanceId", # required
7837
+ # name: "TaskTemplateName",
7838
+ # description: "TaskTemplateDescription",
7839
+ # contact_flow_id: "ContactFlowId",
7840
+ # constraints: {
7841
+ # required_fields: [
7842
+ # {
7843
+ # id: {
7844
+ # name: "TaskTemplateFieldName",
7845
+ # },
7846
+ # },
7847
+ # ],
7848
+ # read_only_fields: [
7849
+ # {
7850
+ # id: {
7851
+ # name: "TaskTemplateFieldName",
7852
+ # },
7853
+ # },
7854
+ # ],
7855
+ # invisible_fields: [
7856
+ # {
7857
+ # id: {
7858
+ # name: "TaskTemplateFieldName",
7859
+ # },
7860
+ # },
7861
+ # ],
7862
+ # },
7863
+ # defaults: {
7864
+ # default_field_values: [
7865
+ # {
7866
+ # id: {
7867
+ # name: "TaskTemplateFieldName",
7868
+ # },
7869
+ # default_value: "TaskTemplateFieldValue",
7870
+ # },
7871
+ # ],
7872
+ # },
7873
+ # status: "ACTIVE", # accepts ACTIVE, INACTIVE
7874
+ # fields: [
7875
+ # {
7876
+ # id: { # required
7877
+ # name: "TaskTemplateFieldName",
7878
+ # },
7879
+ # description: "TaskTemplateFieldDescription",
7880
+ # type: "NAME", # accepts NAME, DESCRIPTION, SCHEDULED_TIME, QUICK_CONNECT, URL, NUMBER, TEXT, TEXT_AREA, DATE_TIME, BOOLEAN, SINGLE_SELECT, EMAIL
7881
+ # single_select_options: ["TaskTemplateSingleSelectOption"],
7882
+ # },
7883
+ # ],
7884
+ # })
7885
+ #
7886
+ # @example Response structure
7887
+ #
7888
+ # resp.instance_id #=> String
7889
+ # resp.id #=> String
7890
+ # resp.arn #=> String
7891
+ # resp.name #=> String
7892
+ # resp.description #=> String
7893
+ # resp.contact_flow_id #=> String
7894
+ # resp.constraints.required_fields #=> Array
7895
+ # resp.constraints.required_fields[0].id.name #=> String
7896
+ # resp.constraints.read_only_fields #=> Array
7897
+ # resp.constraints.read_only_fields[0].id.name #=> String
7898
+ # resp.constraints.invisible_fields #=> Array
7899
+ # resp.constraints.invisible_fields[0].id.name #=> String
7900
+ # resp.defaults.default_field_values #=> Array
7901
+ # resp.defaults.default_field_values[0].id.name #=> String
7902
+ # resp.defaults.default_field_values[0].default_value #=> String
7903
+ # resp.fields #=> Array
7904
+ # resp.fields[0].id.name #=> String
7905
+ # resp.fields[0].description #=> String
7906
+ # resp.fields[0].type #=> String, one of "NAME", "DESCRIPTION", "SCHEDULED_TIME", "QUICK_CONNECT", "URL", "NUMBER", "TEXT", "TEXT_AREA", "DATE_TIME", "BOOLEAN", "SINGLE_SELECT", "EMAIL"
7907
+ # resp.fields[0].single_select_options #=> Array
7908
+ # resp.fields[0].single_select_options[0] #=> String
7909
+ # resp.status #=> String, one of "ACTIVE", "INACTIVE"
7910
+ # resp.last_modified_time #=> Time
7911
+ # resp.created_time #=> Time
7912
+ #
7913
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateTaskTemplate AWS API Documentation
7914
+ #
7915
+ # @overload update_task_template(params = {})
7916
+ # @param [Hash] params ({})
7917
+ def update_task_template(params = {}, options = {})
7918
+ req = build_request(:update_task_template, params)
7919
+ req.send_request(options)
7920
+ end
7921
+
7324
7922
  # Assigns the specified hierarchy group to the specified user.
7325
7923
  #
7326
7924
  # @option params [String] :hierarchy_group_id
@@ -7585,7 +8183,7 @@ module Aws::Connect
7585
8183
  params: params,
7586
8184
  config: config)
7587
8185
  context[:gem_name] = 'aws-sdk-connect'
7588
- context[:gem_version] = '1.71.0'
8186
+ context[:gem_version] = '1.74.0'
7589
8187
  Seahorse::Client::Request.new(handlers, context)
7590
8188
  end
7591
8189