Aby utworzyć nową kampanię generującą popyt od zera, musisz utworzyć co najmniej:
- Komponenty na poziomie konta
- sama kampania,
- budżet,
- Grupa reklam
- Reklama z grupy reklam
- Reklama
- Komponenty na poziomie konta
Kampania i budżet przydadzą się do tworzenia różnego rodzaju kampanii, a niektóre ustawienia reklam w grupie reklam będą szczególnie przydatne do tworzenia kampanii generujących popyt. W przewodniku po komponentach kampanii generujących popyt znajdziesz informacje o tym, jak tworzyć komponenty za pomocą skryptów.
Zapoznaj się z strategią mutacji, ponieważ ten przewodnik zawiera tylko obiekty JavaScriptu, które mają być używane w mutacjach.
Budżet
Budżet nie może być udostępniany i musi mieć unikalną nazwę na Twoim koncie. W przypadku określania stawek na podstawie konwersji zgodnie ze sprawdzoną metodą należy ustawić budżet dzienny większy niż 15-krotność oczekiwanego CPA. W przypadku określania stawek na podstawie wartości ustaw budżet dzienny przynajmniej 20 razy większy od oczekiwanej średniej wartości konwersji podzielonej przez Docelowy ROAS. Użyj CampaignBudgetOperation, aby utworzyć budżet.
const budgetOperation = {
"campaignBudgetOperation": {
"create": {
"resourceName": `customers/${customerId}/campaignBudgets/${getNextTempId()}`,
"name": "Demand Gen campaign budget",
"amountMicros": "50000000",
"deliveryMethod": "STANDARD",
"explicitlyShared": false
}
}
}
operations.push(budgetOperation);
Kampania
Kampania musi odwoływać się do budżetu, więc aby zidentyfikować i użyć konkretnego obiektu budżetu, musisz znać dokładną nazwę zasobu budżetu utworzonego w poprzednim kroku. Użyj 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);
Grupa reklam
Grupa reklam musi odwoływać się do kampanii, więc aby zidentyfikować i użyć obiektu kampanii, potrzebujesz dokładnej nazwy zasobu kampanii utworzonej w poprzednim kroku. Potrzebujesz też tymczasowego identyfikatora samej grupy reklam, który najlepiej zapisać jako nową zmienną, aby można było go użyć podczas tworzenia reklamy w grupie reklam.
Podczas tworzenia grupy reklam w kampanii generującej popyt możesz też skonfigurować ustawienia kanałów, aby określić, gdzie będą się wyświetlać Twoje reklamy. W przypadku kampanii generujących popyt zalecamy używanie wielu grup reklam w kampanii, ponieważ system przydziela budżet w zależności od skuteczności grupy reklam. Na razie możesz utworzyć tylko 1 grupę reklam za pomocą 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);
Reklama z grupy reklam z zagnieżdżoną reklamą
W tym kroku tworzysz reklamę w grupie reklam, która łączy grupę reklam z reklamą. Reklama w grupie reklam musi odwoływać się do grupy reklam, więc potrzebna będzie dokładna nazwa zasobu ustawiona w poprzednim kroku. W ramach tej samej operacji możesz utworzyć reklamę.
W tym przykładzie tworzymy elastyczną reklamę wideo generującą popyt za pomocą funkcji DemandGenVideoResponsiveAdInfo. Możesz też dostosować ten przykład, aby utworzyć reklamę z wieloma komponentami za pomocą funkcji DemandGenMultiAssetAdInfo, reklamę karuzelową za pomocą funkcji DemandGenCarouselAdInfo lub reklamę produktu za pomocą funkcji DemandGenProductAdInfo.
Aby utworzyć reklamę w grupie reklam, użyj AdGroupAdOperation z tą samą zmienną identyfikatora grupy reklam, która została utworzona w poprzednim kroku.
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);