aws-sdk-connect 1.143.0 → 1.145.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1013,6 +1013,43 @@ module Aws::Connect
1013
1013
  req.send_request(options)
1014
1014
  end
1015
1015
 
1016
+ # >Associates a set of proficiencies with a user.
1017
+ #
1018
+ # @option params [required, String] :instance_id
1019
+ # The identifier of the Amazon Connect instance. You can find the
1020
+ # instance ID in the Amazon Resource Name (ARN of the instance).
1021
+ #
1022
+ # @option params [required, String] :user_id
1023
+ # The identifier of the user account.
1024
+ #
1025
+ # @option params [required, Array<Types::UserProficiency>] :user_proficiencies
1026
+ # The proficiencies to associate with the user.
1027
+ #
1028
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1029
+ #
1030
+ # @example Request syntax with placeholder values
1031
+ #
1032
+ # resp = client.associate_user_proficiencies({
1033
+ # instance_id: "InstanceId", # required
1034
+ # user_id: "UserId", # required
1035
+ # user_proficiencies: [ # required
1036
+ # {
1037
+ # attribute_name: "PredefinedAttributeName", # required
1038
+ # attribute_value: "PredefinedAttributeStringValue", # required
1039
+ # level: 1.0, # required
1040
+ # },
1041
+ # ],
1042
+ # })
1043
+ #
1044
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/AssociateUserProficiencies AWS API Documentation
1045
+ #
1046
+ # @overload associate_user_proficiencies(params = {})
1047
+ # @param [Hash] params ({})
1048
+ def associate_user_proficiencies(params = {}, options = {})
1049
+ req = build_request(:associate_user_proficiencies, params)
1050
+ req.send_request(options)
1051
+ end
1052
+
1016
1053
  # This API is in preview release for Amazon Connect and is subject to
1017
1054
  # change.
1018
1055
  #
@@ -1916,7 +1953,7 @@ module Aws::Connect
1916
1953
  # integration_arn: "ARN", # required
1917
1954
  # source_application_url: "URI",
1918
1955
  # source_application_name: "SourceApplicationName",
1919
- # source_type: "SALESFORCE", # accepts SALESFORCE, ZENDESK
1956
+ # source_type: "SALESFORCE", # accepts SALESFORCE, ZENDESK, CASES
1920
1957
  # tags: {
1921
1958
  # "TagKey" => "TagValue",
1922
1959
  # },
@@ -2133,6 +2170,40 @@ module Aws::Connect
2133
2170
  req.send_request(options)
2134
2171
  end
2135
2172
 
2173
+ # Creates a new predefined attribute for the specified Amazon Connect
2174
+ # instance.
2175
+ #
2176
+ # @option params [required, String] :instance_id
2177
+ # The identifier of the Amazon Connect instance. You can find the
2178
+ # instance ID in the Amazon Resource Name (ARN) of the instance.
2179
+ #
2180
+ # @option params [required, String] :name
2181
+ # The name of the predefined attribute.
2182
+ #
2183
+ # @option params [required, Types::PredefinedAttributeValues] :values
2184
+ # The values of the predefined attribute.
2185
+ #
2186
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2187
+ #
2188
+ # @example Request syntax with placeholder values
2189
+ #
2190
+ # resp = client.create_predefined_attribute({
2191
+ # instance_id: "InstanceId", # required
2192
+ # name: "PredefinedAttributeName", # required
2193
+ # values: { # required
2194
+ # string_list: ["PredefinedAttributeStringValue"],
2195
+ # },
2196
+ # })
2197
+ #
2198
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/CreatePredefinedAttribute AWS API Documentation
2199
+ #
2200
+ # @overload create_predefined_attribute(params = {})
2201
+ # @param [Hash] params ({})
2202
+ def create_predefined_attribute(params = {}, options = {})
2203
+ req = build_request(:create_predefined_attribute, params)
2204
+ req.send_request(options)
2205
+ end
2206
+
2136
2207
  # Creates a prompt. For more information about prompts, such as
2137
2208
  # supported file types and maximum length, see [Create prompts][1] in
2138
2209
  # the *Amazon Connect Administrator's Guide*.
@@ -2524,13 +2595,13 @@ module Aws::Connect
2524
2595
  # instance_id: "InstanceId", # required
2525
2596
  # name: "RuleName", # required
2526
2597
  # trigger_event_source: { # required
2527
- # event_source_name: "OnPostCallAnalysisAvailable", # required, accepts OnPostCallAnalysisAvailable, OnRealTimeCallAnalysisAvailable, OnRealTimeChatAnalysisAvailable, OnPostChatAnalysisAvailable, OnZendeskTicketCreate, OnZendeskTicketStatusUpdate, OnSalesforceCaseCreate, OnContactEvaluationSubmit, OnMetricDataUpdate
2598
+ # event_source_name: "OnPostCallAnalysisAvailable", # required, accepts OnPostCallAnalysisAvailable, OnRealTimeCallAnalysisAvailable, OnRealTimeChatAnalysisAvailable, OnPostChatAnalysisAvailable, OnZendeskTicketCreate, OnZendeskTicketStatusUpdate, OnSalesforceCaseCreate, OnContactEvaluationSubmit, OnMetricDataUpdate, OnCaseCreate, OnCaseUpdate
2528
2599
  # integration_association_id: "IntegrationAssociationId",
2529
2600
  # },
2530
2601
  # function: "RuleFunction", # required
2531
2602
  # actions: [ # required
2532
2603
  # {
2533
- # action_type: "CREATE_TASK", # required, accepts CREATE_TASK, ASSIGN_CONTACT_CATEGORY, GENERATE_EVENTBRIDGE_EVENT, SEND_NOTIFICATION
2604
+ # action_type: "CREATE_TASK", # required, accepts CREATE_TASK, ASSIGN_CONTACT_CATEGORY, GENERATE_EVENTBRIDGE_EVENT, SEND_NOTIFICATION, CREATE_CASE, UPDATE_CASE, END_ASSOCIATED_TASKS
2534
2605
  # task_action: {
2535
2606
  # name: "TaskNameExpression", # required
2536
2607
  # description: "TaskDescriptionExpression",
@@ -2559,6 +2630,37 @@ module Aws::Connect
2559
2630
  # user_ids: ["UserId"],
2560
2631
  # },
2561
2632
  # },
2633
+ # create_case_action: {
2634
+ # fields: [ # required
2635
+ # {
2636
+ # id: "FieldValueId", # required
2637
+ # value: { # required
2638
+ # boolean_value: false,
2639
+ # double_value: 1.0,
2640
+ # empty_value: {
2641
+ # },
2642
+ # string_value: "FieldStringValue",
2643
+ # },
2644
+ # },
2645
+ # ],
2646
+ # template_id: "TemplateId", # required
2647
+ # },
2648
+ # update_case_action: {
2649
+ # fields: [ # required
2650
+ # {
2651
+ # id: "FieldValueId", # required
2652
+ # value: { # required
2653
+ # boolean_value: false,
2654
+ # double_value: 1.0,
2655
+ # empty_value: {
2656
+ # },
2657
+ # string_value: "FieldStringValue",
2658
+ # },
2659
+ # },
2660
+ # ],
2661
+ # },
2662
+ # end_associated_tasks_action: {
2663
+ # },
2562
2664
  # },
2563
2665
  # ],
2564
2666
  # publish_status: "DRAFT", # required, accepts DRAFT, PUBLISHED
