Google Ads API, Google Ads Sorgu Dili'ni kullanarak sorgu oluşturmanıza olanak tanıyan birleşik bir özellik alma ve metrik raporlama mekanizmasına sahiptir. Bu sayede, bireysel Google Ads hesapları hakkında büyük miktarlarda veri döndürebilecek karmaşık sorgular oluşturabilirsiniz.
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, verileri 10.000 satırdan oluşan sabit boyutlu sayfalarda döndürür. Bu sayede sayfalandırmayı kullanarak bir sonuç kümesi üzerinde iterasyon yapabilirsiniz. Bu, düşük bant genişliği veya güvenilir olmayan ağ koşullarında avantajlı olabilir. Örneğin, büyük bir sonuç kümesini, bağlantı kaybedilirse yeniden getirilebilecek daha küçük yanıtlara segmentlere ayırmak için kullanılabilir. Öte yandan SearchStream
yöntemi, sonuç kümesinin tamamını tek bir yanıtta aktarır. Bu, toplu veri alma için daha verimli olabilir.
Hem Search
hem de SearchStream
aynı temel URL'yi kullanır:
https://googleads.googleapis.com/v18/customers/CUSTOMER_ID/googleAds
POST /v18/customers/CUSTOMER_ID/googleAds:search 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'" }
Sonuçlarda 10.000'den fazla satır varsa yanıtta nextPageToken
döndürülür:
{ "results": [ // ... // ... // ... ], "nextPageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B", "fieldMask": "adGroupCriterion.keyword.text,adGroupCriterion.status" }
Aynı sorguyu, önceki istekteki değerlerle birlikte eklenen bir pageToken
ile tekrarlamak, sonuçların bir sonraki sayfasını getirir:
POST /v18/customers/CUSTOMER_ID/googleAds:search 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'", "pageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B" }
Tüm sonuçları tek bir akış yanıtında döndüren SearchStream
yöntemini kullanmak için URL'deki hizmet yöntemini searchStream
olarak değiştirin (SearchStream
için pageToken
gerekli değildir):
POST /v18/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'" }