Pagina los resultados de las consultas

Para manejar conjuntos de resultados que contengan una gran cantidad de filas, Merchant Center Query Language admite la paginación. Hay dos parámetros disponibles para controlar la paginación en la reports.search solicitud cuerpo: page_size y page_token, además de un campo de salida en la respuesta Cuerpo: next_page_token

El parámetro page_size especifica la cantidad máxima de filas que se recuperarán de un en una sola solicitud. Si no se especifica, se establece automáticamente en el tamaño máximo de página. de 1,000 filas.

El parámetro page_token especifica el token de la página que se mostrará. Si sin especificar, se devuelve la primera página. Para recuperar una página posterior, el valor recibido como next_page_token de la llamada anterior a reports.search se debe proporcionar como page_token. Cuando se proporciona un page_token, todas las demás los parámetros en la llamada deben coincidir con la llamada anterior que devolvió el page_token para evitar comportamientos inesperados.

Ejemplo:

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, supongamos que la cuenta contiene 100,000 offer_ids y que la page_size se establece en 200. El conjunto de resultados contendrá 200 ReportRow objetos en la primera respuesta, junto con una next_page_token.

Para recuperar las siguientes 200 filas, vuelve a enviar la solicitud con el mismo tamaño de página. pero actualiza el page_token de la solicitud al de la respuesta anterior next_page_token

Este es un ejemplo de cuerpo de respuesta (los primeros cinco resultados más la 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"
}