Pliki danych o podróżach w reklamach w wyszukiwarce

Gdy pliki danych o hotelach, kwaterach wakacyjnych lub atrakcjach są połączone z kontem Google Ads, Google Ads automatycznie wzbogaca dotychczasowe kampanie w sieci wyszukiwania o ceny i obrazy pochodzące z tych plików danych. Ta funkcja jest znana jako pliki danych o miejscach noclegowych w reklamach w wyszukiwarce.

Jak współdziałają ustawienia klienta i ustawienia kampanii

Domyślnie kampanie dziedziczą linki do plików danych o miejscach noclegowych (TRAVEL_FEED zestawy komponentów) z poziomu klienta za pomocą CustomerAssetSet powiązań. Aby zastąpić ustawienia na poziomie klienta w przypadku konkretnej kampanii, musisz dodać TRAVEL_FEED do pola kampanii excluded_parent_asset_set_types i zarządzać linkami na poziomie kampanii za pomocą CampaignAssetSet.

  • Dziedziczenie plików danych klienta (domyślnie): pozostaw połączony element CustomerAssetSet na poziomie klienta i upewnij się, że Campaign.excluded_parent_asset_set_types nie zawiera TRAVEL_FEED.
  • Rezygnacja na poziomie klienta: usuń powiązanie CustomerAssetSet na poziomie klienta i nie łącz elementu CampaignAssetSet na poziomie kampanii.
  • Rezygnacja w przypadku konkretnej kampanii: dodaj TRAVEL_FEED do Campaign.excluded_parent_asset_set_types i usuń wszystkie powiązania CampaignAssetSet na poziomie kampanii.
  • Włączenie tylko w przypadku konkretnej kampanii: usuń powiązanie CustomerAssetSet na poziomie klienta, a następnie utwórz link CampaignAssetSet na poziomie kampanii.
  • Używanie plików danych na poziomie kampanii, podczas gdy inne kampanie nadal dziedziczą: dodaj TRAVEL_FEED do Campaign.excluded_parent_asset_set_types kampanii i utwórz dla niej link CampaignAssetSet na poziomie kampanii.

Rezygnacja z plików danych o miejscach noclegowych w reklamach w wyszukiwarce

Jeśli nie chcesz korzystać z tej funkcji, możesz zrezygnować z plików danych o miejscach noclegowych w reklamach w wyszukiwarce na poziomie klienta i kampanii za pomocą interfejsu Google Ads API.

Rezygnacja na poziomie klienta

Aby zrezygnować z plików danych o miejscach noclegowych w reklamach w wyszukiwarce na poziomie klienta:

  1. Pobierz zarówno customer_asset_set.resource_name i asset_set.resource_name dla wszystkich CustomerAssetSet linków, których typ to TRAVEL_FEED za pomocą customer_asset_set raportu:

    SELECT
      customer_asset_set.resource_name,
      asset_set.resource_name,
      asset_set.name
    FROM customer_asset_set
    WHERE asset_set.type = 'TRAVEL_FEED'
    
  2. W przypadku każdego elementu customer_asset_set.resource_name utwórz CustomerAssetSetOperation i ustaw remove na customer_asset_set.resource_name pobrany w poprzednim kroku.

  3. Prześlij żądanie do CustomerAssetSetService.MutateCustomerAssetSets za pomocą utworzonych obiektów CustomerAssetSetOperation.

Jeśli chcesz ponownie akceptować tę funkcję na poziomie klienta:

  1. W przypadku każdego powiązanego AssetSet (asset_set.resource_name) który chcesz połączyć, utwórz nowy CustomerAssetSet, w którym asset_set jest ustawiony na asset_set.resource_name, a customer na nazwę zasobu klienta.
  2. W przypadku każdego elementu CustomerAssetSet utworzonego w poprzednim kroku utwórz CustomerAssetSetOperation, w którym create jest ustawiony na CustomerAssetSet.
  3. Prześlij żądanie do CustomerAssetSetService.MutateCustomerAssetSets za pomocą utworzonych obiektów CustomerAssetSetOperation.

Rezygnacja na poziomie kampanii

Aby zrezygnować z plików danych o miejscach noclegowych w reklamach w wyszukiwarce na poziomie kampanii, musisz najpierw wykluczyć odziedziczony stan akceptacji na poziomie klienta:

  1. Pobierz excluded_parent_asset_set_types za pomocą raportu campaign:

    SELECT
      campaign.excluded_parent_asset_set_types
    FROM campaign
    WHERE campaign.id = 'INSERT_YOUR_CAMPAIGN_ID'
    
  2. Utwórz nowy Campaign obiekt, w którym excluded_parent_asset_set_types jest ustawiony na poprzednie wartości plus TRAVEL_FEED, a resource_name na nazwę zasobu kampanii.

  3. Utwórz CampaignOperation i ustaw update na wcześniej utworzoną Campaign oraz update_mask odpowiednio.

  4. Prześlij żądanie do CampaignService.MutateCampaigns za pomocą CampaignOperation utworzonego w poprzednim kroku.