@@ -3619,6 +3721,34 @@ module Aws::Connect
3619
3721
  req.send_request(options)
3620
3722
  end
3621
3723
 
3724
+ # Deletes a predefined attribute from the specified Amazon Connect
3725
+ # instance.
3726
+ #
3727
+ # @option params [required, String] :instance_id
3728
+ # The identifier of the Amazon Connect instance. You can find the
3729
+ # instance ID in the Amazon Resource Name (ARN) of the instance.
3730
+ #
3731
+ # @option params [required, String] :name
3732
+ # The name of the predefined attribute.
3733
+ #
3734
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3735
+ #
3736
+ # @example Request syntax with placeholder values
3737
+ #
3738
+ # resp = client.delete_predefined_attribute({
3739
+ # instance_id: "InstanceId", # required
3740
+ # name: "PredefinedAttributeName", # required
3741
+ # })
3742
+ #
3743
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DeletePredefinedAttribute AWS API Documentation
3744
+ #
3745
+ # @overload delete_predefined_attribute(params = {})
3746
+ # @param [Hash] params ({})
3747
+ def delete_predefined_attribute(params = {}, options = {})
3748
+ req = build_request(:delete_predefined_attribute, params)
3749
+ req.send_request(options)
3750
+ end
3751
+
3622
3752
  # Deletes a prompt.
3623
3753
  #
3624
3754
  # @option params [required, String] :instance_id
@@ -4172,12 +4302,19 @@ module Aws::Connect
4172
4302
  # resp.contact.queue_info.enqueue_timestamp #=> Time
4173
4303
  # resp.contact.agent_info.id #=> String
4174
4304
  # resp.contact.agent_info.connected_to_agent_timestamp #=> Time
4305
+ # resp.contact.agent_info.agent_pause_duration_in_seconds #=> Integer
4175
4306
  # resp.contact.initiation_timestamp #=> Time
4176
4307
  # resp.contact.disconnect_timestamp #=> Time
4177
4308
  # resp.contact.last_update_timestamp #=> Time
4309
+ # resp.contact.last_paused_timestamp #=> Time
4310
+ # resp.contact.last_resumed_timestamp #=> Time
4311
+ # resp.contact.total_pause_count #=> Integer
4312
+ # resp.contact.total_pause_duration_in_seconds #=> Integer
4178
4313
  # resp.contact.scheduled_timestamp #=> Time
4179
4314
  # resp.contact.related_contact_id #=> String
4180
4315
  # resp.contact.wisdom_info.session_arn #=> String
4316
+ # resp.contact.queue_time_adjustment_seconds #=> Integer
4317
+ # resp.contact.queue_priority #=> Integer
4181
4318
  # resp.contact.tags #=> Hash
4182
4319
  # resp.contact.tags["ContactTagKey"] #=> String
4183
4320
  #
@@ -4730,6 +4867,44 @@ module Aws::Connect
4730
4867
  req.send_request(options)
4731
4868
  end
4732
4869
 
4870
+ # Describes a predefined attribute for the specified Amazon Connect
4871
+ # instance.
4872
+ #
4873
+ # @option params [required, String] :instance_id
4874
+ # The identifier of the Amazon Connect instance. You can find the
4875
+ # instance ID in the Amazon Resource Name (ARN) of the instance.
4876
+ #
4877
+ # @option params [required, String] :name
4878
+ # The name of the predefined attribute.
4879
+ #
4880
+ # @return [Types::DescribePredefinedAttributeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4881
+ #
4882
+ # * {Types::DescribePredefinedAttributeResponse#predefined_attribute #predefined_attribute} => Types::PredefinedAttribute
4883
+ #
4884
+ # @example Request syntax with placeholder values
4885
+ #
4886
+ # resp = client.describe_predefined_attribute({
4887
+ # instance_id: "InstanceId", # required
4888
+ # name: "PredefinedAttributeName", # required
4889
+ # })
4890
+ #
4891
+ # @example Response structure
4892
+ #
4893
+ # resp.predefined_attribute.name #=> String
4894
+ # resp.predefined_attribute.values.string_list #=> Array
4895
+ # resp.predefined_attribute.values.string_list[0] #=> String
4896
+ # resp.predefined_attribute.last_modified_time #=> Time
4897
+ # resp.predefined_attribute.last_modified_region #=> String
4898
+ #
4899
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DescribePredefinedAttribute AWS API Documentation
4900
+ #
4901
+ # @overload describe_predefined_attribute(params = {})
4902
+ # @param [Hash] params ({})
4903
+ def describe_predefined_attribute(params = {}, options = {})
4904
+ req = build_request(:describe_predefined_attribute, params)
4905
+ req.send_request(options)
4906
+ end
4907
+
4733
4908
  # Describes the prompt.
4734
4909
  #
4735
4910
  # @option params [required, String] :instance_id
@@ -4960,11 +5135,11 @@ module Aws::Connect
4960
5135
  # resp.rule.name #=> String
4961
5136
  # resp.rule.rule_id #=> String
4962
5137
  # resp.rule.rule_arn #=> String
4963
- # resp.rule.trigger_event_source.event_source_name #=> String, one of "OnPostCallAnalysisAvailable", "OnRealTimeCallAnalysisAvailable", "OnRealTimeChatAnalysisAvailable", "OnPostChatAnalysisAvailable", "OnZendeskTicketCreate", "OnZendeskTicketStatusUpdate", "OnSalesforceCaseCreate", "OnContactEvaluationSubmit", "OnMetricDataUpdate"
5138
+ # resp.rule.trigger_event_source.event_source_name #=> String, one of "OnPostCallAnalysisAvailable", "OnRealTimeCallAnalysisAvailable", "OnRealTimeChatAnalysisAvailable", "OnPostChatAnalysisAvailable", "OnZendeskTicketCreate", "OnZendeskTicketStatusUpdate", "OnSalesforceCaseCreate", "OnContactEvaluationSubmit", "OnMetricDataUpdate", "OnCaseCreate", "OnCaseUpdate"
4964
5139
  # resp.rule.trigger_event_source.integration_association_id #=> String
4965
5140
  # resp.rule.function #=> String
4966
5141
  # resp.rule.actions #=> Array
4967
- # resp.rule.actions[0].action_type #=> String, one of "CREATE_TASK", "ASSIGN_CONTACT_CATEGORY", "GENERATE_EVENTBRIDGE_EVENT", "SEND_NOTIFICATION"
5142
+ # resp.rule.actions[0].action_type #=> String, one of "CREATE_TASK", "ASSIGN_CONTACT_CATEGORY", "GENERATE_EVENTBRIDGE_EVENT", "SEND_NOTIFICATION", "CREATE_CASE", "UPDATE_CASE", "END_ASSOCIATED_TASKS"
4968
5143
  # resp.rule.actions[0].task_action.name #=> String
4969
5144
  # resp.rule.actions[0].task_action.description #=> String
4970
5145
  # resp.rule.actions[0].task_action.contact_flow_id #=> String
@@ -4980,6 +5155,17 @@ module Aws::Connect
4980
5155
  # resp.rule.actions[0].send_notification_action.recipient.user_tags["String"] #=> String
4981
5156
  # resp.rule.actions[0].send_notification_action.recipient.user_ids #=> Array
4982
5157
  # resp.rule.actions[0].send_notification_action.recipient.user_ids[0] #=> String
