Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
GoogleAdsService.Search obsługuje stronicowanie w przypadku stałych rozmiarów stron wynoszących 10 000 wierszy. Zbiór wyników zapytania jest dzielony na wiele odpowiedzi, z których każda zawiera 10 tys. obiektów.
Jeśli Twoje konto zawiera 50 tys. słów kluczowych, w pierwszej odpowiedzi zestaw wyników będzie zawierać 10 tys. obiektów GoogleAdsRow oraz 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.
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, że przejdziesz 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.
Interfejs Google Ads API wewnętrznie buforuje cały zbiór danych, więc kolejne żądania są szybsze niż pierwsze.
Aby korzystać z danych w pamięci podręcznej, zapytanie w kolejnych żądaniach musi pozostać dokładnie takie samo. Żądania nie będą wliczane do limitu, szczególnie w przypadku podstawowego poziomu dostępu. Jeśli zapytanie jest inne i zostanie wysłane z tym samym tokenem strony, zwracany jest błąd.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-09-05 UTC."],[[["\u003cp\u003e\u003ccode\u003eGoogleAdsService.Search\u003c/code\u003e returns data in fixed pages of 10,000 rows, requiring multiple requests to retrieve larger datasets.\u003c/p\u003e\n"],["\u003cp\u003eTo retrieve subsequent pages, use the \u003ccode\u003enext_page_token\u003c/code\u003e from the previous response in your next request's \u003ccode\u003epage_token\u003c/code\u003e field.\u003c/p\u003e\n"],["\u003cp\u003eClient libraries automate paging, but when using REST, you must manually request each page.\u003c/p\u003e\n"],["\u003cp\u003eThe Google Ads API caches the entire dataset, making subsequent requests with the same query faster and not counted towards quota.\u003c/p\u003e\n"],["\u003cp\u003eFor custom pagination scenarios, it's recommended to retrieve and store results locally, implementing your own pagination logic.\u003c/p\u003e\n"]]],[],null,["# Paging through results\n\n| **Note:** The `page_size` field was removed in v19 of the Google Ads API. See the [announcement](https://ads-developers.googleblog.com/2024/07/upcoming-changes-to-page-size-in-google.html). The `page_size` field has a default value of 10,000. Don't attempt to set the `page_size` value, as that will throw an error.\n\n[`GoogleAdsService.Search`](/google-ads/api/reference/rpc/v21/GoogleAdsService/Search) supports\npaging in fixed page sizes of 10,000 rows. The result set of the query is split\ninto multiple responses, each of which 10,000 objects.\n\nAs an example, consider the following query: \n\n SELECT\n ad_group.id,\n ad_group_criterion.type,\n ad_group_criterion.criterion_id,\n ad_group_criterion.keyword.text,\n ad_group_criterion.keyword.match_type\n FROM ad_group_criterion\n WHERE ad_group_criterion.type = KEYWORD\n\nIf your account contains 50,000 keywords, the result set will contain 10,000\n[`GoogleAdsRow`](/google-ads/api/reference/rpc/v21/GoogleAdsRow) objects in the first response,\nalong with a\n[`next_page_token`](/google-ads/api/reference/rpc/v21/SearchGoogleAdsResponse#next_page_token).\n\nTo retrieve the next 10,000 rows, send the request again, but update the\nrequest's `page_token` to the response's\n[`next_page_token`](/google-ads/api/reference/rpc/v21/SearchGoogleAdsResponse#next_page_token).\nNote that\n[`next_page_token`](/google-ads/api/reference/rpc/v21/SearchGoogleAdsResponse#next_page_token)\nis not populated in the response that contains the last batch of rows.\n\nOur client libraries handle paging automatically. You only have to iterate\nthrough the rows of the response. When all rows in the current page have\nbeen returned, the client library fetches a new page of rows automatically on\nyour behalf until the entire dataset is retrieved. If using REST instead\nof gRPC, you must explicitly make a request for each new page.\n\nThe Google Ads API internally caches the entire dataset, so subsequent requests are\nfaster than the initial one.\n\nYour query must remain exactly the same in subsequent requests to take advantage\nof the cached data. The requests won't contribute towards your quota,\nparticularly for [Basic Access level](/google-ads/api/docs/access-levels#basic_access). If\nthe query differs and is sent along with the same page token, an error is\nreturned.\n| **Key Point:** If you need manual paging, such as for custom web pagination, we recommend that you retrieve and store the results locally, such as in a database, and build your own pagination logic."]]