Method: flights.computeFlightEmissions

Stateless method to retrieve emission estimates. 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 1000 flight legs. If the request has more than 1000 direct flights, if will fail with an INVALID_ARGUMENT error.

HTTP request

POST https://travelimpactmodel.googleapis.com/v1/flights:computeFlightEmissions

The URL uses gRPC Transcoding syntax.

Request body

The request body contains data with the following structure:

JSON representation
{
  "flights": [
    {
      object (Flight)
    }
  ]
}
Fields
flights[]

object (Flight)

Required. Direct flights to return emission estimates for.

Response body

Output definition for the flights.computeFlightEmissions response.

If successful, the response body contains data with the following structure:

JSON representation
{
  "flightEmissions": [
    {
      object (FlightWithEmissions)
    }
  ],
  "modelVersion": {
    object (ModelVersion)
  }
}
Fields
flightEmissions[]

object (FlightWithEmissions)

List of flight legs with emission estimates.

modelVersion

object (ModelVersion)

The model version under which emission estimates for all flights in this response were computed.

Flight

All details related to a single request item for a direct flight emission estimates.

JSON representation
{
  "origin": string,
  "destination": string,
  "operatingCarrierCode": string,
  "flightNumber": integer,
  "departureDate": {
    object (Date)
  }
}
Fields
origin

string

Required. IATA airport code for flight origin, e.g. "LHR".

destination

string

Required. IATA airport code for flight destination, e.g. "JFK".

operatingCarrierCode

string

Required. IATA carrier code, e.g. "AA".

flightNumber

integer

Required. Flight number, e.g. 324.

departureDate

object (Date)

Required. Date of the flight in the time zone of the origin airport. Must be a date in the present or future.

Date

Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following:

  • A full date, with non-zero year, month, and day values.
  • A month and day, with a zero year (for example, an anniversary).
  • A year on its own, with a zero month and a zero day.
  • A year and month, with a zero day (for example, a credit card expiration date).

Related types:

JSON representation
{
  "year": integer,
  "month": integer,
  "day": integer
}
Fields
year

integer

Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.

month

integer

Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.

day

integer

Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.

FlightWithEmissions

Direct flight with emission estimates.

JSON representation
{
  "flight": {
    object (Flight)
  },
  "source": enum (Source),
  "emissionsGramsPerPax": {
    object (EmissionsGramsPerPax)
  },
  "easaLabelMetadata": {
    object (EasaLabelMetadata)
  },
  "contrailsImpactBucket": enum (ContrailsImpactBucket)
}
Fields
flight

object (Flight)

Required. Matches the flight identifiers in the request. Note: all IATA codes are capitalized.

source

enum (Source)

Optional. The source of the emissions data.

emissionsGramsPerPax

object (EmissionsGramsPerPax)

Optional. Per-passenger emission estimate numbers. Will not be present if emissions could not be computed. For the list of reasons why emissions could not be computed, see flights.computeFlightEmissions.

easaLabelMetadata

object (EasaLabelMetadata)

Optional. Metadata about the EASA Flight Emissions Label. Only set when the emissions data source is EASA.

contrailsImpactBucket

enum (ContrailsImpactBucket)

Optional. The significance of contrails warming impact compared to the total CO2e emissions impact.

Source

The source of the emissions data.

Enums
SOURCE_UNSPECIFIED The source of the emissions data is unspecified.
TIM The emissions data is from the Travel Impact Model.
EASA The emissions data is from the EASA environmental labels.

EasaLabelMetadata

Metadata about the EASA Flight Emissions Label.

JSON representation
{
  "labelIssueDate": {
    object (Date)
  },
  "labelExpiryDate": {
    object (Date)
  },
  "labelVersion": string,
  "safDiscountPercentage": number
}
Fields
labelIssueDate

object (Date)

The date when the label was issued.

labelExpiryDate

object (Date)

The date when the label expires. The label can be displayed until the end of this date.

labelVersion

string

Version of the label.

safDiscountPercentage

number

Sustainable Aviation Fuel (SAF) emissions discount percentage applied to the label. It is a percentage as a decimal. The values are in the interval [0,1]. For example, 0.0021 means 0.21%.

This discount and reduction in emissions are reported by the EASA label but they are not included in the CO2e estimates distributed by this API.

ContrailsImpactBucket

The significance of contrails warming impact compared to the total CO2e emissions impact.

Enums
CONTRAILS_IMPACT_UNSPECIFIED The contrails impact is unspecified.
CONTRAILS_IMPACT_NEGLIGIBLE The contrails impact is negligible compared to the total CO2e emissions.
CONTRAILS_IMPACT_MODERATE The contrails impact is comparable to the total CO2e emissions.
CONTRAILS_IMPACT_SEVERE The contrails impact is higher than the total CO2e emissions impact.