Referência XML de consultas e dicas

Esta seção fornece uma referência para as mensagens de solicitação de dica, mensagens de resposta de dica e mensagens de consulta baseadas em XML do Google.

<Hint> (Hint Response message)

O elemento raiz de uma mensagem de resposta de dica. As mensagens de resposta de dica especificam quais combinações de hotel ou itinerário precisam ser reavaliadas. Elas são sua resposta a uma mensagem de solicitação de dica do Google.

Uma mensagem de resposta de dica deve especificar apenas os hotéis cujos preços mudaram desde a última vez que o Google recebeu uma resposta de dica bem-sucedida dos seus servidores.

As mensagens de resposta de dica usam um dos seguintes métodos para especificar quais hotéis e itinerários o Google deve redefinir o preço:

  • Itinerários exatos: uma combinação de data do check-in e duração da estadia.

  • Períodos de datas de check-in: especifica um período de datas de check-in, começando com a primeira e terminando com a última.

  • Estadias em um intervalo (ou roteiros em um intervalo)

Cada um desses métodos exige uma sintaxe diferente para a mensagem de resposta de dica.

Para mais informações, consulte Mensagens de resposta de dica.

Sintaxe

O elemento <Hint> usa uma sintaxe diferente, dependendo do tipo de mensagem de resposta de dica:

Itinerários exatos

Confira a sintaxe para itinerários exatos em uma mensagem de resposta de dica:

<!-- Exact Itinerary Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <Item>
    <Property>hotel_ID</Property>
    ...
    <Stay>
      <CheckInDate>checkin_date</CheckInDate>
      <LengthOfStay>number_of_nights</LengthOfStay>
    </Stay>
  </Item>
  ...
</Hint>

Intervalos de check-in

Confira a sintaxe para intervalos de check-in em uma mensagem de resposta de dica:

<!-- Check-in Ranges Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <Item>
    <!-- At least one is required -->
    <Property>hotel_ID</Property>
    [...]

    <!-- Required -->
    <FirstDate>first_checkin_date</FirstDate>
    <!-- Required -->
    <LastDate>last_checkin_date</LastDate>
  </Item>
  ...
</Hint>

Estadias em um intervalo

Confira a sintaxe para permanências em um intervalo em uma mensagem Hint Response:

<!-- Ranged Stay Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <Item>
    <!-- At least one is required -->
    <Property>1458700</Property>
    <Property>5418701</Property>
    <StaysIncludingRange>
      <!-- Required -->
      <FirstDate>2025-04-28</FirstDate>
      <!-- Optional -->
      <LastDate>2025-04-29</LastDate>
    </StaysIncludingRange>
  </Item>
  ...
</Hint>

Atributos

O elemento <Hint> contém um atributo opcional: id. Quando fornecido, ele é incluído como o atributo hintId em mensagens <Query> enviadas com base nesse <Hint>.

Elementos filhos

O elemento <Hint> tem os seguintes elementos filhos:

Elemento filho Obrigatório? Tipo Tipo de resposta da dica Descrição
<CheckInDate> Required Date Itinerários exatos A data de check-in do itinerário.
<FirstDate> Required Date Intervalos de check-in e itinerários com intervalos A primeira data do período para uma mensagem de resposta de dica de intervalo de check-in ou de estadia com intervalo. As datas são inclusivas.
<Item> Required Object Todos Um contêiner para o hotel/itinerário a ser atualizado.
<LastDate> Required* Date Intervalos de check-in e itinerários com intervalos

A última data do período para uma mensagem de resposta de dica de intervalo de check-in ou de estadia com intervalo. As datas são inclusivas.

* Esse elemento é opcional para estadias com intervalo.

<LengthOfStay> Required integer Itinerários exatos O número de diárias do itinerário, expresso como um número inteiro positivo.
<Property> Required string Todos

O ID de um hotel, usando o mesmo ID da Lista de hotéis. O número de elementos <Property> que podem ser especificados em um único bloco <Item> é determinado pelo tipo de mensagem de resposta de dica:

  • Itinerários exatos: até 100 hotéis.
  • Intervalos de check-in: mais de um se você definir <MultipleItineraries> como "checkin_range" na mensagem <QueryControl>.
  • Estadia em intervalo: mais de uma se você definir <MultipleItineraries> como "affected_dates" na mensagem <QueryControl>.
