L'API Google Ads vous permet de concevoir des requêtes pour obtenir les rapports Hotel Ads dont vous avez besoin. Vous pouvez ensuite intégrer ces requêtes dans vos applications clientes.
Prérequis
- Découvrez le fonctionnement général des rapports et des requêtes.
- Découvrez comment interroger différentes ressources.
Requêtes de base pour Hotel Ads
Consultez ces exemples de requêtes pour vous familiariser avec l'utilisation de l'API Google Ads pour les rapports sur les annonces d'hôtel.
Obtenir des métriques sur les clics
L'exemple de requête suivant renvoie le nombre de clics à partir de la vue "Performances des hôtels".
SELECT metrics.clicks
FROM hotel_performance_view
Les résultats de la requête ressemblent à la réponse JSON suivante :
{
"results": [
{
"metrics": {
"clicks": "78090"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
}
}
],
"totalResultsCount": "1",
"fieldMask": "metrics.clicks"
}
Obtenir des métriques de groupe d'annonces
L'exemple de requête suivant pour les groupes d'annonces obtient les impressions et les clics au cours des 30 derniers jours, segmentés par date.
SELECT
campaign.name,
campaign.status,
ad_group.name,
segments.date,
metrics.impressions,
metrics.clicks
FROM ad_group
WHERE ad_group.type = HOTEL_ADS
AND segments.date DURING LAST_30_DAYS
Les résultats de la requête ressemblent à la réponse JSON suivante. La réponse est filtrée pour n'inclure que les métriques répondant aux conditions de la clause WHERE. Comme segments.date est sélectionné, la requête renvoie une ligne par jour pour la période de 30 jours.
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"name": "test campaign",
"status": "ENABLED"
},
"adGroup": {
"resourceName": "customers/1234567890/adGroups/11111111",
"name": "test adgroup"
},
"metrics": {
"clicks": "91",
"impressions": "5145"
},
"segments": {
"date": "2020-05-10"
}
}
]
}
Récupérer les annonces d'un groupe d'annonces activé
L'exemple de requête suivant pour les annonces de groupe d'annonces récupère les groupes d'annonces qui seront diffusés. Pour qu'un groupe d'annonces soit diffusé, l'annonce, le groupe d'annonces et la campagne doivent tous être activés.
SELECT
ad_group.id,
ad_group.name,
ad_group.status,
campaign.name,
campaign.status,
ad_group_ad.status
FROM ad_group_ad
WHERE ad_group_ad.status = ENABLED
AND campaign.status = ENABLED
AND ad_group.status = ENABLED
Les résultats de la requête ressemblent à la réponse JSON suivante :
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"name": "test campaign",
"status": "ENABLED"
},
"adGroup": {
"resourceName": "customers/1234567890/adGroups/11111111",
"id": "11111111",
"name": "test adgroup",
"status": "ENABLED"
},
"adGroupAd": {
"resourceName": "customers/1234567890/adGroupAds/11111111~33333333",
"status": "ENABLED",
"ad": {
"resourceName": "customers/1234567890/ads/77777777"
}
}
}
]
}
Vues utiles pour les rapports Hotel Ads
Dans les anciennes API pour les rapports sur les annonces d'hôtel, vous pouviez récupérer un rapport spécifique, tel qu'un rapport sur les performances. Dans l'API Google Ads, ce type de données est représenté dans des ressources *_view distinctes, telles que hotel_performance_view et hotel_group_view. Cette section décrit les ressources *_view utiles pour les rapports Hotel Ads, ainsi que des exemples de requêtes.
Vue Groupe d'hôtels
La vue "Groupe d'hôtels" est une vue de critères. Elle est donc utile pour récupérer les métriques d'un type de critère spécifique d'un groupe d'hôtels.
L'exemple de requête suivant pour les vues de groupes d'hôtels obtient les clics pour chaque hôtel d'un groupe de fiches pour l'ensemble de l'arborescence du groupe de fiches d'hôtels, y compris le nœud racine ("Tous les hôtels").
SELECT
metrics.clicks,
ad_group_criterion.listing_group.case_value.hotel_id.value
FROM hotel_group_view
Les résultats de la requête ressemblent à la réponse JSON suivante. Étant donné que case_value n'est pas défini pour le nœud racine ("Tous les hôtels"), la première ligne représente les métriques du groupe de fiches "Tous les hôtels", tandis que la deuxième ligne représente les métriques du groupe de fiches enfant "Autres".
{
"results": [
{
"metrics": {
"clicks": "5"
},
"adGroupCriterion": {
"resourceName": "customers/1234567890/adGroupCriteria/2222222~1111111"
},
"hotelGroupView": {
"resourceName": "customers/1234567890/hotelGroupViews/2222222~1111111"
}
},
{
"metrics": {
"clicks": "0"
},
"adGroupCriterion": {
"resourceName": "customers/1234567890/adGroupCriteria/2222222~1111112",
"listingGroup": {
"caseValue": {
"hotelId": {}
}
}
},
"hotelGroupView": {
"resourceName": "customers/1234567890/hotelGroupViews/2222222~1111112"
}
},
{
"metrics": {
"clicks": "3"
},
"adGroupCriterion": {
"resourceName": "customers/1234567890/adGroupCriteria/2222222~1111113",
"listingGroup": {
"caseValue": {
"hotelId": {
"value": "11111111111111111"
}
}
}
},
"hotelGroupView": {
"resourceName": "customers/1234567890/hotelGroupViews/2222222~1111113"
}
},
{
"metrics": {
"clicks": "2"
},
"adGroupCriterion": {
"resourceName": "customers/1234567890/adGroupCriteria/2222222~1111114",
"listingGroup": {
"caseValue": {
"hotelId": {
"value": "11111111111111112"
}
}
}
},
"hotelGroupView": {
"resourceName": "customers/1234567890/hotelGroupViews/2222222~1111114"
}
}
]
}
Vue "Performances des hôtels"
La vue des performances des hôtels est utile si vous souhaitez récupérer les métriques de performances d'un hôtel à l'aide de données qui ne proviennent pas d'un regroupement d'hôtels, même si vous disposez d'une subdivision basée sur l'ID d'hôtel.
L'exemple de requête suivant pour les vues sur les performances des hôtels obtient les clics et segmente les résultats par ID d'hôtel.
SELECT
segments.partner_hotel_id,
metrics.clicks
FROM hotel_performance_view
Les résultats de la requête ressemblent à la réponse JSON suivante. Les clics sont segmentés par partner_hotel_id (partnerHotelId dans REST JSON). Il est donc possible de renvoyer plusieurs objets pour le même hotel_performance_view.
{
"results": [
{
"metrics": {
"clicks": "7055"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"partnerHotelId": "1111"
}
},
{
"metrics": {
"clicks": "3047"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"partnerHotelId": "1112"
}
}
]
}
Vue "Audience du groupe d'annonces"
La vue "Audience du groupe d'annonces" est utile si vous souhaitez récupérer les métriques de performances des audiences associées au niveau du groupe d'annonces.
La requête suivante renvoie une ligne par ad_group_criterion.user_list.user_list.
SELECT
ad_group.id,
campaign.id,
ad_group_criterion.user_list.user_list,
segments.device,
segments.hotel_date_selection_type,
metrics.impressions,
metrics.clicks,
metrics.cost_micros,
metrics.conversions,
metrics.all_conversions_value
FROM ad_group_audience_view
Les résultats de la requête ressemblent à la réponse JSON suivante :
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"id": "23456789"
},
"metrics": {
"clicks": "0",
"conversions": "0",
"costMicros": "0",
"impressions": "3",
"allConversionsValue": "0"
},
"adGroupCriterion": {
"resourceName": "customers/1234567890/adGroupCriteria/23456789~789456",
"userList": {
"userList": "customers/1234567890/userLists/456789"
}
},
"adGroupAudienceView": {
"resourceName":
"customers/1234567890/adGroupAudienceViews/23456789~789456"
},
"segments": {
"device": "TABLET",
"hotelDateSelectionType": "USER_SELECTED"
}
}
]
}
Vue "Audience de la campagne"
La vue "Audience de la campagne" est utile si vous souhaitez récupérer les métriques de performances des audiences associées au niveau de la campagne.
La requête suivante renvoie une ligne par campaign_criterion.user_list.user_list.
SELECT
campaign.id,
campaign_criterion.user_list.user_list,
segments.device,
segments.hotel_date_selection_type,
metrics.impressions,
metrics.clicks,
metrics.cost_micros,
metrics.conversions,
metrics.all_conversions_value
FROM campaign_audience_view
Les résultats de la requête ressemblent à la réponse JSON suivante :
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"id": "23456789"
},
"metrics": {
"clicks": "0",
"conversions": "0",
"costMicros": "0",
"impressions": "3",
"allConversionsValue": "0"
},
"campaignCriterion": {
"resourceName": "customers/1234567890/campaignCriteria/23456789~789456",
"userList": {
"userList": "customers/1234567890/userLists/456789"
}
},
"campaignAudienceView": {
"resourceName":
"customers/1234567890/campaignAudienceViews/23456789~789456"
},
"segments": {
"device": "TABLET",
"hotelDateSelectionType": "USER_SELECTED"
}
}
]
}
Rapports utiles pour les annonces d'hôtel
Cette section fournit plusieurs rapports utiles conçus spécifiquement pour les annonces d'hôtel.
Rapports sur les performances
Ces requêtes utilisent la vue "Performances des hôtels" pour obtenir des données sur les performances.
Un hotel_performance_view vous permet d'utiliser la ressource campaign pour segmenter les métriques. Par exemple, vous pouvez utiliser le champ campaign.id pour obtenir des métriques de performances par campagne.
Performances
Exemple de requête :
SELECT
segments.hotel_center_id,
segments.device,
segments.partner_hotel_id,
segments.hotel_check_in_day_of_week,
segments.hotel_date_selection_type,
segments.hotel_length_of_stay,
segments.hotel_booking_window_days,
metrics.search_top_impression_share,
metrics.search_absolute_top_impression_share,
metrics.impressions,
metrics.clicks,
metrics.cost_micros,
metrics.conversions,
metrics.all_conversions_value,
metrics.search_impression_share
FROM hotel_performance_view
Exemple de réponse JSON :
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789"
},
"metrics": {
"clicks": "0",
"conversions": "0.0",
"costMicros": "0",
"impressions": "0",
"searchImpressionShare": "0.0999",
"searchAbsoluteTopImpressionShare": "0.0999",
"searchTopImpressionShare": "0.0999",
"allConversionsValue": "1"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"device": "DESKTOP",
"hotelBookingWindowDays": "3",
"hotelCenterId": "1234",
"hotelCheckInDayOfWeek": "MONDAY",
"hotelDateSelectionType": "USER_SELECTED",
"hotelLengthOfStay": "4",
"partnerHotelId": "123"
}
},
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789"
},
"metrics": {
"clicks": "0",
"conversions": "0.0",
"costMicros": "0",
"impressions": "1",
"searchImpressionShare": "1.0",
"searchAbsoluteTopImpressionShare": "0.0999",
"searchTopImpressionShare": "1.0",
"allConversionsValue": "1"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"device": "DESKTOP",
"hotelBookingWindowDays": "3",
"hotelCenterId": "1234",
"hotelCheckInDayOfWeek": "MONDAY",
"hotelDateSelectionType": "USER_SELECTED",
"hotelLengthOfStay": "4",
"partnerHotelId": "123"
}
}
]
}
Performances par type de clic
Exemple de requête :
SELECT
segments.click_type,
segments.hotel_center_id,
segments.device,
segments.partner_hotel_id,
segments.hotel_check_in_day_of_week,
segments.hotel_date_selection_type,
segments.hotel_length_of_stay,
segments.hotel_booking_window_days,
metrics.impressions,
metrics.clicks,
metrics.cost_micros,
metrics.conversions,
metrics.all_conversions_value
FROM hotel_performance_view
Exemple de réponse JSON :
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789"
},
"metrics": {
"clicks": "0",
"conversions": "0.0",
"costMicros": "0",
"impressions": "1",
"allConversionsValue": "0.0"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"device": "DESKTOP",
"hotelBookingWindowDays": "0",
"hotelCenterId": "1234",
"hotelCheckInDayOfWeek": "TUESDAY",
"hotelDateSelectionType": "USER_SELECTED",
"hotelLengthOfStay": "4",
"partnerHotelId": "123",
"clickType": "HOTEL_PRICE"
}
},
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789"
},
"metrics": {
"clicks": "1",
"conversions": "0.0",
"costMicros": "0",
"impressions": "1",
"allConversionsValue": "0.0"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"device": "DESKTOP",
"hotelBookingWindowDays": "0",
"hotelCenterId": "1234",
"hotelCheckInDayOfWeek": "TUESDAY",
"hotelDateSelectionType": "USER_SELECTED",
"hotelLengthOfStay": "4",
"partnerHotelId": "12345",
"clickType": "HOTEL_PRICE"
}
}
]
}
Rapport sur les performances des tarifs sous conditions
La requête suivante récupère les métriques de performances segmentées par :
campaignhotel_center_idhotel_countryhotel_rate_rule_idhotel_rate_typedevicepartner_hotel_id
Pour obtenir une description des types, consultez HotelRateType.
Vous pouvez inclure plusieurs segments dans une requête. Toutefois, le nombre de lignes renvoyées peut augmenter considérablement avec des segments supplémentaires.
SELECT
campaign.id,
segments.hotel_center_id,
segments.hotel_country,
segments.hotel_rate_rule_id,
segments.hotel_rate_type,
segments.device,
segments.partner_hotel_id,
metrics.search_top_impression_share,
metrics.search_absolute_top_impression_share,
metrics.impressions,
metrics.clicks,
metrics.cost_micros,
metrics.conversions
FROM hotel_performance_view
Les résultats de la requête ressemblent à la réponse JSON suivante :
{
"results": [
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"id": "23456789"
},
"metrics": {
"clicks": "1",
"conversions": "0.0",
"costMicros": "0",
"impressions": "24",
"searchAbsoluteTopImpressionShare": "0.0999",
"searchTopImpressionShare": "0.17073170731707318"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"device": "TABLET",
"hotelCenterId": "1234",
"partnerHotelId": "123",
"hotelRateRuleId": "desktop",
"hotelRateType": "PUBLIC_RATE"
}
},
{
"campaign": {
"resourceName": "customers/1234567890/campaigns/23456789",
"id": "23456789"
},
"metrics": {
"clicks": "107",
"conversions": "0.0",
"costMicros": "0",
"impressions": "1668",
"searchAbsoluteTopImpressionShare": "0.0999",
"searchTopImpressionShare": "0.3581201665675193"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"device": "TABLET",
"hotelCenterId": "1234",
"partnerHotelId": "1235",
"hotelRateRuleId": "desktop",
"hotelRateType": "PUBLIC_RATE"
}
}
]
}
Rapport "Compétitivité tarifaire"
Vous pouvez obtenir des insights sur la façon dont vos prix se comparent à ceux de vos concurrents pour les mêmes séjours d'hôtel.
Exemple de requête :
SELECT
segments.hotel_center_id,
segments.partner_hotel_id,
segments.hotel_price_bucket,
metrics.hotel_average_lead_value_micros,
metrics.hotel_price_difference_percentage
FROM hotel_performance_view
Exemple de réponse JSON :
{
"results": [
{
"metrics": {
"hotelAverageLeadValueMicros": "96416341.829268292",
"hotelPriceDifferencePercentage": "-0.014627310872986811"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"hotelCenterId": "1234",
"partnerHotelId": "123",
"hotelPriceBucket": "LOWEST_TIED"
}
}
]
}
Rapport sur le prix moyen réservé
Vous pouvez obtenir les données nécessaires pour calculer le prix moyen réservé (all_conversions_value divisé par conversions) pour les hôtels.
Exemple de requête :
SELECT
segments.hotel_center_id,
segments.partner_hotel_id,
segments.hotel_price_bucket,
metrics.all_conversions_value,
metrics.conversions
FROM hotel_performance_view
Exemple de réponse JSON :
{
"results": [
{
"metrics": {
"allConversionsValue": "123.5",
"conversions": "1"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"hotelCenterId": "1234",
"partnerHotelId": "123",
"hotelPriceBucket": "LOWEST_TIED"
}
}
]
}
Rapport sur les performances des conversions et des coûts
La requête suivante permet d'obtenir les performances globales en termes de conversions et de coûts pour vos annonces d'hôtel. Elle est utile pour évaluer les performances financières et le ROAS.
Exemple de requête :
SELECT
segments.date,
segments.partner_hotel_id,
metrics.all_conversions_value,
metrics.cost_micros,
metrics.conversions
FROM hotel_performance_view
WHERE segments.date DURING LAST_30_DAYS
Exemple de réponse JSON :
{
"results": [
{
"metrics": {
"allConversionsValue": "250.0",
"costMicros": "15000000",
"conversions": "2.0"
},
"hotelPerformanceView": {
"resourceName": "customers/1234567890/hotelPerformanceView"
},
"segments": {
"date": "2026-03-24",
"partnerHotelId": "123"
}
}
]
}
Rapports "Type d'audience"
Les rapports sur l'audience indiquent les performances des multiplicateurs d'enchères sur les listes d'audience Google Ads. Pour obtenir des exemples de rapports sur l'audience, consultez les exemples de requêtes dans Vue "Audience du groupe d'annonces" et Vue "Audience de la campagne".