2018/09/24 - Amazon Connect Service - 2 new api methods
Changes This update adds the Amazon Connect Metrics API, which lets you get current metric data and historical metric data within 24 hours for the queues in your Amazon Connect instance.
The GetMetricData operation retrieves historical metrics data from your Amazon Connect instance.
If you are using an IAM account, it must have permission to the connect:GetMetricData action.
See also: AWS API Documentation
Request Syntax
client.get_metric_data( InstanceId='string', StartTime=datetime(2015, 1, 1), EndTime=datetime(2015, 1, 1), Filters={ 'Queues': [ 'string', ], 'Channels': [ 'VOICE', ] }, Groupings=[ 'QUEUE'|'CHANNEL', ], HistoricalMetrics=[ { 'Name': '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', 'Threshold': { 'Comparison': 'LT', 'ThresholdValue': 123.0 }, 'Statistic': 'SUM'|'MAX'|'AVG', 'Unit': 'SECONDS'|'COUNT'|'PERCENT' }, ], NextToken='string', MaxResults=123 )
string
[REQUIRED]
The identifier for your Amazon Connect instance. To find the ID of your instance, open the AWS console and select Amazon Connect. Select the alias of the instance in the Instance alias column. The instance ID is displayed in the Overview section of your instance settings. For example, the instance ID is the set of characters at the end of the instance ARN, after instance/, such as 10a4c4eb-f57e-4d4c-b602-bf39176ced07.
datetime
[REQUIRED]
The timestamp, in UNIX Epoch time format, at which to start the reporting interval for the retrieval of historical metrics data. The time must be specified using a multiple of 5 minutes, such as 10:05, 10:10, 10:15.
StartTime cannot be earlier than 24 hours before the time of the request. Historical metrics are available in Amazon Connect only for 24 hours.
datetime
[REQUIRED]
The timestamp, in UNIX Epoch time format, at which to end the reporting interval for the retrieval of historical metrics data. The time must be specified using an interval of 5 minutes, such as 11:00, 11:05, 11:10, and must be later than the StartTime timestamp.
The time range between StartTime and EndTime must be less than 24 hours.
dict
[REQUIRED]
A Filters object that contains a list of queue IDs or queue ARNs, up to 100, or a list of Channels to use to filter the metrics returned in the response. Metric data is retrieved only for the resources associated with the IDs, ARNs, or Channels included in the filter. You can use both IDs and ARNs together in a request. Only VOICE is supported for Channel.
To find the ARN for a queue, open the queue you want to use in the Amazon Connect Queue editor. The ARN for the queue is displayed in the address bar as part of the URL. For example, the queue ARN is the set of characters at the end of the URL, after 'id=' such as arn:aws:connect:us-east-1:270923740243:instance/78fb859d-1b7d-44b1-8aa3-12f0835c5855/queue/1d1a4575-9618-40ab-bbeb-81e45795fe61 . The queue ID is also included in the URL, and is the string after 'queue/'.
Queues (list) --
A list of up to 100 queue IDs or queue ARNs to use to filter the metrics retrieved. You can include both IDs and ARNs in a request.
(string) --
Channels (list) --
The Channel to use as a filter for the metrics returned. Only VOICE is supported.
(string) --
list
The grouping applied to the metrics returned. For example, when results are grouped by queueId, the metrics returned are grouped by queue. The values returned apply to the metrics for each queue rather than aggregated for all queues.
The current version supports grouping by Queue
If no Grouping is included in the request, a summary of HistoricalMetrics for all queues is returned.
(string) --
list
[REQUIRED]
A list of HistoricalMetric objects that contain the metrics to retrieve with the request.
A HistoricalMetric object contains: HistoricalMetricName , Statistic , Threshold , and Unit .
For each historical metric you include in the request, you must include a Unit and a Statistic .
The following historical metrics are available:
CONTACTS_QUEUED
Unit: COUNT
Statistic: SUM
CONTACTS_HANDLED
Unit: COUNT
Statistics: SUM
CONTACTS_ABANDONED
Unit: COUNT
Statistics: SUM
CONTACTS_CONSULTED
Unit: COUNT
Statistics: SUM
CONTACTS_AGENT_HUNG_UP_FIRST
Unit: COUNT
Statistics: SUM
CONTACTS_HANDLED_INCOMING
Unit: COUNT
Statistics: SUM
CONTACTS_HANDLED_OUTBOUND
Unit: COUNT
Statistics: SUM
CONTACTS_HOLD_ABANDONS
Unit: COUNT
Statistics: SUM
CONTACTS_TRANSFERRED_IN
Unit: COUNT
Statistics: SUM
CONTACTS_TRANSFERRED_OUT
Unit: COUNT
Statistics: SUM
CONTACTS_TRANSFERRED_IN_FROM_QUEUE
Unit: COUNT
Statistics: SUM
CONTACTS_TRANSFERRED_OUT_FROM_QUEUE
Unit: COUNT
Statistics: SUM
CALLBACK_CONTACTS_HANDLED
Unit: COUNT
Statistics: SUM
CALLBACK_CONTACTS_HANDLED
Unit: COUNT
Statistics: SUM
API_CONTACTS_HANDLED
Unit: COUNT
Statistics: SUM
CONTACTS_MISSED
Unit: COUNT
Statistics: SUM
OCCUPANCY
Unit: PERCENT
Statistics: AVG
HANDLE_TIME
Unit: SECONDS
Statistics: AVG
AFTER_CONTACT_WORK_TIME
Unit: SECONDS
Statistics: AVG
QUEUED_TIME
Unit: SECONDS
Statistics: MAX
ABANDON_TIME
Unit: COUNT
Statistics: SUM
QUEUE_ANSWER_TIME
Unit: SECONDS
Statistics: AVG
HOLD_TIME
Unit: SECONDS
Statistics: AVG
INTERACTION_TIME
Unit: SECONDS
Statistics: AVG
INTERACTION_AND_HOLD_TIME
Unit: SECONDS
Statistics: AVG
SERVICE_LEVEL
Unit: PERCENT
Statistics: AVG
Threshold: Only "Less than" comparisons are supported, with the following service level thresholds: 15, 20, 25, 30, 45, 60, 90, 120, 180, 240, 300, 600
(dict) --
A HistoricalMetric object that contains the Name, Unit, Statistic, and Threshold for the metric.
Name (string) --
The name of the historical metric.
Threshold (dict) --
The threshold for the metric, used with service level metrics.
Comparison (string) --
The Threshold to use to compare service level metrics to. Only "Less than" (LT) comparisons are supported.
ThresholdValue (float) --
The value of the threshold to compare the metric to. Only "Less than" (LT) comparisons are supported.
Statistic (string) --
The statistic for the metric: SUM, MAX, or SUM.
Unit (string) --
The unit for the metric: COUNT, PERCENT, or SECONDS.
string
The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
integer
Indicates the maximum number of results to return per page in the response, between 1-100.
dict
Response Syntax
{ 'NextToken': 'string', 'MetricResults': [ { 'Dimensions': { 'Queue': { 'Id': 'string', 'Arn': 'string' }, 'Channel': 'VOICE' }, 'Collections': [ { 'Metric': { 'Name': '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', 'Threshold': { 'Comparison': 'LT', 'ThresholdValue': 123.0 }, 'Statistic': 'SUM'|'MAX'|'AVG', 'Unit': 'SECONDS'|'COUNT'|'PERCENT' }, 'Value': 123.0 }, ] }, ] }
Response Structure
(dict) --
NextToken (string) --
A string returned in the response. Use the value returned in the response as the value of the NextToken in a subsequent request to retrieve the next set of results.
The token expires after 5 minutes from the time it is created. Subsequent requests that use the NextToken must use the same request parameters as the request that generated the token.
MetricResults (list) --
A list of HistoricalMetricResult objects, organized by Dimensions , which is the ID of the resource specified in the Filters used for the request. The metrics are combined with the metrics included in Collections , which is a list of HisotricalMetricData objects.
If no Grouping is specified in the request, Collections includes summary data for the HistoricalMetrics .
(dict) --
The metrics data returned from a GetMetricData operation.
Dimensions (dict) --
The Dimensions for the metrics.
Queue (dict) --
A QueueReference object used as one part of dimension for the metrics results.
Id (string) --
The ID of the queue associated with the metrics returned.
Arn (string) --
The Amazon Resource Name (ARN) of queue.
Channel (string) --
The channel used for grouping and filters. Only VOICE is supported.
Collections (list) --
A list of HistoricalMetricData objects.
(dict) --
A HistoricalMetricData object than contains a Metric and a Value .
Metric (dict) --
A HistoricalMetric object.
Name (string) --
The name of the historical metric.
Threshold (dict) --
The threshold for the metric, used with service level metrics.
Comparison (string) --
The Threshold to use to compare service level metrics to. Only "Less than" (LT) comparisons are supported.
ThresholdValue (float) --
The value of the threshold to compare the metric to. Only "Less than" (LT) comparisons are supported.
Statistic (string) --
The statistic for the metric: SUM, MAX, or SUM.
Unit (string) --
The unit for the metric: COUNT, PERCENT, or SECONDS.
Value (float) --
The Value of the metric.
The GetCurrentMetricData operation retrieves current metric data from your Amazon Connect instance.
If you are using an IAM account, it must have permission to the connect:GetCurrentMetricData action.
See also: AWS API Documentation
Request Syntax
client.get_current_metric_data( InstanceId='string', Filters={ 'Queues': [ 'string', ], 'Channels': [ 'VOICE', ] }, Groupings=[ 'QUEUE'|'CHANNEL', ], CurrentMetrics=[ { 'Name': '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', 'Unit': 'SECONDS'|'COUNT'|'PERCENT' }, ], NextToken='string', MaxResults=123 )
string
[REQUIRED]
The identifier for your Amazon Connect instance. To find the ID of your instance, open the AWS console and select Amazon Connect. Select the alias of the instance in the Instance alias column. The instance ID is displayed in the Overview section of your instance settings. For example, the instance ID is the set of characters at the end of the instance ARN, after instance/, such as 10a4c4eb-f57e-4d4c-b602-bf39176ced07.
dict
[REQUIRED]
A Filters object that contains a list of queue IDs or queue ARNs, up to 100, or list of Channels to use to filter the metrics returned in the response. Metric data is retrieved only for the resources associated with the queue IDs, ARNs, or Channels included in the filter. You can include both IDs and ARNs in the same request. To retrieve metrics for all queues, add the queue ID or ARN for each queue in your instance. Only VOICE is supported for Channels.
To find the ARN for a queue, open the queue you want to use in the Amazon Connect Queue editor. The ARN for the queue is displayed in the address bar as part of the URL. For example, the queue ARN is the set of characters at the end of the URL, after 'id=' such as arn:aws:connect:us-east-1:270923740243:instance/78fb859d-1b7d-44b1-8aa3-12f0835c5855/queue/1d1a4575-9618-40ab-bbeb-81e45795fe61 . The queue ID is also included in the URL, and is the string after 'queue/'.
Queues (list) --
A list of up to 100 queue IDs or queue ARNs to use to filter the metrics retrieved. You can include both IDs and ARNs in a request.
(string) --
Channels (list) --
The Channel to use as a filter for the metrics returned. Only VOICE is supported.
(string) --
list
The grouping applied to the metrics returned. For example, when grouped by QUEUE, the metrics returned apply to each queue rather than aggregated for all queues. If you group by CHANNEL, you should include a Channels filter. The only supported channel is VOICE.
If no Grouping is included in the request, a summary of CurrentMetrics is returned.
(string) --
list
[REQUIRED]
A list of CurrentMetric objects for the metrics to retrieve. Each CurrentMetric includes a name of a metric to retrieve and the unit to use for it.
The following metrics are available:
AGENTS_AVAILABLE
Unit: COUNT
AGENTS_ONLINE
Unit: COUNT
AGENTS_ON_CALL
Unit: COUNT
AGENTS_STAFFED
Unit: COUNT
AGENTS_AFTER_CONTACT_WORK
Unit: COUNT
AGENTS_NON_PRODUCTIVE
Unit: COUNT
AGENTS_ERROR
Unit: COUNT
CONTACTS_IN_QUEUE
Unit: COUNT
OLDEST_CONTACT_AGE
Unit: SECONDS
CONTACTS_SCHEDULED
Unit: COUNT
(dict) --
A CurrentMetric object that contains the Name and Unit for the metric.
Name (string) --
The name of the metric.
Unit (string) --
The unit for the metric.
string
The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
The token expires after 5 minutes from the time it is created. Subsequent requests that use the `NextToken must use the same request parameters as the request that generated the token.
integer
MaxResults indicates the maximum number of results to return per page in the response, between 1 and 100.
dict
Response Syntax
{ 'NextToken': 'string', 'MetricResults': [ { 'Dimensions': { 'Queue': { 'Id': 'string', 'Arn': 'string' }, 'Channel': 'VOICE' }, 'Collections': [ { 'Metric': { 'Name': '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', 'Unit': 'SECONDS'|'COUNT'|'PERCENT' }, 'Value': 123.0 }, ] }, ], 'DataSnapshotTime': datetime(2015, 1, 1) }
Response Structure
(dict) --
NextToken (string) --
A string returned in the response. Use the value returned in the response as the value of the NextToken in a subsequent request to retrieve the next set of results.
The token expires after 5 minutes from the time it is created. Subsequent requests that use the NextToken must use the same request parameters as the request that generated the token.
MetricResults (list) --
A list of CurrentMetricResult objects organized by Dimensions combining with CurrentMetricDataCollections .
Dimensions is the resourceId specified in the Filters of the request.
Collections is a list of CurrentMetricData objects with corresponding values to the CurrentMetrics specified in the request.
If no Grouping is specified in the request, Collections is a summary for the CurrentMetric returned.
(dict) --
A CurrentMetricResult object.
Dimensions (dict) --
The Dimensions for the CurrentMetricResult object.
Queue (dict) --
A QueueReference object used as one part of dimension for the metrics results.
Id (string) --
The ID of the queue associated with the metrics returned.
Arn (string) --
The Amazon Resource Name (ARN) of queue.
Channel (string) --
The channel used for grouping and filters. Only VOICE is supported.
Collections (list) --
The Collections for the CurrentMetricResult object.
(dict) --
A CurrentMetricData object.
Metric (dict) --
The metric in a CurrentMetricData object.
Name (string) --
The name of the metric.
Unit (string) --
The unit for the metric.
Value (float) --
The value of the metric in the CurrentMetricData object.
DataSnapshotTime (datetime) --
The time at which CurrentMetricData was retrieved and cached for pagination.