<Stay> Required Object Itinerários exatos Um contêiner para os elementos <CheckinDate> e <LengthOfStay> em uma mensagem de resposta de dica de itinerário exato. Cada <Item> pode conter apenas um único <Stay>.
<StaysIncludingRange> Required Object Itinerários com intervalos Um contêiner para os elementos <FirstDate> e <LastDate> em uma mensagem de resposta de dica de permanência em um intervalo.

Exemplos

Itinerários exatos

O exemplo a seguir define vários itinerários para uma única propriedade uma mensagem de resposta de dica:

<!-- Exact Itinerary Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <Item>
    <Property>12345</Property>
    <Stay>
      <CheckInDate>2018-07-03</CheckInDate>
      <LengthOfStay>3</LengthOfStay>
    </Stay>
  </Item>
  <Item>
    <Property>12345</Property>
    <Stay>
      <CheckInDate>2018-07-03</CheckInDate>
      <LengthOfStay>4</LengthOfStay>
    </Stay>
  </Item>
</Hint>

Intervalos de check-in

O exemplo a seguir especifica dois hotéis cujos preços mudaram e precisam ser buscados novamente. O Google recebe todos os itinerários entre 3 e 6 de julho para as propriedades 12345 e 67890:

<!-- Check-in Ranges Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <Item>
    <Property>12345</Property>
    <Property>67890</Property>
    <FirstDate>2018-07-03</FirstDate>
    <LastDate>2018-07-06</LastDate>
  </Item>
</Hint>

Estadias em um intervalo

O exemplo a seguir mostra dois usos diferentes de estadias com intervalo, um para um intervalo de noites e outro para uma única noite:

<!-- Ranged Stay Hint Response -->
<?xml version="1.0" encoding="UTF-8"?>
<Hint>
  <!-- Google fetches prices for all itineraries (first and last date are set) -->
  <Item>
    <Property>12345</Property>
    <StaysIncludingRange>
      <FirstDate>2018-07-03</FirstDate>
      <LastDate>2018-07-06</LastDate>
    </StaysIncludingRange>
  </Item>

  <!-- Google fetches prices for a single night (first date only) -->
  <Item>
    <Property>67890</Property>
    <StaysIncludingRange>
      <FirstDate>2018-07-03</FirstDate>
    </StaysIncludingRange>
  </Item>
</Hint>

Para cada um desses exemplos, o Google responde com um <Query>, e você precisa responder com um <Transaction> que inclua atualizações de preços para os hotéis/itinerários especificados.

<HintRequest>

O elemento raiz de uma mensagem de solicitação de dica. O Google envia uma mensagem de solicitação de dica ao seu servidor e espera uma resposta que especifique os hotéis e itinerários cujos preços mudaram desde a última vez que o Google recebeu uma resposta de dica bem-sucedida do seu servidor.

Se houver mudanças nos preços, o Google enviará um <Query> que busca os dados de preços atualizados para os hotéis e itinerários indicados.

Para mais informações, consulte Mensagens de solicitação de dica.

Sintaxe

O elemento <HintRequest> usa a seguinte sintaxe:

Sintaxe

<?xml version="1.0" encoding="UTF-8"?>
<HintRequest>
  <LastFetchTime>last_fetch_time</LastFetchTime>
</HintRequest>

Atributos

O elemento <HintRequest> não tem atributos.

Elementos filhos

O elemento <HintRequest> tem os seguintes elementos filhos:

Elemento filho Tipo Descrição
<LastFetchTime> DateTime A última vez que o Google conseguiu enviar uma mensagem de resposta de dica para uma mensagem de solicitação de dica.

Se esse horário for anterior à última vez que você atualizou os preços no seu servidor, responda com uma mensagem de resposta de dica especificando quais hotéis mudaram.

Se não houver uma busca bem-sucedida recente, esse valor será definido como um intervalo fixo para evitar problemas mais graves com grandes pendências. O valor atual do intervalo fixo é de 1.000 segundos, mas está sujeito a mudanças.

Para mais informações, consulte Mensagens de resposta de dica.

Exemplos

