Package google.travel.sustainability.travelimpactmodel.v1

索引

TravelImpactModelService

提供碳排放量估算的 API。

ComputeFlightEmissions

rpc ComputeFlightEmissions(ComputeFlightEmissionsRequest) returns (ComputeFlightEmissionsResponse)

用於擷取預估排放量的無狀態方法。如要瞭解碳排放量估算方式,請參閱 GitHub

回應會包含與輸入航班航段相符的所有項目,順序相同。如果特定航段沒有預估值,回應會傳回航段物件,但排放量欄位為空白。但系統仍會將要求視為成功。如果沒有碳排放量估算值,可能的原因包括:

  • 伺服器無法辨識航班。
  • 輸入的航班航段缺少一或多個 ID。
  • 航班日期是過去日期。
  • 模型不支援該機型。
  • 缺少座位設定。

要求最多可包含 1000 個航班航段。如果要求包含超過 1000 個直飛航班,系統會傳回 INVALID_ARGUMENT 錯誤,導致要求失敗。

ComputeScope3FlightEmissions

rpc ComputeScope3FlightEmissions(ComputeScope3FlightEmissionsRequest) returns (ComputeScope3FlightEmissionsResponse)

無狀態方法,可擷取一組航班航段的溫室氣體排放量估計值,用於範疇 3 報告。

回應會包含與輸入的Scope3FlightSegment航段相符的所有項目,順序與輸入時相同。系統會使用下列層疊邏輯計算預估值 (使用第一個可用的值):

  1. 根據 origindestinationcarrierflightNumberdepartureDatecabinClass 提供的 TIM 預估排放量。
  2. origindestinationdepartureDate 年和 cabinClass 的一般航班碳排放量。
  3. 使用 distanceKmdepartureDatecabinClass 計算的距離相關排放量。

如果今年度有未來的航班要求,我們不支援第 1 級排放量,將改用第 2 級或第 3 級排放量。如果要求的未來航班不在今年,我們會傳回空白的回應。建議您在日後的測試中使用 computeFlightEmissions API。

如果使用上述三種方法都無法預估特定航班的排放量,回應會傳回 Scope3FlightEmissions 物件,但排放量欄位會留空。但系統仍會將要求視為成功。一般來說,如果伺服器無法辨識航班 (例如沒有特定航班,或所選配對沒有一般航班排放量),就會發生預估排放量遺失的情況。

如有下列情況,要求會失敗並顯示 INVALID_ARGUMENT 錯誤:

  • 要求包含超過 1,000 個航班航段。
  • 輸入的航班航段缺少一或多個 ID。舉例來說,缺少來源/目的地,但沒有 TIM_EMISSIONSTYPICAL_FLIGHT_EMISSIONS 類型相符的有效距離,或是缺少 DISTANCE_BASED_EMISSIONS 類型相符的距離 (如要根據距離計算排放量或估算排放量,就必須指定距離)。
  • 航班日期在 2019 年之前 (範圍 3 資料僅適用於 2019 年和之後)。
  • 飛行距離為 0 或更短。
  • 缺少艙等。

由於系統會使用備用邏輯處理要求,因此設定錯誤的要求可能會使用備用方法傳回有效的排放量估計值。舉例來說,如果要求中的航班號碼有誤,但指定了起點和目的地,要求仍會成功,但系統只會根據一般航班的碳排放量傳回結果。同樣地,如果一般航班碳排放量要求缺少來源,但指定了有效距離,則要求可能會僅根據距離碳排放量成功。因此,請檢查回傳排放量的來源 (source),確認結果符合預期。

ComputeTypicalFlightEmissions

rpc ComputeTypicalFlightEmissions(ComputeTypicalFlightEmissionsRequest) returns (ComputeTypicalFlightEmissionsResponse)

擷取兩個機場 (又稱市場) 之間的一般航班排放量預估值。如果特定市場沒有預估值,回應會傳回市場物件,但排放量欄位為空白。但系統仍會將要求視為成功。

如要進一步瞭解一般排放量的預估計算方式,請參閱 GitHub

要求最多可包含 1000 個市場。如果要求包含超過 1000 個市場,系統會傳回 INVALID_ARGUMENT 錯誤,導致要求失敗。

ComputeFlightEmissionsRequest

ComputeFlightEmissions 要求的輸入定義。

欄位
flights[]

Flight

必要欄位。直飛航班,用於預估回程碳排放量。

ComputeFlightEmissionsResponse

ComputeFlightEmissions 回應的輸出定義。

欄位
flight_emissions[]

FlightWithEmissions

列出各航段的預估排放量。

model_version

ModelVersion

計算這項回應中所有航班預估排放量時所用的模型版本。

ComputeScope3FlightEmissionsRequest

要求第 3 範疇排放量的航班航段清單。

欄位
flights[]

Scope3FlightSegment

必要欄位。要傳回預估排放量的航班。

model_version

ModelVersion

