Skip to content

Get Metric Data

connect_get_metric_data R Documentation

Gets historical metric data from the specified Connect Customer instance

Description

Gets historical metric data from the specified Connect Customer instance.

For a description of each historical metric, see Metrics definitions in the Connect Customer Administrator Guide.

We recommend using the get_metric_data_v2 API. It provides more flexibility, features, and the ability to query longer time ranges than get_metric_data. Use it to retrieve historical agent and contact metrics for the last 3 months, at varying intervals. You can also use it to build custom dashboards to measure historical queue and agent performance. For example, you can track the number of incoming contacts for the last 7 days, with data split by day, to see how contact volume changed per day of the week.

Usage

connect_get_metric_data(InstanceId, StartTime, EndTime, Filters,
  Groupings, HistoricalMetrics, NextToken, MaxResults)

Arguments

InstanceId

[required] The identifier of the Connect Customer instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

StartTime

[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.

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

EndTime

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

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

Filters

[required] 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. VOICE, CHAT, and TASK channels are supported.

RoutingStepExpression is not a valid filter for GetMetricData and we recommend switching to GetMetricDataV2 for more up-to-date features.

To filter by Queues, enter the queue ID/ARN, not the name of the queue.

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.

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

RoutingStepExpression is not a valid filter for GetMetricData and we recommend switching to GetMetricDataV2 for more up-to-date features.

HistoricalMetrics

[required] The metrics to retrieve. Specify the name, unit, and statistic for each metric. The following historical metrics are available. For a description of each metric, see Metrics definition in the Connect Customer Administrator Guide.

This API does not support a contacts incoming metric (there's no CONTACTS_INCOMING metric missing from the documented list).

ABANDON_TIME

Unit: SECONDS

Statistic: AVG

UI name: Average queue abandon time

AFTER_CONTACT_WORK_TIME

Unit: SECONDS

Statistic: AVG

UI name: After contact work time

API_CONTACTS_HANDLED

Unit: COUNT

Statistic: SUM

UI name: API contacts handled

AVG_HOLD_TIME

Unit: SECONDS

Statistic: AVG

UI name: Average customer hold time

CALLBACK_CONTACTS_HANDLED

Unit: COUNT

Statistic: SUM

UI name: Callback contacts handled

CONTACTS_ABANDONED

Unit: COUNT

Statistic: SUM

UI name: Contacts abandoned

CONTACTS_AGENT_HUNG_UP_FIRST

Unit: COUNT

Statistic: SUM

UI name: Contacts agent hung up first

CONTACTS_CONSULTED

Unit: COUNT

Statistic: SUM

UI name: Contacts consulted

CONTACTS_HANDLED

Unit: COUNT

Statistic: SUM

UI name: Contacts handled

CONTACTS_HANDLED_INCOMING

Unit: COUNT

Statistic: SUM

UI name: Contacts handled incoming

CONTACTS_HANDLED_OUTBOUND

Unit: COUNT

Statistic: SUM

UI name: Contacts handled outbound

CONTACTS_HOLD_ABANDONS

Unit: COUNT

Statistic: SUM

UI name: Contacts hold disconnect

CONTACTS_MISSED

Unit: COUNT

Statistic: SUM

UI name: AGENT_NON_RESPONSE

CONTACTS_QUEUED

Unit: COUNT

Statistic: SUM

UI name: Contacts queued

CONTACTS_TRANSFERRED_IN

Unit: COUNT

Statistic: SUM

UI name: Contacts transferred in

CONTACTS_TRANSFERRED_IN_FROM_QUEUE

Unit: COUNT

Statistic: SUM

UI name: Contacts transferred out queue

CONTACTS_TRANSFERRED_OUT

Unit: COUNT

Statistic: SUM

UI name: Contacts transferred out

CONTACTS_TRANSFERRED_OUT_FROM_QUEUE

Unit: COUNT

Statistic: SUM

UI name: Contacts transferred out queue

HANDLE_TIME

Unit: SECONDS

Statistic: AVG

UI name: Average handle time

INTERACTION_AND_HOLD_TIME

Unit: SECONDS

Statistic: AVG

UI name: Average agent interaction and customer hold time

INTERACTION_TIME

Unit: SECONDS

Statistic: AVG

UI name: Average agent interaction time

OCCUPANCY

Unit: PERCENT

Statistic: AVG

UI name: Occupancy

QUEUE_ANSWER_TIME

Unit: SECONDS

Statistic: AVG

UI name: Average queue answer time

QUEUED_TIME

Unit: SECONDS

Statistic: MAX

UI name: Minimum flow time

SERVICE_LEVEL

You can include up to 20 SERVICE_LEVEL metrics in a request.

Unit: PERCENT

Statistic: AVG

Threshold: For ThresholdValue, enter any whole number from 1 to 604800 (inclusive), in seconds. For Comparison, you must enter LT (for "Less than").

UI name: Average queue abandon time

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.

MaxResults

The maximum number of results to return per page.

Value

A list with the following syntax:

list(
  NextToken = "string",
  MetricResults = list(
    list(
      Dimensions = list(
        Queue = list(
          Id = "string",
          Arn = "string"
        ),
        Channel = "VOICE"|"CHAT"|"TASK"|"EMAIL",
        RoutingProfile = list(
          Id = "string",
          Arn = "string"
        ),
        RoutingStepExpression = "string",
        AgentStatus = list(
          Arn = "string",
          Id = "string"
        ),
        Subtype = "string",
        ValidationTestType = "string"
      ),
      Collections = list(
        list(
          Metric = list(
            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 = list(
              Comparison = "LT",
              ThresholdValue = 123.0
            ),
            Statistic = "SUM"|"MAX"|"AVG",
            Unit = "SECONDS"|"COUNT"|"PERCENT"
          ),
          Value = 123.0
        )
      )
    )
  )
)

Request syntax

svc$get_metric_data(
  InstanceId = "string",
  StartTime = as.POSIXct(
    "2015-01-01"
  ),
  EndTime = as.POSIXct(
    "2015-01-01"
  ),
  Filters = list(
    Queues = list(
      "string"
    ),
    Channels = list(
      "VOICE"|"CHAT"|"TASK"|"EMAIL"
    ),
    RoutingProfiles = list(
      "string"
    ),
    RoutingStepExpressions = list(
      "string"
    ),
    AgentStatuses = list(
      "string"
    ),
    Subtypes = list(
      "string"
    ),
    ValidationTestTypes = list(
      "string"
    )
  ),
  Groupings = list(
    "QUEUE"|"CHANNEL"|"ROUTING_PROFILE"|"ROUTING_STEP_EXPRESSION"|"AGENT_STATUS"|"SUBTYPE"|"VALIDATION_TEST_TYPE"
  ),
  HistoricalMetrics = list(
    list(
      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 = list(
        Comparison = "LT",
        ThresholdValue = 123.0
      ),
      Statistic = "SUM"|"MAX"|"AVG",
      Unit = "SECONDS"|"COUNT"|"PERCENT"
    )
  ),
  NextToken = "string",
  MaxResults = 123
)