O exemplo a seguir mostra uma mensagem de solicitação de dica:

Mensagem de solicitação de dica

O exemplo a seguir mostra uma mensagem de solicitação de dica:

<?xml version="1.0" encoding="UTF-8"?>
<HintRequest id="ABCDEF" timestamp="2018-06-07T16:20:00Z">
  <LastFetchTime>2018-03-25T00:04:09Z</LastFetchTime>
</HintRequest>

<Query>

O elemento raiz de uma mensagem Query. As mensagens Query são solicitações do Google para atualizações de preços ou metadados. Eles são usados com os modos de transferência Pull e Changed pricing.

Mensagens de consulta de preços

As mensagens de consulta de preços especificam as combinações de propriedade e itinerário para as quais você fornece os preços.

Quando o servidor recebe uma mensagem de consulta de preços, ele precisa responder com uma mensagem <Transaction> que contenha as informações de preços solicitadas.

Para mais informações, consulte Visão geral de preços.

Há três tipos especiais de mensagens Query:

  • Preços em tempo real:o Google responde a uma solicitação específica do usuário, pedindo uma atualização de preço em tempo real. Quando os parceiros recebem uma mensagem Live pricing query, eles precisam responder com uma mensagem <Transaction> que contenha as informações de preços solicitadas em elementos <Result>.

  • Com os preços contextuais:o Google atualiza o cache de preços com base em contextos que são historicamente populares. Quando você receber uma mensagem With Context query, responda com uma mensagem <Transaction> que contenha as informações de preços solicitadas em elementos <Result>.

    • Com consultas de contexto para uma única ocupação

      Ao fornecer tarifas em resposta a consultas "Com contexto", envie apenas a tarifa correspondente ao contexto especificado. A ocupação da tarifa básica exige um mínimo de dois ocupantes. Portanto, se um único ocupante for transmitido na tarifa básica, ele será ignorado e ainda será tratado como ocupação dupla. Nesse caso, transmita a tarifa base como indisponível e use a tarifa aninhada na ocupação individual. Consulte o exemplo de resposta com contexto. Use Preços alterados com contexto para mesclar tarifas definindo o atributo mergeable como "true". Saiba mais.

    • Preço alterado (antes conhecido como Pull with Hints) com contexto

      Quando você envia uma resposta de mensagem <Transaction> para uma consulta de preços alterados com contexto, o Google a trata como uma substituição completa das informações de preços e disponibilidade de um determinado hotel ou itinerário. Todas as tarifas específicas do contexto são excluídas da resposta e removidas do cache.

      Para evitar a substituição, defina o atributo mergeable como "true" no elemento <Result> da mensagem <Transaction>. O Google anexa as taxas às taxas em cache atuais para o contexto fornecido na resposta. Se você não usar o atributo combinável, envie todas as taxas para todos os contextos aplicáveis na resposta.

    • Consulta de preços em tempo real com contexto

      A consulta de preços em tempo real com contexto tem o comportamento de atributo combinável por padrão. Portanto, não é necessário definir esse atributo. Você só precisa enviar as taxas para contextos específicos solicitados pelo Google se todos os outros contextos permanecerem os mesmos. Se outros contextos tiverem mudado, envie as alterações explicitamente. Caso contrário, as novas taxas não serão atualizadas no cache do Google.

  • Metadados:o Google solicita atualizações de metadados para os quartos e pacotes de quartos dos hotéis especificados. Quando você receber uma mensagem Metadata Query, responda com uma mensagem <Transaction> que especifica dados sobre os quartos e as categorias de quarto nos elementos <PropertyDataSet>. Para mais informações, consulte Metadados de categorias de quarto.

Sintaxe

O elemento <Query> usa a seguinte sintaxe:

Consulta de preços

<?xml version="1.0" encoding="UTF-8"?>
<Query>
  <Checkin>YYYY-MM-DD</Checkin>
  <Nights>number_of_nights</Nights>
  <PropertyList>
    <Property>hotel_id</Property>
    ...
  </PropertyList>
</Query>

