Telusuri & SearchStream

Video: Pelaporan

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'"
}