(選用步驟) 計算這項要求中所有航班預估排放量時使用的模型版本。

ComputeScope3FlightEmissionsResponse

內含第 3 類排放量估計值的航班清單。

欄位
flight_emissions[]

Scope3FlightEmissions

列出各個航段的預估排放量。

model_version

ModelVersion

計算這項回應中所有航班預估排放量時所用的模型版本。

ComputeTypicalFlightEmissionsRequest

要求一般排放量的機場 (市場) 配對清單。

欄位
markets[]

Market

必要欄位。要求提供這個市場配對的一般航班排放量預估值。最多可要求 1000 個市場。

ComputeTypicalFlightEmissionsResponse

回覆內容包含排放量和模型版本。

欄位
typical_flight_emissions[]

TypicalFlightEmissions

要求市場的一般航班排放量。

model_version

ModelVersion

計算此回應中所有航班的一般航班排放量估計值時所用的模型版本。

ContrailsImpactBucket

飛機雲暖化效應相較於二氧化碳當量總排放量影響的顯著程度。

列舉
CONTRAILS_IMPACT_UNSPECIFIED 未指定凝結尾跡影響。
CONTRAILS_IMPACT_NEGLIGIBLE 相較於二氧化碳當量總排放量,凝結尾的影響微不足道。
CONTRAILS_IMPACT_MODERATE 飛機雲的影響與二氧化碳當量總排放量相當。
CONTRAILS_IMPACT_SEVERE 飛機雲的影響大於總 CO2e 排放量。

EasaLabelMetadata

歐盟航空安全總署 (EASA) 航班排放量標籤的中繼資料。

欄位
label_issue_date

Date

標籤核發日期。

label_expiry_date

Date

標籤的有效期限。標籤會顯示到這個日期為止。

label_version

string

標籤版本。

saf_discount_percentage

double

標籤套用的永續航空燃料 (SAF) 排放量折扣百分比。以小數表示的百分比。值介於 [0,1] 區間。舉例來說,0.0021 代表 0.21%。

這項折扣和減排量是由歐盟航空安全總署標籤回報,但未納入此 API 分發的 CO2e 預估值。

EmissionsGramsPerPax

依艙等分組的碳排放量結果。

欄位
first

int32

頭等艙一位乘客的排放量 (以公克為單位)。無論飛機是否設有頭等艙座位,系統一律會計算並填入這個欄位。

business

int32

商務艙一位乘客的排放量 (以公克為單位)。無論飛機是否有商務艙座位,系統一律會計算並填入這個欄位。

premium_economy

int32

豪華經濟艙一位乘客的排放量 (以公克為單位)。無論飛機是否設有豪華經濟艙座位,系統一律會計算並填入這個欄位。

economy

int32

經濟艙一位乘客的排放量 (以公克為單位)。無論飛機是否設有經濟艙座位,系統一律會計算並填入這個欄位。

檔期

與單一要求項目相關的所有詳細資料,用於直接航班排放量估算。

欄位
origin

string

必要欄位。航班出發地機場的 IATA 代碼,例如「LHR」。

destination

string

必要欄位。航班目的地的 IATA 機場代碼,例如「JFK」。

operating_carrier_code

string

必要欄位。IATA 航空公司代碼,例如「AA」。

flight_number

int32

必要欄位。航班號碼,例如 324。

departure_date

Date

必要欄位。航班日期,以出發地機場的時區為準。必須是現在或未來的日期。

FlightWithEmissions

直飛航班,並提供預估排放量。

欄位
flight

Flight

必要欄位。與要求中的航班 ID 相符。注意:所有 IATA 代碼均為大寫。

source

Source

(選用步驟) 排放量資料的來源。

emissions_grams_per_pax

EmissionsGramsPerPax

(選用步驟) 每位乘客的預估排放量。如果無法計算碳排放量,就不會顯示這項資訊。如要查看無法計算碳排放量的原因清單,請參閱ComputeFlightEmissions

easa_label_metadata

EasaLabelMetadata

(選用步驟) 歐盟航空安全總署 (EASA) 航班排放量標籤的中繼資料。只有在排放量資料來源為 EASA 時才設定。

contrails_impact_bucket

ContrailsImpactBucket

(選用步驟) 飛機雲暖化效應相較於二氧化碳當量總排放量影響的顯著程度。

市場

一對機場。

欄位
origin

string

必要欄位。航班出發地機場的 IATA 代碼,例如「LHR」。

destination

string

必要欄位。航班目的地的 IATA 機場代碼,例如「JFK」。

ModelVersion

旅遊影響模型版本。如要進一步瞭解模型版本控管,請參閱 GitHub

欄位
major

int32

主要版本:方法有重大變更 (例如在模型中加入新的資料來源,導致輸出結果有重大變化)。這類異動不會經常發生,且我們會提前公告。可能涉及 API 版本變更,這類變更會遵守 Google Cloud API 指南

minor

int32

次要版本:模型變更,但與結構定義版本一致,且會變更模型參數或實作方式。

patch

int32

修正版本:實作變更,旨在解決模型實作中的錯誤或不準確之處。

dated

string

有日期的版本:模型資料集會定期以更新的輸入資料重新建立,但演算法不會變更。

Scope3FlightEmissions

範圍 3 航班的預估排放量。

欄位
flight

Scope3FlightSegment

必要欄位。與要求中的航班 ID 相符。

wtw_emissions_grams_per_pax

int64

(選用步驟) 根據要求提供的資訊,每位乘客的航班排放總量 (油井到油箱和油箱到尾流的排放量總和)。這是排放總量,除非有使用 TTW 或 WTT 排放量的具體原因,否則應使用這個數字。

ttw_emissions_grams_per_pax

int64

(選用步驟) 根據要求資訊,計算每位乘客的油箱到尾流飛行排放量。

wtt_emissions_grams_per_pax

int64

(選用步驟) 根據要求資訊,計算每位乘客的「油井到油箱」航班排放量。

source

Scope3DataType

(選用步驟) 排放量資料的來源。

Scope3DataType

用於計算範疇 3 排放量的比對類型。用於範圍 3 回應,標示用於計算排放量的方法。

列舉
SCOPE3_DATA_TYPE_UNSPECIFIED 未指定資料類型。
TIM_EMISSIONS 根據出發地、目的地、航空公司、航班號碼、出發日期和年份,計算出以 TIM 為單位的排放量。
TYPICAL_FLIGHT_EMISSIONS 根據出發地、目的地和年份計算的一般航班碳排放量。
DISTANCE_BASED_EMISSIONS 根據行駛距離和年份計算的排放量。

Scope3FlightSegment

用來擷取第 3 範疇排放量的航班參數。

欄位
departure_date

Date

必要欄位。航班日期,以出發地機場的時區為準。一般航班和距離的碳排放量模型只需要年份 (系統會忽略月份和日期值,因此可以省略、設為 0 或設為有效日期)。因此,如果未提供特定日期的 TIM 排放量,我們會改用一般航班 (或以距離為準) 的排放量。

cabin_class

CabinClass

必要欄位。航班的艙等。

origin

string

(選用步驟) 航班出發地機場的 IATA 代碼,例如 YVR。如果同時提供目的地、航空公司和航班編號,系統就會使用這項資訊比對特定航班。如果沒有相符的航班,系統會先嘗試比對提供的出發地和目的地機場之間的一般航班。否則,如果提供航班距離,我們會使用以距離為準的排放量模型。

destination

string

(選用步驟) 航班目的地的 IATA 機場代碼,例如 ICN。如果一併提供出發地、航空公司和航班號碼,系統就會使用這項資訊比對特定航班。如果沒有相符的航班,系統會先嘗試比對提供的出發地和目的地機場之間的一般航班。否則,如果提供航班距離,我們會使用以距離為準的排放量模型。

carrier_code

string

(選用步驟) IATA 航空公司代碼,例如 KE。如要比對特定航班,就必須提供這項資訊。否則,這項資料不會用於一般航班和距離的排放量模型。這可以是承運和銷售航空公司代碼 (即涵蓋代碼共用)。

flight_number

int32

(選用步驟) 航班編號,例如 71。如果指定出發地、目的地和航空公司,系統會先使用這項資訊比對特定航班。如果未指定航班號碼,系統會先嘗試比對航班與所提供出發地和目的地機場之間的典型航班。如果失敗,且/或未提供起點和目的地,我們會根據提供的飛行距離,使用以距離為準的排放量模式。

distance_km

int64

(選用步驟) 以公里為單位的距離,例如 2423。如果未提供出發地和目的地,或沒有相符的一般航班,系統就會使用這項資料,根據距離計算航班的排放量。這個欄位支援的值介於 0 到 2.5e16 公里之間。

CabinClass

航班的艙等。

列舉
CABIN_CLASS_UNSPECIFIED 未指定艙等。
ECONOMY 經濟艙。
PREMIUM_ECONOMY 豪華經濟艙。
BUSINESS 商務艙。
FIRST 頭等艙。

來源

排放量資料的來源。

列舉
SOURCE_UNSPECIFIED 碳排放量資料來源不明。
TIM 碳排放量資料來自旅遊影響模型。
EASA 排放量資料來自歐盟航空安全總署 (EASA) 的環保標籤。

TypicalFlightEmissions

特定市場的一般航班碳排放量預估值

欄位
market

Market

必要欄位。與要求中的航班 ID 相符。注意:所有 IATA 代碼均為大寫。

emissions_grams_per_pax

EmissionsGramsPerPax

(選用步驟) 所要求市場中,每位乘客的一般航班排放量。如果無法計算一般排放量,就不會顯示這項資訊。如要查看無法計算一般航班碳排放量的原因清單,請參閱 GitHub