5158
+ # resp.rule.actions[0].create_case_action.fields #=> Array
5159
+ # resp.rule.actions[0].create_case_action.fields[0].id #=> String
5160
+ # resp.rule.actions[0].create_case_action.fields[0].value.boolean_value #=> Boolean
5161
+ # resp.rule.actions[0].create_case_action.fields[0].value.double_value #=> Float
5162
+ # resp.rule.actions[0].create_case_action.fields[0].value.string_value #=> String
5163
+ # resp.rule.actions[0].create_case_action.template_id #=> String
5164
+ # resp.rule.actions[0].update_case_action.fields #=> Array
5165
+ # resp.rule.actions[0].update_case_action.fields[0].id #=> String
5166
+ # resp.rule.actions[0].update_case_action.fields[0].value.boolean_value #=> Boolean
5167
+ # resp.rule.actions[0].update_case_action.fields[0].value.double_value #=> Float
5168
+ # resp.rule.actions[0].update_case_action.fields[0].value.string_value #=> String
4983
5169
  # resp.rule.publish_status #=> String, one of "DRAFT", "PUBLISHED"
4984
5170
  # resp.rule.created_time #=> Time
4985
5171
  # resp.rule.last_updated_time #=> Time
@@ -5849,6 +6035,42 @@ module Aws::Connect
5849
6035
  req.send_request(options)
5850
6036
  end
5851
6037
 
6038
+ # Disassociates a set of proficiencies from a user.
6039
+ #
6040
+ # @option params [required, String] :instance_id
6041
+ # The identifier of the Amazon Connect instance. You can find the
6042
+ # instance ID in the Amazon Resource Name (ARN) of the instance.
6043
+ #
6044
+ # @option params [required, String] :user_id
6045
+ # The identifier of the user account.
6046
+ #
6047
+ # @option params [required, Array<Types::UserProficiencyDisassociate>] :user_proficiencies
6048
+ # The proficiencies to disassociate from the user.
6049
+ #
6050
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6051
+ #
6052
+ # @example Request syntax with placeholder values
6053
+ #
6054
+ # resp = client.disassociate_user_proficiencies({
6055
+ # instance_id: "InstanceId", # required
6056
+ # user_id: "UserId", # required
6057
+ # user_proficiencies: [ # required
6058
+ # {
6059
+ # attribute_name: "PredefinedAttributeName", # required
6060
+ # attribute_value: "PredefinedAttributeStringValue", # required
6061
+ # },
6062
+ # ],
6063
+ # })
6064
+ #
6065
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DisassociateUserProficiencies AWS API Documentation
6066
+ #
6067
+ # @overload disassociate_user_proficiencies(params = {})
6068
+ # @param [Hash] params ({})
6069
+ def disassociate_user_proficiencies(params = {}, options = {})
6070
+ req = build_request(:disassociate_user_proficiencies, params)
6071
+ req.send_request(options)
6072
+ end
6073
+
5852
6074
  # Dismisses contacts from an agent’s CCP and returns the agent to an
5853
6075
  # available state, which allows the agent to receive a new routed
5854
6076
  # contact. Contacts can only be dismissed if they are in a `MISSED`,
@@ -6125,8 +6347,9 @@ module Aws::Connect
6125
6347
  # queues: ["QueueId"],
6126
6348
  # channels: ["VOICE"], # accepts VOICE, CHAT, TASK
6127
6349
  # routing_profiles: ["RoutingProfileId"],
6350
+ # routing_step_expressions: ["RoutingExpression"],
6128
6351
  # },
6129
- # groupings: ["QUEUE"], # accepts QUEUE, CHANNEL, ROUTING_PROFILE
6352
+ # groupings: ["QUEUE"], # accepts QUEUE, CHANNEL, ROUTING_PROFILE, ROUTING_STEP_EXPRESSION
6130
6353
  # current_metrics: [ # required
6131
6354
  # {
6132
6355
  # name: "AGENTS_ONLINE", # accepts AGENTS_ONLINE, AGENTS_AVAILABLE, AGENTS_ON_CALL, AGENTS_NON_PRODUCTIVE, AGENTS_AFTER_CONTACT_WORK, AGENTS_ERROR, AGENTS_STAFFED, CONTACTS_IN_QUEUE, OLDEST_CONTACT_AGE, CONTACTS_SCHEDULED, AGENTS_ON_CONTACT, SLOTS_ACTIVE, SLOTS_AVAILABLE
@@ -6152,6 +6375,7 @@ module Aws::Connect
6152
6375
  # resp.metric_results[0].dimensions.channel #=> String, one of "VOICE", "CHAT", "TASK"
6153
6376
  # resp.metric_results[0].dimensions.routing_profile.id #=> String
6154
6377
  # resp.metric_results[0].dimensions.routing_profile.arn #=> String
6378
+ # resp.metric_results[0].dimensions.routing_step_expression #=> String
6155
6379
  # resp.metric_results[0].collections #=> Array
6156
6380
  # resp.metric_results[0].collections[0].metric.name #=> String, one of "AGENTS_ONLINE", "AGENTS_AVAILABLE", "AGENTS_ON_CALL", "AGENTS_NON_PRODUCTIVE", "AGENTS_AFTER_CONTACT_WORK", "AGENTS_ERROR", "AGENTS_STAFFED", "CONTACTS_IN_QUEUE", "OLDEST_CONTACT_AGE", "CONTACTS_SCHEDULED", "AGENTS_ON_CONTACT", "SLOTS_ACTIVE", "SLOTS_AVAILABLE"
6157
6381
  # resp.metric_results[0].collections[0].metric.unit #=> String, one of "SECONDS", "COUNT", "PERCENT"
@@ -6652,8 +6876,9 @@ module Aws::Connect
6652
6876
  # queues: ["QueueId"],
6653
6877
  # channels: ["VOICE"], # accepts VOICE, CHAT, TASK
6654
6878
  # routing_profiles: ["RoutingProfileId"],
6879
+ # routing_step_expressions: ["RoutingExpression"],
6655
6880
  # },
6656
- # groupings: ["QUEUE"], # accepts QUEUE, CHANNEL, ROUTING_PROFILE
6881
+ # groupings: ["QUEUE"], # accepts QUEUE, CHANNEL, ROUTING_PROFILE, ROUTING_STEP_EXPRESSION
6657
6882
  # historical_metrics: [ # required
6658
6883
  # {
6659
6884
  # name: "CONTACTS_QUEUED", # accepts CONTACTS_QUEUED, CONTACTS_HANDLED, CONTACTS_ABANDONED, CONTACTS_CONSULTED, CONTACTS_AGENT_HUNG_UP_FIRST, CONTACTS_HANDLED_INCOMING, CONTACTS_HANDLED_OUTBOUND, CONTACTS_HOLD_ABANDONS, CONTACTS_TRANSFERRED_IN, CONTACTS_TRANSFERRED_OUT, CONTACTS_TRANSFERRED_IN_FROM_QUEUE, CONTACTS_TRANSFERRED_OUT_FROM_QUEUE, CONTACTS_MISSED, CALLBACK_CONTACTS_HANDLED, API_CONTACTS_HANDLED, OCCUPANCY, HANDLE_TIME, AFTER_CONTACT_WORK_TIME, QUEUED_TIME, ABANDON_TIME, QUEUE_ANSWER_TIME, HOLD_TIME, INTERACTION_TIME, INTERACTION_AND_HOLD_TIME, SERVICE_LEVEL
