Connect / Client / get_current_metric_data

get_current_metric_data#

Connect.Client.get_current_metric_data(**kwargs)#

Gets the real-time metric data from the specified Amazon Connect instance.

For a description of each metric, see Real-time Metrics Definitions in the Amazon Connect Administrator Guide.

See also: AWS API Documentation

Request Syntax

response = client.get_current_metric_data(
    InstanceId='string',
    Filters={
        'Queues': [
            'string',
        ],
        'Channels': [
            'VOICE'|'CHAT'|'TASK',
        ],
        'RoutingProfiles': [
            'string',
        ],
        'RoutingStepExpressions': [
            'string',
        ]
    },
    Groupings=[
        'QUEUE'|'CHANNEL'|'ROUTING_PROFILE'|'ROUTING_STEP_EXPRESSION',
    ],
    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'|'AGENTS_ON_CONTACT'|'SLOTS_ACTIVE'|'SLOTS_AVAILABLE',
            'Unit': 'SECONDS'|'COUNT'|'PERCENT'
        },
    ],
    NextToken='string',
    MaxResults=123,
    SortCriteria=[
        {
            'SortByMetric': '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',
            'SortOrder': 'ASCENDING'|'DESCENDING'
        },
    ]
)
Parameters:
  • InstanceId (string) –

    [REQUIRED]

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

  • Filters (dict) –

    [REQUIRED]

    The filters to apply to returned metrics. You can filter up to the following limits:

    • Queues: 100

    • Routing profiles: 100

    • Channels: 3 (VOICE, CHAT, and TASK channels are supported.)

    • RoutingStepExpressions: 50

    Metric data is retrieved only for the resources associated with the queues or routing profiles, and by any channels included in the filter. (You cannot filter by both queue AND routing profile.) You can include both resource IDs and resource ARNs in the same request.

    When using the RoutingStepExpression filter, you need to pass exactly one QueueId. The filter is also case sensitive so when using the RoutingStepExpression filter, grouping by ROUTING_STEP_EXPRESSION is required.

    Currently tagging is only supported on the resources that are passed in the filter.

    • Queues (list) –

      The queues to use to filter the metrics. You should specify at least one queue, and can specify up to 100 queues per request. The GetCurrentMetricsData API in particular requires a queue when you include a Filter in your request.

      • (string) –

    • Channels (list) –

      The channel to use to filter the metrics.

      • (string) –

    • RoutingProfiles (list) –

      A list of up to 100 routing profile IDs or ARNs.

      • (string) –

    • RoutingStepExpressions (list) –

      A list of expressions as a filter, in which an expression is an object of a step in a routing criteria.

      • (string) –

  • Groupings (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. VOICE, CHAT, and TASK channels are supported.

    • If you group by ROUTING_PROFILE, you must include either a queue or routing profile filter. In addition, a routing profile filter is required for metrics CONTACTS_SCHEDULED, CONTACTS_IN_QUEUE, and OLDEST_CONTACT_AGE.

    • If no Grouping is included in the request, a summary of metrics is returned.

    • When using the RoutingStepExpression filter, group by ROUTING_STEP_EXPRESSION is required.

    • (string) –

  • CurrentMetrics (list) –

    [REQUIRED]

    The metrics to retrieve. Specify the name and unit for each metric. The following metrics are available. For a description of all the metrics, see Real-time Metrics Definitions in the Amazon Connect Administrator Guide.

    AGENTS_AFTER_CONTACT_WORK

    Unit: COUNT

    Name in real-time metrics report: ACW

    AGENTS_AVAILABLE

    Unit: COUNT

    Name in real-time metrics report: Available

    AGENTS_ERROR

    Unit: COUNT

    Name in real-time metrics report: Error

    AGENTS_NON_PRODUCTIVE

    Unit: COUNT

    Name in real-time metrics report: NPT (Non-Productive Time)

    AGENTS_ON_CALL

    Unit: COUNT

    Name in real-time metrics report: On contact

    AGENTS_ON_CONTACT

    Unit: COUNT

    Name in real-time metrics report: On contact

    AGENTS_ONLINE

    Unit: COUNT

    Name in real-time metrics report: Online

    AGENTS_STAFFED

    Unit: COUNT

    Name in real-time metrics report: Staffed

    CONTACTS_IN_QUEUE

    Unit: COUNT

    Name in real-time metrics report: In queue

    CONTACTS_SCHEDULED

    Unit: COUNT

    Name in real-time metrics report: Scheduled

    OLDEST_CONTACT_AGE

    Unit: SECONDS

    When you use groupings, Unit says SECONDS and the Value is returned in SECONDS.

    When you do not use groupings, Unit says SECONDS but the Value is returned in MILLISECONDS. For example, if you get a response like this:

    ``{ “Metric”: { “Name”: “OLDEST_CONTACT_AGE”, “Unit”: “SECONDS” }, “Value”: 24113.0 ``}

    The actual OLDEST_CONTACT_AGE is 24 seconds.

    When the filter RoutingStepExpression is used, this metric is still calculated from enqueue time. For example, if a contact that has been queued under <Expression 1> for 10 seconds has expired and <Expression 2> becomes active, then OLDEST_CONTACT_AGE for this queue will be counted starting from 10, not 0.

    Name in real-time metrics report: Oldest

    SLOTS_ACTIVE

    Unit: COUNT

    Name in real-time metrics report: Active

    SLOTS_AVAILABLE

    Unit: COUNT

    Name in real-time metrics report: Availability

    • (dict) –

      Contains information about a real-time metric. For a description of each metric, see Real-time Metrics Definitions in the Amazon Connect Administrator Guide.

      • Name (string) –

        The name of the metric.

      • Unit (string) –

        The unit for the metric.

  • NextToken (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 token must use the same request parameters as the request that generated the token.

  • MaxResults (integer) – The maximum number of results to return per page.

  • SortCriteria (list) –

    The way to sort the resulting response based on metrics. You can enter one sort criteria. By default resources are sorted based on AGENTS_ONLINE, DESCENDING. The metric collection is sorted based on the input metrics.

    Note the following:

    • Sorting on SLOTS_ACTIVE and SLOTS_AVAILABLE is not supported.

    • (dict) –

      The way to sort the resulting response based on metrics. By default resources are sorted based on AGENTS_ONLINE, DESCENDING. The metric collection is sorted based on the input metrics.

      • SortByMetric (string) –

        The current metric names.

      • SortOrder (string) –

        The way to sort.

Return type:

dict

Returns:

Response Syntax

{
    'NextToken': 'string',
    'MetricResults': [
        {
            'Dimensions': {
                'Queue': {
                    'Id': 'string',
                    'Arn': 'string'
                },
                'Channel': 'VOICE'|'CHAT'|'TASK',
                'RoutingProfile': {
                    'Id': 'string',
                    'Arn': 'string'
                },
                'RoutingStepExpression': 'string'
            },
            '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'|'AGENTS_ON_CONTACT'|'SLOTS_ACTIVE'|'SLOTS_AVAILABLE',
                        'Unit': 'SECONDS'|'COUNT'|'PERCENT'
                    },
                    'Value': 123.0
                },
            ]
        },
    ],
    'DataSnapshotTime': datetime(2015, 1, 1),
    'ApproximateTotalCount': 123
}

