/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include namespace Aws { namespace Connect { namespace Model { /** */ class GetMetricDataRequest : public ConnectRequest { public: AWS_CONNECT_API GetMetricDataRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "GetMetricData"; } AWS_CONNECT_API Aws::String SerializePayload() const override; /** *

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

*/ inline const Aws::String& GetInstanceId() const{ return m_instanceId; } /** *

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

*/ inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; } /** *

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

*/ inline void SetInstanceId(const Aws::String& value) { m_instanceIdHasBeenSet = true; m_instanceId = value; } /** *

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

*/ inline void SetInstanceId(Aws::String&& value) { m_instanceIdHasBeenSet = true; m_instanceId = std::move(value); } /** *

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

*/ inline void SetInstanceId(const char* value) { m_instanceIdHasBeenSet = true; m_instanceId.assign(value); } /** *

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

*/ inline GetMetricDataRequest& WithInstanceId(const Aws::String& value) { SetInstanceId(value); return *this;} /** *

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

*/ inline GetMetricDataRequest& WithInstanceId(Aws::String&& value) { SetInstanceId(std::move(value)); return *this;} /** *

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

*/ inline GetMetricDataRequest& WithInstanceId(const char* value) { SetInstanceId(value); return *this;} /** *

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.

*/ inline const Aws::Utils::DateTime& GetStartTime() const{ return m_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.

*/ inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; } /** *

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.

*/ inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; } /** *

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.

*/ inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); } /** *

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.

*/ inline GetMetricDataRequest& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} /** *

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.

*/ inline GetMetricDataRequest& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} /** *

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.

*/ inline const Aws::Utils::DateTime& GetEndTime() const{ return m_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.

*/ inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; } /** *

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.

*/ inline void SetEndTime(const Aws::Utils::DateTime& value) { m_endTimeHasBeenSet = true; m_endTime = value; } /** *

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.

*/ inline void SetEndTime(Aws::Utils::DateTime&& value) { m_endTimeHasBeenSet = true; m_endTime = std::move(value); } /** *

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.

*/ inline GetMetricDataRequest& WithEndTime(const Aws::Utils::DateTime& value) { SetEndTime(value); return *this;} /** *

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.

*/ inline GetMetricDataRequest& WithEndTime(Aws::Utils::DateTime&& value) { SetEndTime(std::move(value)); return *this;} /** *

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.

*

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

*/ inline const Filters& GetFilters() const{ return m_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. VOICE, CHAT, and TASK channels are supported.

*

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

*/ inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; } /** *

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.

*

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

*/ inline void SetFilters(const Filters& value) { m_filtersHasBeenSet = true; m_filters = value; } /** *

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.

*

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

*/ inline void SetFilters(Filters&& value) { m_filtersHasBeenSet = true; m_filters = std::move(value); } /** *

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.

*

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

*/ inline GetMetricDataRequest& WithFilters(const Filters& value) { SetFilters(value); return *this;} /** *

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.

*

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

*/ inline GetMetricDataRequest& WithFilters(Filters&& value) { SetFilters(std::move(value)); return *this;} /** *

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.

*/ inline const Aws::Vector& GetGroupings() const{ return m_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.

*/ inline bool GroupingsHasBeenSet() const { return m_groupingsHasBeenSet; } /** *

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.

*/ inline void SetGroupings(const Aws::Vector& value) { m_groupingsHasBeenSet = true; m_groupings = value; } /** *

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.

*/ inline void SetGroupings(Aws::Vector&& value) { m_groupingsHasBeenSet = true; m_groupings = std::move(value); } /** *

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.

*/ inline GetMetricDataRequest& WithGroupings(const Aws::Vector& value) { SetGroupings(value); return *this;} /** *

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.

*/ inline GetMetricDataRequest& WithGroupings(Aws::Vector&& value) { SetGroupings(std::move(value)); return *this;} /** *

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.

*/ inline GetMetricDataRequest& AddGroupings(const Grouping& value) { m_groupingsHasBeenSet = true; m_groupings.push_back(value); return *this; } /** *

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.

*/ inline GetMetricDataRequest& AddGroupings(Grouping&& value) { m_groupingsHasBeenSet = true; m_groupings.push_back(std::move(value)); return *this; } /** *

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 Historical * Metrics Definitions in the Amazon Connect 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

*
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

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").

*
*/ inline const Aws::Vector& GetHistoricalMetrics() const{ return m_historicalMetrics; } /** *

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 Historical * Metrics Definitions in the Amazon Connect 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

*
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

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").

*
*/ inline bool HistoricalMetricsHasBeenSet() const { return m_historicalMetricsHasBeenSet; } /** *

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 Historical * Metrics Definitions in the Amazon Connect 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

*
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

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").

*
*/ inline void SetHistoricalMetrics(const Aws::Vector& value) { m_historicalMetricsHasBeenSet = true; m_historicalMetrics = value; } /** *

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 Historical * Metrics Definitions in the Amazon Connect 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

*
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

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").

*
*/ inline void SetHistoricalMetrics(Aws::Vector&& value) { m_historicalMetricsHasBeenSet = true; m_historicalMetrics = std::move(value); } /** *

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 Historical * Metrics Definitions in the Amazon Connect 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

*
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

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").

*
*/ inline GetMetricDataRequest& WithHistoricalMetrics(const Aws::Vector& value) { SetHistoricalMetrics(value); return *this;} /** *

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 Historical * Metrics Definitions in the Amazon Connect 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

*
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

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").

*
*/ inline GetMetricDataRequest& WithHistoricalMetrics(Aws::Vector&& value) { SetHistoricalMetrics(std::move(value)); return *this;} /** *

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 Historical * Metrics Definitions in the Amazon Connect 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

*
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

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").

*
*/ inline GetMetricDataRequest& AddHistoricalMetrics(const HistoricalMetric& value) { m_historicalMetricsHasBeenSet = true; m_historicalMetrics.push_back(value); return *this; } /** *

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 Historical * Metrics Definitions in the Amazon Connect 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

*
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

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").

*
*/ inline GetMetricDataRequest& AddHistoricalMetrics(HistoricalMetric&& value) { m_historicalMetricsHasBeenSet = true; m_historicalMetrics.push_back(std::move(value)); return *this; } /** *

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.

*/ inline const Aws::String& GetNextToken() const{ return m_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.

*/ inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } /** *

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.

*/ inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } /** *

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.

*/ inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } /** *

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.

*/ inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } /** *

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.

*/ inline GetMetricDataRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} /** *

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.

*/ inline GetMetricDataRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} /** *

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.

*/ inline GetMetricDataRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} /** *

The maximum number of results to return per page.

*/ inline int GetMaxResults() const{ return m_maxResults; } /** *

The maximum number of results to return per page.

*/ inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } /** *

The maximum number of results to return per page.

*/ inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } /** *

The maximum number of results to return per page.

*/ inline GetMetricDataRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} private: Aws::String m_instanceId; bool m_instanceIdHasBeenSet = false; Aws::Utils::DateTime m_startTime; bool m_startTimeHasBeenSet = false; Aws::Utils::DateTime m_endTime; bool m_endTimeHasBeenSet = false; Filters m_filters; bool m_filtersHasBeenSet = false; Aws::Vector m_groupings; bool m_groupingsHasBeenSet = false; Aws::Vector m_historicalMetrics; bool m_historicalMetricsHasBeenSet = false; Aws::String m_nextToken; bool m_nextTokenHasBeenSet = false; int m_maxResults; bool m_maxResultsHasBeenSet = false; }; } // namespace Model } // namespace Connect } // namespace Aws