ฟีดการเดินทางในโฆษณา Search

เมื่อลิงก์ฟีดผลิตภัณฑ์โรงแรม ที่พักให้เช่าช่วงวันหยุด หรือกิจกรรมน่าทำกับบัญชี Google Ads แล้ว Google Ads จะเสริมแต่งแคมเปญ Search ที่มีอยู่โดยอัตโนมัติด้วยราคาและรูปภาพจากฟีด ฟีเจอร์นี้เรียกว่า ฟีดการเดินทางในโฆษณา Search

วิธีที่การตั้งค่าลูกค้าและการตั้งค่าแคมเปญทำงานร่วมกัน

โดยค่าเริ่มต้น แคมเปญจะรับลิงก์ฟีดการเดินทาง (TRAVEL_FEED ชุดชิ้นงาน) จาก ระดับลูกค้าผ่านCustomerAssetSet การเชื่อมโยง หากต้องการลบล้างการตั้งค่าระดับลูกค้าสำหรับแคมเปญที่เฉพาะเจาะจง คุณ ต้องเพิ่ม TRAVEL_FEED ลงในช่อง excluded_parent_asset_set_types ของแคมเปญ และจัดการ ลิงก์เฉพาะแคมเปญโดยใช้ CampaignAssetSet

  • รับฟีดลูกค้า (ค่าเริ่มต้น): เก็บการเชื่อมโยง CustomerAssetSet ระดับลูกค้าไว้ และตรวจสอบว่า Campaign.excluded_parent_asset_set_types ไม่มี TRAVEL_FEED
  • เลือกไม่ใช้ที่ระดับลูกค้า: นำการเชื่อมโยง CustomerAssetSet ระดับลูกค้าออก และไม่ลิงก์ CampaignAssetSet ระดับแคมเปญ
  • เลือกไม่ใช้แคมเปญที่เฉพาะเจาะจง: เพิ่ม TRAVEL_FEED ลงใน Campaign.excluded_parent_asset_set_types และนำการเชื่อมโยง CampaignAssetSet ระดับแคมเปญออก
  • เลือกใช้แคมเปญที่เฉพาะเจาะจงเท่านั้น: นำการเชื่อมโยง CustomerAssetSet ระดับลูกค้าออก แล้วสร้างลิงก์ CampaignAssetSet ระดับแคมเปญสำหรับแคมเปญนั้น
  • ใช้ฟีดเฉพาะแคมเปญในขณะที่แคมเปญอื่นๆ ยังคงรับฟีดลูกค้า: เพิ่ม TRAVEL_FEED ลงใน Campaign.excluded_parent_asset_set_types ของแคมเปญ และสร้างลิงก์ CampaignAssetSet ระดับแคมเปญสำหรับแคมเปญนั้น

เลือกไม่ใช้ฟีดการเดินทางในโฆษณา Search

หากไม่ต้องการใช้ฟีเจอร์นี้ คุณสามารถใช้ Google Ads API เพื่อเลือกไม่ใช้ฟีดการเดินทางในโฆษณา Search ที่ระดับลูกค้าและแคมเปญ

เลือกไม่ใช้ที่ระดับลูกค้า

หากต้องการเลือกไม่ใช้ฟีดการเดินทางในโฆษณา Search ที่ระดับลูกค้า ให้ทำดังนี้

  1. ดึงข้อมูลทั้ง customer_asset_set.resource_name และ asset_set.resource_name สำหรับลิงก์ CustomerAssetSet ทั้งหมดที่มีประเภทเป็น TRAVEL_FEED โดยใช้รายงาน customer_asset_set

    SELECT
      customer_asset_set.resource_name,
      asset_set.resource_name,
      asset_set.name
    FROM customer_asset_set
    WHERE asset_set.type = 'TRAVEL_FEED'
    
  2. สร้าง CustomerAssetSetOperation สำหรับcustomer_asset_set.resource_name แต่ละรายการ และตั้งค่า remove เป็น customer_asset_set.resource_name ที่ดึงข้อมูลในขั้นตอนก่อนหน้า

  3. ส่งคำขอไปยัง CustomerAssetSetService.MutateCustomerAssetSets โดยใช้ออบเจ็กต์ CustomerAssetSetOperation ที่สร้างขึ้น

