查詢訊息是 Google 要求更新價格或中繼資料的訊息。這些訊息可用於「提取」和「價格變更」放送模式。
查詢訊息的根元素是 <Query>
。
查詢訊息的結構取決於訊息類型:
價格:Google 會傳送查詢訊息,要求更新指定飯店的價格。
中繼資料:Google 會傳送查詢訊息,要求指定飯店的房型和套裝行程資訊。
在初始設定期間,您會定義 Google 用於查詢訊息和即時價格查詢的端點。如需更多資訊,請與技術客戶經理 (TAM) 聯絡。
Google 會以 HTTP POST
要求傳送查詢訊息,並將 Content-Type
標頭設為「application/xml」,User-Agent
標頭則設為 Google-HotelAdsPrices
。透過 Google-TravelAds-Live
手動測試價格端點整合時,可豁免遵守這項規則。這些查詢範例可能包含或不包含 User-Agent
標頭。
如需查詢訊息的詳細格式,請參閱「查詢 XML 參考資料」。
查詢價格訊息
價格查詢訊息會指定您提供價格的房源和行程組合。
伺服器收到 pricing 查詢訊息時,應回覆包含所要求價格資訊的 <Transaction>
訊息。
詳情請參閱「定價總覽」。
查詢訊息有三種特殊類型:
即時價格:啟用後,當使用者主動瀏覽指定房源或行程組合的價格時,系統會傳送查詢,而你必須在指定時間範圍內回覆。
提供背景資訊:啟用後,Google 傳送給您的每項查詢都會包含使用者背景資訊建議,這些建議反映了搜尋特定房源或行程組合的最常見使用者類型。遵循這些建議可提高回覆效率。
中繼資料:這是要求指定屬性相關房間和套裝組合詳細資料的請求。
即時價格查詢
即時價格查詢是指 Google 根據使用者搜尋內容,要求即時更新價格。使用者向 Google 提出飯店或行程組合的搜尋要求,但由於價格資料無法取得或不是最新資訊,Google 會在搜尋時向你要求更新價格。Google 會在搜尋時嘗試取得價格,並顯示在結果中。
所有即時價格查詢要求都有回應時間限制,通常為 4000 毫秒。這項限制是在即時價格查詢要求中指定。如果無法在時限內提供回覆,就會錯失特定商機。不過,我們建議您還是提供價格,以便系統快取並用於日後的商機。回應的連線會保持開啟十分鐘,或合作夥伴設定中指定的時間。
即時價格查詢也會提供背景資訊,並可根據下列參數擷取價格:使用者國家/地區、裝置類型、入住人數 (房客人數),以及房客是成人還是兒童。透過即時價格查詢,您可以顯示與消費者搜尋內容相符的最新價格。
即時價格查詢是價格更新的次要機制。重新定價的主要機制仍是透過「提取」或「已變更」價格。如果 Google 沒有飯店或行程組合的價格,即時價格查詢功能可填補這類空白。
使用即時價格查詢的規則
由於要求的行程不尋常 (例如日期距離現在太久,或飯店很少被搜尋),因此系統沒有該行程的快取資料。
要求的日期不是預設日期。
注意:預設日期不適用於即時價格查詢。系統只會針對非預設日期要求即時價格查詢。
Google 通常會快取即時價格查詢結果,避免重複查詢同一間飯店或行程。可要求單一飯店或行程組合,以及多飯店或單一行程組合。
提供背景資訊的即時價格功能可讓 Google 根據使用者的裝置類型、搜尋時所在的國家/地區,以及入住人數 (包括兒童),傳送特定的即時價格要求。查詢訊息和交易訊息都會擴充,納入定義查詢參數的 <Context>
元素。如果價格是針對特定入住人數,則可將透過情境即時價格查詢收到的價格快取為房型套裝組合;如果價格是針對使用者國家/地區或使用者裝置,則可快取為條件式費率。
使用 Context 查詢
Context 查詢是更新資料庫的常規要求,適用於指定的屬性或行程組合。這些組合包含熱門的使用者情境清單。如果使用條件式費率,所有可能的使用者情境傳送費率可能很高,因此您可以使用這份使用者情境清單來限制回應。只針對指定使用者情境傳回價格,即可涵蓋絕大多數相關使用者查詢。
如有興趣接收「提供背景資訊」查詢,請與客戶技術顧問 (TAM) 聯絡。確認您已準備好接收這類訊息,然後調整設定,開始在查詢中傳送使用者情境給您。
中繼資料查詢訊息
中繼資料查詢訊息包含指定房源的客房和套裝行程資訊詳細資料。
收到中繼資料查詢訊息時,請以 <Transaction>
訊息回覆,並在 <Result>
元素中指定所要求屬性的價格。
詳情請參閱「定義房間和套件中繼資料」。
控制查詢
本節說明如何控管哪些房源和行程可做為 Google 查詢訊息的主題。
行程界線
您可以使用 <ItineraryCapabilities>
判斷價格查詢的可能界線。您可以定義規則,決定支援的日期範圍和最長住宿天數。
您可以為 <MaxAdvancePurchase>
和 <MaxLengthOfStay>
設定預設值,適用於所有飯店或行程組合。你也可以為飯店群組定義這些設定。
查詢訊息範例
本節提供幾個查詢訊息和中繼資料查詢訊息的計費示例。如需其他範例,請參閱查詢 XML 參考資料。
行程範例
以下範例顯示價格 <Query>
,要求更新 4 間飯店的價格,入住 3 晚,入住日期為 2023 年 5 月 23 日:
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<Checkin>2023-05-23</Checkin>
<Nights>3</Nights>
<PropertyList>
<Property>pid5</Property>
<Property>pid8</Property>
<Property>pid13</Property>
<Property>pid21</Property>
</PropertyList>
</Query>
這個範例會要求更新每間飯店的價格:
5/23/18 - 6/26/18
即時價格查詢範例
以下範例顯示即時價格查詢,回應時間限制為 500 毫秒:
<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
<!-- Note that the latencySensitive attribute is not present by default but can
be configured to be displayed, on request, by Google. This attribute is only
displayed for a Live Pricing Query request -->
<Checkin>2023-05-23</Checkin>
<Nights>2</Nights>
<DeadlineMs>500</DeadlineMs>
<!-- The deadline represents the timeframe by which a response will need to be
received by. This element is only displayed for a Live Pricing Query request -->
<PropertyList>
<Property>6781291</Property>
</PropertyList>
<!-- Note that Context tags are potentially repeatable -->
<Context>
<!-- The total number of guests occupying the room (adults+children) -->
<Occupancy>3</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
<!-- In this example one of the 3 guests is a 5yr old child -->
<Children>
<Child age="5"/>
</Children>
</OccupancyDetails>
<!-- The user was located in the US when this search was made -->
<UserCountry>US</UserCountry>
<!-- The user was searching from a mobile device at the time of search -->
<UserDevice>mobile</UserDevice>
</Context>
</Query>
這個範例會要求單一飯店的價格:
6/23/23 - 6/25/23
如要查看這項查詢的交易訊息回覆範例,請參閱價格與房間廣告空間 (交易) XML 參考資料。
With Context 查詢範例
以下是「With Context」查詢的範例:
包含背景資訊的基本查詢
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<Checkin>2023-05-23</Checkin>
<Nights>2</Nights>
<PropertyContextList>
<PropertyContext>
<Property>8675309</Property>
<!-- In the future, device might be specified -->
<Context><UserCountry>US</UserCountry></Context>
<Context><UserCountry>GB</UserCountry></Context>
</PropertyContext>
<PropertyContext>
<Property>8675310</Property>
<Property>8675311</Property>
<Context><UserCountry>CA</UserCountry></Context>
</PropertyContext>
</PropertyContextList>
</Query>
包含入住人數的背景資訊查詢
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<Checkin>2025-07-10</Checkin>
<Nights>2</Nights>
<PropertyContextList>
<PropertyContext>
<Property>8675309</Property>
<Context>
<UserCountry>US</UserCountry>
</Context>
<Occupancy>3</Occupancy>
<OccupancyDetails>
<NumAdults>2</NumAdults>
<Children>
<Child age="7"/>
</Children>
</OccupancyDetails>
</PropertyContext>
<PropertyContext>
<Property>8675310</Property>
<Context>
<UserCountry>GB</UserCountry>
</Context>
<Occupancy>1</Occupancy>
<OccupancyDetails>
<NumAdults>1</NumAdults>
</OccupancyDetails>
</PropertyContext>
</PropertyContextList>
</Query>
Context 查詢只會指定使用者國家/地區環境。日後這類查詢也可能會指定使用者裝置。
入住日期範圍
如果您使用「已變更的價格」,查詢訊息的結構取決於您用於入住日期範圍、確切行程或範圍行程的提示類型。如要進一步瞭解這些提示類型,請參閱「提示回應訊息」。
以下範例顯示入住日期範圍的價格 <Query>
訊息:
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<FirstDate>2023-05-23</FirstDate>
<LastDate>2023-05-26</LastDate>
<Nights>3</Nights>
<PropertyList>
<Property>pid5</Property>
<Property>pid8</Property>
<Property>pid13</Property>
<Property>pid21</Property>
</PropertyList>
</Query>
這個範例會為下列住宿要求價格更新 (適用於每間飯店):
5/23/23 - 5/24/23
5/23/23 - 5/25/23
5/23/23 - 5/26/23
5/24/23 - 5/25/23
5/24/23 - 5/26/23
5/24/23 - 5/27/23
5/24/23 - 5/26/23
5/25/23 - 5/27/23
5/25/23 - 5/28/23
住宿範圍
以下範例顯示範圍住宿的價格 <Query>
訊息:
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<FirstDate>2023-05-23</FirstDate>
<LastDate>2023-05-26</LastDate>
<AffectedNights>3</AffectedNights>
<PropertyList>
<Property>pid5</Property>
<Property>pid8</Property>
<Property>pid13</Property>
<Property>pid21</Property>
</PropertyList>
</Query>
這個範例會要求更新每間飯店的價格:
5/23/23 - 5/24/23
5/23/23 - 5/25/23
5/23/23 - 5/26/23
5/24/23 - 5/25/23
5/24/23 - 5/26/23
5/24/23 - 5/27/23
5/25/23 - 5/26/23
5/25/23 - 5/27/23
5/25/23 - 5/28/23
在指定日期之前開始 (但包含該日期) 的 Plus 住宿:
5/20/23 - 5/23/23
5/21/23 - 5/23/23
5/21/23 - 5/24/23
5/22/23 - 5/23/23
5/22/23 - 5/24/23
5/22/23 - 5/25/23
中繼資料查詢訊息
以下範例顯示 <Query>
訊息,要求更新多個房源的房型和套裝行程資訊中繼資料:
<?xml version="1.0" encoding="UTF-8"?>
<Query>
<HotelInfoProperties>
<Property>pid5</Property>
<Property>pid8</Property>
<Property>pid13</Property>
<Property>pid21</Property>
</HotelInfoProperties>
</Query>
您會使用「交易」訊息回覆這類「查詢」訊息,定義房間和套裝組合中繼資料。詳情請參閱「定義房間和套件中繼資料」。