Preço em tempo real

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true_or_false">
  <Checkin>YYYY-MM-DD</Checkin>
  <Nights>number_of_nights</Nights>
  <!-- Only for Check-in Date Range pricing queries (Changed Pricing) -->
  <FirstDate>YYYY-MM-DD</FirstDate>
  <LastDate>YYYY-MM-DD</LastDate>
  <!-- Only for Ranged Stay pricing queries (Changed Pricing) -->
  <AffectedNights>number_of_nights</AffectedNights>
  <PropertyList>
    <Property>hotel_id</Property>
    ...
  </PropertyList>
  <!-- See documentation below for <Context> -->
  <Context>
   ...
  </Context>
</Query>

Com consulta de contexto

<?xml version="1.0" encoding="UTF-8"?>
<Query>
  <Checkin>YYYY-MM-DD</Checkin>
  <Nights>number_of_nights</Nights>
  <!-- Only for Check-in Date Range pricing queries (Changed Pricing) -->
  <FirstDate>YYYY-MM-DD</FirstDate>
  <LastDate>YYYY-MM-DD</LastDate>
  <!-- Only for Ranged Stay pricing queries (Changed Pricing) -->
  <AffectedNights>number_of_nights</AffectedNights>
  <PropertyContextList>
    <PropertyContext>
      <Property>hotel_id</Property>
      ...
      <!-- See documentation below for <Context> -->
      <Context>
      ...
      </Context>
    </PropertyContext>
  </PropertyContextList>
</Query>

Metadados

<HotelInfoProperties>
  <Property>property_ID</Property>
  ...
</HotelInfoProperties>

Atributos

O elemento <Query> pode conter um atributo: latencySensitive.

O atributo latencySensitive é opcional. Quando fornecido e definido como true, indica que a consulta é um Live Pricing Query. Para que o Google envie consultas com o atributo latencySensitive, entre em contato com seu gerente técnico de contas (TAM).

Elementos filhos

O elemento <Query> tem os seguintes elementos filhos:

Elemento filho Tipo de consulta Tipo Descrição
<AffectedNights> Pricing integer O número de diárias de uma estadia com intervalo. Esse elemento é usado apenas para consultas de preços de estadias por intervalo com preços alterados.
<Checkin> Pricing Date As datas de uma mudança de preço específica.
<Context> Pricing (Live Pricing Queries only) <Context> Para consultas de preços em tempo real, especifica determinados parâmetros em que a consulta é feita. Os elementos filhos incluem:
  • <Occupancy>: o número total de convidados
  • <OccupancyDetails>: o tipo de hóspedes, como adultos ou crianças
  • <UserCountry>: o país em que o usuário está localizado
  • <UserDevice>: o tipo de dispositivo usado pelo hóspede para pesquisar um hotel, como "mobile," "tablet," ou "desktop".

O elemento <Context> pode ser repetido em uma única solicitação, permitindo consultas para diferentes ocupações. Consulte <Context> para uma lista de elementos filhos, sintaxe e exemplos.

<FirstDate> Pricing Date A data de início de um intervalo de itinerários a que os preços se aplicam. Esse elemento é usado apenas para consultas de preços de período de datas de check-in usadas com preços alterados.
<HotelInfoProperties> Metadata string Uma ou mais propriedades para as quais o Google quer metadados atualizados de quarto e pacote de quartos em uma mensagem de metadados Query. Esse elemento pode conter um ou mais elementos <Property> que especificam IDs de propriedades de hotéis.
<LastDate> Pricing Date A data de término de um intervalo de itinerários a que a precificação se aplica. Esse elemento é usado apenas para consultas de preços de período de datas de check-in usadas com Pull + Hints.
<Nights> Pricing integer O número de noites de um itinerário específico, até 30.
<PropertyList> Pricing Object

Um ou mais IDs de hotéis que precisam de atualizações de preços.

Defina cada hotel em um elemento <Property>. O valor é uma string que corresponde a um ID de hotel na sua lista de hotéis. Por exemplo:

<PropertyList>
  <Property>pid1</Property>
  <Property>pid2</Property>
</PropertyList>

Exemplos

Consulta de preços

O exemplo a seguir mostra uma mensagem de consulta de preços que solicita atualizações de preços para um conjunto de hotéis, disponíveis por três noites e com início em 23 de maio de 2023:

<?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>

Consulta de preço em tempo real

