Paginar os resultados da consulta

Para gerenciar conjuntos de resultados que contenham um grande número de linhas, o Merchant A linguagem de consulta do Center oferece suporte à paginação. Dois parâmetros estão disponíveis para controlar paginação na solicitação reports.search corpo: page_size e page_token, além de um campo de saída na resposta corpo: next_page_token.

O parâmetro page_size especifica o número máximo de linhas a serem recuperadas em um com uma única solicitação. Se não for especificado, será definido automaticamente como o tamanho máximo da página de 1.000 linhas.

O parâmetro page_token especifica o token da página a ser retornada. Se não especificada, a primeira página é retornada. Para recuperar uma página subsequente, o Valor recebido como o next_page_token da chamada reports.search anterior precisa ser fornecido como um page_token. Quando um page_token é fornecido, todos os outros na chamada devem corresponder à chamada anterior que retornou o page_token para evitar comportamentos inesperados.

Exemplo:

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

Para esta consulta, suponha que a conta contenha 100.000 offer_ids e o page_size está definido como 200. O conjunto de resultados conterá 200 ReportRow na primeira resposta, com um next_page_token.

Para recuperar as próximas 200 linhas, envie a solicitação novamente com o mesmo tamanho de página. mas atualize o page_token da solicitação para o valor da resposta anterior next_page_token.

Aqui está um exemplo de corpo de resposta (os cinco primeiros resultados mais os 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"
}