aws-sdk-connect 1.69.0 → 1.72.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
@@ -2408,7 +2547,7 @@ module Aws::Connect
2408
2547
  # Amazon Connect instance
2409
2548
  #
2410
2549
  # @option params [required, String] :phone_number_id
2411
- # The identifier of the phone number.
2550
+ # A unique identifier for the phone number.
2412
2551
  #
2413
2552
  # @return [Types::DescribePhoneNumberResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2414
2553
  #
@@ -2987,7 +3126,7 @@ module Aws::Connect
2987
3126
  # your Amazon Connect instance, if a contact flow association exists.
2988
3127
  #
2989
3128
  # @option params [required, String] :phone_number_id
2990
- # The identifier of the phone number.
3129
+ # A unique identifier for the phone number.
2991
3130
  #
2992
3131
  # @option params [required, String] :instance_id
2993
3132
  # The identifier of the Amazon Connect instance. You can find the
@@ -3679,6 +3818,82 @@ module Aws::Connect
3679
3818
  req.send_request(options)
3680
3819
  end
3681
3820
 
3821
+ # Gets details about a specific task template in the specified Amazon
3822
+ # Connect instance.
3823
+ #
3824
+ # @option params [required, String] :instance_id
3825
+ # The identifier of the Amazon Connect instance. You can find the
3826
+ # instanceId in the ARN of the instance.
3827
+ #
3828
+ # @option params [required, String] :task_template_id
3829
+ # A unique identifier for the task template.
3830
+ #
3831
+ # @option params [String] :snapshot_version
3832
+ # The system generated version of a task template that is associated
3833
+ # with a task, when the task is created.
3834
+ #
3835
+ # @return [Types::GetTaskTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3836
+ #
3837
+ # * {Types::GetTaskTemplateResponse#instance_id #instance_id} => String
3838
+ # * {Types::GetTaskTemplateResponse#id #id} => String
3839
+ # * {Types::GetTaskTemplateResponse#arn #arn} => String
3840
+ # * {Types::GetTaskTemplateResponse#name #name} => String
3841
+ # * {Types::GetTaskTemplateResponse#description #description} => String
3842
+ # * {Types::GetTaskTemplateResponse#contact_flow_id #contact_flow_id} => String
3843
+ # * {Types::GetTaskTemplateResponse#constraints #constraints} => Types::TaskTemplateConstraints
3844
+ # * {Types::GetTaskTemplateResponse#defaults #defaults} => Types::TaskTemplateDefaults
3845
+ # * {Types::GetTaskTemplateResponse#fields #fields} => Array&lt;Types::TaskTemplateField&gt;
3846
+ # * {Types::GetTaskTemplateResponse#status #status} => String
3847
+ # * {Types::GetTaskTemplateResponse#last_modified_time #last_modified_time} => Time
3848
+ # * {Types::GetTaskTemplateResponse#created_time #created_time} => Time
3849
+ # * {Types::GetTaskTemplateResponse#tags #tags} => Hash&lt;String,String&gt;
3850
+ #
3851
+ # @example Request syntax with placeholder values
3852
+ #
3853
+ # resp = client.get_task_template({
3854
+ # instance_id: "InstanceId", # required
3855
+ # task_template_id: "TaskTemplateId", # required
3856
+ # snapshot_version: "SnapshotVersion",
3857
+ # })
3858
+ #
3859
+ # @example Response structure
3860
+ #
3861
+ # resp.instance_id #=> String
3862
+ # resp.id #=> String
3863
+ # resp.arn #=> String
3864
+ # resp.name #=> String
3865
+ # resp.description #=> String
3866
+ # resp.contact_flow_id #=> String
3867
+ # resp.constraints.required_fields #=> Array
3868
+ # resp.constraints.required_fields[0].id.name #=> String
3869
+ # resp.constraints.read_only_fields #=> Array
3870
+ # resp.constraints.read_only_fields[0].id.name #=> String
3871
+ # resp.constraints.invisible_fields #=> Array
3872
+ # resp.constraints.invisible_fields[0].id.name #=> String
3873
+ # resp.defaults.default_field_values #=> Array
3874
+ # resp.defaults.default_field_values[0].id.name #=> String
3875
+ # resp.defaults.default_field_values[0].default_value #=> String
3876
+ # resp.fields #=> Array
3877
+ # resp.fields[0].id.name #=> String
3878
+ # resp.fields[0].description #=> String
3879
+ # resp.fields[0].type #=> String, one of "NAME", "DESCRIPTION", "SCHEDULED_TIME", "QUICK_CONNECT", "URL", "NUMBER", "TEXT", "TEXT_AREA", "DATE_TIME", "BOOLEAN", "SINGLE_SELECT", "EMAIL"
3880
+ # resp.fields[0].single_select_options #=> Array
3881
+ # resp.fields[0].single_select_options[0] #=> String
3882
+ # resp.status #=> String, one of "ACTIVE", "INACTIVE"
3883
+ # resp.last_modified_time #=> Time
3884
+ # resp.created_time #=> Time
3885
+ # resp.tags #=> Hash
3886
+ # resp.tags["TagKey"] #=> String
3887
+ #
3888
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/GetTaskTemplate AWS API Documentation
3889
+ #
3890
+ # @overload get_task_template(params = {})
3891
+ # @param [Hash] params ({})
3892
+ def get_task_template(params = {}, options = {})
3893
+ req = build_request(:get_task_template, params)
3894
+ req.send_request(options)
3895
+ end
3896
+
3682
3897
  # This API is in preview release for Amazon Connect and is subject to