O exemplo a seguir mostra uma consulta de preços em tempo real com um limite de tempo de resposta de 500 milissegundos:

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
  <Checkin>2017-06-07</Checkin>
  <Nights>5</Nights>
  <DeadlineMs>500</DeadlineMs>
  <PropertyList>
    <Property>8675309</Property>
  </PropertyList>
  <Context>
    <Occupancy>4</Occupancy>
    <OccupancyDetails>
      <NumAdults>2</NumAdults>
      <Children>
        <Child age="8"/>
        <Child age="5"/>
      </Children>
    </OccupancyDetails>
    <UserCountry>US</UserCountry>
    <UserDevice>mobile</UserDevice>
  </Context>
</Query>

Com consulta de contexto

<?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>

Com resposta contextual

O exemplo a seguir explica como definir a taxa básica como unavailable(-1) para uma ocupação individual e aninhar as taxas no elemento <Occupancy>.

<?xml version="1.0" encoding="UTF-8"
<Transaction id="Wtdj8QoQIWcAAbaTGlIAAAC4" timestamp="2025-11-19T18:36:48Z">
<Result>
  <Property>6781291</Property>
  <Checkin>2026-01-15</Checkin>
  <Nights>1</Nights>
  <!-- Base rate is set to -1 to indicate unavailability for the default (2-person) occupancy -->
  <Baserate currency="USD">-1</Baserate>
  <Tax currency="USD">0</Tax>
  <OtherFees currency="USD">0</OtherFees>
  <Rates>
    <!-- Nested Rate for Single Occupancy -->
    <Rate rate_rule_id="rule-951">
      <Occupancy>1</Occupancy>
      <OccupancyDetails>
        <NumAdults>1</NumAdults>
      </OccupancyDetails>
      <Baserate currency="USD">150.00</Baserate>
      <Tax currency="USD">15.00</Tax>
      <OtherFees currency="USD">5.00</OtherFees>
    </Rate>
  <!-- Other nested rates for different occupancies or room types could be included here if available -->
  </Rates>
</Result>
</Transaction>

Consulta de metadados

<?xml version="1.0" encoding="UTF-8"?>
<Query>
  <HotelInfoProperties>
    <Property>pid5</Property>
    <Property>pid8</Property>
    <Property>pid13</Property>
    <Property>pid21</Property>
  </HotelInfoProperties>
</Query>

Para mais exemplos, incluindo consultas de preços de intervalo de estadia e intervalo de datas de check-in, confira os exemplos de mensagens Query.

<Context>

O elemento <Context> descreve informações para um Live pricing query, incluindo o número e o tipo de hóspedes, o país e o dispositivo do usuário.

Vários <Context> nunca serão usados com países ou dispositivos de usuários diferentes. Quando vários <Context> são usados para consultar várias ocupações, forneça o preço de cada ocupação como um pacote de quarto adicional para a propriedade ou o itinerário correspondente. Cada propriedade ou itinerário precisa ter um único bloco <Result> com os preços para várias ocupações incluídos.

Para ver os detalhes da resposta da consulta <Context>, consulte <OccupancyDetails>.

Sintaxe

O elemento <Context> usa a seguinte sintaxe:

Sintaxe

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true_or_false">
  <Checkin>date</Checkin>
  <Nights>number_of_nights</Nights>
  <DeadlineMs>number_of_milliseconds</DeadlineMs>
  <PropertyList>
    <Property>property_ID</Property>
  </PropertyList>
  <Context>
    <Occupancy>total_number_of_guests</Occupancy>
    <OccupancyDetails>
      <NumAdults>number_of_adults</NumAdults>
      <Children>
        <Child age=age_of_one_child_guest/>
        <Child age=age_of_one_child_guest/>
      </Children>
    </OccupancyDetails>
    <UserCountry>end_user_country</UserCountry>
    <UserDevice>user_device_type</UserDevice>
  </Context>
</Query>

Elementos filhos

O elemento <Context> tem os seguintes elementos filhos:

Elemento filho Tipo de consulta Tipo Descrição
<Occupancy> Pricing integer Especifica o número total de hóspedes.

