Podział wyników na strony

GoogleAdsService.Search obsługuje stronicowanie, podając w żądaniu parametr page_size. Spowoduje to podział zbioru wyników zapytania na kilka odpowiedzi, z których każda zawiera do page_size obiektów. Jeśli nie określisz wartości page_size, zostanie ona automatycznie ustawiona na maksymalną liczbę 10 000 wierszy.

Na przykład dla tego zapytania:

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

Jeśli Twoje konto zawiera 50 tys. słów kluczowych, a page_size ma wartość 1,000, w pierwszej odpowiedzi zestaw wyników będzie zawierać 1000 obiektów GoogleAdsRow oraz next_page_token.

Aby pobrać następny tysiąc wierszy, wyślij żądanie jeszcze raz z tym samym rozmiarem strony, ale zmień page_token żądania na next_page_token odpowiedzi. Wartość page_size w kolejnych żądaniach może za każdym razem być inna. Pamiętaj, że pole next_page_token nie jest wypełniane w odpowiedzi zawierającej ostatnią grupę wierszy.

Nasze biblioteki klienta obsługują stronicowanie automatycznie. Wystarczy iterować tylko wiersze odpowiedzi. Po zwróceniu wszystkich wierszy na bieżącej stronie biblioteka klienta automatycznie pobierze w Twoim imieniu nową stronę wierszy, dopóki cały zbiór danych nie zostanie pobrany. Jeśli używasz REST zamiast gRPC, musisz jawnie wysyłać żądanie do każdej nowej strony.

Interfejs Google Ads API przechowuje wewnętrznie cały zbiór danych w pamięci podręcznej, dzięki czemu kolejne żądania są szybsze niż początkowe. W zależności od przypadku użycia dla parametru page_size możesz ustawić dowolną wartość z zakresu od 1 do 10 000. Aby uzyskać szybszą ogólną wydajność, użyj większej wartości page_size, która pozwala na przesyłanie mniejszej liczby danych w obie strony.

Aby korzystać z danych w pamięci podręcznej, zapytanie musi pozostać takie samo w kolejnych żądaniach. Nie wliczają się one do limitu, zwłaszcza w przypadku dostępu podstawowego. Jeśli zapytanie różni się i zostanie wysłane z tym samym tokenem strony, zostanie zwrócony błąd.