Strategi Mutasi

Panduan ini akan disajikan untuk mengonstruksikan analog yang tepat dengan yang sudah ada Panduan Performa Maksimal, yang mengasumsikan bahwa Anda akan membuat seluruh kampanye dalam satu permintaan atomik, bukan membuat setiap entitas satu per satu waktu dalam permintaan terpisah. Artinya, Anda harus menggunakan perintah ID untuk menautkan resource satu sama lain, karena Anda tidak akan tahu nama lengkap sumber daya sampai Anda mendapatkan API yang dihasilkan.

Untuk melakukannya, Anda harus menulis beberapa kode untuk memastikan bahwa Anda tidak membuat ID sementara duplikat:

let nextId = -1;

function getNextTempId() {
    const ret = nextId;
    nextId -= 1;
    return ret;
}

Setiap panggilan berturut-turut ke getNextTempId akan menampilkan angka satu lebih sedikit dari sebelumnya. Karena semua ID sementara harus negatif, mulailah dari -1.

Dengan ini, Anda kini dapat membuat array untuk menyimpan semua operasi:

const operations = [];

Anda akan sering memerlukan ID pelanggan untuk pelanggan yang Anda buat kampanye, karena diperlukan di setiap nama resource.

const customerId = AdsApp.currentAccount().getCustomerId();

Setiap kali Anda ingin membuat operasi baru, Anda akan menggunakan ID sementara berikutnya di nama sumber daya, sehingga Anda bisa mereferensikan objek ini nanti, dan memasukkan yang dibuat ke dalam array:

const newOperation = {
    [OPERATION_TYPE_VARIES]: {
        create: {
            resourceName: `customers/${customerId}/[EXACT_PATH_VARIES]/${getNextTempId()}`
            // Other fields, relevant to the resource being created.
        }
    }
}
operations.push(newOperation);

Anda dapat membaca lebih lanjut dan melihat contoh operasi di mutate REST Google Ads API dokumentasi tambahan.

Setelah Anda membangun semua operasi kita, jalankan semuanya dalam satu {i>batch<i}:

AdsApp.mutateAll(operations);