queryWhatIfForecast method

Future<QueryWhatIfForecastResponse> queryWhatIfForecast({
  1. required Map<String, String> filters,
  2. required String whatIfForecastArn,
  3. String? endDate,
  4. String? nextToken,
  5. String? startDate,
})

Retrieves a what-if forecast.

May throw InvalidInputException. May throw InvalidNextTokenException. May throw LimitExceededException. May throw ResourceInUseException. May throw ResourceNotFoundException.

Parameter filters : The filtering criteria to apply when retrieving the forecast. For example, to get the forecast for client_21 in the electricity usage dataset, specify the following:

{"item_id" : "client_21"}

To get the full what-if forecast, use the CreateForecastExportJob operation.

Parameter whatIfForecastArn : The Amazon Resource Name (ARN) of the what-if forecast to query.

Parameter endDate : The end date for the what-if forecast. Specify the date using this format: yyyy-MM-dd'T'HH:mm:ss (ISO 8601 format). For example, 2015-01-01T20:00:00.

Parameter nextToken : If the result of the previous request was truncated, the response includes a NextToken. To retrieve the next set of results, use the token in the next request. Tokens expire after 24 hours.

Parameter startDate : The start date for the what-if forecast. Specify the date using this format: yyyy-MM-dd'T'HH:mm:ss (ISO 8601 format). For example, 2015-01-01T08:00:00.

Implementation

Future<QueryWhatIfForecastResponse> queryWhatIfForecast({
  required Map<String, String> filters,
  required String whatIfForecastArn,
  String? endDate,
  String? nextToken,
  String? startDate,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'AmazonForecastRuntime.QueryWhatIfForecast'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'Filters': filters,
      'WhatIfForecastArn': whatIfForecastArn,
      if (endDate != null) 'EndDate': endDate,
      if (nextToken != null) 'NextToken': nextToken,
      if (startDate != null) 'StartDate': startDate,
    },
  );

  return QueryWhatIfForecastResponse.fromJson(jsonResponse.body);
}