@@ -6678,6 +6903,7 @@ module Aws::Connect
6678
6903
  # resp.metric_results[0].dimensions.channel #=> String, one of "VOICE", "CHAT", "TASK"
6679
6904
  # resp.metric_results[0].dimensions.routing_profile.id #=> String
6680
6905
  # resp.metric_results[0].dimensions.routing_profile.arn #=> String
6906
+ # resp.metric_results[0].dimensions.routing_step_expression #=> String
6681
6907
  # resp.metric_results[0].collections #=> Array
6682
6908
  # resp.metric_results[0].collections[0].metric.name #=> String, one of "CONTACTS_QUEUED", "CONTACTS_HANDLED", "CONTACTS_ABANDONED", "CONTACTS_CONSULTED", "CONTACTS_AGENT_HUNG_UP_FIRST", "CONTACTS_HANDLED_INCOMING", "CONTACTS_HANDLED_OUTBOUND", "CONTACTS_HOLD_ABANDONS", "CONTACTS_TRANSFERRED_IN", "CONTACTS_TRANSFERRED_OUT", "CONTACTS_TRANSFERRED_IN_FROM_QUEUE", "CONTACTS_TRANSFERRED_OUT_FROM_QUEUE", "CONTACTS_MISSED", "CALLBACK_CONTACTS_HANDLED", "API_CONTACTS_HANDLED", "OCCUPANCY", "HANDLE_TIME", "AFTER_CONTACT_WORK_TIME", "QUEUED_TIME", "ABANDON_TIME", "QUEUE_ANSWER_TIME", "HOLD_TIME", "INTERACTION_TIME", "INTERACTION_AND_HOLD_TIME", "SERVICE_LEVEL"
6683
6909
  # resp.metric_results[0].collections[0].metric.threshold.comparison #=> String, one of "LT"
@@ -6918,6 +7144,13 @@ module Aws::Connect
6918
7144
  # Valid groupings and filters: Queue, Channel, Routing Profile, Agent,
6919
7145
  # Agent Hierarchy, Feature, contact/segmentAttributes/connect:Subtype
6920
7146
  #
7147
+ # AVG\_ACTIVE\_TIME
7148
+ #
7149
+ # : Unit: Seconds
7150
+ #
7151
+ # Valid groupings and filters: Queue, Channel, Routing Profile, Agent,
7152
+ # Agent Hierarchy
7153
+ #
6921
7154
  # AVG\_AFTER\_CONTACT\_WORK\_TIME
6922
7155
  #
6923
7156
  # : Unit: Seconds
@@ -6947,6 +7180,13 @@ module Aws::Connect
6947
7180
  #
6948
7181
  # </note>
6949
7182
  #
7183
+ # AVG\_AGENT\_PAUSE\_TIME
7184
+ #
7185
+ # : Unit: Seconds
7186
+ #
7187
+ # Valid groupings and filters: Queue, Channel, Routing Profile, Agent,
7188
+ # Agent Hierarchy
7189
+ #
6950
7190
  # AVG\_CONTACT\_DURATION
6951
7191
  #
6952
7192
  # : Unit: Seconds
@@ -8748,7 +8988,7 @@ module Aws::Connect
8748
8988
  # resp.integration_association_summary_list[0].integration_arn #=> String
8749
8989
  # resp.integration_association_summary_list[0].source_application_url #=> String
8750
8990
  # resp.integration_association_summary_list[0].source_application_name #=> String
8751
- # resp.integration_association_summary_list[0].source_type #=> String, one of "SALESFORCE", "ZENDESK"
8991
+ # resp.integration_association_summary_list[0].source_type #=> String, one of "SALESFORCE", "ZENDESK", "CASES"
8752
8992
  # resp.next_token #=> String
8753
8993
  #
8754
8994
  # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListIntegrationAssociations AWS API Documentation
@@ -9068,6 +9308,52 @@ module Aws::Connect
9068
9308
  req.send_request(options)
9069
9309
  end
9070
9310
 
9311
+ # Lists predefined attributes for the specified Amazon Connect instance.
9312
+ #
9313
+ # @option params [required, String] :instance_id
9314
+ # The identifier of the Amazon Connect instance. You can find the
9315
+ # instance ID in the Amazon Resource Name (ARN) of the instance.
9316
+ #
9317
+ # @option params [String] :next_token
9318
+ # The token for the next set of results. Use the value returned in the
9319
+ # previous response in the next request to retrieve the next set of
9320
+ # results.
9321
+ #
9322
+ # @option params [Integer] :max_results
9323
+ # The maximum number of results to return per page.
9324
+ #
9325
+ # @return [Types::ListPredefinedAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9326
+ #
9327
+ # * {Types::ListPredefinedAttributesResponse#next_token #next_token} => String
9328
+ # * {Types::ListPredefinedAttributesResponse#predefined_attribute_summary_list #predefined_attribute_summary_list} => Array&lt;Types::PredefinedAttributeSummary&gt;
9329
+ #
9330
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
9331
+ #
9332
+ # @example Request syntax with placeholder values
9333
+ #
9334
+ # resp = client.list_predefined_attributes({
9335
+ # instance_id: "InstanceId", # required
9336
+ # next_token: "NextToken",
9337
+ # max_results: 1,
9338
+ # })
9339
+ #
9340
+ # @example Response structure
9341
+ #
9342
+ # resp.next_token #=> String
9343
+ # resp.predefined_attribute_summary_list #=> Array
9344
+ # resp.predefined_attribute_summary_list[0].name #=> String
9345
+ # resp.predefined_attribute_summary_list[0].last_modified_time #=> Time
9346
+ # resp.predefined_attribute_summary_list[0].last_modified_region #=> String
9347
+ #
9348
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListPredefinedAttributes AWS API Documentation
9349
+ #
9350
+ # @overload list_predefined_attributes(params = {})
9351
+ # @param [Hash] params ({})
9352
+ def list_predefined_attributes(params = {}, options = {})
9353
+ req = build_request(:list_predefined_attributes, params)
9354
+ req.send_request(options)
9355
+ end
9356
+
9071
9357
  # Provides information about the prompts for the specified Amazon
9072
9358
  # Connect instance.
9073
9359
  #
@@ -9581,7 +9867,7 @@ module Aws::Connect
9581
9867
  # resp = client.list_rules({
9582
9868
  # instance_id: "InstanceId", # required
9583
9869
  # publish_status: "DRAFT", # accepts DRAFT, PUBLISHED
9584
- # event_source_name: "OnPostCallAnalysisAvailable", # accepts OnPostCallAnalysisAvailable, OnRealTimeCallAnalysisAvailable, OnRealTimeChatAnalysisAvailable, OnPostChatAnalysisAvailable, OnZendeskTicketCreate, OnZendeskTicketStatusUpdate, OnSalesforceCaseCreate, OnContactEvaluationSubmit, OnMetricDataUpdate
9870
+ # event_source_name: "OnPostCallAnalysisAvailable", # accepts OnPostCallAnalysisAvailable, OnRealTimeCallAnalysisAvailable, OnRealTimeChatAnalysisAvailable, OnPostChatAnalysisAvailable, OnZendeskTicketCreate, OnZendeskTicketStatusUpdate, OnSalesforceCaseCreate, OnContactEvaluationSubmit, OnMetricDataUpdate, OnCaseCreate, OnCaseUpdate
9585
9871
  # max_results: 1,
