Arama ve Akış Arama

Video: Raporlama

Google Ads API'de, Google Ads Sorgu Dili'ni kullanarak sorgu oluşturmanıza olanak tanıyan birleştirilmiş bir özellik alma ve metrik raporlama mekanizması bulunur. Bu, bireysel Google Ads hesaplarıyla ilgili büyük miktarda veri döndürebilen karmaşık sorgulara olanak tanır.

Search veya SearchStream yöntemlerinden birini kullanarak sorgu oluşturabilirsiniz. Her iki yöntem de aynı sorguları destekler ve eşdeğer sonuçlar döndürür. Search yöntemi, özelleştirilebilir sayfa boyutlarında veri döndürür. Böylece, sayfalandırmayı kullanarak bir sonuç kümesi üzerinde yineleme yapabilirsiniz. Bu, düşük bant genişliği veya güvenilir olmayan ağ koşullarında, örneğin büyük bir sonuç kümesini, bağlantı koptuğunda yeniden alınabilecek daha küçük yanıtlara segmentlere ayırmak için avantajlı olabilir. Diğer yandan SearchStream yöntemi, sonucun tamamını tek bir yanıtta geri aktarır ve bu, toplu veri alımı için daha verimli olabilir.

Hem Search hem de SearchStream aynı temel URL'yi kullanır:

    https://googleads.googleapis.com/v16/customers/CUSTOMER_ID/googleAds

Sayfa tabanlı arama yöntemi, tek bir API yanıtında döndürülen sonuç sayısını sınırlayan isteğe bağlı bir pageSize parametresi alır.

POST /v16/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'"
}

Sonuçlarda pageSize satırdan daha fazla satır varsa yanıtta nextPageToken döndürülür:

{
  "results": [
    // ...
    // ...
    // ...
  ],
  "nextPageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B",
  "fieldMask": "adGroupCriterion.keyword.text,adGroupCriterion.status"
}

Aynı sorgunun yukarıdaki değerle birlikte bir pageToken ile tekrarlanması, sonraki sonuç sayfasını getirir:

POST /v16/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"
}

Tüm sonuçları tek bir akışlı yanıtla döndüren SearchStream yöntemini kullanmak için URL'deki hizmet yöntemini searchStream olarak değiştirmeniz yeterlidir (SearchStream, pageSize ve pageToken özelliklerini gerektirmez):

POST /v16/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'"
}