Komponen Opsional Performa Maksimal

Sasaran Konversi

Saat Anda membuat kampanye Performa Maksimal, serangkaian sasaran konversi akan otomatis dibuat yang cocok dengan CustomerConversionGoal di akun. Anda dapat menyesuaikannya secara khusus untuk setiap kampanye Performa Maksimal dengan memperbaruinya.

Untuk melakukannya, Anda harus mengambil daftar semua sasaran konversi pelanggan terlebih dahulu.

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

Kemudian, Anda dapat melakukan iterasi pada semua sasaran konversi yang Anda dapatkan kembali dan membuat operasi pembaruan untuk kampanye Performa Maksimal saat ini guna menyesuaikan penargetan untuk setiap sasaran. Kode di bawah menetapkan semuanya ke dapat di-bid, tetapi Anda harus menyesuaikan bagian logika tersebut agar sesuai dengan hasil yang Anda inginkan dari kampanye Anda.

Sebelum menjalankan kode ini, Anda harus mengambil ID kampanye untuk kampanye Performa Maksimal.

Sebaiknya siapkan sasaran konversi dalam transaksi terpisah dari proses pembuatan kampanye lainnya. CampaignConversionGoalOperation mengharuskan partialFailure untuk permintaan ditetapkan ke false. Jika Anda ingin menjalankan kode ini dalam transaksi yang sama saat pertama kali membuat kampanye, Anda harus menonaktifkan kegagalan parsial untuk seluruh rangkaian operasi. Contoh kode ini menunjukkan cara melakukan operasi ini dalam transaksi terpisah.

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});

Penargetan Kampanye

Untuk penargetan kampanye di Performa Maksimal, pastikan untuk melihat panduan API untuk mengetahui daftar lengkap jenis kriteria yang diizinkan.

Kriteria tambahan tidak diperlukan untuk membuat kampanye Performa Maksimal, tetapi dapat berguna untuk membantu membatasi penargetan berdasarkan kasus penggunaan Anda. Contoh kode di bawah menunjukkan cara menyiapkan target lokasi geografis. Anda dapat melihat dokumentasi CampaignCriterion untuk format jenis kriteria lainnya.

Anda dapat membuat kriteria ini bersama dengan kampanye itu sendiri sebagai bagian dari panggilan yang sama ke mutateAll, dan contoh kode ini mengasumsikan bahwa itulah cara Anda menyusun kode.

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

Sinyal Grup Aset

Baca tentang sinyal grup aset di dokumentasi API sebelum memulai. Kriteria ini disiapkan dengan menautkan grup aset ke kriteria AudienceInfo atau SearchThemeInfo yang ada. Jika Anda ingin menggunakan audiens, tentukan kolom audience, bukan kolom searchTheme dengan nama resource audiens.

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