9586
9872
  # next_token: "NextToken",
9587
9873
  # })
@@ -9592,10 +9878,10 @@ module Aws::Connect
9592
9878
  # resp.rule_summary_list[0].name #=> String
9593
9879
  # resp.rule_summary_list[0].rule_id #=> String
9594
9880
  # resp.rule_summary_list[0].rule_arn #=> String
9595
- # resp.rule_summary_list[0].event_source_name #=> String, one of "OnPostCallAnalysisAvailable", "OnRealTimeCallAnalysisAvailable", "OnRealTimeChatAnalysisAvailable", "OnPostChatAnalysisAvailable", "OnZendeskTicketCreate", "OnZendeskTicketStatusUpdate", "OnSalesforceCaseCreate", "OnContactEvaluationSubmit", "OnMetricDataUpdate"
9881
+ # resp.rule_summary_list[0].event_source_name #=> String, one of "OnPostCallAnalysisAvailable", "OnRealTimeCallAnalysisAvailable", "OnRealTimeChatAnalysisAvailable", "OnPostChatAnalysisAvailable", "OnZendeskTicketCreate", "OnZendeskTicketStatusUpdate", "OnSalesforceCaseCreate", "OnContactEvaluationSubmit", "OnMetricDataUpdate", "OnCaseCreate", "OnCaseUpdate"
9596
9882
  # resp.rule_summary_list[0].publish_status #=> String, one of "DRAFT", "PUBLISHED"
9597
9883
  # resp.rule_summary_list[0].action_summaries #=> Array
9598
- # resp.rule_summary_list[0].action_summaries[0].action_type #=> String, one of "CREATE_TASK", "ASSIGN_CONTACT_CATEGORY", "GENERATE_EVENTBRIDGE_EVENT", "SEND_NOTIFICATION"
9884
+ # resp.rule_summary_list[0].action_summaries[0].action_type #=> String, one of "CREATE_TASK", "ASSIGN_CONTACT_CATEGORY", "GENERATE_EVENTBRIDGE_EVENT", "SEND_NOTIFICATION", "CREATE_CASE", "UPDATE_CASE", "END_ASSOCIATED_TASKS"
9599
9885
  # resp.rule_summary_list[0].created_time #=> Time
9600
9886
  # resp.rule_summary_list[0].last_updated_time #=> Time
9601
9887
  # resp.next_token #=> String
@@ -10166,6 +10452,60 @@ module Aws::Connect
10166
10452
  req.send_request(options)
10167
10453
  end
10168
10454
 
10455
+ # Lists proficiencies associated with a user.
10456
+ #
10457
+ # @option params [required, String] :instance_id
10458
+ # The identifier of the Amazon Connect instance. You can find the
10459
+ # instance ID in the Amazon Resource Name (ARN) of the instance.
10460
+ #
10461
+ # @option params [required, String] :user_id
10462
+ # The identifier of the user account.
10463
+ #
10464
+ # @option params [String] :next_token
10465
+ # The token for the next set of results. Use the value returned in the
10466
+ # previous response in the next request to retrieve the next set of
10467
+ # results.
10468
+ #
10469
+ # @option params [Integer] :max_results
10470
+ # The maximum number of results to return per page.
10471
+ #
10472
+ # @return [Types::ListUserProficienciesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10473
+ #
10474
+ # * {Types::ListUserProficienciesResponse#next_token #next_token} => String
10475
+ # * {Types::ListUserProficienciesResponse#user_proficiency_list #user_proficiency_list} => Array&lt;Types::UserProficiency&gt;
10476
+ # * {Types::ListUserProficienciesResponse#last_modified_time #last_modified_time} => Time
10477
+ # * {Types::ListUserProficienciesResponse#last_modified_region #last_modified_region} => String
10478
+ #
10479
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
10480
+ #
10481
+ # @example Request syntax with placeholder values
10482
+ #
10483
+ # resp = client.list_user_proficiencies({
10484
+ # instance_id: "InstanceId", # required
10485
+ # user_id: "UserId", # required
10486
+ # next_token: "NextToken",
10487
+ # max_results: 1,
10488
+ # })
10489
+ #
10490
+ # @example Response structure
10491
+ #
10492
+ # resp.next_token #=> String
10493
+ # resp.user_proficiency_list #=> Array
10494
+ # resp.user_proficiency_list[0].attribute_name #=> String
10495
+ # resp.user_proficiency_list[0].attribute_value #=> String
10496
+ # resp.user_proficiency_list[0].level #=> Float
10497
+ # resp.last_modified_time #=> Time
10498
+ # resp.last_modified_region #=> String
10499
+ #
10500
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ListUserProficiencies AWS API Documentation
10501
+ #
10502
+ # @overload list_user_proficiencies(params = {})
10503
+ # @param [Hash] params ({})
10504
+ def list_user_proficiencies(params = {}, options = {})
10505
+ req = build_request(:list_user_proficiencies, params)
10506
+ req.send_request(options)
10507
+ end
10508
+
10169
10509
  # Provides summary information about the users for the specified Amazon
10170
10510
  # Connect instance.
10171
10511
  #
@@ -10395,6 +10735,37 @@ module Aws::Connect
10395
10735
  req.send_request(options)
10396
10736
  end
10397
10737
 
10738
+ # Allows pausing an ongoing task contact.
10739
+ #
10740
+ # @option params [required, String] :contact_id
10741
+ # The identifier of the contact.
10742
+ #
10743
+ # @option params [required, String] :instance_id
10744
+ # The identifier of the Amazon Connect instance. You can find the
10745
+ # `instanceId` in the ARN of the instance.
10746
+ #
10747
+ # @option params [String] :contact_flow_id
10748
+ # The identifier of the flow.
10749
+ #
10750
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10751
+ #
10752
+ # @example Request syntax with placeholder values
10753
+ #
10754
+ # resp = client.pause_contact({
10755
+ # contact_id: "ContactId", # required
10756
+ # instance_id: "InstanceId", # required
10757
+ # contact_flow_id: "ContactFlowId",
10758
+ # })
10759
+ #
10760
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/PauseContact AWS API Documentation
10761
+ #
10762
+ # @overload pause_contact(params = {})
10763
+ # @param [Hash] params ({})
10764
+ def pause_contact(params = {}, options = {})
10765
+ req = build_request(:pause_contact, params)
10766
+ req.send_request(options)
10767
+ end
10768
+
10398
10769
  # Changes the current status of a user or agent in Amazon Connect. If
10399
10770
  # the agent is currently handling a contact, this sets the agent's next
10400
10771
  # status.
@@ -10574,6 +10945,37 @@ module Aws::Connect
10574
10945
  req.send_request(options)
10575
10946
  end
10576
10947
 
10948
+ # Allows resuming a task contact in a paused state.
10949
+ #
10950
+ # @option params [required, String] :contact_id
10951
+ # The identifier of the contact.
10952
+ #
10953
+ # @option params [required, String] :instance_id
10954
+ # The identifier of the Amazon Connect instance. You can find the
10955
+ # `instanceId` in the ARN of the instance.
10956
+ #
10957
+ # @option params [String] :contact_flow_id
10958
+ # The identifier of the flow.
10959
+ #
10960
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
10961
+ #
10962
+ # @example Request syntax with placeholder values
10963
+ #
10964
+ # resp = client.resume_contact({
10965
+ # contact_id: "ContactId", # required
10966
+ # instance_id: "InstanceId", # required
10967
+ # contact_flow_id: "ContactFlowId",
10968
+ # })
10969
+ #
10970
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/ResumeContact AWS API Documentation
10971
+ #
10972
+ # @overload resume_contact(params = {})
10973
+ # @param [Hash] params ({})
10974
+ def resume_contact(params = {}, options = {})
10975
+ req = build_request(:resume_contact, params)
10976
+ req.send_request(options)
10977
+ end
10978
+
10577
10979
  # When a contact is being recorded, and the recording has been suspended
