Paginação de resultados

O GoogleAdsService.Search oferece suporte à paginação em tamanhos de página fixos de 10.000 linhas. O conjunto de resultados da consulta é dividido em várias respostas, cada uma com 10.000 objetos.

Por exemplo, considere a seguinte consulta:

SELECT
  ad_group.id,
  ad_group_criterion.type,
  ad_group_criterion.criterion_id,
  ad_group_criterion.keyword.text,
  ad_group_criterion.keyword.match_type
FROM ad_group_criterion
WHERE ad_group_criterion.type = KEYWORD

Se a conta tiver 50.000 palavras-chave, o conjunto de resultados vai conter 10.000 objetos GoogleAdsRow na primeira resposta, além de um next_page_token.

Para recuperar as próximas 10.000 linhas, envie a solicitação novamente, mas atualize o page_token da solicitação para o next_page_token da resposta. Observe que next_page_token não é preenchido na resposta que contém o último lote de linhas.

Nossas bibliotecas de cliente processam a paginação automaticamente. Basta iterar pelas linhas da resposta. Quando todas as linhas na página atual são retornadas, a biblioteca de cliente busca automaticamente uma nova página de linhas em seu nome até que todo o conjunto de dados seja recuperado. Se você estiver usando REST em vez de gRPC, faça uma solicitação explícita para cada nova página.

A API Google Ads armazena em cache internamente todo o conjunto de dados. Por isso, as solicitações subsequentes são mais rápidas do que a inicial.

A consulta precisa permanecer exatamente a mesma em solicitações subsequentes para aproveitar os dados armazenados em cache. As solicitações não contribuem para sua cota, principalmente no nível de acesso básico. Se a consulta for diferente e enviada com o mesmo token de página, um erro será retornado.