Como percorrer 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, para a consulta a seguir:

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 sua 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. 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. Você só precisa iterar pelas linhas da resposta. Quando todas as linhas na página atual forem retornadas, a biblioteca de cliente vai buscar uma nova página de linhas automaticamente em seu nome até que todo o conjunto de dados seja recuperado. Se você usar o REST em vez do gRPC, precisará fazer uma solicitação explícita para cada nova página.

A API Google Ads armazena em cache o conjunto de dados inteiro internamente, para que as solicitações subsequentes sejam mais rápidas do que a inicial.

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