10578
10980
  # using SuspendContactRecording, this API resumes recording whatever
10579
10981
  # recording is selected in the flow configuration: call, screen, or
@@ -10691,6 +11093,116 @@ module Aws::Connect
10691
11093
  req.send_request(options)
10692
11094
  end
10693
11095
 
11096
+ # Searches contacts in an Amazon Connect instance.
11097
+ #
11098
+ # @option params [required, String] :instance_id
11099
+ # The identifier of Amazon Connect instance. You can find the instance
11100
+ # ID in the Amazon Resource Name (ARN) of the instance
11101
+ #
11102
+ # @option params [required, Types::SearchContactsTimeRange] :time_range
11103
+ # Time range that you want to search results
11104
+ #
11105
+ # @option params [Types::SearchCriteria] :search_criteria
11106
+ # The search criteria to be used to return contacts.
11107
+ #
11108
+ # @option params [Integer] :max_results
11109
+ # The maximum number of results to return per page.
11110
+ #
11111
+ # @option params [String] :next_token
11112
+ # The token for the next set of results. Use the value returned in the
11113
+ # previous response in the next request to retrieve the next set of
11114
+ # results.
11115
+ #
11116
+ # @option params [Types::Sort] :sort
11117
+ # Specifies a field to sort by and a sort order
11118
+ #
11119
+ # @return [Types::SearchContactsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11120
+ #
11121
+ # * {Types::SearchContactsResponse#contacts #contacts} => Array&lt;Types::ContactSearchSummary&gt;
11122
+ # * {Types::SearchContactsResponse#next_token #next_token} => String
11123
+ # * {Types::SearchContactsResponse#total_count #total_count} => Integer
11124
+ #
11125
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
11126
+ #
11127
+ # @example Request syntax with placeholder values
11128
+ #
11129
+ # resp = client.search_contacts({
11130
+ # instance_id: "InstanceId", # required
11131
+ # time_range: { # required
11132
+ # type: "INITIATION_TIMESTAMP", # required, accepts INITIATION_TIMESTAMP, SCHEDULED_TIMESTAMP, CONNECTED_TO_AGENT_TIMESTAMP, DISCONNECT_TIMESTAMP
11133
+ # start_time: Time.now, # required
11134
+ # end_time: Time.now, # required
11135
+ # },
11136
+ # search_criteria: {
11137
+ # agent_ids: ["AgentResourceId"],
11138
+ # agent_hierarchy_groups: {
11139
+ # l1_ids: ["HierarchyGroupId"],
11140
+ # l2_ids: ["HierarchyGroupId"],
11141
+ # l3_ids: ["HierarchyGroupId"],
11142
+ # l4_ids: ["HierarchyGroupId"],
11143
+ # l5_ids: ["HierarchyGroupId"],
11144
+ # },
11145
+ # channels: ["VOICE"], # accepts VOICE, CHAT, TASK
11146
+ # contact_analysis: {
11147
+ # transcript: {
11148
+ # criteria: [ # required
11149
+ # {
11150
+ # participant_role: "AGENT", # required, accepts AGENT, CUSTOMER, SYSTEM, CUSTOM_BOT
11151
+ # search_text: ["SearchText"], # required
11152
+ # match_type: "MATCH_ALL", # required, accepts MATCH_ALL, MATCH_ANY
11153
+ # },
11154
+ # ],
11155
+ # match_type: "MATCH_ALL", # accepts MATCH_ALL, MATCH_ANY
11156
+ # },
11157
+ # },
11158
+ # initiation_methods: ["INBOUND"], # accepts INBOUND, OUTBOUND, TRANSFER, QUEUE_TRANSFER, CALLBACK, API, DISCONNECT, MONITOR, EXTERNAL_OUTBOUND
11159
+ # queue_ids: ["QueueId"],
11160
+ # searchable_contact_attributes: {
11161
+ # criteria: [ # required
11162
+ # {
11163
+ # key: "SearchableContactAttributeKey", # required
11164
+ # values: ["SearchableContactAttributeValue"], # required
11165
+ # },
11166
+ # ],
11167
+ # match_type: "MATCH_ALL", # accepts MATCH_ALL, MATCH_ANY
11168
+ # },
11169
+ # },
11170
+ # max_results: 1,
11171
+ # next_token: "LargeNextToken",
11172
+ # sort: {
11173
+ # field_name: "INITIATION_TIMESTAMP", # required, accepts INITIATION_TIMESTAMP, SCHEDULED_TIMESTAMP, CONNECTED_TO_AGENT_TIMESTAMP, DISCONNECT_TIMESTAMP, INITIATION_METHOD, CHANNEL
11174
+ # order: "ASCENDING", # required, accepts ASCENDING, DESCENDING
11175
+ # },
11176
+ # })
11177
+ #
11178
+ # @example Response structure
11179
+ #
11180
+ # resp.contacts #=> Array
11181
+ # resp.contacts[0].arn #=> String
11182
+ # resp.contacts[0].id #=> String
11183
+ # resp.contacts[0].initial_contact_id #=> String
11184
+ # resp.contacts[0].previous_contact_id #=> String
11185
+ # resp.contacts[0].initiation_method #=> String, one of "INBOUND", "OUTBOUND", "TRANSFER", "QUEUE_TRANSFER", "CALLBACK", "API", "DISCONNECT", "MONITOR", "EXTERNAL_OUTBOUND"
11186
+ # resp.contacts[0].channel #=> String, one of "VOICE", "CHAT", "TASK"
11187
+ # resp.contacts[0].queue_info.id #=> String
11188
+ # resp.contacts[0].queue_info.enqueue_timestamp #=> Time
11189
+ # resp.contacts[0].agent_info.id #=> String
11190
+ # resp.contacts[0].agent_info.connected_to_agent_timestamp #=> Time
11191
+ # resp.contacts[0].initiation_timestamp #=> Time
11192
+ # resp.contacts[0].disconnect_timestamp #=> Time
11193
+ # resp.contacts[0].scheduled_timestamp #=> Time
11194
+ # resp.next_token #=> String
11195
+ # resp.total_count #=> Integer
11196
+ #
11197
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/SearchContacts AWS API Documentation
11198
+ #
11199
+ # @overload search_contacts(params = {})
11200
+ # @param [Hash] params ({})
11201
+ def search_contacts(params = {}, options = {})
11202
+ req = build_request(:search_contacts, params)
11203
+ req.send_request(options)
11204
+ end
11205
+
10694
11206
  # Searches the hours of operation in an Amazon Connect instance, with
10695
11207
  # optional filtering.
10696
11208
  #
@@ -10801,6 +11313,76 @@ module Aws::Connect
10801
11313
  req.send_request(options)
10802
11314
  end
10803
11315
 