3683
3898
  # change.
3684
3899
  #
@@ -3987,7 +4202,7 @@ module Aws::Connect
3987
4202
  # resp = client.list_contact_references({
3988
4203
  # instance_id: "InstanceId", # required
3989
4204
  # contact_id: "ContactId", # required
3990
- # reference_types: ["URL"], # required, accepts URL, ATTACHMENT
4205
+ # reference_types: ["URL"], # required, accepts URL, ATTACHMENT, NUMBER, STRING, DATE, EMAIL
3991
4206
  # next_token: "NextToken",
3992
4207
  # })
3993
4208
  #
@@ -3999,6 +4214,14 @@ module Aws::Connect
3999
4214
  # resp.reference_summary_list[0].attachment.name #=> String
4000
4215
  # resp.reference_summary_list[0].attachment.value #=> String
4001
4216
  # resp.reference_summary_list[0].attachment.status #=> String, one of "APPROVED", "REJECTED"
4217
+ # resp.reference_summary_list[0].string.name #=> String
4218
+ # resp.reference_summary_list[0].string.value #=> String
4219
+ # resp.reference_summary_list[0].number.name #=> String
4220
+ # resp.reference_summary_list[0].number.value #=> String
4221
+ # resp.reference_summary_list[0].date.name #=> String
4222
+ # resp.reference_summary_list[0].date.value #=> String
4223
+ # resp.reference_summary_list[0].email.name #=> String
4224
+ # resp.reference_summary_list[0].email.value #=> String
4002
4225
  # resp.next_token #=> String
4003
4226
  #
4004
4227
  # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListContactReferences AWS API Documentation
@@ -5097,6 +5320,72 @@ module Aws::Connect
5097
5320
  req.send_request(options)
5098
5321
  end
5099
5322
 
