Пролистывание результатов

GoogleAdsService.Search поддерживает постраничный вывод на страницах фиксированного размера по 10 000 строк. Результат запроса разделяется на несколько ответов, каждый из которых содержит 10 000 объектов.

В качестве примера рассмотрим следующий запрос:

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

Если ваша учетная запись содержит 50 000 ключевых слов, набор результатов будет содержать 10 000 объектов GoogleAdsRow в первом ответе вместе с next_page_token .

Чтобы получить следующие 10 000 строк, отправьте запрос ещё раз, но обновите page_token запроса до next_page_token ответа. Обратите внимание, что next_page_token не заполняется в ответе, содержащем последний пакет строк.

Наши клиентские библиотеки автоматически осуществляют постраничный вывод. Вам нужно лишь перебрать строки ответа. После возврата всех строк на текущей странице клиентская библиотека автоматически извлекает новую страницу строк от вашего имени, пока не будет получен весь набор данных. При использовании REST вместо gRPC необходимо явно отправлять запрос на каждую новую страницу.

API Google Ads кэширует весь набор данных, поэтому последующие запросы выполняются быстрее первоначального.

Чтобы использовать кэшированные данные, ваш запрос должен оставаться неизменным в последующих запросах. Эти запросы не будут учитываться в вашей квоте, особенно для уровня «Базовый доступ» . Если запрос отличается и отправляется с тем же токеном страницы, возвращается ошибка.