Response Structure

  • (dict) –

    • NextToken (string) –

      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.

    • MetricResults (list) –

      Information about the real-time metrics.

      • (dict) –

        Contains information about a set of real-time metrics.

        • Dimensions (dict) –

          The dimensions for the metrics.

          • Queue (dict) –

            Information about the queue for which metrics are returned.

            • Id (string) –

              The identifier of the queue.

            • Arn (string) –

              The Amazon Resource Name (ARN) of the queue.

          • Channel (string) –

            The channel used for grouping and filters.

          • RoutingProfile (dict) –

            Information about the routing profile assigned to the user.

            • Id (string) –

              The identifier of the routing profile.

            • Arn (string) –

              The Amazon Resource Name (ARN) of the routing profile.

          • RoutingStepExpression (string) –

            The expression of a step in a routing criteria.

        • Collections (list) –

          The set of metrics.

          • (dict) –

            Contains the data for a real-time metric.

            • Metric (dict) –

              Information about the metric.

              • Name (string) –

                The name of the metric.

              • Unit (string) –

                The unit for the metric.

            • Value (float) –

              The value of the metric.

    • DataSnapshotTime (datetime) –

      The time at which the metrics were retrieved and cached for pagination.

    • ApproximateTotalCount (integer) –

      The total count of the result, regardless of the current page size.

Exceptions