行程的 API 傳輸
透過「行程」功能,您可以顯示客戶的預訂資訊,並協助他們尋找 booking-related 的產品或服務,例如旅遊行程或體驗活動。您也可以利用這些數據來分析預訂趨勢,並為相關人士製作報告。
配送選項
您的行程資料 API 傳輸可採用推送或拉取機制。
推播機制
推播服務會在行程有更新時即時發送通知。核心預訂欄位會在交易完成後數分鐘內提供,而附加及擴充欄位則會在 2 至 4 小時內跟進。此選項可讓您:
- 在您的網站上顯示客戶的預訂資訊,或 App
- 為旅客提供更多可供購買的旅遊相關產品與服務
推送事件將透過 Webhook 傳送至您提供的 URL,格式為HTTP POST 訊息。這些訊息的傳送順序可能不固定,因此請參閱creation_date 和update_date_time 中的元素來確定順序。
有關如何採用此傳送選項的詳細資訊,請參閱API 設定。
處理推送事件
由於行程資料是隨取得而即時傳送的,您可能會收到同一行程的多個事件——首先是包含核心欄位的初始事件,隨後隨著輔助資料的補充或行程的更新,會陸續收到後續事件。請參閱中的「可用欄位」頁面 (),以查看哪些欄位會即時更新,哪些則會在 2 至 4 小時內更新。
應做:
- 每個行程表中預期會包含多個活動:請使用
itinerary_id來關聯活動,並始終以具有最新update_date_time的活動為準 - 選擇更新處理方式:當您收到現有行程的新事件時,您可以選擇以最新資料覆寫先前記錄,或將每個事件追加至末端以保留變更歷史紀錄
- 妥善處理缺失欄位:早期事件中可能缺少輔助欄位;處理前請先檢查欄位是否存在
請勿:
- 假設第一個事件包含完整的有效載荷: 其餘輔助欄位將在後續事件中出現
- 將同一行程中的多個事件視為錯誤處理: 這是預期中的行為
- 請將 real-time 上的財務數值視為最終結果: 這些數值可能會在 24 小時內進行調整
提取機制
此拉取服務提供詳細的行程資料,以支援:
- 資料分析
- 將預訂記錄與 Expedia Group 上的資料進行對帳
- 針對推送傳送失敗的時間區間進行資料擷取
- 服務台調查
與推送傳輸相同,拉取傳輸的行程資料亦分為兩個層級:核心欄位 (itinerary_ID、status、gross_booking_value、checkin_date 及checkout_date) 可在預訂或更新後數分鐘內取得,而附加及擴充欄位則會在 2 至 4 小時內跟進提供。請參閱及,以查看各領域的完整細項。
此服務包含兩個HTTP GET 端點,可讓您:
- 使用變數
creation_date_start、creation_date_end、update_date_time_start及 ``update_date_time_end,建立在指定時間範圍內建立或更新的行程清單 - 根據其...檢索特定行程
itinerary_id
有關驗證流程的詳細資訊,請參閱API 設定。
依時間區間擷取行程資料
若要擷取特定時間區間的行程資料,請透過GET /itineraries 和update_date_time_start 作為查詢區間,向update_date_time_end 端點發送輪詢請 求。
建議做法:
- 請使用 update_date_time 中的欄位作為查詢視窗: 請使用
update_date_time_start和update_date_time_end作為查詢視窗,以檢索在指定期間內建立或更新的行程。若僅使用creation_date,將無法收到行程更新。 - 儲存您上次成功擷取的汲取時間戳記: 將此值用作下一次的
update_date_time_start,並逐步推進擷取視窗。 - 重複資料刪除: 請在查詢中使用
itinerary_id+update_date_time。隨著輔助欄位的資料日益豐富,同一行程可能會出現在多個投票視窗中。請始終以最新版《update_date_time》中的記錄為準。
若您的使用情境需要最完整且即時的行程資料,建議採用推送傳送方式。
可用欄位
下表列出我們推播和提取交付方法所提供的欄位,包括所有嵌入物件。「可用性」欄位顯示各欄位在預訂事件或更新後,通常何時可供存取:
- 即時:預訂或更新後數分鐘內即可取得
- Near-real-time:預訂或更新後 2 至 4 小時內即可取得
以名稱開頭並緊接英文句號的欄位名稱 (例如,<variable>.<nested variable>) 可指出嵌入關係。
白牌旅遊平台
| 欄位名稱 | 定義 | 範例 | 供應情況 |
|---|---|---|---|
itinerary_id | 行程編號或銷售點訂單參考編號。 | 72622069245694 | 即時 |
status | 行程和當中個別項目的狀態。 | 可能的值: 已確認 已取消 | 即時 |
creation_date* | 預訂的初始日期,以 ISO 8601 日期格式表示(YYYY-MM-DD). | 2023-02-05 | 即時 |
update_date_time* | 行程的最後更新日期與時間,以 ISO 8601 日期格式表示 (YYYY-MM-dd'T"HH:mm:ss.SSSZ)。 | 2023-10-21T00:00:00.000Z | 即時 |
online | 表示行程是透過線上預訂 (true) 還是透過旅行社預訂 (false)。以布林值表示。 | true | Near-real-time |
package | 表示該行程是套裝行程的一部分,還是獨立預訂。以布林值表示。 | false | Near-real-time |
payment_type | 付款時使用的付款方式。 | 可能的值: 信用卡 點數 分期付款 | 即時 |
point_of_sale_country_code | 旅客預訂所用銷售點的國家/地區代碼。以雙字母 ISO 3166-1 alpha-2 格式表示。 | GB | Near-real-time |
purchaser | 預訂者的身分識別。請參閱 purchaser 表格以取得嵌入項目清單。 | ||
property_booking_items | 做為行程一部分而預訂的住宿項目。請參閱 property_booking_items 表格以取得嵌入項目清單。 | ||
flight_booking_items | 做為行程一部分而預訂的機票項目。請參閱 flight_booking_items 表格以取得嵌入項目清單。 | ||
car_booking_items | 做為行程一部分而預訂的租車項目。請參閱 car_booking_items 表格以取得嵌入項目清單。 | ||
activity_booking_items | 做為行程一部分而預訂的活動項目。請參閱 activity_booking_items 表格以取得嵌入項目清 單。 | ||
insurance_booking_items | 做為行程一部分而預訂的保險項目。請參閱 insurance_booking_items 表格以取得嵌入項目清單。 | ||
rate | 預訂項目或整體行程的房價和價格詳情。請參閱 rate 表格以取得嵌入項目清單。 | ||
coupon | 套用至行程的優惠券 (如果適用)。請參閱 coupon 表格以取得嵌入項目清單。 |