Paginate query results

زبان پرس‌وجوی مرکز فروشندگان، فیلدهای زیر را برای صفحه‌بندی ارائه می‌دهد:

  • pageSize : حداکثر تعداد ردیف‌هایی که می‌توان در یک درخواست بازیابی کرد. به طور پیش‌فرض حداکثر اندازه صفحه ۱۰۰۰ ردیف است.
  • pageToken : توکن صفحه‌ای که قرار است برگردانده شود. اگر مشخص نشود، صفحه اول برگردانده می‌شود.
  • nextPageToken : مقدار pageToken برای دریافت صفحه بعدی از فراخوانی accounts.reports.search .

وقتی یک pageToken ارائه می‌شود، تمام پارامترهای دیگر در فراخوانی باید با فراخوانی قبلی مطابقت داشته باشند تا از رفتار غیرمنتظره جلوگیری شود.

برای مثال، اگر کوئری زیر را روی حسابی که ۱۰۰۰۰۰ مقدار offer_id دارد و pageSize روی ۲۰۰ تنظیم شده است، انجام دهید، نتیجه فقط شامل ۲۰۰ شیء ReportRow در اولین پاسخ، به همراه یک nextPageToken است:

SELECT offer_id, impressions, clicks, click_through_rate
FROM product_performance_view
WHERE date BETWEEN '2023-12-01' AND '2023-12-31'

در اینجا نمونه پاسخ (پنج نتیجه اول و nextPageToken ) آمده است:

{
  "results": [
    {
      "productPerformanceView": {
        "offerId": "12345",
        "clicks": "0",
        "impressions": "59",
        "clickThroughRate": 0
      }
    },
    {
      "productPerformanceView": {
        "offerId": "12346",
        "clicks": "9625",
        "impressions": "276695",
        "clickThroughRate": 0.034785594246372356
      }
    },
    {
      "productPerformanceView": {
        "offerId": "12347",
        "clicks": "148",
        "impressions": "22045",
        "clickThroughRate": 0.0067135404853708325
      }
    },
    {
      "productPerformanceView": {
        "offerId": "12348",
        "clicks": "11",
        "impressions": "1100",
        "clickThroughRate": 0.01
      }
    },
    {
      "productPerformanceView": {
        "offerId": "12349",
        "clicks": "569",
        "impressions": "62977",
        "clickThroughRate": 0.0090350445400701838
      }
    },
    ...
  ],
  "nextPageToken": "CMgB"
}

برای بازیابی ۲۰۰ ردیف بعدی، درخواست را دوباره با همان اندازه صفحه ارسال کنید، اما pageToken درخواست را به nextPageToken از پاسخ قبلی به‌روزرسانی کنید.