Następnie usuń wszystkie powiązania plików danych o miejscach noclegowych na poziomie kampanii:

  1. W przypadku kampanii, z której chcesz zrezygnować, pobierz zarówno campaign_asset_set.resource_name i asset_set.resource_name dla wszystkich CampaignAssetSet linków, których typ to TRAVEL_FEED za pomocą raportu campaign_asset_set:

    SELECT
      campaign_asset_set.resource_name,
      asset_set.resource_name,
      asset_set.name
    FROM campaign_asset_set
    WHERE campaign_asset_set.campaign =
        'INSERT_YOUR_CAMPAIGN_RESOURCE_NAME'
      AND asset_set.type = 'TRAVEL_FEED'
    
  2. W przypadku każdego elementu campaign_asset_set.resource_name utwórz CampaignAssetSetOperation i ustaw remove na campaign_asset_set.resource_name pobrany w poprzednim kroku.

  3. Prześlij żądanie do CampaignAssetSetService.MutateCampaignAssetSets za pomocą utworzonych CampaignAssetSetOperation obiektów.

Jeśli chcesz ponownie wyrazić zgodę na tę funkcję na poziomie kampanii:

  1. W przypadku każdego powiązanego elementu AssetSet (asset_set.resource_name) który chcesz akceptować, utwórz nowy CampaignAssetSet, w którym asset_set jest ustawiony na asset_set.resource_name, a campaign na nazwę zasobu kampanii.
  2. W przypadku każdego elementu CampaignAssetSet utworzonego w poprzednim kroku utwórz CampaignAssetSetOperation, w którym create jest ustawiony na CampaignAssetSet.
  3. Prześlij żądanie do CampaignAssetSetService.MutateCampaignAssetSets za pomocą utworzonych CampaignAssetSetOperation obiektów.

Przywracanie stanu włączenia na poziomie klienta w przypadku kampanii

Aby stan włączenia kampanii ponownie dziedziczył ustawienie na poziomie klienta:

  1. Utwórz nowy obiekt Campaign, w którym excluded_parent_asset_set_types nie zawiera TRAVEL_FEED na liście, a resource_name jest ustawiony na nazwę zasobu kampanii.
  2. Utwórz CampaignOperation i ustaw update na wcześniej utworzoną Campaign oraz update_mask odpowiednio.
  3. Prześlij żądanie do CampaignService.MutateCampaigns za pomocą CampaignOperation utworzonego w poprzednim kroku.

Samodzielne ustawianie stawek CPC na poziomie jednostki

Od wersji v25 interfejsu Google Ads API możesz konfigurować zastąpienia samodzielnie ustawianych stawek CPC na poziomie jednostki w przypadku hoteli w kampaniach w sieci wyszukiwania dotyczących podróży za pomocą zasobu AdGroupCriterion z typem kryterium CriterionType.VERTICAL_ADS_ITEM_BID (ad_group_criterion.entity_bid).

Wymagania wstępne i dotyczące zgodności

Aby tworzyć kryteria VERTICAL_ADS_ITEM_BID i nimi zarządzać, musisz spełniać te warunki:

  • Typ kampanii: kampanie w sieci wyszukiwania dotyczące podróży (kampanie w sieci wyszukiwania, AdvertisingChannelType.SEARCH, z włączoną funkcją AI Max w kampaniach w sieci wyszukiwania Campaign.ai_max_setting.enable_ai_max i powiązanym plikiem danych o hotelach [TRAVEL_FEED zestaw komponentów]; obsługiwane są tylko pliki danych o hotelach).
  • Strategia ustalania stawek: tylko samodzielne ustawianie stawek CPC (BiddingStrategyType.MANUAL_CPC).
    • Nie jest obsługiwana w przypadku automatycznych strategii ustalania stawek ani strategii inteligentnego określania stawek (takich jak Maksymalizacja liczby konwersji, Maksymalizacja wartości konwersji, Docelowy CPA czy Docelowy ROAS).
  • Tylko kryteria pozytywne: negative musi być ustawione na false. Wykluczające stawki za jednostkę nie są obsługiwane.
  • Wymagany identyfikator jednostki i stawka: podczas tworzenia kryterium stawki za jednostkę wymagane są entity_bid.item_code i cpc_bid_micros.

Schemat i definicje pól

