Mensajes de consulta

Los mensajes de consulta son solicitudes de Google de actualizaciones de precios o metadatos. Se usan con los modos de entrega de solicitud de precios a terceros y precios modificados.

El elemento raíz de los mensajes de consulta es <Query>.

La estructura del mensaje Query depende del tipo de mensaje:

  • Precios: Google envía un mensaje de consulta en el que se solicitan actualizaciones de precios para los hoteles especificados.

  • Metadatos: Google envía un mensaje de consulta que solicita datos sobre la información de la habitación y el paquete de los hoteles especificados.

Debes definir el extremo que Google usa para los mensajes de consulta y las consultas de precios en tiempo real durante la configuración inicial. Para obtener más información, comunícate con tu administrador técnico de cuentas (TAM).

Google envía un mensaje de consulta como una solicitud POST HTTP con el encabezado Content-Type configurado como “application/xml” y el encabezado User-Agent con el valor Google-HotelAdsPrices. La excepción a esta regla se produce durante la prueba manual de la integración del extremo de precios a través de Google-TravelAds-Live. Esas consultas de muestra pueden contener el encabezado User-Agent o no.

Puedes encontrar el formato detallado para los mensajes de consulta en la referencia de XML de consultas.

Mensajes de consulta de precios

Los mensajes de consulta de precios especifican las combinaciones de propiedades o itinerarios para los que proporcionas los precios.

Cuando el servidor recibe un mensaje de consulta de pricing, debe responder con un mensaje <Transaction> que contiene la información de precios solicitada.

Para obtener más información, consulta la descripción general de los precios.

Existen tres tipos especiales de mensajes de consulta:

  1. Precios en tiempo real: Si se habilitan, se envían las consultas cuando un usuario busca activamente los precios de la combinación de itinerario o propiedad especificada y tienes un plazo específico para responder.

  2. Con Contexto: Si se habilita, las recomendaciones de contexto del usuario se incluyen en cada búsqueda que Google te envía y las recomendaciones reflejan los tipos más comunes de usuarios que buscan las combinaciones de propiedad o itinerario determinadas. Seguir estas recomendaciones puede aumentar la eficiencia de tus respuestas.

  3. Metadatos:Es una solicitud de detalles sobre las habitaciones y los paquetes de las propiedades especificadas.

Consultas de precios en tiempo real

Las consultas de precios en tiempo real son solicitudes de Google de actualizaciones de precios en tiempo real en respuesta a las búsquedas de los usuarios. Google recibe una solicitud de búsqueda de un usuario para una combinación de hotel o itinerario y, debido a que los datos de precios no están disponibles o no son actuales, Google te solicita una actualización de precios en el momento de la búsqueda. Con la consulta de precios en tiempo real, Google intenta obtener un precio y mostrarlo en los resultados cuando se realiza la búsqueda.

Todas las solicitudes de consultas de precios en tiempo real tienen un límite de tiempo de respuesta que suele ser de hasta 4,000 milisegundos. Este límite se especifica en la solicitud de consulta de precios en tiempo real. Si no se puede proporcionar una respuesta dentro del límite de tiempo, se perderá la participación de la oportunidad específica. Sin embargo, te recomendamos que proporciones un precio de todos modos para que se pueda almacenar en caché y usar para futuras oportunidades. La conexión para la respuesta permanece abierta durante diez minutos o según se especifique en la configuración del socio.

Las consultas de precios en tiempo real también son contextuales y pueden recuperar precios para los siguientes parámetros: país del usuario, tipo de dispositivo, ocupación (cantidad de huéspedes) y si esos huéspedes son adultos o niños. Con las consultas de precios en tiempo real, puedes mostrar precios más actualizados que coincidan con lo que buscó el cliente.

El objetivo de las consultas de precios en tiempo real es ser un mecanismo secundario para las actualizaciones de precios. El mecanismo principal para la revisión de precios aún es a través de la solicitud de precios a terceros o los precios modificados. Las consultas de precios en tiempo real ayudan a cerrar los vacíos en los casos en que Google no tiene precios para las combinaciones de itinerarios o hoteles.

Reglas para usar las consultas de precios en tiempo real

  • No existen datos almacenados en caché para el itinerario determinado porque el itinerario solicitado es atípico, como las fechas son muy lejanas en el futuro o el hotel se busca con muy poca frecuencia.

  • La fecha solicitada no es la predeterminada.

: Nota: Las fechas predeterminadas no son aptas para las consultas de precios en tiempo real. Las consultas de precios en tiempo real se solicitan solo para fechas no predeterminadas.

