برای ایجاد یک کمپین Demand Gen جدید از ابتدا، حداقل باید موارد زیر را ایجاد کنید:
- داراییهای سطح حساب
- خودِ کمپین
- بودجه
- یک گروه تبلیغاتی
- تبلیغ در یک گروه تبلیغاتی
- یک تبلیغ
کمپین و بودجه برای ایجاد انواع کمپین مفید هستند، در حالی که برخی از تنظیمات درون تبلیغات گروه تبلیغاتی به طور خاص برای ایجاد کمپینهای Demand Gen مفید خواهند بود. برای مشاهده نحوه ایجاد داراییها با استفاده از اسکریپتها، به راهنمای داراییهای Demand Gen مراجعه کنید.
مطمئن شوید که با استراتژی جهش (mutate) آشنا هستید، زیرا این راهنما فقط اشیاء جاوا اسکریپت مورد استفاده در جهشها را ارائه میدهد.
بودجه
بودجه نباید به اشتراک گذاشته شود و باید یک نام منحصر به فرد در حساب شما داشته باشد. برای پیشنهاد قیمت مبتنی بر تبدیل، بهترین روش این است که بودجه روزانه را بیش از ۱۵ برابر CPA مورد انتظار خود تعیین کنید. برای پیشنهاد قیمت مبتنی بر ارزش، بودجه روزانه را بیش از ۲۰ برابر میانگین ارزش تبدیل/tROAS مورد انتظار خود تعیین کنید. برای ایجاد بودجه خود از CampaignBudgetOperation استفاده کنید.
const budgetOperation = {
"campaignBudgetOperation": {
"create": {
"resourceName": `customers/${customerId}/campaignBudgets/${getNextTempId()}`,
"name": "Demand Gen campaign budget",
"amountMicros": "50000000",
"deliveryMethod": "STANDARD",
"explicitlyShared": false
}
}
}
operations.push(budgetOperation);
کمپین
کمپین باید به بودجهای ارجاع دهد، بنابراین برای شناسایی و استفاده از آن شیء بودجه خاص، به نام دقیق منبع بودجهای که در مرحله قبل ایجاد کردهاید، نیاز خواهید داشت. از CampaignOperation استفاده کنید.
const campaignOperation = {
"campaignOperation": {
"create": {
"resourceName": `customers/${customerId}/campaigns/${getNextTempId()}`,
"name": "Demand Gen campaign",
"status": "PAUSED",
"advertisingChannelType": "DEMAND_GEN",
"campaignBudget": budgetOperation.campaignBudgetOperation.create.resourceName,
"biddingStrategyType": "TARGET_CPA",
"startDate": "20240314",
"endDate": "20250313",
"urlExpansionOptOut": false,
"targetCpa": {
"targetCpaMicros": 1000000
},
"containsEuPoliticalAdvertising": "DOES_NOT_CONTAIN_EU_POLITICAL_ADVERTISING"
}
}
}
operations.push(campaignOperation);
گروه تبلیغاتی
گروه تبلیغاتی باید به یک کمپین ارجاع دهد، بنابراین برای شناسایی و استفاده از آن شیء کمپین، به نام منبع کمپین دقیقاً ایجاد شده در مرحله قبل نیاز خواهید داشت. همچنین به یک شناسه موقت برای خود گروه تبلیغاتی نیاز دارید که بهتر است به عنوان یک متغیر جدید ذخیره شود تا بتوان از آن هنگام ایجاد یک تبلیغ گروه تبلیغاتی استفاده کرد.
هنگام ایجاد یک گروه تبلیغاتی برای کمپین Demand Gen، میتوانید کنترلهای کانال را نیز پیکربندی کنید تا تصمیم بگیرید تبلیغات شما کجا نمایش داده شوند. برخلاف برخی از انواع دیگر کمپین، چندین گروه تبلیغاتی برای هر کمپین برای Demand Gen توصیه میشود، زیرا سیستم بودجه را بر اساس عملکرد گروه تبلیغاتی اختصاص میدهد. در حال حاضر، میتوانید فقط یک گروه تبلیغاتی با استفاده از AdGroupOperation ایجاد کنید.
const adGroupId = getNextTempId();
const adGroupOperation = {
"adGroupOperation": {
"create": {
"resourceName": `customers/${customerId}/adGroups/${adGroupId}`,
"name": "Demand Gen ad group",
"status": "PAUSED",
"campaign": campaignOperation.campaignOperation.create.resourceName,
"demand_gen_ad_group_settings": {
"channel_controls": {
"selected_channels": {
"gmail": false,
"discover": false,
"display": false,
"youtube_in_feed": true,
"youtube_in_stream": true,
"youtube_shorts": true
}
}
}
}
}
}
operations.push(adGroupOperation);
تبلیغ گروه تبلیغاتی با تبلیغ تو در تو
این مرحله یک تبلیغ گروه تبلیغاتی ایجاد میکند که به یک گروه تبلیغاتی با یک تبلیغ دیگر متصل میشود. تبلیغ گروه تبلیغاتی باید به گروه تبلیغاتی ارجاع دهد، بنابراین به نام منبع دقیقی که در مرحله قبل تنظیم کردهاید نیاز خواهید داشت. میتوانید در همان عملیات، یک تبلیغ ایجاد کنید. مثال نشان داده شده در اینجا یک تبلیغ واکنشگرای ویدیویی Demand Gen را با استفاده از DemandGenVideoResponsiveAdInfo ایجاد میکند، یا میتوانید این مثال را برای ایجاد یک تبلیغ چند دارایی با استفاده از DemandGenMultiAssetAdInfo ، یک تبلیغ چرخشی با استفاده از DemandGenCarouselAdInfo یا یک تبلیغ محصول با استفاده از DemandGenProductAdInfo تطبیق دهید.
برای ایجاد گروه تبلیغاتی، از AdGroupAdOperation با همان متغیر شناسه گروه تبلیغاتی که در مرحله قبل ایجاد شده است، استفاده کنید.
const adGroupAdOperation = {
"adGroupAdOperation": {
"create": {
"resourceName": `customers/${customerId}/adGroupAds/${adGroupId}~${getNextTempId()}`,
"adGroup": adGroupOperation.adGroupOperation.create.resourceName,
"status": "PAUSED",
"ad": {
"name": "Demand Gen video responsive ad",
"finalUrls": [
"http://www.example.com"
],
"demandGenVideoResponsiveAd": {
"businessName": {
"text": "Demand Gen business"
},
"videos": [
{ "asset": videoAsset.assetOperation.create.resourceName }
],
"logoImages": [
{ "asset": imageAsset.assetOperation.create.resourceName }
],
"headlines": [
{ "text": "Demand Gen responsive video" }
],
"longHeadlines": [
{ "text": "Make a Demand Gen video responsive ad today" }
],
"description": [
{ "text": "This is an example of a Demand Gen video responsive ad"}
]
}
}
}
}
}
operations.push(adGroupAdOperation);