5323
+ # Lists task templates for the specified Amazon Connect instance.
5324
+ #
5325
+ # @option params [required, String] :instance_id
5326
+ # The identifier of the Amazon Connect instance. You can find the
5327
+ # instanceId in the ARN of the instance.
5328
+ #
5329
+ # @option params [String] :next_token
5330
+ # The token for the next set of results. Use the value returned in the
5331
+ # previous response in the next request to retrieve the next set of
5332
+ # results.
5333
+ #
5334
+ # It is not expected that you set this because the value returned in the
5335
+ # previous response is always null.
5336
+ #
5337
+ # @option params [Integer] :max_results
5338
+ # The maximum number of results to return per page.
5339
+ #
5340
+ # It is not expected that you set this.
5341
+ #
5342
+ # @option params [String] :status
5343
+ # Marks a template as `ACTIVE` or `INACTIVE` for a task to refer to it.
5344
+ # Tasks can only be created from `ACTIVE` templates. If a template is
5345
+ # marked as `INACTIVE`, then a task that refers to this template cannot
5346
+ # be created.
5347
+ #
5348
+ # @option params [String] :name
5349
+ # The name of the task template.
5350
+ #
5351
+ # @return [Types::ListTaskTemplatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5352
+ #
5353
+ # * {Types::ListTaskTemplatesResponse#task_templates #task_templates} => Array&lt;Types::TaskTemplateMetadata&gt;
5354
+ # * {Types::ListTaskTemplatesResponse#next_token #next_token} => String
5355
+ #
5356
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5357
+ #
5358
+ # @example Request syntax with placeholder values
5359
+ #
5360
+ # resp = client.list_task_templates({
5361
+ # instance_id: "InstanceId", # required
5362
+ # next_token: "NextToken",
5363
+ # max_results: 1,
5364
+ # status: "ACTIVE", # accepts ACTIVE, INACTIVE
5365
+ # name: "TaskTemplateName",
5366
+ # })
5367
+ #
5368
+ # @example Response structure
5369
+ #
5370
+ # resp.task_templates #=> Array
5371
+ # resp.task_templates[0].id #=> String
5372
+ # resp.task_templates[0].arn #=> String
5373
+ # resp.task_templates[0].name #=> String
5374
+ # resp.task_templates[0].description #=> String
5375
+ # resp.task_templates[0].status #=> String, one of "ACTIVE", "INACTIVE"
5376
+ # resp.task_templates[0].last_modified_time #=> Time
5377
+ # resp.task_templates[0].created_time #=> Time
5378
+ # resp.next_token #=> String
5379
+ #
5380
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListTaskTemplates AWS API Documentation
5381
+ #
5382
+ # @overload list_task_templates(params = {})
5383
+ # @param [Hash] params ({})
5384
+ def list_task_templates(params = {}, options = {})
5385
+ req = build_request(:list_task_templates, params)
5386
+ req.send_request(options)
5387
+ end
5388
+
5100
5389
  # Lists the use cases for the integration association.
5101
5390
  #
5102
5391
  # @option params [required, String] :instance_id
@@ -5248,11 +5537,52 @@ module Aws::Connect
5248
5537
  req.send_request(options)
5249
5538
  end
5250
5539
 
5540
+ # Changes the current status of a user or agent in Amazon Connect. If
5541
+ # the agent is currently handling a contact, this sets the agent's next
5542
+ # status.
5543
+ #
5544
+ # For more information, see [Agent status][1] and [Set your next
5545
+ # status][2] in the *Amazon Connect Administrator Guide*.
5546
+ #
5547
+ #
5548
+ #
5549
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/metrics-agent-status.html
5550
+ # [2]: https://docs.aws.amazon.com/connect/latest/adminguide/set-next-status.html
5551
+ #
5552
+ # @option params [required, String] :user_id
5553
+ # The identifier of the user.
5554
+ #
5555
+ # @option params [required, String] :instance_id
5556
+ # The identifier of the Amazon Connect instance. You can find the
5557
+ # instanceId in the ARN of the instance.
5558
+ #
5559
+ # @option params [required, String] :agent_status_id
5560
+ # The identifier of the agent status.
5561
+ #
5562
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5563
+ #
5564
+ # @example Request syntax with placeholder values
5565
+ #
5566
+ # resp = client.put_user_status({
5567
+ # user_id: "UserId", # required
5568
+ # instance_id: "InstanceId", # required
5569
+ # agent_status_id: "AgentStatusId", # required
5570
+ # })
5571
+ #
5572
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/PutUserStatus AWS API Documentation
5573
+ #
5574
+ # @overload put_user_status(params = {})
5575
+ # @param [Hash] params ({})
5576
+ def put_user_status(params = {}, options = {})
5577
+ req = build_request(:put_user_status, params)
5578
+ req.send_request(options)
5579
+ end
5580
+
5251
5581
  # Releases a phone number previously claimed to an Amazon Connect
5252
5582
  # instance.
5253
5583
  #
5254
5584
  # @option params [required, String] :phone_number_id
5255
- # The identifier of the phone number.
5585
+ # A unique identifier for the phone number.
5256
5586
  #
