Paginate query results

Merchant Center 查询语言提供以下用于分页的字段:

  • pageSize:单个请求中要检索的行数上限。 默认为最大页面大小(即 1,000 行)。
  • pageToken:要返回的页面的令牌。如果未指定,则返回第一页。
  • nextPageToken:用于从 accounts.reports.search 调用中获取下一页的 pageToken 值。

如果提供了 pageToken,则调用中的所有其他参数都必须与之前的调用匹配,以免出现意外行为。

例如,如果您对具有 10 万个 offer_id 值的账号执行以下查询,并将 pageSize 设置为 200,则结果在第一个响应中仅包含 200 个 ReportRow 对象,以及一个 nextPageToken

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

以下是示例回答(前 5 条结果和 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"
}

如需检索接下来的 200 行,请使用相同的页面大小设置再次发送请求,但要将请求中的 pageToken 更新为前一响应中的 nextPageToken