Google Ads API memiliki mekanisme pelaporan metrik dan pengambilan atribut terpadu yang memungkinkan Anda membuat kueri menggunakan Bahasa Kueri Google Ads. Hal ini memungkinkan kueri kompleks yang dapat menampilkan data dalam jumlah besar tentang setiap akun Google Ads.
Anda dapat membuat kueri menggunakan salah satu dari metode Search
atau SearchStream
.
Kedua metode mendukung kueri yang sama dan menampilkan hasil yang setara. Metode
Search
menampilkan data dalam ukuran halaman yang dapat disesuaikan, sehingga Anda dapat melakukan iterasi
pada kumpulan hasil menggunakan penomoran halaman. Hal ini dapat menguntungkan dalam bandwidth rendah
atau kondisi jaringan yang tidak dapat diandalkan, misalnya, untuk menyegmentasikan hasil besar yang ditetapkan
menjadi respons yang lebih kecil yang dapat diambil ulang jika koneksi terputus. Di sisi lain,
metode SearchStream
mengalirkan seluruh hasil yang ditetapkan kembali dalam
satu respons, yang dapat lebih efisien untuk pengambilan data massal.
Search
dan SearchStream
menggunakan URL dasar yang sama:
https://googleads.googleapis.com/v17/customers/CUSTOMER_ID/googleAds
Metode penelusuran berbasis halaman mengambil parameter pageSize
opsional yang membatasi
jumlah hasil yang ditampilkan dalam satu respons API.
POST /v17/customers/CUSTOMER_ID/googleAds:search HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "pageSize": 10000, "query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'" }
Jika ada lebih banyak baris dalam hasil daripada pageSize
, nextPageToken
akan
ditampilkan dalam respons:
{ "results": [ // ... // ... // ... ], "nextPageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B", "fieldMask": "adGroupCriterion.keyword.text,adGroupCriterion.status" }
Mengulangi kueri yang sama dengan pageToken
yang ditambahkan dengan nilai di atas akan mengambil
halaman hasil berikutnya:
POST /v17/customers/CUSTOMER_ID/googleAds:search HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "pageSize": 10000, "query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'", "pageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B" }
Untuk menggunakan metode SearchStream
, yang menampilkan semua hasil dalam satu respons
yang di-streaming, cukup ubah metode layanan di URL menjadi searchStream
(pageSize
dan pageToken
tidak diperlukan oleh SearchStream
):
POST /v17/customers/CUSTOMER_ID/googleAds:searchStream HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'" }