Embora não seja obrigatório, as consultas com <Occupancy> devem resultar em uma mensagem de transação com as categorias de quarto adequadas definidas para cada <Occupancy>. No entanto, se as categorias de quarto não estiverem disponíveis, é recomendável especificar o elemento <Occupancy>.

Observação:<Occupancy> nem sempre aparece em uma consulta. Nesses casos, retorne os preços de todas as ocupações.

<OccupancyDetails> Pricing Object É precedido por <Occupancy>. Especifica os convidados por tipo, incluindo:
  • <NumAdults>: número de hóspedes adultos
  • <Children> e <Child="age">: especifica quais convidados são crianças (geralmente de 0 a 17 anos) e inclui opcionalmente a idade de cada criança.

Embora não seja obrigatório, as consultas com <OccupancyDetails> devem resultar em uma mensagem de transação com as categorias de quarto adequadas definidas para cada <Occupancy>. No entanto, se as categorias de quarto não estiverem disponíveis, é recomendável especificar o elemento <OccupancyDetails>.

Observação : <OccupancyDetails> nem sempre aparece em uma consulta. Nesses casos, considere que todos os convidados são adultos.

<UserCountry> Pricing string

Filtra as tarifas pelo país em que o usuário está localizado. O valor é um código de país de duas letras, como "US" para os Estados Unidos, ou um código de região, como "EU" para "Europa".

As consultas com <UserCountry> definido precisam resultar em uma mensagem de transação com o bloco <Rates> adequado definido para o país consultado.

<UserDevice> Pricing string

Filtra as tarifas pelo tipo de dispositivo usado na pesquisa. Valores possíveis:

  • mobile
  • desktop
  • tablet

Consultas com <UserDevice> definido devem resultar em uma mensagem de transação com o bloco <Rates> apropriado definido para o tipo de dispositivo consultado.

Exemplos

Ocupação

O exemplo a seguir mostra uma consulta de preços em tempo real para <Occupancy> em <Context>. A consulta de preços em tempo real é para três hóspedes adultos.

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
  <Checkin>2017-06-07</Checkin>
  <Nights>4</Nights>
  <DeadlineMs>500</DeadlineMs>
  <PropertyList>
    <Property>45617</Property>
  </PropertyList>
  <Context>
    <Occupancy>3</Occupancy>
    <UserCountry>US</UserCountry>
    <UserDevice>mobile</UserDevice>
  </Context>
</Query>

Detalhes da ocupação

O exemplo a seguir mostra uma consulta de preços em tempo real com <OccupancyDetails> em <Context>. A consulta de preços em tempo real é para quatro hóspedes, dois deles crianças, e busca uma tarifa aplicável a uma reserva de hóspede dos EUA feita em um dispositivo móvel:

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
  <Checkin>2017-06-07</Checkin>
  <Nights>5</Nights>
  <DeadlineMs>500</DeadlineMs>
  <PropertyList>
    <Property>8675309</Property>
  </PropertyList>
  <Context>
    <Occupancy>4</Occupancy>
    <OccupancyDetails>
      <NumAdults>2</NumAdults>
      <Children>
        <Child age="4"/>
        <Child age="12"/>
      </Children>
    </OccupancyDetails>
    <UserCountry>US</UserCountry>
    <UserDevice>mobile</UserDevice>
  </Context>
</Query>

Vários contextos

O exemplo a seguir mostra o uso de um elemento <Context> adicional em uma consulta de preços em tempo real.

<?xml version="1.0" encoding="UTF-8"?>
<Query latencySensitive="true">
  <Checkin>2017-06-07</Checkin>
  <Nights>4</Nights>
  <DeadlineMs>500</DeadlineMs>
  <PropertyList>
    <Property>45617</Property>
  </PropertyList>
  <Context>
    <Occupancy>3</Occupancy>
    <UserCountry>US</UserCountry>
    <UserDevice>mobile</UserDevice>
  </Context>
  <Context>
    <Occupancy>6</Occupancy>
    <OccupancyDetails>
      <NumAdults>4</NumAdults>
      <Children>
        <Child age="6"/>
        <Child age="10"/>
      </Children>
    </OccupancyDetails>
    <UserCountry>US</UserCountry>
    <UserDevice>mobile</UserDevice>
  </Context>
</Query>