جستجو و SearchStream

ویدیو: گزارش تخلف

«میانای برنامه‌سازی کاربردی Google Ads» دارای سازوکار یکپارچه بازیابی مشخصه و گزارش سنجه‌ها است که به شما امکان می‌دهد بااستفاده از زبان پُرسمان Google Ads پُرسمان بسازید. این کار امکان اجرای پُرسمان‌های پیچیده را فراهم می‌کند که می‌توانند حجم زیادی از داده‌ها را درباره حساب‌های Google Ads تکی برگردانند.

می‌توانید بااستفاده از روش‌های Search یا SearchStream پُرسمان ایجاد کنید. هر دو روش از پُرسمان‌های یکسانی پشتیبانی می‌کنند و نتایج معادل برمی‌گردانند. روش Search داده‌ها را در صفحه‌هایی با اندازه ثابت ۱۰٬۰۰۰ ردیف برمی‌گرداند و به شما امکان می‌دهد بااستفاده از صفحه‌بندی در مجموعه نتایج پیمایش کنید. این می‌تواند در شرایط شبکه با پهنای باند کم یا غیرقابل اعتماد مفید باشد، برای مثال، برای تقسیم یک مجموعه نتایج بزرگ به پاسخ‌های کوچکتر که درصورت قطع شدن اتصال می‌توانند دوباره واکشی شوند. ازسوی‌دیگر، روش SearchStream کل مجموعه نتایج را در یک پاسخ واحد جاری‌سازی می‌کند که می‌تواند برای بازیابی انبوه داده‌ها کارآمدتر باشد.

هم Search و هم SearchStream از نشانی وب پایه یکسانی استفاده می‌کنند:

    https://googleads.googleapis.com/v26/customers/CUSTOMER_ID/googleAds
POST /v26/customers/CUSTOMER_ID/googleAds:search HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_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'"
}

اگر بیش‌از ۱۰٬۰۰۰ ردیف در نتایج وجود داشته باشد، nextPageToken در پاسخ برگردانده می‌شود:

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

تکرار کردن همان پُرسمان با افزودن pageToken با مقادیر درخواست قبلی، صفحه بعدی نتایج را واکشی می‌کند:

POST /v26/customers/CUSTOMER_ID/googleAds:search HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_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"
}

برای استفاده از روش SearchStream که همه نتایج را در یک پاسخ جاری‌شده برمی‌گرداند، روش سرویس را در نشانی وب به searchStream تغییر دهید (pageToken برای SearchStream لازم نیست):

POST /v26/customers/CUSTOMER_ID/googleAds:searchStream HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_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'"
}