getSessionsStatisticsAggregation method

Future<GetSessionsStatisticsAggregationResponse> getSessionsStatisticsAggregation({
  1. required String aggregationId,
  2. required String farmId,
  3. int? maxResults,
  4. String? nextToken,
})

Gets a set of statistics for queues or farms. Before you can call the GetSessionStatisticsAggregation operation, you must first call the StartSessionsStatisticsAggregation operation. Statistics are available for 1 hour after you call the StartSessionsStatisticsAggregation operation.

May throw AccessDeniedException. May throw InternalServerErrorException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw ValidationException.

Parameter aggregationId : The identifier returned by the StartSessionsStatisticsAggregation operation that identifies the aggregated statistics.

Parameter farmId : The identifier of the farm to include in the statistics. This should be the same as the farm ID used in the call to the StartSessionsStatisticsAggregation operation.

Parameter maxResults : The maximum number of results to return. Use this parameter with NextToken to get results as a set of sequential pages.

Parameter nextToken : The token for the next set of results, or null to start from the beginning.

Implementation

Future<GetSessionsStatisticsAggregationResponse>
    getSessionsStatisticsAggregation({
  required String aggregationId,
  required String farmId,
  int? maxResults,
  String? nextToken,
}) async {
  _s.validateNumRange(
    'maxResults',
    maxResults,
    1,
    100,
  );
  final $query = <String, List<String>>{
    'aggregationId': [aggregationId],
    if (maxResults != null) 'maxResults': [maxResults.toString()],
    if (nextToken != null) 'nextToken': [nextToken],
  };
  final response = await _protocol.send(
    payload: null,
    method: 'GET',
    requestUri:
        '/2023-10-12/farms/${Uri.encodeComponent(farmId)}/sessions-statistics-aggregation',
    queryParams: $query,
    exceptionFnMap: _exceptionFns,
  );
  return GetSessionsStatisticsAggregationResponse.fromJson(response);
}