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 dan membuat operasi pembaruan untuk kampanye Performa Maksimal saat ini guna menyesuaikan penargetan untuk setiap sasaran. Kode di bawah menetapkan semuanya ke biddable, tetapi Anda sebaiknya menyesuaikan bagian logika tersebut agar sesuai dengan apa yang ingin Anda dapatkan dari kampanye.

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 ingin menjalankan kode ini dalam transaksi yang sama dengan tempat Anda pertama kali membuat kampanye, Anda harus menetapkan seluruh kumpulan operasi agar kegagalan parsial dinonaktifkan. 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 guna 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 mereferensikan 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 begitulah cara Anda membuat struktur 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. 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"
      }
    }
  }
});