11316
+ # Predefined attributes that meet certain criteria.
11317
+ #
11318
+ # @option params [required, String] :instance_id
11319
+ # The identifier of the Amazon Connect instance. You can find the
11320
+ # instance ID in the Amazon Resource Name (ARN) of the instance.
11321
+ #
11322
+ # @option params [String] :next_token
11323
+ # The token for the next set of results. Use the value returned in the
11324
+ # previous response in the next request to retrieve the next set of
11325
+ # results.
11326
+ #
11327
+ # @option params [Integer] :max_results
11328
+ # The maximum number of results to return per page.
11329
+ #
11330
+ # @option params [Types::PredefinedAttributeSearchCriteria] :search_criteria
11331
+ # The search criteria to be used to return predefined attributes.
11332
+ #
11333
+ # @return [Types::SearchPredefinedAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
11334
+ #
11335
+ # * {Types::SearchPredefinedAttributesResponse#predefined_attributes #predefined_attributes} => Array&lt;Types::PredefinedAttribute&gt;
11336
+ # * {Types::SearchPredefinedAttributesResponse#next_token #next_token} => String
11337
+ # * {Types::SearchPredefinedAttributesResponse#approximate_total_count #approximate_total_count} => Integer
11338
+ #
11339
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
11340
+ #
11341
+ # @example Request syntax with placeholder values
11342
+ #
11343
+ # resp = client.search_predefined_attributes({
11344
+ # instance_id: "InstanceId", # required
11345
+ # next_token: "NextToken2500",
11346
+ # max_results: 1,
11347
+ # search_criteria: {
11348
+ # or_conditions: [
11349
+ # {
11350
+ # # recursive PredefinedAttributeSearchCriteria
11351
+ # },
11352
+ # ],
11353
+ # and_conditions: [
11354
+ # {
11355
+ # # recursive PredefinedAttributeSearchCriteria
11356
+ # },
11357
+ # ],
11358
+ # string_condition: {
11359
+ # field_name: "String",
11360
+ # value: "String",
11361
+ # comparison_type: "STARTS_WITH", # accepts STARTS_WITH, CONTAINS, EXACT
11362
+ # },
11363
+ # },
11364
+ # })
11365
+ #
11366
+ # @example Response structure
11367
+ #
11368
+ # resp.predefined_attributes #=> Array
11369
+ # resp.predefined_attributes[0].name #=> String
11370
+ # resp.predefined_attributes[0].values.string_list #=> Array
11371
+ # resp.predefined_attributes[0].values.string_list[0] #=> String
11372
+ # resp.predefined_attributes[0].last_modified_time #=> Time
11373
+ # resp.predefined_attributes[0].last_modified_region #=> String
11374
+ # resp.next_token #=> String
11375
+ # resp.approximate_total_count #=> Integer
11376
+ #
11377
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/SearchPredefinedAttributes AWS API Documentation
11378
+ #
11379
+ # @overload search_predefined_attributes(params = {})
11380
+ # @param [Hash] params ({})
11381
+ def search_predefined_attributes(params = {}, options = {})
11382
+ req = build_request(:search_predefined_attributes, params)
11383
+ req.send_request(options)
11384
+ end
11385
+
10804
11386
  # Searches prompts in an Amazon Connect instance, with optional
10805
11387
  # filtering.
10806
11388
  #
@@ -12134,6 +12716,29 @@ module Aws::Connect
12134
12716
  # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html
12135
12717
  # [2]: https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-service-limits.html#outbound-communications-quotas
12136
12718
  #
12719
+ # @option params [String] :name
12720
+ # The name of a voice contact that is shown to an agent in the Contact
12721
+ # Control Panel (CCP).
12722
+ #
12723
+ # @option params [String] :description
12724
+ # A description of the voice contact that is shown to an agent in the
12725
+ # Contact Control Panel (CCP).
12726
+ #
12727
+ # @option params [Hash<String,Types::Reference>] :references
12728
+ # A formatted URL that is shown to an agent in the Contact Control Panel
12729
+ # (CCP). Contacts can have the following reference types at the time of
12730
+ # creation: `URL` \| `NUMBER` \| `STRING` \| `DATE` \| `EMAIL`.
12731
+ # `ATTACHMENT` is not a supported reference type during voice contact
12732
+ # creation.
12733
+ #
12734
+ # @option params [String] :related_contact_id
12735
+ # The `contactId` that is related to this contact. Linking voice, task,
12736
+ # or chat by using `RelatedContactID` copies over contact attributes
12737
+ # from the related contact to the new contact. All updates to
12738
+ # user-defined attributes in the new contact are limited to the
12739
+ # individual contact ID. There are no limits to the number of contacts
12740
+ # that can be linked by using `RelatedContactId`.
12741
+ #
12137
12742
  # @option params [required, String] :destination_phone_number
12138
12743
  # The phone number of the customer, in E.164 format.
12139
12744
  #
@@ -12210,6 +12815,15 @@ module Aws::Connect
12210
12815
  # @example Request syntax with placeholder values
12211
12816
  #
12212
12817
  # resp = client.start_outbound_voice_contact({
12818
+ # name: "Name",
12819
+ # description: "Description",
12820
+ # references: {
12821
+ # "ReferenceKey" => {
12822
+ # value: "ReferenceValue", # required
12823
+ # type: "URL", # required, accepts URL, ATTACHMENT, NUMBER, STRING, DATE, EMAIL
12824
+ # },
12825
+ # },
12826
+ # related_contact_id: "ContactId",
12213
12827
  # destination_phone_number: "PhoneNumber", # required
12214
12828
  # contact_flow_id: "ContactFlowId", # required
12215
12829
  # instance_id: "InstanceId", # required
@@ -13496,6 +14110,68 @@ module Aws::Connect
13496
14110
  req.send_request(options)
13497
14111
  end
13498
14112
 
14113
+ # This API is in preview release for Amazon Connect and is subject to
14114
+ # change.
14115
+ #
14116
+ # Updates routing priority and age on the contact (**QueuePriority** and
14117
+ # **QueueTimeAdjustmentInSeconds**). These properties can be used to
14118
+ # change a customer's position in the queue. For example, you can move
14119
+ # a contact to the back of the queue by setting a lower routing priority
14120
+ # relative to other contacts in queue; or you can move a contact to the
14121
+ # front of the queue by increasing the routing age which will make the
14122
+ # contact look artificially older and therefore higher up in the
14123
+ # first-in-first-out routing order. Note that adjusting the routing age
14124
+ # of a contact affects only its position in queue, and not its actual
14125
+ # queue wait time as reported through metrics. These properties can also
14126
+ # be updated by using [the Set routing priority / age flow block][1].
14127
+ #
14128
+ #
14129
+ #
14130
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/change-routing-priority.html
14131
+ #
14132
+ # @option params [required, String] :instance_id
14133
+ # The identifier of the Amazon Connect instance. You can [find the
14134
+ # instance ID][1] in the Amazon Resource Name (ARN) of the instance.
14135
+ #
14136
+ #
14137
+ #
14138
+ # [1]: https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html
14139
+ #
14140
+ # @option params [required, String] :contact_id
14141
+ # The identifier of the contact in this instance of Amazon Connect.
14142
+ #
14143
+ # @option params [Integer] :queue_time_adjustment_seconds
14144
+ # The number of seconds to add or subtract from the contact's routing
14145
+ # age. Contacts are routed to agents on a first-come, first-serve basis.
14146
+ # This means that changing their amount of time in queue compared to
14147
+ # others also changes their position in queue.
14148
+ #
14149
+ # @option params [Integer] :queue_priority
14150
+ # Priority of the contact in the queue. The default priority for new
14151
+ # contacts is 5. You can raise the priority of a contact compared to
14152
+ # other contacts in the queue by assigning them a higher priority, such
14153
+ # as 1 or 2.
14154
+ #
14155
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
14156
+ #
14157
+ # @example Request syntax with placeholder values
14158
+ #
14159
+ # resp = client.update_contact_routing_data({
14160
+ # instance_id: "InstanceId", # required
14161
+ # contact_id: "ContactId", # required
14162
+ # queue_time_adjustment_seconds: 1,
14163
+ # queue_priority: 1,
14164
+ # })
14165
+ #
14166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateContactRoutingData AWS API Documentation
14167
+ #
14168
+ # @overload update_contact_routing_data(params = {})
14169
+ # @param [Hash] params ({})
14170
+ def update_contact_routing_data(params = {}, options = {})
14171
+ req = build_request(:update_contact_routing_data, params)
14172
+ req.send_request(options)
14173
+ end
14174
+
13499
14175
  # Updates the scheduled time of a task contact that is already
