Przeglądanie wyników

Możesz przeglądać wyniki pobrane za pomocą funkcji GoogleAdsService.Search, zamiast pobierać cały zestaw wyników naraz. Omówienie raportowania za pomocą interfejsu Google Ads API znajdziesz w artykule Omówienie raportowania.

Search zwraca stałe strony zawierające maksymalnie 10 tys. wierszy. Ustawienie page_size w SearchGoogleAdsRequest zostało wycofane i zwraca błąd RequestError.PAGE_SIZE_NOT_SUPPORTED.

Przykładowe zapytanie i stronicowanie

Rozważmy to zapytanie:

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, pierwszy zestaw wyników będzie zawierać 10 tys. GoogleAdsRow obiektów wraz z next_page_token.

Aby pobrać kolejne 10 tys. wierszy, ponownie wyślij żądanie, ale zaktualizuj page_token w żądaniu na next_page_token w odpowiedzi:

{
  "query": "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",
  "pageToken": "CN3q9...example_token..."
}

Pamiętaj, że w odpowiedzi zawierającej ostatnią partię wierszy pole next_page_token nie jest wypełnione.

Nasze biblioteki klienta automatycznie obsługują stronicowanie. Wystarczy iterować po wierszach odpowiedzi. Gdy wszystkie wiersze na bieżącej stronie zostaną zwrócone, biblioteka klienta automatycznie pobierze nową stronę wierszy w Twoim imieniu, dopóki nie zostanie pobrany cały zbiór danych. Jeśli zamiast gRPC używasz REST, musisz wysłać osobne żądanie dla każdej nowej strony.

Buforowanie i wygasanie tokena strony

Interfejs Google Ads API wewnętrznie przechowuje w pamięci podręcznej zbiór danych, dzięki czemu kolejne żądania stron są szybsze niż pierwsze żądanie. Pamiętaj, że wartości next_page_token mają ograniczony czas życia (TTL) i wygasają, jeśli nie zostaną użyte w krótkim czasie (około 2 godzin). Jeśli token strony wygaśnie, interfejs API zwróci błąd i musisz rozpocząć nowe zapytanie.

Aby skorzystać z danych w pamięci podręcznej, kolejne żądania muszą być identyczne. Kolejne żądania podzielone na strony nie są liczone jako dodatkowe operacje w ramach dziennego limitu operacji dla dostępu eksploratora i dostępu podstawowego. Jeśli zapytanie jest inne i zostanie wysłane z tym samym tokenem strony, zwracany jest błąd.