Arama ve Akış Arama

Video: Raporlama

Google Ads API, Google Ads Sorgu Dili'ni kullanarak sorgular oluşturmanıza olanak tanıyan birleştirilmiş bir özellik alma ve metrik raporlama mekanizmasına sahiptir. Bu sayede, her bir Google Ads hesabı hakkında büyük miktarda veri döndürebilen karmaşık sorgulara izin verilir.

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 özelleştirilebilir sayfa boyutlarında döndürerek sayfalara ayırma işlemini kullanarak sonuç kümesi üzerinde iterasyon yapmanızı sağlar. 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ı kesildiğinde yeniden getirilebilecek daha küçük yanıtlara bölebilirsiniz. Öte yandan SearchStream yöntemi, tüm sonuç kümesinin tek bir yanıtta geri akışını sağlar. Bu da toplu veri alımı için daha verimli olabilir.

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

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

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

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

Sonuçlarda pageSize değerinden 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 pageToken ile tekrarlanması sonraki sonuç sayfasını getirir:

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

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

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