A API Travel Impact Model expõe estimativas de emissões calculadas de acordo com o Travel Impact Model. Essas estimativas de emissão também são mostradas no Google Voos, e o acesso à API também está disponível pelo complemento do Google Sheets.

A API é pública e sem custo financeiro.

Para autenticação, você vai precisar de uma chave de API.

Os dados expostos por essa API estão sob a licença CC BY-SA 4.0.

O Travel Impact Model é um modelo de estimativa de emissão de voos de última geração.

A metodologia está publicada no GitHub (em inglês).

Entre em contato conosco (consulte a página de suporte) se tiver dúvidas e solicitações de recursos.

As emissões de voos são estimativas das emissões de gás do efeito estufa produzidas por passageiro em um voo específico.

Essa API é compatível com voos comerciais em todo o mundo que partem nos próximos 11 meses. Voos fretados, particulares e de carga não são compatíveis. Voos anteriores também não.

As emissões típicas de voos são estimativas das emissões de gases do efeito estufa produzidas por passageiro que viaja de avião entre dois aeroportos.

O cálculo é feito usando os dados de estimativas de emissões de voos, e a metodologia de criação do conjunto de dados está publicada no GitHub. As emissões típicas de voos não devem ser usadas como substituto das estimativas de emissões de voos.

O conjunto de dados de emissões de voos do escopo 3 foi criado para ajudar empresas e pessoas a calcular e informar as emissões de viagens aéreas de viagens de negócios do escopo 3, categoria 6. A saída completa do modelo inclui estimativas de emissões de 2019 para voos comerciais programados em todo o mundo.

As emissões detalhadas de voos são estimativas transparentes de emissão de gases do efeito estufa por passageiro, complementadas por metadados abrangentes que detalham a metodologia de cálculo, a decomposição das emissões, o impacto dos rastros de condensação e a origem dos dados.

Essa API é compatível com voos comerciais do mundo todo que partem nos próximos 11 meses. Voos fretados, particulares e de carga não são aceitos. Não é possível usar voos passados.

A API Travel Impact Model oferece suporte ao Protocolo de Contexto de Modelo (MCP). Os agentes de IA e os modelos de linguagem grandes podem usar o endpoint do MCP para descobrir e utilizar dinamicamente os recursos da API.

Consulte o guia de integração do MCP para mais detalhes sobre como usar o endpoint do MCP.

Exemplo de emissões de voos

curl https://travelimpactmodel.googleapis.com/v1/flights:computeFlightEmissions?key=$API_KEY \
  -H "Content-Type: application/json" -d \
  '{
    "flights": [
      {
        "origin": "ZRH",
        "destination": "CDG",
        "operatingCarrierCode": "AF",
        "flightNumber": 1115,
        "departureDate": {"year": 2026, "month": 10, "day": 2}
      },
      {
        "origin": "CDG",
        "destination": "BOS",
        "operatingCarrierCode": "AF",
        "flightNumber": 334,
        "departureDate": {"year": 2026, "month": 10, "day": 1}
      },
      {
        "origin": "ZRH",
        "destination": "BOS",
        "operatingCarrierCode": "LX",
        "flightNumber": 52,
        "departureDate": {"year": 2026, "month": 9, "day": 1}
      }
    ]
  }'

O exemplo inclui um voo ZRH - BOS com uma escala em CDG e um voo ZRH - BOS.

O comando de exemplo chama o endpoint REST usando curl. No comando, você terá que substituir $API_KEY pela sua chave de API. Talvez também seja necessário ajustar os detalhes do voo para corresponder a um voo futuro.

Consulte a guia Referência para conferir a documentação completa dos recursos expostos por essa API. As chamadas HTTP e RPC são compatíveis.

{
  "flightEmissions": [
    {
      "flight": {
        "origin": "ZRH",
        "destination": "CDG",
        "operatingCarrierCode": "AF",
        "flightNumber": 1115,
        "departureDate": {
          "year": 2026,
          "month": 10,
          "day": 2
        }
      },
      "emissionsGramsPerPax": {
        "first": 100360,
        "business": 100360,
        "premiumEconomy": 66907,
        "economy": 66907
      },
      "source": "TIM",
      "contrailsImpactBucket": "CONTRAILS_IMPACT_MODERATE"
    },
    {
      "flight": {
        "origin": "CDG",
        "destination": "BOS",
        "operatingCarrierCode": "AF",
        "flightNumber": 334,
        "departureDate": {
          "year": 2026,
          "month": 10,
          "day": 1
        }
      },
      "emissionsGramsPerPax": {
        "first": 1549875,
        "business": 1239900,
        "premiumEconomy": 464962,
        "economy": 309975
      },
      "source": "TIM",
      "contrailsImpactBucket": "CONTRAILS_IMPACT_MODERATE"
    },
    {
      "flight": {
        "origin": "ZRH",
        "destination": "BOS",
        "operatingCarrierCode": "LX",
        "flightNumber": 52,
        "departureDate": {
          "year": 2026,
          "month": 9,
          "day": 1
        }
      },
      "emissionsGramsPerPax": {
        "first": 1412110,
        "business": 1129688,
        "premiumEconomy": 423632,
        "economy": 282422
      },
      "source": "TIM",
      "contrailsImpactBucket": "CONTRAILS_IMPACT_MODERATE"
    }
  ],
  "modelVersion": {
    "major": 3,
    "minor": 0,
    "patch": 0,
    "dated": "20251013"
  }
}

Exemplo de resposta.

Acessar exemplo de emissões típicas de voos

curl https://travelimpactmodel.googleapis.com/v1/flights:computeTypicalFlightEmissions?key=$API_KEY \
-H "Content-Type: application/json" -d \
'{
  "markets": [
    {
      "origin": "ZRH",
      "destination": "BOS"
    },
    {
      "origin": "BOS",
      "destination": "ZRH"
    },
  ]
}'

O exemplo inclui dois mercados: ZRH-BOS e BOS-ZRH.

O comando de exemplo chama o endpoint REST usando curl. No comando, substitua $API_KEY pela sua chave de API.

Consulte a guia Referência para conferir a documentação completa dos recursos expostos por essa API. As chamadas HTTP e RPC são compatíveis.

{
  "typicalFlightEmissions": [
    {
      "market": {
        "origin": "ZRH",
        "destination": "BOS"
      },
      "emissionsGramsPerPax": {
        "first": 1721684,
        "business": 1411005,
        "premiumEconomy": 566775,
        "economy": 406535
      }
    },
    {
      "market": {
        "origin": "BOS",
        "destination": "ZRH"
      },
      "emissionsGramsPerPax": {
        "first": 2149656,
        "business": 1737021,
        "premiumEconomy": 688646,
        "economy": 488115
      }
    }
  ],
  "modelVersion": {
    "major": 2,
    "minor": 0,
    "patch": 0,
    "dated": "20250131"
  }
}

Exemplo de resposta.

Receber exemplo de emissões de voos do escopo 3

curl https://travelimpactmodel.googleapis.com/v1/flights:computeScope3FlightEmissions?key=$API_KEY \
-H "Content-Type: application/json" -d \
'{
  "flights": [{
    "departureDate": {
      "year": 2025,
      "month": 5,
      "day": 13
    },
    "cabinClass": "ECONOMY",
    "origin": "ICN",
    "destination": "YVR",
    "carrierCode": "KE",
    "flightNumber": 71
  }, {
    "departureDate": {
      "year": 2025,
      "month": 1,
      "day": 1
    },
    "cabinClass": "BUSINESS",
    "origin": "JFK",
    "destination": "SFO"
  }, {
    "departureDate": {
      "year": 2025,
      "month": 1,
      "day": 1
    },
    "cabinClass": "FIRST",
    "distanceKm": "1000"
  }],
  "modelVersion": {
    "major": 2,
    "minor": 0
  }
}'

O exemplo inclui uma solicitação de emissões baseada em TIM para o voo KE71 de ICN para YVR na classe econômica, uma solicitação típica de emissões de voo entre JFK e SFO na classe executiva e uma solicitação de emissões baseada em distância para um voo de 1.000 km na primeira classe.

O comando de exemplo chama o endpoint REST usando curl. No comando, substitua $API_KEY pela sua chave de API.

Consulte a guia Referência para conferir a documentação completa dos recursos expostos por essa API. As chamadas HTTP e RPC são compatíveis.

{
  "flightEmissions": [{
    "flight": {
      "departureDate": {
        "year": 2025,
        "month": 5,
        "day": 13
      },
      "cabinClass": "ECONOMY",
      "origin": "ICN",
      "destination": "YVR",
      "carrierCode": "KE",
      "flightNumber": 71
    },
    "wtwEmissionsGramsPerPax": "429613",
    "source": "TIM_EMISSIONS",
    "ttwEmissionsGramsPerPax": "357207",
    "wttEmissionsGramsPerPax": "72406"
  }, {
    "flight": {
      "departureDate": {
        "year": 2025,
      },
      "cabinClass": "BUSINESS",
      "origin": "JFK",
      "destination": "SFO"
    },
    "wtwEmissionsGramsPerPax": "885184",
    "source": "TYPICAL_FLIGHT_EMISSIONS",
    "ttwEmissionsGramsPerPax": "735997",
    "wttEmissionsGramsPerPax": "149187"
  }, {
    "flight": {
      "departureDate": {
        "year": 2025,
        "month": 0,
        "day": 0
      },
      "cabinClass": "FIRST",
      "distanceKm": "1000"
    },
    "wtwEmissionsGramsPerPax": "328000",
    "source": "DISTANCE_BASED_EMISSIONS",
    "ttwEmissionsGramsPerPax": "273000",
    "wttEmissionsGramsPerPax": "55000"
  }],
  "modelVersion": {
    "major": 2,
    "minor": 0
  }
}

Exemplo de resposta.

Exemplo detalhado de emissões de voos

curl https://travelimpactmodel.googleapis.com/v1/flights:computeDetailedFlightEmissions?key=$API_KEY \
-H "Content-Type: application/json" -d '{
  "flights": [
    {
      "origin": "ZRH",
      "destination": "BOS",
      "operatingCarrierCode": "LX",
      "flightNumber": 52,
      "departureDate": {"year": 2026, "month": 10, "day": 30}
    }
  ]
}'

O exemplo inclui um único voo ZRH - BOS.

O comando de exemplo chama o endpoint REST usando curl. No comando, substitua $API_KEY pela sua chave de API. Talvez seja necessário ajustar os detalhes do voo para corresponder a um voo futuro.

Consulte a guia "Referência" para conferir a documentação completa dos recursos expostos por essa API. As chamadas HTTP e RPC são compatíveis.

{
  "flightsWithDetailedEmissions": [
    {
      "flight": {
        "origin": "ZRH",
        "destination": "BOS",
        "operatingCarrierCode": "LX",
        "flightNumber": 52,
        "departureDate": {
          "year": 2026,
          "month": 10,
          "day": 30
        }
      },
      "flightEmissionsDetails": {
        "emissionsGramsPerPax": {
          "first": 1546945,
          "business": 1237556,
          "premiumEconomy": 464083,
          "economy": 309389
        },
        "emissionsBreakdown": {
          "wttEmissionsGramsPerPax": {
            "first": 260720,
            "business": 208576,
            "premiumEconomy": 78216,
            "economy": 52144
          },
          "ttwEmissionsGramsPerPax": {
            "first": 1286225,
            "business": 1028980,
            "premiumEconomy": 385867,
            "economy": 257245
          }
        },
        "contrailsImpactBucket": "CONTRAILS_IMPACT_MODERATE",
        "source": "TIM"
      },
      "emissionsMetadata": {
        "emissionsProvenance": {
          "provenanceEntries": [
            {
              "provenanceEntryType": "FUEL_BURN",
              "source": "EEA",
              "fuelBurnEeaStrategy": "AIRCRAFT_MAPPING_EXACT",
              "dataCategory": "PRIMARY"
            },
            {
              "provenanceEntryType": "LOAD_FACTORS",
              "source": "T100",
              "sourceVersion": "2025-11",
              "loadFactorsT100Strategy": "CARRIER_ROUTE_MONTH",
              "dataCategory": "MODELED",
              "loadFactorsData": 0.83758790874357414
            },
            {
              "provenanceEntryType": "CARGO_MASS_FRACTION",
              "source": "T100",
              "sourceVersion": "2026-2",
              "cargoMassFractionT100Strategy": "CARRIER_ROUTE_AIRCRAFT_CLASS",
              "dataCategory": "MODELED",
              "cargoMassFractionData": 0.2935313907054376
            },
            {
              "provenanceEntryType": "SEATING_CONFIG",
              "source": "OPERATING_CARRIER",
              "dataCategory": "PRIMARY"
            },
            {
              "provenanceEntryType": "SEAT_AREA_RATIOS",
              "source": "IATA",
              "sourceVersion": "IATA_RP_1726",
              "dataCategory": "DEFAULT",
              "seatAreaRatioIataStrategy": "WIDE_AIRCRAFT_BODY",
              "seatAreaRatioData": {
                "first": 5,
                "business": 4,
                "premiumEconomy": 1.5,
                "economy": 1
              }
            },
            {
              "provenanceEntryType": "DISTANCE_ADJUSTMENT",
              "source": "ICL",
              "dataCategory": "MODELED",
              "distanceAdjustmentStrategy": "ORIGIN_DESTINATION",
              "estimatedFlightDistanceKm": 6119
            }
          ]
        },
        "timWebsiteEmissionsCalculatorUrl": "https://travelimpactmodel.org/lookup/flight?itinerary=ZRH-BOS-LX-52-20261030"
      }
    }
  ],
  "modelVersion": {
    "major": 3,
    "minor": 0,
    "patch": 0,
    "dated": "20260610"
  }
}

Exemplo de resposta.