最高成效廣告活動選用元件

轉換目標

建立最高成效廣告活動時,系統會根據帳戶中的 CustomerConversionGoal,自動建立一系列的轉換目標。只要更新,即可針對各個最高成效廣告活動自訂相關設定。

如要這麼做,您必須先擷取完整客戶轉換目標的清單。

const searchResults = AdsApp.search(
  `SELECT
     customer_conversion_goal.category,
     customer_conversion_goal.origin
   FROM customer_conversion_goal`
);

您可以反覆疊代先前取得的所有轉換目標,並為目前的最高成效廣告活動建立更新作業,為每個目標自訂指定目標。下方程式碼會將所有這些出價都設為可出價,但建議您自訂邏輯的部分,以配合您想在廣告活動中運用的內容。

您必須先擷取最高成效廣告活動的廣告活動 ID,才能執行這段程式碼。

設定轉換目標時,建議在其餘交易中設定與廣告活動建立程序的其餘部分無關。CampaignConversionGoalOperation 需要將要求的 partialFailure 設為 false。如果您想在首次建立廣告活動的同一個交易中執行這個程式碼,就必須將整個作業組合設為關閉「部分失敗」。這個程式碼範例示範如何在「個別」交易中執行這項作業。

operations = [];
while (searchResults.hasNext()) {
  const row = searchResults.next();
  const conversionGoal = row.customerConversionGoal;

  operations.push({
    "campaignConversionGoalOperation": {
      "update": {
        "resourceName": `customers/${customerId}/campaignConversionGoals/${campaignId}~${conversionGoal.category}~${conversionGoal.origin}`,
        // Insert your logic here to determine whether you want this particular
        // campaign conversion goal to be biddable or not.
        // This code will just default everything to being biddable, but that
        // is not necessarily best for your use case.
        "biddable": true
      },
      "updateMask": "biddable"
    }
  });
}

AdsApp.mutateAll(operations, {partialFailure: false});

廣告活動指定

關於最高成效廣告活動的指定目標功能,請務必查看 API 指南,瞭解可用條件類型的完整清單。

最高成效廣告活動不需要新增條件,但有助於根據用途限制指定目標。以下程式碼範例說明如何設定指定地區。如要瞭解其他條件類型的格式,請參閱 CampaignCriterion 說明文件。

在同一個 mutateAll 呼叫中,您可以建立這些條件與廣告活動本身,此程式碼範例假設您撰寫程式碼的方式。

operations.push({
  "campaignCriterionOperation": {
    "create": {
      "campaign": campaignOperation.campaignOperation.create.resourceName,
      "negative": false,
      "location": {
        // 1023191 represents New York City
        "geoTargetConstant": "geoTargetConstants/1023191"
      }
    }
  }
});

素材資源群組信號

開始之前,請先參閱 API 說明文件中的素材資源群組信號相關資訊。設定方法是將素材資源群組連結至現有的 AudienceInfoSearchThemeInfo 條件。如要改用目標對象,請指定 audience 欄位,而不是包含目標對象資源名稱的 searchTheme 欄位。

operations.push({
  "assetGroupSignalOperation": {
    "create": {
      "assetGroup": assetGroupOperation.assetGroupOperation.create.resourceName,
      "searchTheme": {
        "text": "mars cruise"
      }
    }
  }
});