Por lo general, Google almacena en caché los resultados de un precio en tiempo real para que no se vuelvan a consultar el mismo hotel o itinerario. Puede solicitar combinaciones de un solo hotel o itinerario, así como combinaciones de varios hoteles o un itinerario.

La función Precios en tiempo real con contexto permite que Google envíe solicitudes específicas de precios en tiempo real según el tipo de dispositivo del usuario, el país desde el que realiza la búsqueda y la cantidad de ocupantes, incluidos los niños. Los mensajes de consulta y de transacción se expanden para incluir el elemento <Context> que define los parámetros de consulta. Los precios recibidos de las consultas de precios en tiempo real con contexto se pueden almacenar en caché como un paquete de habitación, si es un precio para una ocupación específica y como una tarifa condicional, si es para el país o el dispositivo del usuario.

Con consultas de contexto

Las consultas de Contexto son solicitudes regulares para actualizar nuestra base de datos según las combinaciones de itinerarios o propiedades especificadas. Contienen una lista de contextos de usuario que son populares para esas combinaciones. Si usas tarifas condicionales, es posible que enviar tarifas para todos los contextos de usuario posibles sea costoso. Por lo tanto, puedes usar esta lista de contextos de usuario para limitar tu respuesta. Los precios que se muestran solo para los contextos de usuario especificados abarcan la gran mayoría de las búsquedas relevantes de los usuarios.

Mensajes de consulta de metadatos

Los mensajes de consulta de metadatos contienen detalles sobre la información de la habitación y el paquete de las propiedades especificadas.

Cuando recibes un mensaje de consulta de metadatos, debes responder con un mensaje <Transaction> que especifique el precio de las propiedades solicitadas en los elementos <Result>.

Para obtener más información, consulta Define metadatos de habitaciones y paquetes.

Consultas de control

En esta sección, se describe cómo controlar qué itinerarios y propiedades pueden estar sujetos a los mensajes de consulta de Google.

Límites de itinerarios

Determinas los límites posibles de las consultas de precios con <ItineraryCapabilities>. Debes definir reglas que determinan el rango de fechas y la duración máxima de la estadía que admites.

Puedes establecer valores predeterminados para <MaxAdvancePurchase> y <MaxLengthOfStay>, que se aplican a todas las combinaciones de hoteles o itinerarios. También puedes definir esta configuración para grupos de hoteles.

Ejemplos de mensajes de consulta

En esta sección, se muestran varios ejemplos de mensajes de consulta de precios y un mensaje de consulta de metadatos. Puedes encontrar ejemplos adicionales en la Referencia de XML de consulta.

Itinerario de muestra

En el siguiente ejemplo, se muestra una <Query> de precios que solicita actualizaciones de precios para 4 hoteles, disponible por 3 noches, a partir del 23 de mayo 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>

En este ejemplo, se solicitan actualizaciones de precios para cada hotel:

5/23/18 - 6/26/18

Ejemplo de consulta de precios en tiempo real

En el siguiente ejemplo, se muestra una consulta de precios en tiempo real con un límite de tiempo de respuesta de 500 milisegundos:

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

En este ejemplo, se solicita un precio para un solo hotel:

6/23/23 - 6/25/23

Puedes encontrar una respuesta de mensaje de transacción de muestra para esta consulta en la Referencia de XML de precios y habitaciones (transacciones).

Con un ejemplo de consulta de contexto

A continuación, se muestra un ejemplo de una consulta con 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, occupancy and 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>

Con las búsquedas de contexto, solo se especifica el contexto del país del usuario. En el futuro, esas consultas también podrían especificar el dispositivo y la ocupación del usuario.

Períodos de entrada

Si usas precios modificados, la estructura del mensaje de consulta dependerá del tipo de sugerencia que uses para períodos de entrada, itinerarios exactos o itinerarios con rango. Para obtener más información sobre cada uno de estos tipos de sugerencias, consulta Mensajes de respuesta de sugerencias.

En el siguiente ejemplo, se muestra un mensaje <Query> de precios para los períodos de entrada:

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

En este ejemplo, se solicitan actualizaciones de precios para las siguientes estadías (para cada hotel):

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

Estadías con rango

En el siguiente ejemplo, se muestra un mensaje <Query> de precio para estadías con intervalos

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

En este ejemplo, se solicitan actualizaciones de precios para cada hotel:

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

Además, las estadías que comenzaron antes (pero incluyen) la noche determinada:

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

Mensaje de consulta de metadatos

En el siguiente ejemplo, se muestra un mensaje <Query> que solicita actualizaciones de metadatos de la información de la habitación y el paquete de varias propiedades:

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

Respondes a este tipo de mensaje de consulta con un mensaje de transacción que define los metadatos de habitación y paquete. Para obtener más información, consulta Define metadatos de habitaciones y paquetes.