Pole Typ Zachowanie Opis
entity_bid EntityBid IMMUTABLE Kryterium reprezentujące zastąpienie samodzielnie ustawianej stawki w przypadku pojedynczego elementu.
entity_bid.item_code string IMMUTABLE, wymagane Identyfikator lub kod określający konkretny obiekt hotelowy (identyfikator oferty hotelowej) zgodny z plikiem danych o hotelach partnera (od 1 do 256 znaków, bez spacji na początku i końcu).
cpc_bid_micros int64 Odczyt/zapis Kwota samodzielnie ustawianej stawki CPC w mikrach (np. 1000000 odpowiada $1.00).
negative bool IMMUTABLE Musi mieć wartość false.

Obsługiwane usługi i operacje

Usługa Metoda Obsługiwane działania
AdGroupCriterionService MutateAdGroupCriteria create, update (cpc_bid_micros), remove
GoogleAdsService Search / SearchStream Wysyłanie zapytań o atrybuty kryteriów, kody produktów i wartości stawek

Przykłady kodu i ładunku

Z poniższych przykładów dowiesz się, jak odczytywać, tworzyć, aktualizować i usuwać kryteria VERTICAL_ADS_ITEM_BID.

Odczytywanie stawek za jednostkę za pomocą GAQL

Aby wysyłać zapytania o VERTICAL_ADS_ITEM_BID kryteria, użyj GoogleAdsService.Search lub GoogleAdsService.SearchStream:

SELECT
  ad_group_criterion.resource_name,
  ad_group_criterion.ad_group,
  ad_group_criterion.criterion_id,
  ad_group_criterion.type,
  ad_group_criterion.cpc_bid_micros,
  ad_group_criterion.entity_bid.item_code
FROM ad_group_criterion
WHERE ad_group_criterion.type = 'VERTICAL_ADS_ITEM_BID'

Tworzenie stawki za jednostkę

Wyślij operację create do AdGroupCriterionService.MutateAdGroupCriteria:

{
  "customerId": "1234567890",
  "operations": [
    {
      "create": {
        "adGroup": "customers/1234567890/adGroups/987654321",
        "negative": false,
        "cpcBidMicros": "1500000",
        "entityBid": {
          "itemCode": "hotel_nyc_12345"
        }
      }
    }
  ]
}

Aktualizowanie kwoty dotychczasowej stawki za jednostkę

Wyślij operację update z updateMask do AdGroupCriterionService.MutateAdGroupCriteria:

{
  "customerId": "1234567890",
  "operations": [
    {
      "updateMask": "cpcBidMicros",
      "update": {
        "resourceName": "customers/1234567890/adGroupCriteria/987654321~555444333",
        "cpcBidMicros": "2000000"
      }
    }
  ]
}

Usuwanie stawki za jednostkę

Wyślij operację remove do AdGroupCriterionService.MutateAdGroupCriteria:

{
  "customerId": "1234567890",
  "operations": [
    {
      "remove": "customers/1234567890/adGroupCriteria/987654321~555444333"
    }
  ]
}

Reguły weryfikacji i obsługa błędów

Scenariusz Aktywator / warunek Zwrócony kod błędu
Kampania z CPC ustawianym samodzielnie Próba utworzenia stawki za jednostkę w kampanii z automatycznym określaniem stawek lub inteligentnym określaniem stawek. ContextError.OPERATION_NOT_PERMITTED_FOR_CONTEXT
Nieprawidłowy typ kampanii Dodawanie stawki za jednostkę do kampanii innej niż w sieci wyszukiwania (np. kampanii displayowej ). ContextError.OPERATION_NOT_PERMITTED_FOR_CONTEXT
Kryterium wykluczające Ustawienie negative = true w przypadku VERTICAL_ADS_ITEM_BID. ContextError.OPERATION_NOT_PERMITTED_FOR_CONTEXT
Brak kodu produktu lub stawki Próba utworzenia entity_bid bez podania item_code lub cpc_bid_micros. RequestError.REQUIRED_FIELD_MISSING / FieldError.REQUIRED
Modyfikowanie kodu produktu Próba zaktualizowania entity_bid.item_code w przypadku dotychczasowego kryterium. RequestError.IMMUTABLE_FIELD / FieldError.IMMUTABLE_FIELD

Raporty skuteczności

Za pomocą ClickType.TRAVEL_ASSETS możesz identyfikować dane o skuteczności reklam wyświetlanych jako pliki danych o miejscach noclegowych w reklamach w wyszukiwarce, np. pobierać dane o skuteczności reklam we wszystkich kampaniach:

SELECT
  campaign.name,
  segments.click_type,
  metrics.impressions,
  metrics.clicks
FROM campaign
WHERE segments.click_type = 'TRAVEL_ASSETS'

Segmenty wymiaru planu podróży

Możesz też segmentować raporty skuteczności kampanii z połączonymi plikami danych o miejscach noclegowych według wymiarów planu podróży:

Przykładowe zapytanie

SELECT
  campaign.name,
  segments.advance_booking_window,
  segments.length_of_booking,
  segments.start_date,
  segments.start_day_of_week,
  segments.user_set_dates,
  metrics.impressions,
  metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS