aws-sdk-connect 1.70.0 → 1.73.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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
@@ -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
@@ -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
@@ -5248,6 +5623,47 @@ module Aws::Connect
5248
5623
  req.send_request(options)
5249
5624
  end
5250
5625
 
5626
+ # Changes the current status of a user or agent in Amazon Connect. If
5627
+ # the agent is currently handling a contact, this sets the agent's next
5628
+ # status.
5629
+ #
5630
+ # For more information, see [Agent status][1] and [Set your next
5631
+ # status][2] in the *Amazon Connect Administrator Guide*.
5632
+ #
5633
+ #
5634
+ #
5635
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/metrics-agent-status.html
5636
+ # [2]: https://docs.aws.amazon.com/connect/latest/adminguide/set-next-status.html
5637
+ #
5638
+ # @option params [required, String] :user_id
5639
+ # The identifier of the user.
5640
+ #
5641
+ # @option params [required, String] :instance_id
5642
+ # The identifier of the Amazon Connect instance. You can find the
5643
+ # instanceId in the ARN of the instance.
5644
+ #
5645
+ # @option params [required, String] :agent_status_id
5646
+ # The identifier of the agent status.
5647
+ #
5648
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5649
+ #
5650
+ # @example Request syntax with placeholder values
5651
+ #
5652
+ # resp = client.put_user_status({
5653
+ # user_id: "UserId", # required
5654
+ # instance_id: "InstanceId", # required
5655
+ # agent_status_id: "AgentStatusId", # required
5656
+ # })
5657
+ #
5658
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/PutUserStatus AWS API Documentation
5659
+ #
5660
+ # @overload put_user_status(params = {})
5661
+ # @param [Hash] params ({})
5662
+ def put_user_status(params = {}, options = {})
5663
+ req = build_request(:put_user_status, params)
5664
+ req.send_request(options)
5665
+ end
5666
+
5251
5667
  # Releases a phone number previously claimed to an Amazon Connect
5252
5668
  # instance.
5253
5669
  #
@@ -5924,7 +6340,7 @@ module Aws::Connect
5924
6340
  # @option params [String] :previous_contact_id
5925
6341
  # The identifier of the previous chat, voice, or task contact.
5926
6342
  #
5927
- # @option params [required, String] :contact_flow_id
6343
+ # @option params [String] :contact_flow_id
5928
6344
  # The identifier of the contact flow for initiating the tasks. To see
5929
6345
  # the ContactFlowId in the Amazon Connect console user interface, on the
5930
6346
  # navigation menu go to **Routing**, **Contact Flows**. Choose the
@@ -5967,6 +6383,12 @@ module Aws::Connect
5967
6383
  # the inbound contact flow. The scheduled time cannot be in the past. It
5968
6384
  # must be within up to 6 days in future.
5969
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
+ #
5970
6392
  # @return [Types::StartTaskContactResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5971
6393
  #
5972
6394
  # * {Types::StartTaskContactResponse#contact_id #contact_id} => String
@@ -5976,7 +6398,7 @@ module Aws::Connect
5976
6398
  # resp = client.start_task_contact({
5977
6399
  # instance_id: "InstanceId", # required
5978
6400
  # previous_contact_id: "ContactId",
5979
- # contact_flow_id: "ContactFlowId", # required
6401
+ # contact_flow_id: "ContactFlowId",
5980
6402
  # attributes: {
5981
6403
  # "AttributeName" => "AttributeValue",
5982
6404
  # },
@@ -5984,12 +6406,14 @@ module Aws::Connect
5984
6406
  # references: {
5985
6407
  # "ReferenceKey" => {
5986
6408
  # value: "ReferenceValue", # required
5987
- # type: "URL", # required, accepts URL, ATTACHMENT
6409
+ # type: "URL", # required, accepts URL, ATTACHMENT, NUMBER, STRING, DATE, EMAIL
5988
6410
  # },
5989
6411
  # },
5990
6412
  # description: "Description",
5991
6413
  # client_token: "ClientToken",
5992
6414
  # scheduled_time: Time.now,
6415
+ # task_template_id: "TaskTemplateId",
6416
+ # quick_connect_id: "QuickConnectId",
5993
6417
  # })
5994
6418
  #
5995
6419
  # @example Response structure
@@ -6159,8 +6583,8 @@ module Aws::Connect
6159
6583
  # Adds the specified tags to the specified resource.
6160
6584
  #
6161
6585
  # The supported resource types are users, routing profiles, queues,
6162
- # quick connects, contact flows, agent status, hours of operation, and
6163
- # phone number.
6586
+ # quick connects, contact flows, agent status, hours of operation, phone
6587
+ # number, security profiles, and task templates.
6164
6588
  #
6165
6589
  # For sample policies that use tags, see [Amazon Connect Identity-Based
6166
6590
  # Policy Examples][1] in the *Amazon Connect Administrator Guide*.
@@ -6196,6 +6620,79 @@ module Aws::Connect
6196
6620
  req.send_request(options)
6197
6621
  end
6198
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
+
6199
6696
  # Removes the specified tags from the specified resource.
6200
6697
  #
6201
6698
  # @option params [required, String] :resource_arn
@@ -6297,7 +6794,7 @@ module Aws::Connect
6297
6794
  # The description of the contact.
6298
6795
  #
6299
6796
  # @option params [Hash<String,Types::Reference>] :references
6300
- # 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
6301
6798
  # (CCP).
6302
6799
  #
6303
6800
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
@@ -6312,7 +6809,7 @@ module Aws::Connect
6312
6809
  # references: {
6313
6810
  # "ReferenceKey" => {
6314
6811
  # value: "ReferenceValue", # required
6315
- # type: "URL", # required, accepts URL, ATTACHMENT
6812
+ # type: "URL", # required, accepts URL, ATTACHMENT, NUMBER, STRING, DATE, EMAIL
6316
6813
  # },
6317
6814
  # },
6318
6815
  # })
@@ -7280,6 +7777,148 @@ module Aws::Connect
7280
7777
  req.send_request(options)
7281
7778
  end
7282
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
+
7283
7922
  # Assigns the specified hierarchy group to the specified user.
7284
7923
  #
7285
7924
  # @option params [String] :hierarchy_group_id
@@ -7544,7 +8183,7 @@ module Aws::Connect
7544
8183
  params: params,
7545
8184
  config: config)
7546
8185
  context[:gem_name] = 'aws-sdk-connect'
7547
- context[:gem_version] = '1.70.0'
8186
+ context[:gem_version] = '1.73.0'
7548
8187
  Seahorse::Client::Request.new(handlers, context)
7549
8188
  end
7550
8189