Page Summary
-
The Travel Impact Model API provides carbon emission estimates for flights.
-
The API's primary function is
ComputeFlightEmissions, which takes flight details and returns estimated emissions per passenger, per class. -
Emission estimates consider factors like origin, destination, carrier, flight number, and departure date.
-
The API utilizes a specific Travel Impact Model with versioning for methodology, parameters, implementation, and datasets.
-
Requests can include up to 1000 flight legs and may return empty emission fields if data is unavailable for a specific leg.
Index
TravelImpactModelService(interface)ComputeDetailedFlightEmissionsRequest(message)ComputeDetailedFlightEmissionsResponse(message)ComputeFlightEmissionsRequest(message)ComputeFlightEmissionsResponse(message)ComputeScope3FlightEmissionsRequest(message)ComputeScope3FlightEmissionsResponse(message)ComputeTypicalFlightEmissionsRequest(message)ComputeTypicalFlightEmissionsResponse(message)ContrailsImpactBucket(enum)EasaLabelMetadata(message)EmissionsBreakdown(message)EmissionsGramsPerPax(message)EmissionsMetadata(message)EmissionsProvenance(message)EmissionsProvenance.EmissionsProvenanceEntry(message)EmissionsProvenance.EmissionsProvenanceEntry.CargoMassFractionT100(message)EmissionsProvenance.EmissionsProvenanceEntry.CargoMassFractionT100.Strategy(enum)EmissionsProvenance.EmissionsProvenanceEntry.DataCategory(enum)EmissionsProvenance.EmissionsProvenanceEntry.DataSource(enum)EmissionsProvenance.EmissionsProvenanceEntry.DistanceAdjustment(message)EmissionsProvenance.EmissionsProvenanceEntry.DistanceAdjustment.Strategy(enum)EmissionsProvenance.EmissionsProvenanceEntry.EmissionsProvenanceEntryType(enum)EmissionsProvenance.EmissionsProvenanceEntry.FuelBurnEea(message)EmissionsProvenance.EmissionsProvenanceEntry.FuelBurnEea.Strategy(enum)EmissionsProvenance.EmissionsProvenanceEntry.LoadFactorsChAviation(message)EmissionsProvenance.EmissionsProvenanceEntry.LoadFactorsChAviation.Strategy(enum)EmissionsProvenance.EmissionsProvenanceEntry.LoadFactorsT100(message)EmissionsProvenance.EmissionsProvenanceEntry.LoadFactorsT100.Strategy(enum)EmissionsProvenance.EmissionsProvenanceEntry.SeatAreaRatioData(message)EmissionsProvenance.EmissionsProvenanceEntry.SeatAreaRatioIata(message)EmissionsProvenance.EmissionsProvenanceEntry.SeatAreaRatioIata.Strategy(enum)Flight(message)FlightEmissionsDetails(message)FlightWithDetailedEmissions(message)FlightWithEmissions(message)Market(message)ModelVersion(message)Scope3FlightEmissions(message)Scope3FlightEmissions.Scope3DataType(enum)Scope3FlightSegment(message)Scope3FlightSegment.CabinClass(enum)Source(enum)TypicalFlightEmissions(message)
TravelImpactModelService
API to provide carbon emission estimates.
| ComputeDetailedFlightEmissions |
|---|
|
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 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. |
| ComputeFlightEmissions |
|---|
|
Retrieves 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 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. |
| ComputeScope3FlightEmissions |
|---|
|
Retrieves GHG emissions estimates for a set of flight segments for Scope 3 reporting. The response will contain all entries that match the input
If there is a future flight requested in this calendar year, we do not support Tier 1 emissions and will fallback to Tier 2 or 3 emissions. If the requested future flight is in not in this calendar year, we will return an empty response. We recommend that for future flights, If there are no estimates available for a certain flight with any of the three methods, the response will return a The request will fail with an
Because the request is processed with fallback logic, it is possible that misconfigured requests return valid emissions estimates using fallback methods. For example, if a request has the wrong flight number but specifies the origin and destination, the request will still succeed, but the returned emissions will be based solely on the typical flight emissions. Similarly, if a request is missing the origin for a typical flight emissions request, but specifies a valid distance, the request could succeed based solely on the distance-based emissions. Consequently, one should check the source of the returned emissions ( |
| ComputeTypicalFlightEmissions |
|---|
|
Retrieves typical flight emissions estimates between two airports, also known as a market. If there are no estimates available for a certain market, the response will return the market object with empty emission fields. The request will still be considered successful. Details on how the typical emissions estimates are computed are on GitHub. The request can contain up to 1000 markets. If the request has more than 1000 markets, it will fail with an INVALID_ARGUMENT error. |
ComputeDetailedFlightEmissionsRequest
Input definition for the ComputeDetailedFlightEmissions request.
| Fields | |
|---|---|
flights[] |
Required. Direct flights to return emission estimates for. |
ComputeDetailedFlightEmissionsResponse
Output definition for the ComputeDetailedFlightEmissions response.
| Fields | |
|---|---|
flights_with_detailed_emissions[] |
List of flight legs with emission estimates. |
model_version |
The model version under which emission estimates for all flights in this response were computed. |
ComputeFlightEmissionsRequest
Input definition for the ComputeFlightEmissions request.
| Fields | |
|---|---|
flights[] |
Required. Direct flights to return emission estimates for. |
ComputeFlightEmissionsResponse
Output definition for the ComputeFlightEmissions response.
| Fields | |
|---|---|
flight_emissions[] |
List of flight legs with emission estimates. |
model_version |
The model version under which emission estimates for all flights in this response were computed. |
ComputeScope3FlightEmissionsRequest
A list of flight segments to request the Scope 3 emissions for.
| Fields | |
|---|---|
flights[] |
Required. Flights to return emission estimates for. |
model_version |
Optional. The model version under which emission estimates for all flights in this request were computed. |
ComputeScope3FlightEmissionsResponse
A list of flights with Scope 3 emission estimates.
| Fields | |
|---|---|
flight_emissions[] |
List of flight segments with emission estimates. |
model_version |
The model version under which emission estimates for all flights in this response were computed. |
ComputeTypicalFlightEmissionsRequest
A list of pair of airports (markets) to request the typical emissions for.
| Fields | |
|---|---|
markets[] |
Required. Request the typical flight emissions estimates for this market pair. A maximum of 1000 markets can be requested. |
ComputeTypicalFlightEmissionsResponse
The response includes the emissions but also the model version.
| Fields | |
|---|---|
typical_flight_emissions[] |
Market's Typical Flight Emissions requested. |
model_version |
The model version under which typical flight emission estimates for all flights in this response were computed. |
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. |
EasaLabelMetadata
Metadata about the EASA Flight Emissions Label.
| Fields | |
|---|---|
label_issue_date |
The date when the label was issued. |
label_expiry_date |
The date when the label expires. The label can be displayed until the end of this date. |
label_version |
Version of the label. |
saf_discount_percentage |
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. |
EmissionsBreakdown
Details about the various emissions portions of the total emissions_grams_per_pax value. The value of the summed breakdowns should always equal emissions_grams_per_pax.
| Fields | |
|---|---|
wtt_emissions_grams_per_pax |
Per-passenger well-to-tank 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 |
ttw_emissions_grams_per_pax |
Per-passenger tank-to-wake 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 |
EmissionsGramsPerPax
Grouped emissions per seating class results.
| Fields | |
|---|---|
first |
Emissions for one passenger in first class in grams. This field is always computed and populated, regardless of whether the aircraft has first class seats or not. |
business |
Emissions for one passenger in business class in grams. This field is always computed and populated, regardless of whether the aircraft has business class seats or not. |
premium_economy |
Emissions for one passenger in premium economy class in grams. This field is always computed and populated, regardless of whether the aircraft has premium economy class seats or not. |
economy |
Emissions for one passenger in economy class in grams. This field is always computed and populated, regardless of whether the aircraft has economy class seats or not. |
EmissionsMetadata
All additional metadata.
| Fields | |
|---|---|
emissions_provenance |
Output only. Details about the provenance of data used to calculate the emissions data, including the contributing factors with their data sources. |
easa_label_metadata |
Output only. Metadata about the EASA Flight Emissions Label. Only set when the emissions data source is EASA. |
tim_website_emissions_calculator_url |
Output only. Link to the |
EmissionsProvenance
Information about the provenance of the data used to calculate emissions estimates, including contributing factors and their data sources.
In provenance_entries, provenance_entry_type acts as the "key" identifying the contributing factor, and there is always only one entry per entry type. The remaining fields in each entry describe that specific entry type and may or may not be populated depending on the contributing factor and available data.
| Fields | |
|---|---|
provenance_entries[] |
Output only. All contributing factors used to calculate emissions. Each entry type ( |
EmissionsProvenanceEntry
Details about a single contributing factor in emissions calculations. Each entry represents a single factor where provenance_entry_type acts as the key identifying the factor, and the other fields describe it and may or may not be populated.
| Fields | |
|---|---|
provenance_entry_type |
Output only. The type of the provenance entry. Acts as the "key" identifying the contributing factor; the remaining fields in this message describe it and may or may not be populated. |
source |
Output only. The source of the data. |
source_version |
Output only. The version of the source data. For example, "2025/04". |
data_category |
Output only. Data category of the data source. |
Union field data_strategy. The strategy used to compute emissions for the given data source. The field set will correspond to the data_source type. data_strategy can be only one of the following: |
|
fuel_burn_eea_strategy |
Output only. Strategy for EEA fuel burn. |
load_factors_t100_strategy |
Output only. Strategy for T100 load factors. |
load_factors_ch_aviation_strategy |
Output only. Strategy for CH Aviation load factors. |
cargo_mass_fraction_t100_strategy |
Output only. Strategy for T100 cargo mass fraction. |
seat_area_ratio_iata_strategy |
Output only. Strategy for IATA seat area ratios. |
distance_adjustment_strategy |
Output only. Strategy for distance adjustment. |
Union field data_value. The data value for the given data source. The field set will correspond to the provenance_entry_type. data_value can be only one of the following: |
|
load_factors_data |
Output only. The load factors data value. If not set, the load factors value is not available. |
cargo_mass_fraction_data |
Output only. The cargo mass fraction value. If not set, the cargo mass fraction value is not available. |
seat_area_ratio_data |
Output only. The seat area ratio value for each seating class. If not set, the seat area ratio value is not available. |
estimated_flight_distance_km |
Output only. The estimated distance flown in CCD flight phase in kilometers value calculated using the distance adjustment factor (DAF). If not set, the estimated flight distance value is not available. |
CargoMassFractionT100
This type has no fields.
Strategy used for T100 cargo mass fraction.
Strategy
Strategy for T100 cargo mass fraction. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.
| Enums | |
|---|---|
STRATEGY_UNSPECIFIED |
Strategy unspecified. |
CARRIER_ROUTE_AIRCRAFT_CLASS |
Data by carrier, route, and aircraft class. |
ROUTE_AIRCRAFT_CLASS |
Data by route and aircraft class. |
DISTANCE_AIRCRAFT_CLASS |
Data by distance band and aircraft class. |
ACTUAL_CARRIER_ROUTE_YEAR_MONTH_AIRCRAFT_CLASS |
Historical data matching carrier, route, year, month, and aircraft class. |
DataCategory
The data category of the data source. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.
| Enums | |
|---|---|
DATA_CATEGORY_UNSPECIFIED |
Data category unspecified. |
PRIMARY |
Primary data, as defined in ISO 14083. |
MODELED |
Modeled data, as defined in ISO 14083. |
DEFAULT |
Default value data, as defined in ISO 14083. |
DataSource
The source of data for emissions provenance factors. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.
| Enums | |
|---|---|
DATA_SOURCE_UNSPECIFIED |
Data source unspecified. |
EEA |
Data provided by the European Environment Agency (EEA). |
T100 |
Data from the T-100 dataset, provided by the US Bureau of Transportation Statistics. |
CH_AVIATION |
Data provided by ch-aviation. |
OAG |
Data provided by the Official Aviation Guide (OAG). |
OPERATING_CARRIER |
Data provided by the operating carrier. |
AIRCRAFT_MODEL_TYPICAL |
Typical data based on the aircraft model. |
GLOBAL_DEFAULT |
A global default value, used when no other data source is available. |
IATA |
Data provided by the International Air Transport Association (IATA). |
ICL |
Data provided by Imperial College London. |
DistanceAdjustment
This type has no fields.
Strategy used for distance adjustment.
Strategy
Strategy for distance adjustment. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.
| Enums | |
|---|---|
STRATEGY_UNSPECIFIED |
Strategy unspecified. |
ORIGIN_DESTINATION |
Distance adjustment factor determined by origin and destination airport pair. |
COUNTRY_PAIR |
Distance adjustment factor determined by origin and destination country pair. |
DEFAULT |
The distance adjustment factor is based on the default value because we did not find an airport- or country-specific adjustment factor. |
EmissionsProvenanceEntryType
The type of the provenance entry. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.
| Enums | |
|---|---|
EMISSIONS_PROVENANCE_ENTRY_TYPE_UNSPECIFIED |
Unspecified provenance entry type. |
FUEL_BURN |
Fuel burn entry type. |
LOAD_FACTORS |
Load factors entry type. |
CARGO_MASS_FRACTION |
Cargo mass fraction entry type. |
SEATING_CONFIG |
Seating configuration entry type. |
SEAT_AREA_RATIOS |
Seat area ratios entry type. |
DISTANCE_ADJUSTMENT |
Distance adjustment entry type. |
FuelBurnEea
This type has no fields.
Strategy used for EEA fuel burn estimates.
Strategy
Strategy for EEA fuel burn. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.
| Enums | |
|---|---|
STRATEGY_UNSPECIFIED |
Strategy unspecified. |
AIRCRAFT_MAPPING_FALLBACK_WITH_CORRECTION_FACTOR |
A static correction factor was applied. |
AIRCRAFT_MAPPING_EXACT |
Exact aircraft mapping was used. |
AIRCRAFT_MAPPING_FALLBACK |
Fallback aircraft mapping was used. |
LoadFactorsChAviation
This type has no fields.
Strategy used for CH-Aviation load factors.
Strategy
Strategy for CH-Aviation load factors. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.
| Enums | |
|---|---|
STRATEGY_UNSPECIFIED |
Strategy unspecified. |
CARRIER_MONTH |
Data by carrier and month of travel. |
ACTUAL_CARRIER_YEAR_MONTH |
Historical data matching carrier, year, and month. |
LoadFactorsT100
This type has no fields.
Strategy used for T100 load factors.
Strategy
Strategy for T100 load factors. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.
| Enums | |
|---|---|
STRATEGY_UNSPECIFIED |
Strategy unspecified. |
CARRIER_ROUTE_MONTH |
Data by carrier, route, and month of travel. |
CARRIER_MONTH |
Data by carrier and month of travel. |
ACTUAL_CARRIER_ROUTE_YEAR_MONTH |
Historical data matching carrier, route, year, and month. |
SeatAreaRatioData
Seat area ratio data values. Economy is always 1.0 and serves as the reference point; other class values are relative to economy. All 4 fields are always set whether the seating class exists on the aircraft or not.
| Fields | |
|---|---|
first |
Output only. First seating class data value. |
business |
Output only. Business seating class data value. |
premium_economy |
Output only. Premium economy seating class data value. |
economy |
Output only. Economy seating class data value. |
SeatAreaRatioIata
This type has no fields.
Strategy used for IATA seat area ratios.
Strategy
Strategy for IATA seat area ratios. New values may be added in the future. Clients should be prepared to handle unknown enum values gracefully.
| Enums | |
|---|---|
STRATEGY_UNSPECIFIED |
Strategy unspecified. |
NARROW_AIRCRAFT_BODY |
Seat area ratios for narrow body aircraft were used. |
WIDE_AIRCRAFT_BODY |
Seat area ratios for wide body aircraft were used. |
Flight
All details related to a single request item for a direct flight emission estimates.
| Fields | |
|---|---|
origin |
Required. IATA airport code for flight origin, e.g. "LHR". |
destination |
Required. IATA airport code for flight destination, e.g. "JFK". |
operating_carrier_code |
Required. IATA carrier code, e.g. "AA". |
flight_number |
Required. Flight number, e.g. 324. |
departure_date |
Required. Date of the flight in the time zone of the origin airport. Must be a date in the present or future. |
FlightEmissionsDetails
Details about the specific flight's emissions.
| Fields | |
|---|---|
emissions_grams_per_pax |
Output only. 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 |
emissions_breakdown |
Output only. Details about the various emissions portions of the total emissions_grams_per_pax value. The value of the summed breakdowns should always equal emissions_grams_per_pax. |
contrails_impact_bucket |
Output only. The significance of contrails warming impact compared to the total CO2e emissions impact. |
source |
Output only. The source of the emissions data. |
FlightWithDetailedEmissions
Direct flight with emission estimates details.
| Fields | |
|---|---|
flight |
Output only. Matches the flight identifiers in the request. Note: all IATA codes are capitalized. |
flight_emissions_details |
Output only. All the flight emissions data. |
emissions_metadata |
Output only. Additional metadata about the flight emissions calculation. |
FlightWithEmissions
Direct flight with emission estimates.
| Fields | |
|---|---|
flight |
Identifier. Matches the flight identifiers in the request. Note: all IATA codes are capitalized. |
source |
Optional. The source of the emissions data. |
emissions_grams_per_pax |
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 |
easa_label_metadata |
Optional. Metadata about the EASA Flight Emissions Label. Only set when the emissions data source is EASA. |
contrails_impact_bucket |
Optional. The significance of contrails warming impact compared to the total CO2e emissions impact. |
Market
A pair of airports.
| Fields | |
|---|---|
origin |
Required. IATA airport code for flight origin, e.g. "LHR". |
destination |
Required. IATA airport code for flight destination, e.g. "JFK". |
ModelVersion
Travel Impact Model version. For more information about the model versioning see GitHub.
| Fields | |
|---|---|
major |
Major versions: Major changes to methodology (e.g. adding new data sources to the model that lead to major output changes). Such changes will be infrequent and announced well in advance. Might involve API version changes, which will respect Google Cloud API guidelines |
minor |
Minor versions: Changes to the model that, while being consistent across schema versions, change the model parameters or implementation. |
patch |
Patch versions: Implementation changes meant to address bugs or inaccuracies in the model implementation. |
dated |
Dated versions: Model datasets are recreated with refreshed input data but no change to the algorithms regularly. |
Scope3FlightEmissions
Scope 3 flight with emission estimates.
| Fields | |
|---|---|
flight |
Identifier. Matches the flight identifiers in the request. |
wtw_emissions_grams_per_pax |
Optional. Total flight emissions (sum of well-to-tank and tank-to-wake) per passenger based on the requested info. This is the total emissions and unless you have specific reasons for using TTW or WTT emissions, you should use this number. |
ttw_emissions_grams_per_pax |
Optional. Tank-to-wake flight emissions per passenger based on the requested info. |
wtt_emissions_grams_per_pax |
Optional. Well-to-tank flight emissions per passenger based on the requested info. |
source |
Optional. The source of the emissions data. |
Scope3DataType
The type of matching used to compute Scope 3 emissions. This is used for the Scope 3 response, marking which of the methods was used to compute the emissions.
| Enums | |
|---|---|
SCOPE3_DATA_TYPE_UNSPECIFIED |
Unspecified data type. |
TIM_EMISSIONS |
TIM-based emissions given origin, destination, carrier, flight number, departure date, and year. |
TYPICAL_FLIGHT_EMISSIONS |
Typical flight emissions given origin, destination, and year. |
DISTANCE_BASED_EMISSIONS |
Distance-based emissions based on the distance traveled and year. |
Scope3FlightSegment
Flight parameters with which the Scope 3 emissions are fetched.
| Fields | |
|---|---|
departure_date |
Required. Date of the flight in the time zone of the origin airport. Only year is required for typical flight and distance-based emissions models (month and day values are ignored and therefore, can be either omitted, set to 0, or set to a valid date for those cases). Correspondingly, if a specific date is not provided for TIM emissions, we will fallback to typical flight (or distance-based) emissions. |
cabin_class |
Required. The cabin class of the flight. |
origin |
Optional. 3-character IATA airport code for flight origin, e.g. |
destination |
Optional. 3-character IATA airport code for flight destination, e.g. |
carrier_code |
Optional. 2-character IATA carrier code, e.g. |
flight_number |
Optional. Up to 4-digit flight number, e.g. |
distance_km |
Optional. Distance in kilometers, e.g. |
CabinClass
The cabin class of the flight.
| Enums | |
|---|---|
CABIN_CLASS_UNSPECIFIED |
Unspecified cabin class. |
ECONOMY |
Economy class. |
PREMIUM_ECONOMY |
Premium economy class. |
BUSINESS |
Business class. |
FIRST |
First class. |
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. |
TypicalFlightEmissions
Typical flight emission estimates for a certain market
| Fields | |
|---|---|
market |
Identifier. Matches the flight identifiers in the request. Note: all IATA codes are capitalized. |
emissions_grams_per_pax |
Optional. Typical flight emissions per passenger for requested market. Will not be present if a typical emissions could not be computed. For the list of reasons why typical flight emissions could not be computed, see GitHub. |