หากต้องการเลือกใช้ฟีเจอร์นี้อีกครั้งที่ระดับลูกค้า ให้ทำดังนี้

  1. สร้าง CustomerAssetSet ใหม่สำหรับ AssetSet (asset_set.resource_name) แต่ละรายการที่คุณต้องการลิงก์ โดยตั้งค่า asset_set เป็น asset_set.resource_name และตั้งค่า customer เป็นชื่อทรัพยากรของลูกค้า
  2. สร้าง CustomerAssetSetOperation โดยตั้งค่า create เป็น CustomerAssetSet สำหรับ CustomerAssetSet แต่ละรายการที่สร้างขึ้นในขั้นตอนก่อนหน้า
  3. ส่งคำขอไปยัง CustomerAssetSetService.MutateCustomerAssetSets โดยใช้ออบเจ็กต์ CustomerAssetSetOperation ที่สร้างขึ้น

เลือกไม่ใช้ที่ระดับแคมเปญ

หากต้องการเลือกไม่ใช้ฟีดการเดินทางในโฆษณา Search ที่ระดับแคมเปญ คุณต้องยกเว้นสถานะการเลือกใช้ที่รับมาจากระดับลูกค้าก่อน โดยทำดังนี้

  1. ดึงข้อมูล excluded_parent_asset_set_types โดยใช้ รายงาน campaign:

    SELECT
      campaign.excluded_parent_asset_set_types
    FROM campaign
    WHERE campaign.id = 'INSERT_YOUR_CAMPAIGN_ID'
    
  2. สร้างออบเจ็กต์ Campaign ใหม่โดยตั้งค่า excluded_parent_asset_set_types เป็นค่า ก่อนหน้า บวก TRAVEL_FEED และ resource_name เป็นชื่อทรัพยากรของแคมเปญ

  3. สร้าง CampaignOperation และตั้งค่า update เป็น Campaign ที่สร้างขึ้นก่อนหน้า และตั้งค่า update_mask ตามความเหมาะสม

  4. ส่งคำขอไปยัง CampaignService.MutateCampaigns โดยใช้ CampaignOperation ที่สร้างขึ้นในขั้นตอนก่อนหน้า

จากนั้นนำการเชื่อมโยงฟีดการเดินทางระดับแคมเปญออก โดยทำดังนี้

  1. สำหรับแคมเปญที่ต้องการเลือกไม่ใช้ ให้ดึงข้อมูลทั้ง campaign_asset_set.resource_name และ asset_set.resource_name สำหรับลิงก์ CampaignAssetSet ทั้งหมดที่มีประเภทเป็น TRAVEL_FEED โดยใช้รายงาน 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. สร้าง CampaignAssetSetOperation สำหรับcampaign_asset_set.resource_name แต่ละรายการ และตั้งค่า remove เป็น campaign_asset_set.resource_name ที่ดึงข้อมูลในขั้นตอนก่อนหน้า

  3. ส่งคำขอไปยัง CampaignAssetSetService.MutateCampaignAssetSets โดยใช้ออบเจ็กต์ CampaignAssetSetOperation ที่สร้างขึ้น

หากต้องการเลือกใช้ฟีเจอร์นี้อีกครั้งที่ระดับแคมเปญ ให้ทำดังนี้

  1. สร้าง CampaignAssetSet ใหม่สำหรับ AssetSet (asset_set.resource_name) แต่ละรายการที่คุณต้องการเลือกใช้ โดยตั้งค่า asset_set เป็น asset_set.resource_name และตั้งค่า campaign เป็นชื่อทรัพยากรของ แคมเปญ
  2. สร้าง CampaignAssetSetOperation โดยตั้งค่า create เป็น CampaignAssetSet สำหรับ CampaignAssetSet แต่ละรายการที่สร้างขึ้นในขั้นตอนก่อนหน้า
  3. ส่งคำขอไปยัง CampaignAssetSetService.MutateCampaignAssetSets โดยใช้ออบเจ็กต์ CampaignAssetSetOperation ที่สร้างขึ้น

กู้คืนสถานะการเลือกใช้ระดับลูกค้าสำหรับแคมเปญ

