Lorsque nous envoyons un message
Hint Request, vos serveurs
doivent y répondre avec un message de réponse d'indication. Celui-ci doit spécifier les hôtels dont les
prix ont changé depuis la dernière fois où nous avons reçu un message de réponse d'indication
de la part de vos serveurs. En cas de changement de prix, Google envoie ensuite
un message <Query> qui extrait les données tarifaires mises à jour pour les hôtels et séjours indiqués.
Pour en savoir plus sur le processus de modification des prix, consultez la section Présentation des prix.
Les messages de réponse d'indication utilisent les méthodes suivantes pour modifier les prix des hôtels sélectionnés et de leurs séjours :
L'élément racine d'un message de réponse d'indication est <Hint>. Pour demander la mise à jour d'un hôtel ou d'un
séjour, utilisez un ou plusieurs <Item> éléments. Un message de réponse d'indication
peut définir plusieurs éléments <Item>.
Chaque message de réponse d'indication doit comporter au moins un élément <Property> pour
chaque <Item>. L'élément <Property> identifie un hôtel en utilisant le même ID que celui défini dans
la liste d'hôtels pour l'établissement concerné. Par défaut, vous spécifiez un identifiant d'hôtel unique pour chaque <Item>
bloc. Toutefois, vous pouvez nous indiquer plusieurs hôtels dans un bloc "<Item>" si vous utilisez des plages de dates d'arrivée ou des séjours inclus dans une période pour mettre à jour vos prix.
Flux des messages de requête et de réponse pour un séjour exact
Les messages d'indication peuvent être basés sur des séjours individuels (combinaison d'une date d'arrivée et d'une durée de séjour). Dans ce cas, vous spécifiez une date d'arrivée et une durée de séjour pour vos hôtels, et nous récupérons les nouvelles données tarifaires uniquement pour ce séjour.
Réponse du partenaire
Le message de réponse Hint request suivant définit une seule propriété et un seul séjour :
<Hint>
<Item>
<Property>12345</Property>
<Stay>
<CheckInDate>2023-05-20</CheckInDate>
<LengthOfStay>3</LengthOfStay>
</Stay>
</Item>
</Hint>
La réponse de Google
Nous répondons à votre message de réponse d'indication par un message <Query> semblable à ce qui suit
:
<Query>
<Checkin>2023-05-20</Checkin>
<Nights>3</Nights>
<PropertyList>
<Property>12345</Property>
</PropertyList>
</Query>
Créer <Transaction>
Vous devez ensuite créer un <Transaction> en mettant à jour les prix de l'
hôtel pour le séjour suivant :
5/20/23 - 5/23/23
Flux des messages de requête et de réponse pour une plage de dates d'arrivée
Un message de réponse Hint request peut spécifier une plage de dates d'arrivée, allant de la première date d'arrivée à la dernière date d'arrivée. Lors nous récupérons de nouvelles données tarifaires, notre système extrait les séjours correspondant à chaque date d'arrivée à l'hôtel spécifiée et à la durée du séjour indiquée.
Plage de dates du partenaire
Dans l'exemple ci-dessous, le message de réponse d'indication définit un hôtel et une plage de dates d'arrivée :
<Hint>
<Item>
<Property>12345</Property>
<FirstDate>2023-05-20</FirstDate>
<LastDate>2023-05-23</LastDate>
</Item>
</Hint>
La réponse de Google
Nous y répondons par un message <Query> semblable à
celui-ci :
<Query>
<FirstDate>2023-05-20</FirstDate>
<LastDate>2023-05-23</LastDate>
<Nights>5</Nights>
<PropertyList>
<Property>12345</Property>
</PropertyList>
</Query>
Créer <Transaction>
Vous devez ensuite créer un message <Transaction> en mettant à jour les prix
de l'hôtel pour les séjours suivants :
5/20/23 - 5/21/23
5/20/23 - 5/22/23
5/20/23 - 5/23/23
5/20/23 - 5/24/23
5/20/23 - 5/25/23
5/21/23 - 5/22/23
5/21/23 - 5/23/23
5/21/23 - 5/24/23
5/21/23 - 5/25/23
5/21/23 - 5/26/23
5/22/23 - 5/23/23
5/22/23 - 5/24/23
5/22/23 - 5/25/23
5/22/23 - 5/26/23
5/22/23 - 5/27/23
Dans cet exemple, la durée du séjour est de cinq nuits. La durée du séjour par défaut est de 30 jours.
Flux des messages de requête et de réponse pour des séjours inclus dans une période
Un message de réponse d'indication peut inclure une plage de dates qui ont changé. Cela nous indique que nous devons récupérer tous les séjours concernés par ces dates. Le groupe de séjours récupéré combine à la fois les dates avec les prix modifiés et la durée maximale du séjour indiquée.
Séjours inclus dans une période du partenaire
L'exemple de message de réponse Hint request ci-dessous utilise des séjours inclus dans une période :
<Hint>
<Item>
<Property>12345</Property>
<StaysIncludingRange>
<FirstDate>2023-05-20</FirstDate>
<LastDate>2023-05-23</LastDate>
</StaysIncludingRange>
</Item>
</Hint>
La réponse de Google
Nous répondons à votre message de réponse d'indication par un message <Query> semblable à ce qui suit
:
<Query>
<FirstDate>2023-05-20</FirstDate>
<LastDate>2023-05-23</LastDate>
<AffectedNights>3</AffectedNights>
<PropertyList>
<Property>12345</Property>
<Property>67891</Property>
</PropertyList>
</Query>
Créer <Transaction>
Vous devez ensuite créer un message <Transaction> en mettant à jour les prix de l'hôtel
pour les séjours suivants :
5/17/23 - 5/20/23
5/18/23 - 5/20/23
5/18/23 - 5/21/23
5/19/23 - 5/20/23
5/19/23 - 5/21/23
5/19/23 - 5/22/23
5/20/23 - 5/21/23
5/20/23 - 5/22/23
5/20/23 - 5/23/23
5/21/23 - 5/22/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
5/23/23 - 5/24/23
5/23/23 - 5/25/23
5/23/23 - 5/26/23
Séjours inclus dans une période : limites de regroupement et division des requêtes
Nous limitons chaque requête d'extraction à un maximum de 10 000 combinaisons hôtel/séjour (hôtel, date d'arrivée et durée du séjour). Pour une indication de séjour inclus dans une période, le nombre de combinaisons est calculé à l'aide de la formule du trapèze pour calculer le nombre de combinaisons hôtel/séjour pour les requêtes de séjours inclus dans une période :
Où :
Date Span: nombre inclusif de jours entre<FirstDate>et<LastDate>(Date Span = LastDate - FirstDate + 1).LOS: durée maximale du séjour demandée dans l'indication (par exemple,<AffectedNights>14</AffectedNights>).- \(N_{\text{hotel_batch_size}}\): nombre d'établissements inclus dans le lot de requêtes (configuré via
hotel_batch_size).
Que se passe-t-il lorsqu'une indication dépasse 10 000 éléments ?
Si le nombre d'éléments calculé dépasse 10 000, Google divise automatiquement la charge de travail de la requête :
- Première tentative (séjour inclus dans une période) : une plus petite fenêtre de dates couvrant le début de votre plage est envoyée à l'aide de
<AffectedNights>. - Première solution de repli (si elle est compatible, plage de dates d'arrivée) : nous tentons d'envoyer les restes plus petits de votre plage de dates en tant que requêtes de plage de dates d'arrivée à l'aide de
<Nights>(requête ci-dessous). - Dernière solution de repli (séjours exacts) : nous revenons à l'extension de l'ensemble de requêtes aux séjours exacts individuels.
<!-- Example: Remainder batch dispatched after a split -->
<Query>
<FirstDate>2026-10-01</FirstDate>
<LastDate>2026-10-31</LastDate>
<Nights>14</Nights>
<PropertyList>
<Property>12345</Property>
</PropertyList>
</Query>
Bonnes pratiques recommandées pour éviter les rétrogradations de requêtes involontaires
- Équilibrez la taille des lots d'établissements : si vous mettez à jour de grandes fenêtres de dates (par exemple, de 180 à 365 jours) avec des durées de séjour de 14 nuits ou plus, demandez à votre responsable de compte technique Google de définir une valeur inférieure pour
hotel_batch_sizeafin d'empêcher les indications de déclencher des divisions. - Limitez les indications : lorsque vous informez Google des modifications de prix, limitez les plages
<FirstDate>et<LastDate>aux intervalles de dates spécifiques où les tarifs ont réellement changé, plutôt qu'envoyer une année civile complète. - Si vos indications couvrent de grandes plages de dates : assurez-vous que votre analyseur accepte
ou dans les blocs contenant <FirstDate>et<LastDate>afin que plusieurs types de requêtes incluses dans une période puissent être utilisés pour répondre aux requêtes d'extraction.