عند ربط خلاصات منتجاتك على "فنادق Google" أو "أماكن للاستئجار" أو "أنشطة مقترَحة" بحسابك على "إعلانات Google"، تعمل "إعلانات Google" تلقائيًا على تحسين "الحملات على شبكة البحث" الحالية باستخدام الأسعار والصور المستخرَجة من خلاصاتك. تُعرف هذه الميزة باسم خلاصات السفر في "الإعلانات على شبكة البحث".
كيفية تفاعل إعدادات العملاء مع إعدادات الحملة
تكتسب الحملات تلقائيًا روابط خلاصات السفر (مجموعات مواد العرض 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على مستوى الحملة.
إيقاف "خلاصات السفر في الإعلانات على شبكة البحث"
إذا كنت تفضّل عدم استخدام هذه الميزة، يمكنك استخدام Google Ads API لإيقاف "خلاصات السفر في الإعلانات على شبكة البحث" على مستوى العميل والحملة.
إيقاف الإعداد على مستوى العميل
لإيقاف "خلاصات السفر في الإعلانات على شبكة البحث" على مستوى العميل، اتّبِع الخطوات التالية:
استرجِع كلاً من
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'لكل
customer_asset_set.resource_name، أنشئCustomerAssetSetOperationواضبطremoveعلىcustomer_asset_set.resource_nameالذي تم استرجاعه في الخطوة السابقة.أرسِل طلبًا إلى
CustomerAssetSetService.MutateCustomerAssetSetsباستخدام عناصرCustomerAssetSetOperationالتي تم إنشاؤها.
إذا أردت تفعيل هذه الميزة على مستوى العميل مرة أخرى، اتّبِع الخطوات التالية:
- لكل
AssetSetأساسي (asset_set.resource_name) تريد ربطه، أنشئCustomerAssetSetجديدًا مع ضبطasset_setعلىasset_set.resource_nameوضبطcustomerعلى اسم المورد الخاص بالعميل. - لكل
CustomerAssetSetتم إنشاؤه في الخطوة السابقة، أنشئCustomerAssetSetOperationمع ضبطcreateعلىCustomerAssetSet. - أرسِل طلبًا إلى
CustomerAssetSetService.MutateCustomerAssetSetsباستخدام عناصرCustomerAssetSetOperationالتي تم إنشاؤها.
إيقاف الإعداد على مستوى الحملة
لإيقاف "خلاصات السفر" في "الإعلانات على شبكة البحث" على مستوى الحملة، عليك أولاً استبعاد حالة الموافقة الموروثة من مستوى العميل:
استرداد
excluded_parent_asset_set_typesباستخدام تقريرcampaign:SELECT campaign.excluded_parent_asset_set_types FROM campaign WHERE campaign.id = 'INSERT_YOUR_CAMPAIGN_ID'أنشئ عنصر
Campaignجديدًا مع ضبطexcluded_parent_asset_set_typesعلى القيم السابقة بالإضافة إلىTRAVEL_FEEDوضبطresource_nameعلى اسم مصدر حملتك.أنشئ
CampaignOperationواضبطupdateعلىCampaignالذي تم إنشاؤه سابقًا، ثم اضبطupdate_maskوفقًا لذلك.أرسِل طلبًا إلى
CampaignService.MutateCampaignsباستخدامCampaignOperationالذي تم إنشاؤه في الخطوة السابقة.
بعد ذلك، أزِل أي عمليات ربط لخلاصة السفر على مستوى الحملة:
بالنسبة إلى الحملة التي تريد إيقافها، استرجِع كلاً من
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'لكل
campaign_asset_set.resource_name، أنشئCampaignAssetSetOperationواضبطremoveعلىcampaign_asset_set.resource_nameالذي تم استرجاعه في الخطوة السابقة.أرسِل طلبًا إلى
CampaignAssetSetService.MutateCampaignAssetSetsباستخدام عناصرCampaignAssetSetOperationالتي تم إنشاؤها.
إذا أردت تفعيل هذه الميزة على مستوى الحملة مرة أخرى، اتّبِع الخطوات التالية:
- بالنسبة إلى كل
AssetSetأساسي (asset_set.resource_name) تريد تفعيله، أنشئCampaignAssetSetجديدًا مع ضبطasset_setعلىasset_set.resource_nameوضبطcampaignعلى اسم المرجع الخاص بحملتك. - لكل
CampaignAssetSetتم إنشاؤه في الخطوة السابقة، أنشئCampaignAssetSetOperationمع ضبطcreateعلىCampaignAssetSet. - أرسِل طلبًا إلى
CampaignAssetSetService.MutateCampaignAssetSetsباستخدام عناصرCampaignAssetSetOperationالتي تم إنشاؤها.
استعادة حالة الموافقة على مستوى العميل لإحدى الحملات
لجعل حالة الموافقة في الحملة تتوافق مع الإعداد على مستوى العميل مرة أخرى، اتّبِع الخطوات التالية:
- أنشئ عنصر
Campaignجديدًا معexcluded_parent_asset_set_typesبدونTRAVEL_FEEDفي القائمة، واضبطresource_nameعلى اسم المورد الخاص بحملتك. - أنشئ
CampaignOperationواضبطupdateعلىCampaignالذي تم إنشاؤه سابقًا، ثم اضبطupdate_maskوفقًا لذلك. - أرسِل طلبًا إلى
CampaignService.MutateCampaignsباستخدامCampaignOperationالذي تم إنشاؤه في الخطوة السابقة.
عروض أسعار النقرة اليدوية على مستوى كل عنصر
بدءًا من الإصدار v25 من Google Ads API، يمكنك ضبط عمليات تجاوز عروض أسعار النقرة اليدوية على مستوى كل كيان للفنادق في حملات على شبكة البحث للسفر باستخدام مورد AdGroupCriterion مع نوع المعيار CriterionType.VERTICAL_ADS_ITEM_BID (ad_group_criterion.entity_bid).
المتطلبات الأساسية ومتطلبات التوافق
لإنشاء معايير VERTICAL_ADS_ITEM_BID وإدارتها، يجب استيفاء الشروط التالية:
- نوع الحملة: "الحملات على شبكة البحث للسفر" (الحملات على شبكة البحث،
AdvertisingChannelType.SEARCH، مع تفعيل ميزات AI Max في الحملات على شبكة بحث GoogleCampaign.ai_max_setting.enable_ai_maxوخلاصة فنادق مرتبطة [مجموعة مواد عرضTRAVEL_FEED]؛ لا تتوفّر سوى خلاصات الفنادق). - استراتيجية عروض الأسعار: "تكلفة النقرة اليدوية" (
BiddingStrategyType.MANUAL_CPC) فقط- لا تتوافق مع الاستراتيجيات المبرمَجة أو استراتيجيات "عروض الأسعار الذكية" (مثل "تحقيق الحدّ الأقصى من الإحالات الناجحة" أو "تحقيق الحدّ الأقصى من قيمة الإحالات الناجحة" أو "سقف التكلفة المحدّد لكل إجراء" أو "عائد الإنفاق الإعلاني المستهدَف").
- المعايير الإيجابية فقط: يجب ضبط
negativeعلىfalse. لا تتوفّر عروض أسعار الكيانات السلبية. - معرّف العنصر المطلوب وعرض السعر: يجب توفير
entity_bid.item_codeوcpc_bid_microsعند إنشاء معيار عرض سعر خاص بعنصر.
تعريفات المخطط والحقول
- المصدر:
AdGroupCriterion(ad_group_criterion) - تنسيق اسم المورِد:
customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id} - تعداد نوع المعيار:
CriterionType.VERTICAL_ADS_ITEM_BID - الرسالة:
EntityBid(ad_group_criterion.entity_bid)
| الحقل | النوع | السلوك | الوصف |
|---|---|---|---|
entity_bid |
EntityBid |
IMMUTABLE |
معيار يمثّل تجاوز عرض الأسعار يدويًا لسلعة واحدة. |
entity_bid.item_code |
string |
"IMMUTABLE"، يجب إدخال قيمة |
المعرّف أو الرمز الذي يحدّد كيان فندق معيّنًا (معرّف بطاقة بيانات الفندق) الذي يتطابق مع خلاصة الفندق الشريك (من حرف واحد إلى 256 حرفًا، يتم اقتطاع المسافات البيضاء). |
cpc_bid_micros |
int64 |
القراءة والكتابة | مبلغ عرض سعر النقرة اليدوي بوحدة Micro (على سبيل المثال،
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"
}
]
}
قواعد التحقّق من صحة البيانات ومعالجة الأخطاء
| السيناريو | المشغّل / الشرط | رمز الخطأ الذي تم عرضه |
|---|---|---|
| حملة لا تستخدم استراتيجية "تكلفة النقرة اليدوية" | محاولة إنشاء عرض سعر على مستوى عنصر في حملة تستخدم عروض أسعار مبرمَجة أو عروض أسعار ذكية | ContextError.OPERATION_NOT_PERMITTED_FOR_CONTEXT |
| نوع الحملة غير صالح | إضافة عرض سعر خاص بعنصر إلى حملة غير مرتبطة بشبكة البحث (مثل "حملة على الشبكة الإعلانية") | 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 لتحديد بيانات الأداء للإعلانات المعروضة كـ خلاصات سفر في الإعلانات على شبكة البحث، مثل استرداد بيانات الأداء للإعلانات في جميع حملاتك:
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