Method: flights.computeScope3FlightEmissions

Metoda bezstanowa do pobierania szacunków emisji gazów cieplarnianych dla zbioru odcinków lotu na potrzeby raportowania w zakresie 3.

Odpowiedź będzie zawierać wszystkie wpisy pasujące do danych wejściowych Scope3FlightSegment odcinków lotu, w tej samej kolejności. Szacunki będą obliczane za pomocą tej logiki kaskadowej (z użyciem pierwszego dostępnego):

  1. Emisja według modelu TIM na podstawie origin, destination, carrier, flightNumber, departureDate i cabinClass.
  2. Typowa emisja lotu na podstawie origin, destination, roku w departureDate i cabinClass.
  3. Emisja na podstawie odległości obliczona za pomocą distanceKm, roku w departureDate i cabinClass.

Jeśli w tym roku kalendarzowym zostanie zgłoszony przyszły lot, nie będziemy obsługiwać emisji poziomu 1 i przejdziemy do emisji poziomu 2 lub 3. Jeśli żądany przyszły lot nie przypada na ten rok kalendarzowy, zwrócimy pustą odpowiedź. W przypadku przyszłych lotów zalecamy używanie interfejsu API computeFlightEmissions.

Jeśli w przypadku danego lotu nie są dostępne żadne szacunki obliczone za pomocą którejkolwiek z tych 3 metod, odpowiedź zwróci obiekt Scope3FlightEmissions z pustymi polami emisji. Żądanie nadal będzie uznawane za udane. Zazwyczaj brakujące szacunki emisji występują, gdy serwer nie zna lotu (np. nie ma konkretnego lotu lub typowa emisja lotu nie jest dostępna dla żądanej pary).

Żądanie zakończy się niepowodzeniem z błędem INVALID_ARGUMENT, jeśli:

  • żądanie zawiera więcej niż 1000 odcinków lotu;
  • w odcinku lotu brakuje co najmniej 1 identyfikatora; na przykład brak miejsca wylotu lub przylotu bez prawidłowej odległości w przypadku dopasowania typu TIM_EMISSIONS lub TYPICAL_FLIGHT_EMISSIONS albo brak odległości w przypadku dopasowania typu DISTANCE_BASED_EMISSIONS (jeśli chcesz wrócić do emisji na podstawie odległości lub uzyskać szacunek emisji na podstawie odległości, musisz podać odległość);
  • data lotu przypada przed 2019 r. (dane w zakresie 3 są dostępne tylko od 2019 r.);
  • odległość lotu wynosi 0 lub mniej;
  • brakuje klasy podróży.

Ponieważ żądanie jest przetwarzane za pomocą logiki rezerwowej, może się zdarzyć, że nieprawidłowo skonfigurowane żądania zwrócą prawidłowe szacunki emisji przy użyciu metod rezerwowych. Jeśli na przykład żądanie zawiera nieprawidłowy numer lotu, ale określa miejsce wylotu i przylotu, żądanie nadal się powiedzie, ale zwrócona emisja będzie oparta wyłącznie na typowej emisji lotu. Podobnie, jeśli w żądaniu typowej emisji lotu brakuje miejsca wylotu, ale podano prawidłową odległość, żądanie może się powieść na podstawie wyłącznie emisji na podstawie odległości. W związku z tym należy sprawdzić źródło zwróconej emisji (source), aby upewnić się, że wyniki są zgodne z oczekiwaniami.

Żądanie HTTP

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

Adres URL używa składni transkodowania gRPC.

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "flights": [
    {
      object (Scope3FlightSegment)
    }
  ],
  "modelVersion": {
    object (ModelVersion)
  }
}
Pola
flights[]

object (Scope3FlightSegment)

Wymagane. Loty, dla których mają zostać zwrócone szacunki emisji.

modelVersion

object (ModelVersion)

Opcjonalnie. Wersja modelu, na podstawie której obliczono szacunki emisji dla wszystkich lotów w tym żądaniu.

Treść odpowiedzi

Lista lotów z szacunkami emisji w zakresie 3.

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "flightEmissions": [
    {
      object (Scope3FlightEmissions)
    }
  ],
  "modelVersion": {
    object (ModelVersion)
  }
}
Pola
flightEmissions[]

object (Scope3FlightEmissions)

Lista odcinków lotu z szacunkami emisji.

modelVersion

object (ModelVersion)

Wersja modelu, na podstawie której obliczono szacunki emisji dla wszystkich lotów w tej odpowiedzi.

Scope3FlightSegment

Parametry lotu, na podstawie których pobierana jest emisja w zakresie 3.

Zapis JSON
{
  "departureDate": {
    object (Date)
  },
  "cabinClass": enum (CabinClass),
  "origin": string,
  "destination": string,
  "carrierCode": string,
  "flightNumber": integer,
  "distanceKm": string
}
Pola
departureDate

object (Date)

Wymagane. Data lotu w strefie czasowej lotniska wylotu. W przypadku typowych modeli emisji lotu i emisji na podstawie odległości wymagany jest tylko rok (wartości miesiąca i dnia są ignorowane, dlatego można je pominąć, ustawić na 0 lub ustawić na prawidłową datę). Jeśli w przypadku emisji według modelu TIM nie podasz konkretnej daty, wrócimy do typowej emisji lotu (lub emisji na podstawie odległości).

cabinClass

enum (CabinClass)

Wymagane. Klasa podróży.

origin

string

Opcjonalnie. Trzyznakowy kod lotniska IATA miejsca wylotu, np. YVR. Służy do dopasowania konkretnego lotu, jeśli jest podany razem z miejscem docelowym, przewoźnikiem i numerem lotu. Jeśli nie ma dopasowania, najpierw spróbujemy dopasować lot do typowego lotu między podanymi lotniskami wylotu i przylotu. W przeciwnym razie, jeśli podana jest odległość lotu, użyjemy modelu emisji na podstawie odległości.

destination

string

Opcjonalnie. Trzyznakowy kod lotniska IATA celu podróży, np. ICN. Służy do dopasowania konkretnego lotu, jeśli jest podany razem z miejscem wylotu, przewoźnikiem i numerem lotu. Jeśli nie ma dopasowania, najpierw spróbujemy dopasować lot do typowego lotu między podanymi lotniskami wylotu i przylotu. W przeciwnym razie, jeśli podana jest odległość lotu, użyjemy modelu emisji na podstawie odległości.

carrierCode

string

Opcjonalnie. Dwuznakowy kod IATA przewoźnika, np. KE. Jest to wymagane, jeśli chcesz dopasować konkretny lot. W przeciwnym razie nie jest używany w przypadku typowych modeli emisji lotu i emisji na podstawie odległości. Może to być kod przewoźnika obsługującego lot lub przewoźnika firmującego lot (czyli obejmuje współdzielenie kodu).

flightNumber

integer

Opcjonalnie. Numer lotu (maks.4 cyfry), np. 71, z zakresu [1, 9999]. Jest on używany w pierwszej kolejności do dopasowania konkretnego lotu, jeśli numer lotu jest podany razem z miejscem wylotu, miejscem docelowym i przewoźnikiem. Jeśli numer lotu nie jest podany, najpierw spróbujemy dopasować lot do typowego lotu między podanymi lotniskami wylotu i przylotu. Jeśli to się nie uda lub nie podasz miejsca wylotu i przylotu, użyjemy modelu emisji na podstawie odległości na podstawie podanej odległości lotu.

distanceKm

string (int64 format)

Opcjonalnie. Odległość w kilometrach, np. 2423, z zakresu [1, 2,5e16) km. Służy do dopasowania lotu do emisji na podstawie odległości, gdy nie podasz miejsca wylotu i przylotu lub nie ma pasujących typowych lotów.

CabinClass

Klasa podróży.

Wartości w polu enum
CABIN_CLASS_UNSPECIFIED Nieokreślona klasa podróży.
ECONOMY Klasa ekonomiczna.
PREMIUM_ECONOMY Klasa ekonomiczna premium.
BUSINESS Klasa biznesowa.
FIRST Pierwsza klasa.

Scope3FlightEmissions

Lot w zakresie 3 z szacunkami emisji.

Zapis JSON
{
  "flight": {
    object (Scope3FlightSegment)
  },
  "wtwEmissionsGramsPerPax": string,
  "ttwEmissionsGramsPerPax": string,
  "wttEmissionsGramsPerPax": string,
  "source": enum (Scope3DataType)
}
Pola
flight

object (Scope3FlightSegment)

Identyfikator. Pasuje do identyfikatorów lotów w żądaniu.

wtwEmissionsGramsPerPax

string (int64 format)

Opcjonalnie. Łączna emisja lotu (suma emisji od wydobycia do spalenia paliwa) na pasażera na podstawie żądanych informacji. Jest to łączna emisja i jeśli nie masz konkretnych powodów, aby używać emisji TTW lub WTT, powinna być używana ta liczba.

ttwEmissionsGramsPerPax

string (int64 format)

Opcjonalnie. Emisja lotu od zbiornika do spalenia paliwa na pasażera na podstawie żądanych informacji.

wttEmissionsGramsPerPax

string (int64 format)

Opcjonalnie. Emisja lotu od wydobycia do zbiornika na pasażera na podstawie żądanych informacji.

source

enum (Scope3DataType)

Opcjonalnie. Źródło danych o emisji.

Scope3DataType

Typ dopasowania używany do obliczania emisji w zakresie 3. Jest on używany w odpowiedzi w zakresie 3 do oznaczania, która z metod została użyta do obliczenia emisji.

Wartości w polu enum
SCOPE3_DATA_TYPE_UNSPECIFIED Nieokreślony typ danych.
TIM_EMISSIONS Emisja według modelu TIM na podstawie miejsca wylotu, miejsca docelowego, przewoźnika, numeru lotu, daty wylotu i roku.
TYPICAL_FLIGHT_EMISSIONS Typowa emisja lotu na podstawie miejsca wylotu, miejsca docelowego i roku.
DISTANCE_BASED_EMISSIONS Emisja na podstawie odległości na podstawie przebytej odległości i roku.