Paginate query results

Merchant Center のクエリ言語では、ページ設定に次のフィールドを使用できます。

  • pageSize: 1 つのリクエストで取得する行の最大数。デフォルトは最大ページサイズ 1,000 行です。
  • pageToken: 返されるページのトークン。指定しない場合は、最初のページが返されます。
  • nextPageToken: accounts.reports.search 呼び出しから次のページを取得するための pageToken 値。

pageToken を指定する場合、予期しない動作を回避するために、呼び出しの他のすべてのパラメータは、前の呼び出しと一致する必要があります。

たとえば、100,000 個の offerId 値を持つアカウントに対して次のクエリを実行し、pageSize が 200 に設定されている場合、最初のレスポンスには 200 個の ReportRow オブジェクトと nextPageToken のみが含まれます。

SELECT offerId, impressions, clicks, clickThroughRate
FROM ProductPerformanceView
WHERE date BETWEEN '2021-12-01' AND '2021-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 行を取得するには、同じページサイズでリクエストを再度送信しますが、前のレスポンスでリクエストの pageTokennextPageToken に更新します。