5257
5587
  # @option params [String] :client_token
5258
5588
  # A unique, case-sensitive identifier that you provide to ensure the
@@ -5374,6 +5704,116 @@ module Aws::Connect
5374
5704
  req.send_request(options)
5375
5705
  end
5376
5706
 
5707
+ # Searches users in an Amazon Connect instance, with optional filtering.
5708
+ #
5709
+ # @option params [String] :instance_id
5710
+ # The identifier of the Amazon Connect instance. You can find the
5711
+ # instanceId in the ARN of the instance.
5712
+ #
5713
+ # @option params [String] :next_token
5714
+ # The token for the next set of results. Use the value returned in the
5715
+ # previous response in the next request to retrieve the next set of
5716
+ # results.
5717
+ #
5718
+ # @option params [Integer] :max_results
5719
+ # The maximum number of results to return per page.
5720
+ #
5721
+ # @option params [Types::UserSearchFilter] :search_filter
5722
+ # Filters to be applied to search results.
5723
+ #
5724
+ # @option params [Types::UserSearchCriteria] :search_criteria
5725
+ # The search criteria to be used to return users.
5726
+ #
5727
+ # @return [Types::SearchUsersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5728
+ #
5729
+ # * {Types::SearchUsersResponse#users #users} => Array&lt;Types::UserSearchSummary&gt;
5730
+ # * {Types::SearchUsersResponse#next_token #next_token} => String
5731
+ # * {Types::SearchUsersResponse#approximate_total_count #approximate_total_count} => Integer
5732
+ #
5733
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5734
+ #
5735
+ # @example Request syntax with placeholder values
5736
+ #
5737
+ # resp = client.search_users({
5738
+ # instance_id: "InstanceId",
5739
+ # next_token: "NextToken2500",
5740
+ # max_results: 1,
5741
+ # search_filter: {
5742
+ # tag_filter: {
5743
+ # or_conditions: [
5744
+ # [
5745
+ # {
5746
+ # tag_key: "String",
5747
+ # tag_value: "String",
5748
+ # },
5749
+ # ],
5750
+ # ],
5751
+ # and_conditions: [
5752
+ # {
5753
+ # tag_key: "String",
5754
+ # tag_value: "String",
5755
+ # },
5756
+ # ],
5757
+ # tag_condition: {
5758
+ # tag_key: "String",
5759
+ # tag_value: "String",
5760
+ # },
5761
+ # },
5762
+ # },
5763
+ # search_criteria: {
5764
+ # or_conditions: [
5765
+ # {
5766
+ # # recursive UserSearchCriteria
5767
+ # },
5768
+ # ],
5769
+ # and_conditions: [
5770
+ # {
5771
+ # # recursive UserSearchCriteria
5772
+ # },
5773
+ # ],
5774
+ # string_condition: {
5775
+ # field_name: "String",
5776
+ # value: "String",
5777
+ # comparison_type: "STARTS_WITH", # accepts STARTS_WITH, CONTAINS, EXACT
5778
+ # },
5779
+ # hierarchy_group_condition: {
5780
+ # value: "String",
5781
+ # hierarchy_group_match_type: "EXACT", # accepts EXACT, WITH_CHILD_GROUPS
5782
+ # },
5783
+ # },
5784
+ # })
5785
+ #
5786
+ # @example Response structure
5787
+ #
5788
+ # resp.users #=> Array
5789
+ # resp.users[0].arn #=> String
5790
+ # resp.users[0].directory_user_id #=> String
5791
+ # resp.users[0].hierarchy_group_id #=> String
5792
+ # resp.users[0].id #=> String
5793
+ # resp.users[0].identity_info.first_name #=> String
5794
+ # resp.users[0].identity_info.last_name #=> String
5795
+ # resp.users[0].phone_config.phone_type #=> String, one of "SOFT_PHONE", "DESK_PHONE"
5796
+ # resp.users[0].phone_config.auto_accept #=> Boolean
5797
+ # resp.users[0].phone_config.after_contact_work_time_limit #=> Integer
5798
+ # resp.users[0].phone_config.desk_phone_number #=> String
5799
+ # resp.users[0].routing_profile_id #=> String
5800
+ # resp.users[0].security_profile_ids #=> Array
5801
+ # resp.users[0].security_profile_ids[0] #=> String
5802
+ # resp.users[0].tags #=> Hash
5803
+ # resp.users[0].tags["TagKey"] #=> String
5804
+ # resp.users[0].username #=> String
5805
+ # resp.next_token #=> String
5806
+ # resp.approximate_total_count #=> Integer
5807
+ #
5808
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/SearchUsers AWS API Documentation
5809
+ #
5810
+ # @overload search_users(params = {})
5811
+ # @param [Hash] params ({})
5812
+ def search_users(params = {}, options = {})
5813
+ req = build_request(:search_users, params)
5814
+ req.send_request(options)
5815
+ end
5816
+
5377
5817
  # Searches for vocabularies within a specific Amazon Connect instance
