最高成效廣告活動的必要要素

如要從頭建立新的最高成效廣告活動,您至少必須建立下列項目:

廣告活動和預算可用於建立各種廣告活動類型,而素材資源相關作業則特別適合用於建立最高成效廣告活動。

請務必熟悉變異策略,因為本指南只會提供在變異中使用的 JavaScript 物件。

預算

預算不得共用,且在帳戶中不得重複。使用 CampaignBudgetOperation

const budgetOperation = {
  "campaignBudgetOperation": {
    "create": {
      "resourceName": `customers/${customerId}/campaignBudgets/${getNextTempId()}`,
      "name": "Performance Max campaign budget",
      "amountMicros": "50000000",
      "deliveryMethod": "STANDARD",
      "explicitlyShared": false
    }
  }
}
operations.push(budgetOperation);

廣告活動

廣告活動必須參照先前建立的預算,因此除了使用臨時 ID 指定自己的資源名稱外,您還需要在先前步驟中設定的確切資源名稱,才能建立廣告活動,以便在先前建立的預算中明確識別這項要求。使用 CampaignOperation

const campaignOperation = {
  "campaignOperation": {
    "create": {
      "resourceName": `customers/${customerId}/campaigns/${getNextTempId()}`,
      "name": "Performance Max campaign",
      "status": "PAUSED",
      "advertisingChannelType": "PERFORMANCE_MAX",
      "campaignBudget": budgetOperation.campaignBudgetOperation.create.resourceName,
      "biddingStrategyType": "MAXIMIZE_CONVERSION_VALUE",
      "startDate": "20240314",
      "endDate": "20250313",
      "urlExpansionOptOut": false,
      "maximizeConversionValue": {
        "targetRoas": 3.5
      }
    }
  }
}
operations.push(campaignOperation);

素材資源群組

這個廣告活動的素材資源群組需要參照廣告活動,日後連結素材資源時也需要參照該廣告活動。請使用 AssetGroupOperation

const assetGroupOperation = {
  "assetGroupOperation": {
    "create": {
      "resourceName": `customers/${customerId}/assetGroups/${getNextTempId()}`,
      "campaign": campaignOperation.campaignOperation.create.resourceName,
      "name": "Performance Max asset group",
      "finalUrls": [
        "http://www.example.com"
      ],
      "finalMobileUrls": [
        "http://www.example.com"
      ],
      "status": "PAUSED"
    }
  }
}
operations.push(assetGroupOperation);

您現在已擁有素材資源群組和素材資源 (來自上一個步驟),請將這些項目連結在一起,讓最高成效廣告活動知道您要使用哪些素材資源。您必須在最初建立資產群組的相同要求中執行這項操作。方法是使用 AssetGroupAssetOperation

您必須提供正確的資產資源名稱,並將 fieldType 修改為要連結的資產的適當值。請參閱有效欄位類型的完整清單

您需要執行多項這類作業,才能符合最高成效廣告活動的最低規定

operations.push({
  "assetGroupAssetOperation": {
    "create": {
      "assetGroup": assetGroupOperation.assetGroupOperation.create.resourceName,
      // assetResourceName here is a placeholder; you will need to determine
      // the correct resource name to use depending on which asset you want
      // to add to the asset group.
      "asset": assetResourceName,
      "fieldType": "HEADLINE"
    }
  }
});