หากต้องการให้สถานะการเลือกใช้ของแคมเปญรับการตั้งค่าระดับลูกค้าอีกครั้ง ให้ทำตามขั้นตอนต่อไปนี้

  1. สร้างออบเจ็กต์ Campaign ใหม่โดยตั้งค่า excluded_parent_asset_set_types โดยไม่มี TRAVEL_FEED ในรายการ และตั้งค่า resource_name เป็น ชื่อทรัพยากรของแคมเปญ
  2. สร้าง CampaignOperation และตั้งค่า update เป็น Campaign ที่สร้างขึ้นก่อนหน้า และตั้งค่า update_mask ตามความเหมาะสม
  3. ส่งคำขอไปยัง CampaignService.MutateCampaigns โดยใช้ CampaignOperation ที่สร้างขึ้นในขั้นตอนก่อนหน้า

การเสนอราคา CPC ด้วยตนเองต่อเอนทิตี

ตั้งแต่ Google Ads API v25 เป็นต้นไป คุณสามารถกำหนดค่าการลบล้างราคาเสนอ CPC ด้วยตนเองต่อเอนทิตีสำหรับโรงแรมในแคมเปญ Search สำหรับการเดินทางได้โดยใช้ทรัพยากร AdGroupCriterion ที่มีประเภทเกณฑ์ CriterionType.VERTICAL_ADS_ITEM_BID (ad_group_criterion.entity_bid)

ข้อกำหนดเบื้องต้นและข้อกำหนดความเข้ากันได้

หากต้องการสร้างและจัดการเกณฑ์ VERTICAL_ADS_ITEM_BID คุณต้องมีคุณสมบัติตรงตามเงื่อนไขต่อไปนี้

  • ประเภทแคมเปญ: แคมเปญ Search สำหรับการเดินทาง (แคมเปญ Search, AdvertisingChannelType.SEARCH ที่เปิดใช้ AI Max สำหรับแคมเปญ Search Campaign.ai_max_setting.enable_ai_max และมี ฟีดโรงแรมที่เชื่อมโยง [TRAVEL_FEED ชุดชิ้นงาน] โดยระบบรองรับเฉพาะฟีดโรงแรม)
  • กลยุทธ์การเสนอราคา: การเสนอราคา CPC ด้วยตนเอง (BiddingStrategyType.MANUAL_CPC) เท่านั้น
    • ไม่รองรับกลยุทธ์การเสนอราคาอัตโนมัติหรือ Smart Bidding (เช่น เพิ่มจำนวน Conversion สูงสุด, เพิ่มมูลค่า Conversion สูงสุด, CPA ที่ตั้งไว้ หรือ ROAS เป้าหมาย)
  • เฉพาะเกณฑ์เชิงบวก: negative ต้องตั้งค่าเป็น false ไม่รองรับราคาเสนอของเอนทิตีเชิงลบ
  • ตัวระบุเอนทิตีและราคาเสนอที่จำเป็น: entity_bid.item_code และ cpc_bid_micros ต้องระบุเมื่อสร้างเกณฑ์ราคาเสนอของเอนทิตี

สคีมาและคำจำกัดความของช่อง

ช่อง ประเภท พฤติกรรม คำอธิบาย
entity_bid EntityBid IMMUTABLE เกณฑ์ที่แสดงถึงการลบล้างราคาเสนอด้วยตนเองสำหรับรายการเดียว
entity_bid.item_code string IMMUTABLE, ต้องระบุ รหัสหรือโค้ดที่ระบุเอนทิตีโรงแรมที่เฉพาะเจาะจง (รหัสข้อมูลโรงแรม) ซึ่งตรงกับฟีดโรงแรมของพาร์ทเนอร์ (1-256 อักขระ หลังตัดช่องว่างด้านหน้าและด้านหลัง)
cpc_bid_micros int64 อ่าน/เขียน จำนวนราคาเสนอ CPC ด้วยตนเองในหน่วยไมโคร (เช่น 1000000 เท่ากับ $1.00)
negative bool IMMUTABLE ต้องเป็น false

บริการและการดำเนินการที่รองรับ

บริการ วิธีการ การดำเนินการที่รองรับ
AdGroupCriterionService MutateAdGroupCriteria create, update (cpc_bid_micros), remove
GoogleAdsService Search / SearchStream ค้นหาแอตทริบิวต์เกณฑ์ รหัสสินค้า และค่าราคาเสนอ

