Amazon Connect Service
API Reference (API Version 2017-08-08)

GetMetricData

Gets historical metric data from the specified Amazon Connect instance.

For more information, see Historical Metrics Reports in the Amazon Connect Administrator Guide.

Request Syntax

POST /metrics/historical/InstanceId HTTP/1.1 Content-type: application/json { "EndTime": number, "Filters": { "Channels": [ "string" ], "Queues": [ "string" ] }, "Groupings": [ "string" ], "HistoricalMetrics": [ { "Name": "string", "Statistic": "string", "Threshold": { "Comparison": "string", "ThresholdValue": number }, "Unit": "string" } ], "MaxResults": number, "NextToken": "string", "StartTime": number }

URI Request Parameters

The request requires the following URI parameters.

InstanceId

The identifier of the Amazon Connect instance.

Length Constraints: Minimum length of 1. Maximum length of 100.

Request Body

The request accepts the following data in JSON format.

EndTime

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 start time timestamp.

The time range between the start and end time must be less than 24 hours.

Type: Timestamp

Required: Yes

Filters

The queues, up to 100, or channels, to use to filter the metrics returned. Metric data is retrieved only for the resources associated with the queues or channels included in the filter. You can include both queue IDs and queue ARNs in the same request. The only supported channel is VOICE.

Type: Filters object

Required: Yes

Groupings

The grouping applied to the metrics returned. For example, when results are grouped by queue, the metrics returned are grouped by queue. The values returned apply to the metrics for each queue rather than aggregated for all queues.

The only supported grouping is QUEUE.

If no grouping is specified, a summary of metrics for all queues is returned.

Type: Array of strings

Array Members: Maximum number of 2 items.

Valid Values: QUEUE | CHANNEL

Required: No

HistoricalMetrics

The metrics to retrieve. Specify the name, unit, and statistic for each metric. The following historical metrics are available:

ABANDON_TIME

Unit: SECONDS

Statistic: AVG

AFTER_CONTACT_WORK_TIME

Unit: SECONDS

Statistic: AVG

API_CONTACTS_HANDLED

Unit: COUNT

Statistic: SUM

CALLBACK_CONTACTS_HANDLED

Unit: COUNT

Statistic: SUM

CONTACTS_ABANDONED

Unit: COUNT

Statistic: SUM

CONTACTS_AGENT_HUNG_UP_FIRST

Unit: COUNT

Statistic: SUM

CONTACTS_CONSULTED

Unit: COUNT

Statistic: SUM

CONTACTS_HANDLED

Unit: COUNT

Statistic: SUM

CONTACTS_HANDLED_INCOMING

Unit: COUNT

Statistic: SUM

CONTACTS_HANDLED_OUTBOUND

Unit: COUNT

Statistic: SUM

CONTACTS_HOLD_ABANDONS

Unit: COUNT

Statistic: SUM

CONTACTS_MISSED

Unit: COUNT

Statistic: SUM

CONTACTS_QUEUED

Unit: COUNT

Statistic: SUM

CONTACTS_TRANSFERRED_IN

Unit: COUNT

Statistic: SUM

CONTACTS_TRANSFERRED_IN_FROM_QUEUE

Unit: COUNT

Statistic: SUM

CONTACTS_TRANSFERRED_OUT

Unit: COUNT

Statistic: SUM

CONTACTS_TRANSFERRED_OUT_FROM_QUEUE

Unit: COUNT

Statistic: SUM

HANDLE_TIME

Unit: SECONDS

Statistic: AVG

HOLD_TIME

Unit: SECONDS

Statistic: AVG

INTERACTION_AND_HOLD_TIME

Unit: SECONDS

Statistic: AVG

INTERACTION_TIME

Unit: SECONDS

Statistic: AVG

OCCUPANCY

Unit: PERCENT

Statistic: AVG

QUEUE_ANSWER_TIME

Unit: SECONDS

Statistic: AVG

QUEUED_TIME

Unit: SECONDS

Statistic: MAX

SERVICE_LEVEL

Unit: PERCENT

Statistic: 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

Type: Array of HistoricalMetric objects

Required: Yes

MaxResults

The maximum number of results to return per page.

Type: Integer

Valid Range: Minimum value of 1. Maximum value of 100.

Required: No

NextToken

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.

Type: String

Required: No

StartTime

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.

The start time cannot be earlier than 24 hours before the time of the request. Historical metrics are available only for 24 hours.

Type: Timestamp

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "MetricResults": [ { "Collections": [ { "Metric": { "Name": "string", "Statistic": "string", "Threshold": { "Comparison": "string", "ThresholdValue": number }, "Unit": "string" }, "Value": number } ], "Dimensions": { "Channel": "string", "Queue": { "Arn": "string", "Id": "string" } } } ], "NextToken": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

MetricResults

Information about the historical metrics.

If no grouping is specified, a summary of metric data is returned.

Type: Array of HistoricalMetricResult objects

NextToken

If there are additional results, this is the token for the next set of results.

The token expires after 5 minutes from the time it is created. Subsequent requests that use the token must use the same request parameters as the request that generated the token.

Type: String

Errors

For information about the errors that are common to all actions, see Common Errors.

InternalServiceException

Request processing failed due to an error or failure with the service.

HTTP Status Code: 500

InvalidParameterException

One or more of the specified parameters are not valid.

HTTP Status Code: 400

InvalidRequestException

The request is not valid.

HTTP Status Code: 400

ResourceNotFoundException

The specified resource was not found.

HTTP Status Code: 404

ThrottlingException

The throttling limit has been exceeded.

HTTP Status Code: 429

Example

The following example retrieves the specified historical metrics.

Sample Request

{ "InstanceId" : "12345678-1234-5678-aabb-123456abcdef", "StartTime": 1548979200, "EndTime": 1549051200, "Filters" : { "Queues" : [ "11111111-2222-fcfc-abab-333333333333" ], "Channels" : ["VOICE"] }, "Groupings" : [ "QUEUE", "CHANNEL" ], "HistoricalMetrics" : [ { "Name" : "AFTER_CONTACT_WORK_TIME", "Unit" : "SECONDS", "Statistic" : "AVG" }, { "Name" : "CONTACTS_QUEUED", "Unit" : "COUNT", "Statistic" : "SUM" }, { "Name" : "CONTACTS_HANDLED", "Unit" : "COUNT", "Statistic" : "SUM" }, { "Name" : "HANDLE_TIME", "Unit" : "SECONDS", "Statistic" : "AVG" }, { "Name" : "CONTACTS_TRANSFERRED_OUT", "Unit" : "COUNT", "Statistic" : "SUM" }, { "Name" : "CONTACTS_MISSED", "Unit" : "COUNT", "Statistic" : "SUM" }, { "Name" : "OCCUPANCY", "Unit" : "PERCENT", "Statistic" : "AVG" }, { "Name" : "QUEUED_TIME", "Unit" : "SECONDS", "Statistic" : "MAX" }, { "Name" : "HOLD_TIME", "Unit" : "SECONDS", "Statistic" : "AVG" }, { "Name" : "SERVICE_LEVEL", "Threshold" : { "Comparison" : "LT", "ThresholdValue" : 60.0 }, "Unit" : "PERCENT", "Statistic" : "AVG" }, { "Name" : "SERVICE_LEVEL", "Threshold" : { "Comparison" : "LT", "ThresholdValue" : 120.0 }, "Unit" : "PERCENT", "Statistic" : "AVG" }, { "Name" : "SERVICE_LEVEL", "Threshold" : { "Comparison" : "LT", "ThresholdValue" : 30.0 }, "Unit" : "PERCENT", "Statistic" : "AVG" } ] }

Sample Response

{ "MetricResults": [ { "Collections": [ { "Metric": { "Name": "OCCUPANCY", "Statistic": "AVG", "Threshold": null, "Unit": "PERCENT" }, "Value": 0 }, { "Metric": { "Name": "CONTACTS_MISSED", "Statistic": "SUM", "Threshold": null, "Unit": "COUNT" }, "Value": 0 } ], "Dimensions": { "Channel": "VOICE", "Queue": { "Arn": "arn:aws:connect:us-west-2:123456789012:instance/12345678-1234-5678-aabb-123456abcdef/queue/11111111-2222-fcfc-abab-333333333333", "Id": "11111111-2222-fcfc-abab-333333333333" } } } ] }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: