คุณสามารถเลื่อนดูผลลัพธ์ที่ดึงมาด้วย 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 คำ ชุดผลลัพธ์จะมีออบเจ็กต์ GoogleAdsRow 10,000 รายการในการตอบกลับครั้งแรก พร้อมกับ 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) ที่จำกัดและจะหมดอายุหากไม่ได้ใช้ภายในระยะเวลาสั้นๆ (ประมาณ 2 ชั่วโมง) หากโทเค็นหน้าเว็บหมดอายุ API จะแสดงข้อผิดพลาดและคุณต้องเริ่มการค้นหาใหม่
คำค้นหาของคุณต้องเหมือนกันในคำขอต่อๆ ไปเพื่อใช้ประโยชน์จากข้อมูลที่แคชไว้ คำขอที่มีการแบ่งหน้าในภายหลังจะไม่นับเป็นการดำเนินการเพิ่มเติมในโควต้าการดำเนินการรายวันสำหรับสิทธิ์เข้าถึงระดับ Explorer และสิทธิ์เข้าถึงระดับพื้นฐาน หากคำค้นหาแตกต่างกันและส่งมาพร้อมกับโทเค็นของหน้าเดียวกัน ระบบจะแสดงข้อผิดพลาด