ตัวอย่างโค้ดและเพย์โหลด

ตัวอย่างต่อไปนี้แสดงวิธีอ่าน สร้าง อัปเดต และนำเกณฑ์ VERTICAL_ADS_ITEM_BID ออก

อ่านราคาเสนอของเอนทิตีโดยใช้ GAQL

ใช้ GoogleAdsService.Search หรือ GoogleAdsService.SearchStream เพื่อค้นหา VERTICAL_ADS_ITEM_BID เกณฑ์

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'

สร้างราคาเสนอของเอนทิตี

ส่งการดำเนินการ create ไปยัง AdGroupCriterionService.MutateAdGroupCriteria

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

อัปเดตจำนวนราคาเสนอของเอนทิตีที่มีอยู่

ส่งการดำเนินการ update พร้อม updateMask ไปยัง AdGroupCriterionService.MutateAdGroupCriteria

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

นำราคาเสนอของเอนทิตีออก

ส่งการดำเนินการ remove ไปยัง AdGroupCriterionService.MutateAdGroupCriteria

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

กฎการตรวจสอบความถูกต้องและการจัดการข้อผิดพลาด

สถานการณ์ ทริกเกอร์ / เงื่อนไข รหัสข้อผิดพลาดที่แสดง
แคมเปญที่ไม่ใช่การเสนอราคา CPC ด้วยตนเอง พยายามสร้างราคาเสนอของเอนทิตีในแคมเปญที่มีการเสนอราคาอัตโนมัติหรือ Smart Bidding ContextError.OPERATION_NOT_PERMITTED_FOR_CONTEXT
ประเภทของแคมเปญไม่ถูกต้อง เพิ่มราคาเสนอของเอนทิตีลงในแคมเปญที่ไม่ใช่แคมเปญ Search (เช่น แคมเปญดิสเพลย์ แคมเปญ) ContextError.OPERATION_NOT_PERMITTED_FOR_CONTEXT
เกณฑ์เชิงลบ ตั้งค่า negative = true สำหรับ VERTICAL_ADS_ITEM_BID ContextError.OPERATION_NOT_PERMITTED_FOR_CONTEXT
ไม่มีรหัสสินค้าหรือราคาเสนอ พยายามสร้าง entity_bid โดยไม่ระบุ item_code หรือ cpc_bid_micros RequestError.REQUIRED_FIELD_MISSING / FieldError.REQUIRED
การเปลี่ยนแปลงรหัสสินค้า พยายามอัปเดต entity_bid.item_code ในเกณฑ์ที่มีอยู่ RequestError.IMMUTABLE_FIELD / FieldError.IMMUTABLE_FIELD

รายงานประสิทธิภาพ

คุณสามารถใช้ ClickType.TRAVEL_ASSETS เพื่อระบุ ข้อมูลประสิทธิภาพของโฆษณาที่แสดงเป็น ฟีดการเดินทางในโฆษณา Search เช่น การดึงข้อมูลประสิทธิภาพ ของโฆษณาในแคมเปญทั้งหมด

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

กลุ่มมิติข้อมูลแผนการเดินทาง

นอกจากนี้ คุณยังแบ่งกลุ่มรายงานประสิทธิภาพสำหรับแคมเปญที่มีฟีดการเดินทางที่ลิงก์ตามมิติข้อมูลแผนการเดินทางได้ด้วย

  • segments.advance_booking_window: ระยะเวลาที่จองได้ล่วงหน้าก่อนถึงวันเข้าพักจริงของแผนการเดินทางเป็นวัน
  • segments.length_of_booking: ระยะเวลาการจองของแผนการเดินทางเป็นวัน
  • segments.start_date: วันที่เริ่มต้นการจองในรูปแบบ yyyy-MM-dd
  • segments.start_day_of_week: วันในสัปดาห์ที่เริ่มต้นการจอง
  • segments.user_set_dates: ระบุว่ามีการเลือกวันที่ที่ผู้ใช้ระบุหรือไม่ (USER_SELECTED หรือ DEFAULT_SELECTION)

ตัวอย่างการค้นหา

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