5378
5818
  # using `State`, `NameStartsWith`, and `LanguageCode`.
5379
5819
  #
@@ -5814,7 +6254,7 @@ module Aws::Connect
5814
6254
  # @option params [String] :previous_contact_id
5815
6255
  # The identifier of the previous chat, voice, or task contact.
5816
6256
  #
5817
- # @option params [required, String] :contact_flow_id
6257
+ # @option params [String] :contact_flow_id
5818
6258
  # The identifier of the contact flow for initiating the tasks. To see
5819
6259
  # the ContactFlowId in the Amazon Connect console user interface, on the
5820
6260
  # navigation menu go to **Routing**, **Contact Flows**. Choose the
@@ -5857,6 +6297,12 @@ module Aws::Connect
5857
6297
  # the inbound contact flow. The scheduled time cannot be in the past. It
5858
6298
  # must be within up to 6 days in future.
5859
6299
  #
6300
+ # @option params [String] :task_template_id
6301
+ # A unique identifier for the task template.
6302
+ #
6303
+ # @option params [String] :quick_connect_id
6304
+ # The identifier for the quick connect.
6305
+ #
5860
6306
  # @return [Types::StartTaskContactResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5861
6307
  #
5862
6308
  # * {Types::StartTaskContactResponse#contact_id #contact_id} => String
@@ -5866,7 +6312,7 @@ module Aws::Connect
5866
6312
  # resp = client.start_task_contact({
5867
6313
  # instance_id: "InstanceId", # required
5868
6314
  # previous_contact_id: "ContactId",
5869
- # contact_flow_id: "ContactFlowId", # required
6315
+ # contact_flow_id: "ContactFlowId",
5870
6316
  # attributes: {
5871
6317
  # "AttributeName" => "AttributeValue",
5872
6318
  # },
@@ -5874,12 +6320,14 @@ module Aws::Connect
5874
6320
  # references: {
5875
6321
  # "ReferenceKey" => {
5876
6322
  # value: "ReferenceValue", # required
5877
- # type: "URL", # required, accepts URL, ATTACHMENT
6323
+ # type: "URL", # required, accepts URL, ATTACHMENT, NUMBER, STRING, DATE, EMAIL
5878
6324
  # },
5879
6325
  # },
5880
6326
  # description: "Description",
5881
6327
  # client_token: "ClientToken",
5882
6328
  # scheduled_time: Time.now,
6329
+ # task_template_id: "TaskTemplateId",
6330
+ # quick_connect_id: "QuickConnectId",
5883
6331
  # })
5884
6332
  #
5885
6333
  # @example Response structure
@@ -6049,8 +6497,8 @@ module Aws::Connect
6049
6497
  # Adds the specified tags to the specified resource.
6050
6498
  #
6051
6499
  # The supported resource types are users, routing profiles, queues,
6052
- # quick connects, contact flows, agent status, hours of operation, and
6053
- # phone number.
6500
+ # quick connects, contact flows, agent status, hours of operation, phone
6501
+ # number, security profiles, and task templates.
6054
6502
  #
6055
6503
  # For sample policies that use tags, see [Amazon Connect Identity-Based
6056
6504
  # Policy Examples][1] in the *Amazon Connect Administrator Guide*.
@@ -6086,6 +6534,79 @@ module Aws::Connect
6086
6534
  req.send_request(options)
6087
6535
  end
6088
6536
 
6537
+ # Transfers contacts from one agent or queue to another agent or queue
6538
+ # at any point after a contact is created. You can transfer a contact to
6539
+ # another queue by providing the contact flow which orchestrates the
6540
+ # contact to the destination queue. This gives you more control over
6541
+ # contact handling and helps you adhere to the service level agreement
6542
+ # (SLA) guaranteed to your customers.
6543
+ #
6544
+ # Note the following requirements:
6545
+ #
6546
+ # * Transfer is supported for only `TASK` contacts.
6547
+ #
6548
+ # * Do not use both `QueueId` and `UserId` in the same call.
6549
+ #
6550
+ # * The following contact flow types are supported: Inbound contact
6551
+ # flow, Transfer to agent flow, and Transfer to queue flow.
6552
+ #
6553
+ # * The `TransferContact` API can be called only on active contacts.
6554
+ #
6555
+ # * A contact cannot be transferred more than 11 times.
6556
+ #
6557
+ # @option params [required, String] :instance_id
6558
+ # The identifier of the Amazon Connect instance. You can find the
6559
+ # instanceId in the ARN of the instance.
6560
+ #
6561
+ # @option params [required, String] :contact_id
6562
+ # The identifier of the contact in this instance of Amazon Connect
6563
+ #
6564
+ # @option params [String] :queue_id
6565
+ # The identifier for the queue.
6566
+ #
6567
+ # @option params [String] :user_id
6568
+ # The identifier for the user.
6569
+ #
6570
+ # @option params [required, String] :contact_flow_id
6571
+ # The identifier of the contact flow.
6572
+ #
6573
+ # @option params [String] :client_token
6574
+ # A unique, case-sensitive identifier that you provide to ensure the
6575
+ # idempotency of the request.
6576
+ #
6577
+ # **A suitable default value is auto-generated.** You should normally
6578
+ # not need to pass this option.**
6579
+ #
6580
+ # @return [Types::TransferContactResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6581
+ #
6582
+ # * {Types::TransferContactResponse#contact_id #contact_id} => String
6583
+ # * {Types::TransferContactResponse#contact_arn #contact_arn} => String
6584
+ #
6585
+ # @example Request syntax with placeholder values
6586
+ #
6587
+ # resp = client.transfer_contact({
6588
+ # instance_id: "InstanceId", # required
6589
+ # contact_id: "ContactId", # required
6590
+ # queue_id: "QueueId",
6591
+ # user_id: "AgentResourceId",
6592
+ # contact_flow_id: "ContactFlowId", # required
6593
+ # client_token: "ClientToken",
6594
+ # })
6595
+ #
6596
+ # @example Response structure
6597
+ #
6598
+ # resp.contact_id #=> String
6599
+ # resp.contact_arn #=> String
6600
+ #
6601
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/TransferContact AWS API Documentation
6602
+ #
6603
+ # @overload transfer_contact(params = {})
6604
+ # @param [Hash] params ({})
6605
+ def transfer_contact(params = {}, options = {})
6606
+ req = build_request(:transfer_contact, params)
6607
+ req.send_request(options)
6608
+ end
6609
+
6089
6610
  # Removes the specified tags from the specified resource.
6090
6611
  #
6091
6612
  # @option params [required, String] :resource_arn
@@ -6187,7 +6708,7 @@ module Aws::Connect
6187
6708
  # The description of the contact.
6188
6709
  #
6189
6710
  # @option params [Hash<String,Types::Reference>] :references
6190
- # A formatted URL that is shown to an agent in the Contact Control Panel
6711
+ # Well-formed data on contact, shown to agents on Contact Control Panel
6191
6712
  # (CCP).
6192
6713
  #
6193
6714
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
@@ -6202,7 +6723,7 @@ module Aws::Connect
6202
6723
  # references: {
6203
6724
  # "ReferenceKey" => {
6204
6725
  # value: "ReferenceValue", # required
6205
- # type: "URL", # required, accepts URL, ATTACHMENT
6726
+ # type: "URL", # required, accepts URL, ATTACHMENT, NUMBER, STRING, DATE, EMAIL
6206
6727
  # },
6207
6728
  # },
