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