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

轉換目標

建立最高成效廣告活動時,系統會自動建立一系列與帳戶中 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"
      }
    }
  }
});