13500
14176
  # scheduled.
13501
14177
  #
@@ -14050,6 +14726,40 @@ module Aws::Connect
14050
14726
  req.send_request(options)
14051
14727
  end
14052
14728
 
14729
+ # Updates a predefined attribute for the specified Amazon Connect
14730
+ # instance.
14731
+ #
14732
+ # @option params [required, String] :instance_id
14733
+ # The identifier of the Amazon Connect instance. You can find the
14734
+ # instance ID in the Amazon Resource Name (ARN) of the instance.
14735
+ #
14736
+ # @option params [required, String] :name
14737
+ # The name of the predefined attribute.
14738
+ #
14739
+ # @option params [Types::PredefinedAttributeValues] :values
14740
+ # The values of the predefined attribute.
14741
+ #
14742
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
14743
+ #
14744
+ # @example Request syntax with placeholder values
14745
+ #
14746
+ # resp = client.update_predefined_attribute({
14747
+ # instance_id: "InstanceId", # required
14748
+ # name: "PredefinedAttributeName", # required
14749
+ # values: {
14750
+ # string_list: ["PredefinedAttributeStringValue"],
14751
+ # },
14752
+ # })
14753
+ #
14754
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdatePredefinedAttribute AWS API Documentation
14755
+ #
14756
+ # @overload update_predefined_attribute(params = {})
14757
+ # @param [Hash] params ({})
14758
+ def update_predefined_attribute(params = {}, options = {})
14759
+ req = build_request(:update_predefined_attribute, params)
14760
+ req.send_request(options)
14761
+ end
14762
+
14053
14763
  # Updates a prompt.
14054
14764
  #
14055
14765
  # @option params [required, String] :instance_id
@@ -14678,7 +15388,7 @@ module Aws::Connect
14678
15388
  # function: "RuleFunction", # required
14679
15389
  # actions: [ # required
14680
15390
  # {
14681
- # action_type: "CREATE_TASK", # required, accepts CREATE_TASK, ASSIGN_CONTACT_CATEGORY, GENERATE_EVENTBRIDGE_EVENT, SEND_NOTIFICATION
15391
+ # action_type: "CREATE_TASK", # required, accepts CREATE_TASK, ASSIGN_CONTACT_CATEGORY, GENERATE_EVENTBRIDGE_EVENT, SEND_NOTIFICATION, CREATE_CASE, UPDATE_CASE, END_ASSOCIATED_TASKS
14682
15392
  # task_action: {
14683
15393
  # name: "TaskNameExpression", # required
14684
15394
  # description: "TaskDescriptionExpression",
@@ -14707,6 +15417,37 @@ module Aws::Connect
14707
15417
  # user_ids: ["UserId"],
14708
15418
  # },
14709
15419
  # },
15420
+ # create_case_action: {
15421
+ # fields: [ # required
15422
+ # {
15423
+ # id: "FieldValueId", # required
15424
+ # value: { # required
15425
+ # boolean_value: false,
15426
+ # double_value: 1.0,
15427
+ # empty_value: {
15428
+ # },
15429
+ # string_value: "FieldStringValue",
15430
+ # },
15431
+ # },
15432
+ # ],
15433
+ # template_id: "TemplateId", # required
15434
+ # },
15435
+ # update_case_action: {
15436
+ # fields: [ # required
15437
+ # {
15438
+ # id: "FieldValueId", # required
15439
+ # value: { # required
15440
+ # boolean_value: false,
15441
+ # double_value: 1.0,
15442
+ # empty_value: {
15443
+ # },
15444
+ # string_value: "FieldStringValue",
15445
+ # },
15446
+ # },
15447
+ # ],
15448
+ # },
15449
+ # end_associated_tasks_action: {
15450
+ # },
14710
15451
  # },
14711
15452
  # ],
14712
15453
  # publish_status: "DRAFT", # required, accepts DRAFT, PUBLISHED
@@ -15225,6 +15966,45 @@ module Aws::Connect
15225
15966
  req.send_request(options)
15226
15967
  end
15227
15968
 
15969
+ # Updates the properties associated with the proficiencies of a user.
15970
+ #
15971
+ # @option params [required, String] :instance_id
15972
+ # The identifier of the Amazon Connect instance. You can find the
15973
+ # instance ID in the Amazon Resource Name (ARN) of the instance.
15974
+ #
15975
+ # @option params [required, String] :user_id
15976
+ # The identifier of the user account.
15977
+ #
15978
+ # @option params [required, Array<Types::UserProficiency>] :user_proficiencies
15979
+ # The proficiencies to be updated for the user. Proficiencies must first
15980
+ # be associated to the user. You can do this using
15981
+ # AssociateUserProficiencies API.
15982
+ #
15983
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
15984
+ #
15985
+ # @example Request syntax with placeholder values
15986
+ #
15987
+ # resp = client.update_user_proficiencies({
15988
+ # instance_id: "InstanceId", # required
15989
+ # user_id: "UserId", # required
15990
+ # user_proficiencies: [ # required
15991
+ # {
15992
+ # attribute_name: "PredefinedAttributeName", # required
15993
+ # attribute_value: "PredefinedAttributeStringValue", # required
15994
+ # level: 1.0, # required
15995
+ # },
15996
+ # ],
15997
+ # })
15998
+ #
15999
+ # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/UpdateUserProficiencies AWS API Documentation
16000
+ #
16001
+ # @overload update_user_proficiencies(params = {})
16002
+ # @param [Hash] params ({})
16003
+ def update_user_proficiencies(params = {}, options = {})
16004
+ req = build_request(:update_user_proficiencies, params)
16005
+ req.send_request(options)
16006
+ end
16007
+
15228
16008
  # Assigns the specified routing profile to the specified user.
15229
16009
  #
15230
16010
  # @option params [required, String] :routing_profile_id
@@ -15415,7 +16195,7 @@ module Aws::Connect
15415
16195
  params: params,
15416
16196
  config: config)
15417
16197
  context[:gem_name] = 'aws-sdk-connect'
15418
- context[:gem_version] = '1.143.0'
16198
+ context[:gem_version] = '1.145.0'
15419
16199
  Seahorse::Client::Request.new(handlers, context)
15420
16200
  end
15421
16201