Infrastruktur skrip Google Ads baru didasarkan pada Google Ads API. Karena arsitektur API tersebut berbeda, Anda mungkin perlu mengupdate skrip yang ada. Kami telah berupaya sebaik mungkin untuk memastikan kompatibilitas mundur sebanyak mungkin, sehingga perubahan ini seharusnya bersifat minor.
Laporan
Banyak laporan AWQL akan terus berfungsi. Di balik layar, saat menggunakan infrastruktur baru, skrip akan mengonversi kueri AWQL Anda menjadi GAQL (bahasa kueri baru untuk Google Ads API), menjalankannya di backend baru, lalu mengonversi hasilnya kembali ke format yang awalnya digunakan oleh laporan AWQL. Kueri dengan GAQL akan diteruskan sebagaimana adanya.
Karena overhead ini, sebaiknya Anda memeriksa skrip dan memperbarui kueri AWQL ke GAQL jika memungkinkan. Anda dapat menggunakan alat migrasi kueri yang menggunakan logika yang sama seperti skrip untuk menentukan kueri GAQL untuk kueri AWQL tertentu, atau Anda dapat menggunakan builder kueri interaktif untuk membantu membuat kueri.
Berikut adalah beberapa batasan untuk terjemahan AWQL ke GAQL otomatis:
- Tidak semua kueri AWQL diterjemahkan dengan baik ke kueri GAQL. Dalam kasus ini, pesan error dengan beberapa detail tentang masalah yang terjadi akan dicatat ke dalam log, untuk membantu Anda memperbaikinya secara manual.
- Tidak semua jenis laporan dari AWQL didukung di GAQL.
- GAQL tidak mendukung "baris tayangan nol". Menentukan bahwa laporan harus menyertakan nol tayangan akan menyebabkan error.
- Beberapa kolom yang ambigu tidak dapat digunakan dalam filter. Misalnya, "Judul" dapat mereferensikan sejumlah kolom iklan yang berbeda.
- Beberapa kolom dapat menampilkan hasil dalam format yang berbeda, misalnya, membagi satu hasil menjadi beberapa kolom.
Mengatur pemilih
Saat mengambil resource menggunakan skrip, penggunaan panggilan withCondition
dan orderBy
cukup umum untuk membatasi atau mengurutkan hasil di iterator. Kolom dalam panggilan ini kini menggunakan nama Google Ads API baru. Misalnya,
untuk memfilter menurut nama kampanye, sebelumnya Anda akan menggunakan:
.withCondition('CampaignName = "SOME_CAMPAIGN_NAME"')
Sekarang, Anda harus menggunakan nama kolom baru untuk kondisi ini jika memungkinkan:
.withCondition('campaign.name = "SOME_CAMPAIGN_NAME"')
Meskipun demikian, kami telah berupaya menyertakan pemetaan nama lama ke nama baru, sehingga jika skrip Anda masih menggunakan CampaignName
, skrip tersebut akan otomatis diganti dengan campaign.name
saat runtime untuk memastikan skrip masih berfungsi. Jika
Anda mengalami masalah dengan nama gaya lama, perbarui skrip untuk
menggunakan nama gaya baru sebagai langkah pemecahan masalah pertama.
Batas
Banyak batas yang sama dengan yang ada di infrastruktur lama, dan perubahan yang dilakukan di sini umumnya akan membantu meningkatkan performa.
- Batas waktunya sama. Skrip dapat dieksekusi selama 30 menit.
- Satu iterator menampilkan 50.000 entity secara default, tetapi ini dapat diganti. Sebelumnya, batas 50.000 ini tidak dapat disesuaikan.
- Satu pemilih dapat menangani maksimal 10.000 ID (tidak berubah).
- Infrastruktur baru ini tidak memiliki batas jumlah entity yang dapat diproses dalam satu skrip. Sebelumnya, batasnya adalah 250.000.
- Infrastruktur baru ini tidak memiliki batasan jumlah kata kunci atau iklan yang dapat dibuat per eksekusi. Sebelumnya,batasnya adalah 250.000.
- Output logging terpotong pada 100 kb (tidak berubah).
- Kuota untuk layanan Apps Script (SpreadsheetApp, MailApp, dll.) tidak berubah.
- Kuota untuk Google Ads akan diterapkan seolah-olah Anda menggunakan API. Artinya, skrip Anda akan tunduk pada batas kapasitas API, tetapi ini memungkinkan fleksibilitas yang lebih besar untuk mengakses lebih banyak laporan atau membuat lebih banyak perubahan per eksekusi.
Perubahan lainnya
ExecutionInfo
tidak lagi mengekspos getRemainingCreateQuota()
atau getRemainingGetQuota()
, karena kuota tersebut tidak lagi berlaku di versi baru.