GoogleAdsService.Search
é compatível
com paginação especificando
page_size
na solicitação.
Isso divide o conjunto de resultados da consulta em várias respostas, cada uma
contendo até o número de objetos
page_size
. Se
page_size
não for especificado,
ele será definido automaticamente para o máximo de 10.000 linhas.
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 e
page_size
estiver definido como 1,000
,
o conjunto de resultados vai incluir 1.000 objetos GoogleAdsRow
na primeira resposta, além de um
next_page_token
.
Para recuperar as próximas mil linhas, envie a solicitação novamente com o mesmo tamanho de página, mas atualize o page_token
da solicitação para o next_page_token
da resposta. O
valor de page_size
nas
solicitações seguintes pode ser diferente a cada vez. Observe que next_page_token
não está preenchido na resposta que contém o último lote de linhas.
Nossas bibliotecas de cliente processam a paginação automaticamente. Você só precisa iterar nas linhas da resposta. Quando todas as linhas da página atual forem retornadas, a biblioteca de cliente buscará uma nova página de linhas automaticamente em seu nome até que todo o conjunto de dados seja recuperado. Se estiver usando REST em vez de gRPC, faça uma solicitação explicitamente para cada nova página.
A Google Ads API armazena internamente todo o conjunto de dados em cache. Assim, as solicitações subsequentes são mais rápidas que a inicial. Dependendo do caso de uso, é possível definir
page_size
como qualquer valor
entre 1 e 10.000. Em geral, para um desempenho geral mais rápido, use um
page_size
maior para menos viagens
de ida e volta.
Sua consulta precisa permanecer exatamente a mesma nas próximas solicitações para aproveitar os dados armazenados em cache. As solicitações não contribuem para a cota, principalmente para acesso básico. Se a consulta for diferente e for enviada com o mesmo token de página, será retornado um erro.