クエリ結果にページを設定する

多数の行を含む結果セットを処理するため、Merchant Center は Center クエリ言語ではページ分けがサポートされています。2 つのパラメータを reports.search リクエストでページ分割を制御する body: レスポンスの 1 つの出力フィールドに加えて、page_sizepage_token body: next_page_token

page_size パラメータは、1 つのテーブルで取得する行の最大数を指定します。 単一リクエスト。指定しない場合は、最大ページサイズに自動的に設定されます 1,000 行

page_token パラメータには、返されるページのトークンを指定します。条件 指定しない場合は、最初のページが返されます。後続のページを取得するには、 前回の reports.search 呼び出しから next_page_token として受け取った値 page_token として指定する必要があります。page_token を指定すると、他のすべての パラメータが、前回の呼び出しを返した呼び出しと一致していることが必要です。 予期しない動作を回避するための page_token

例:

SELECT
  segments.offer_id,
  metrics.impressions,
  metrics.clicks,
  metrics.ctr
FROM MerchantPerformanceView
WHERE segments.date BETWEEN '2021-12-01' AND '2021-12-31'

このクエリでは、アカウントに 100,000 個の offer_ids があり、 page_size は 200 に設定されています。結果セットには、200 個の ReportRow が含まれます。 を next_page_token と一緒に返します。

次の 200 行を取得するには、同じページサイズでリクエストをもう一度送信します。 リクエストの page_token を前のレスポンスの next_page_token

以下はレスポンス本文の例です(最初の 5 つの結果と next_page_token):

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