אפשר לדפדף בתוצאות שמתקבלות באמצעות GoogleAdsService.Search במקום להוריד את כל קבוצת התוצאות בבת אחת. בסקירה הכללית על דוחות מוסבר איך מפיקים דוחות באמצעות Google Ads API.
Search מחזיר דפים קבועים של עד 10,000 שורות. ההגדרה page_size ב-SearchGoogleAdsRequest הוצאה משימוש ומחזירה את השגיאה RequestError.PAGE_SIZE_NOT_SUPPORTED.
שאילתה לדוגמה ועימוד
לדוגמה, נבחן את השאילתה הבאה:
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 בתגובה:
{
"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..."
}
שימו לב שהשדה next_page_token לא מאוכלס בתגובה שמכילה את קבוצת השורות האחרונה.
ספריות הלקוח שלנו מטפלות בדפדוף באופן אוטומטי. צריך רק לעבור על השורות בתגובה. אחרי שכל השורות בדף הנוכחי מוחזרות, ספריית הלקוח מאחזרת באופן אוטומטי דף חדש של שורות בשבילכם, עד שכל מערך הנתונים מאוחזר. אם משתמשים ב-REST במקום ב-gRPC, צריך לשלוח בקשה מפורשת לכל דף חדש.
שמירה במטמון ותפוגת התוקף של טוקן הדף
Google Ads API שומר את קבוצת הנתונים במטמון באופן פנימי, כך שהבקשות הבאות לדפים מהירות יותר מהבקשה הראשונית. שימו לב שלערכי next_page_token יש אורך חיים (TTL) מוגבל, והם פגים אם לא משתמשים בהם תוך פרק זמן קצר (כשעתיים). אם פג התוקף של אסימון הדף, ה-API מחזיר שגיאה וצריך להתחיל שאילתה חדשה.
כדי לנצל את הנתונים שנשמרו במטמון, השאילתה צריכה להיות זהה בבקשות הבאות. בקשות דפים עוקבות לא נספרות כפעולות נוספות במכסת הפעולות היומית של גישת Explorer וגישה בסיסית. אם השאילתה שונה ונשלחת עם אותו טוקן דף, מוחזרת שגיאה.