computeDetailedFlightEmissions method

Future<ComputeDetailedFlightEmissionsResponse> computeDetailedFlightEmissions(
  1. ComputeDetailedFlightEmissionsRequest request, {
  2. String? $fields,
})

Retrieves detailed emission estimates.

Detailed Flight Emissions are transparent per-passenger greenhouse gas emission estimates supplemented by comprehensive metadata detailing the calculation methodology, emissions breakdown, contrail impact, and data provenance. Details on how emission estimates are computed are in GitHub. The response will contain all entries that match the input flight legs, in the same order. If there are no estimates available for a certain flight leg, the response will return the flight leg object with empty emission fields. The request will still be considered successful. Reasons for missing emission estimates include: * The flight is unknown to the server. * The input flight leg is missing one or more identifiers. * The flight date is in the past. * The aircraft type is not supported by the model. * Missing seat configuration. The request can contain up to 100 flight legs. If the request has more than 100 flight legs, it will fail with an INVALID_ARGUMENT error.

request - The metadata request object.

Request parameters:

$fields - Selector specifying which fields to include in a partial response.

Completes with a ComputeDetailedFlightEmissionsResponse.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<ComputeDetailedFlightEmissionsResponse>
computeDetailedFlightEmissions(
  ComputeDetailedFlightEmissionsRequest request, {
  core.String? $fields,
}) async {
  final body_ = convert.json.encode(request);
  final queryParams_ = <core.String, core.List<core.String>>{
    'fields': ?$fields == null ? null : [$fields],
  };

  const url_ = 'v1/flights:computeDetailedFlightEmissions';

  final response_ = await _requester.request(
    url_,
    'POST',
    body: body_,
    queryParams: queryParams_,
  );
  return ComputeDetailedFlightEmissionsResponse.fromJson(
    response_ as core.Map<core.String, core.dynamic>,
  );
}