6208
6729
  # })
@@ -6679,7 +7200,7 @@ module Aws::Connect
6679
7200
  # instance to another Amazon Connect instance in the same Region.
6680
7201
  #
6681
7202
  # @option params [required, String] :phone_number_id
6682
- # The identifier of the phone number.
7203
+ # A unique identifier for the phone number.
6683
7204
  #
6684
7205
  # @option params [required, String] :target_arn
6685
7206
  # The Amazon Resource Name (ARN) for Amazon Connect instances that phone
@@ -7170,6 +7691,148 @@ module Aws::Connect
7170
7691
  req.send_request(options)
7171
7692
  end
7172
7693
 
7694
+ # Updates details about a specific task template in the specified Amazon
7695
+ # Connect instance. This operation does not support partial updates.
7696
+ # Instead it does a full update of template content.
7697
+ #
7698
+ # @option params [required, String] :task_template_id
7699
+ # A unique identifier for the task template.
7700
+ #
7701
+ # @option params [required, String] :instance_id
7702
+ # The identifier of the Amazon Connect instance. You can find the
7703
+ # instanceId in the ARN of the instance.
7704
+ #
7705
+ # @option params [String] :name
7706
+ # The name of the task template.
7707
+ #
7708
+ # @option params [String] :description
7709
+ # The description of the task template.
7710
+ #
7711
+ # @option params [String] :contact_flow_id
7712
+ # The identifier of the flow that runs by default when a task is created
7713
+ # by referencing this template.
7714
+ #
7715
+ # @option params [Types::TaskTemplateConstraints] :constraints
7716
+ # Constraints that are applicable to the fields listed.
7717
+ #
7718
+ # @option params [Types::TaskTemplateDefaults] :defaults
7719
+ # The default values for fields when a task is created by referencing
7720
+ # this template.
7721
+ #
7722
+ # @option params [String] :status
7723
+ # Marks a template as `ACTIVE` or `INACTIVE` for a task to refer to it.
7724
+ # Tasks can only be created from `ACTIVE` templates. If a template is
7725
+ # marked as `INACTIVE`, then a task that refers to this template cannot
7726
+ # be created.
7727
+ #
7728
+ # @option params [Array<Types::TaskTemplateField>] :fields
7729
+ # Fields that are part of the template.
7730
+ #
7731
+ # @return [Types::UpdateTaskTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7732
+ #
7733
+ # * {Types::UpdateTaskTemplateResponse#instance_id #instance_id} => String
7734
+ # * {Types::UpdateTaskTemplateResponse#id #id} => String
7735
+ # * {Types::UpdateTaskTemplateResponse#arn #arn} => String
7736
+ # * {Types::UpdateTaskTemplateResponse#name #name} => String
7737
+ # * {Types::UpdateTaskTemplateResponse#description #description} => String
7738
+ # * {Types::UpdateTaskTemplateResponse#contact_flow_id #contact_flow_id} => String
7739
+ # * {Types::UpdateTaskTemplateResponse#constraints #constraints} => Types::TaskTemplateConstraints
7740
+ # * {Types::UpdateTaskTemplateResponse#defaults #defaults} => Types::TaskTemplateDefaults
7741
+ # * {Types::UpdateTaskTemplateResponse#fields #fields} => Array&lt;Types::TaskTemplateField&gt;
7742
+ # * {Types::UpdateTaskTemplateResponse#status #status} => String
7743
+ # * {Types::UpdateTaskTemplateResponse#last_modified_time #last_modified_time} => Time
7744
+ # * {Types::UpdateTaskTemplateResponse#created_time #created_time} => Time
7745
+ #
7746
+ # @example Request syntax with placeholder values
7747
+ #
7748
+ # resp = client.update_task_template({
7749
+ # task_template_id: "TaskTemplateId", # required
7750
+ # instance_id: "InstanceId", # required
7751
+ # name: "TaskTemplateName",
7752
+ # description: "TaskTemplateDescription",
7753
+ # contact_flow_id: "ContactFlowId",
7754
+ # constraints: {
7755
+ # required_fields: [
7756
+ # {
7757
+ # id: {
7758
+ # name: "TaskTemplateFieldName",
7759
+ # },
7760
+ # },
7761
+ # ],
7762
+ # read_only_fields: [
7763
+ # {
7764
+ # id: {
7765
+ # name: "TaskTemplateFieldName",
7766
+ # },
7767
+ # },
7768
+ # ],
7769
+ # invisible_fields: [
7770
+ # {
7771
+ # id: {
7772
+ # name: "TaskTemplateFieldName",
7773
+ # },
7774
+ # },
7775
+ # ],
7776
+ # },
7777
+ # defaults: {
7778
+ # default_field_values: [
7779
+ # {
7780
+ # id: {
7781
+ # name: "TaskTemplateFieldName",
7782
+ # },
7783
+ # default_value: "TaskTemplateFieldValue",
7784
+ # },
7785
+ # ],
7786
+ # },
7787
+ # status: "ACTIVE", # accepts ACTIVE, INACTIVE
7788
+ # fields: [
7789
+ # {
7790
+ # id: { # required
7791
+ # name: "TaskTemplateFieldName",
7792
+ # },
7793
+ # description: "TaskTemplateFieldDescription",
7794
+ # type: "NAME", # accepts NAME, DESCRIPTION, SCHEDULED_TIME, QUICK_CONNECT, URL, NUMBER, TEXT, TEXT_AREA, DATE_TIME, BOOLEAN, SINGLE_SELECT, EMAIL
7795
+ # single_select_options: ["TaskTemplateSingleSelectOption"],
7796
+ # },
7797
+ # ],
7798
+ # })
7799
+ #
7800
+ # @example Response structure
7801
+ #
7802
+ # resp.instance_id #=> String
7803
+ # resp.id #=> String
7804
+ # resp.arn #=> String
7805
+ # resp.name #=> String
7806
+ # resp.description #=> String
7807
+ # resp.contact_flow_id #=> String
7808
+ # resp.constraints.required_fields #=> Array
7809
+ # resp.constraints.required_fields[0].id.name #=> String
7810
+ # resp.constraints.read_only_fields #=> Array
7811
+ # resp.constraints.read_only_fields[0].id.name #=> String
7812
+ # resp.constraints.invisible_fields #=> Array
7813
+ # resp.constraints.invisible_fields[0].id.name #=> String
7814
+ # resp.defaults.default_field_values #=> Array
7815
+ # resp.defaults.default_field_values[0].id.name #=> String
7816
+ # resp.defaults.default_field_values[0].default_value #=> String
7817
+ # resp.fields #=> Array
7818
+ # resp.fields[0].id.name #=> String
7819
+ # resp.fields[0].description #=> String
7820
+ # resp.fields[0].type #=> String, one of "NAME", "DESCRIPTION", "SCHEDULED_TIME", "QUICK_CONNECT", "URL", "NUMBER", "TEXT", "TEXT_AREA", "DATE_TIME", "BOOLEAN", "SINGLE_SELECT", "EMAIL"
7821
+ # resp.fields[0].single_select_options #=> Array
7822
+ # resp.fields[0].single_select_options[0] #=> String
7823
+ # resp.status #=> String, one of "ACTIVE", "INACTIVE"
7824
+ # resp.last_modified_time #=> Time
7825
+ # resp.created_time #=> Time
7826
+ #
7827
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateTaskTemplate AWS API Documentation
7828
+ #
7829
+ # @overload update_task_template(params = {})
7830
+ # @param [Hash] params ({})
7831
+ def update_task_template(params = {}, options = {})
7832
+ req = build_request(:update_task_template, params)
7833
+ req.send_request(options)
7834
+ end
7835
+
7173
7836
  # Assigns the specified hierarchy group to the specified user.
7174
7837
  #
7175
7838
  # @option params [String] :hierarchy_group_id
@@ -7434,7 +8097,7 @@ module Aws::Connect
7434
8097
  params: params,
7435
8098
  config: config)
7436
8099
  context[:gem_name] = 'aws-sdk-connect'
7437
- context[:gem_version] = '1.69.0'
8100
+ context[:gem_version] = '1.72.0'
7438
8101
  Seahorse::Client::Request.new(handlers, context)
7439
8102
  end
7440
8103