A API Travel Impact Model expõe estimativas de emissão calculadas de acordo com o modelo de impacto de viagens. 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.

O Modelo de impacto de viagens é um modelo de estimativa de emissão de última geração para voos.

A metodologia está publicada no GitHub.

Essa API oferece suporte a voos comerciais em todo o mundo que partem nos próximos 11 meses.

Voos fretados, privados e de carga não são aceitos. Não é possível usar voos anteriores. Entre em contato com nossa equipe (consulte a página de suporte) se tiver dúvidas ou quiser solicitar recursos.

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

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.

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, 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. Tanto chamadas HTTP quanto 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. Tanto chamadas HTTP quanto 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 com base 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 com base na 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. Tanto chamadas HTTP quanto 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.