GoogleAdsService
เป็นบริการดึงข้อมูลออบเจ็กต์และการรายงานแบบรวมของ Google Ads API บริการมีวิธีดำเนินการต่อไปนี้
- ดึงข้อมูลแอตทริบิวต์เฉพาะของออบเจ็กต์
- เรียกข้อมูลเมตริกประสิทธิภาพของออบเจ็กต์ตามช่วงวันที่
- เรียงลำดับออบเจ็กต์ตามแอตทริบิวต์
- ใช้เงื่อนไขเพื่อระบุว่าออบเจ็กต์ใดที่คุณต้องการให้แสดงผลในคำตอบ
- จำกัดจำนวนของออบเจ็กต์ที่ส่งกลับ
GoogleAdsService
แสดงผลลัพธ์ได้ 2 วิธี ดังนี้
GoogleAdsService.SearchStream
แสดงผลแถวทั้งหมดในการตอบกลับสตรีมมิงครั้งเดียว ซึ่งมีประสิทธิภาพมากกว่าสำหรับชุดผลลัพธ์ขนาดใหญ่ (มากกว่า 10,000 แถว) วิธีนี้อาจเหมาะสมกว่าหากแอปพลิเคชันแบบกลุ่มของคุณต้องการดาวน์โหลดข้อมูลให้มากที่สุดเท่าที่จะทำได้GoogleAdsService.Search
แบ่งคำตอบขนาดใหญ่ออกเป็นหน้าผลลัพธ์ที่จัดการได้ วิธีนี้อาจเหมาะสมกว่าหากแอปพลิเคชันแบบอินเทอร์แอกทีฟแสดงหน้าผลการค้นหาพร้อมกัน
ดูข้อมูลเพิ่มเติมเกี่ยวกับการแบ่งหน้าเทียบกับสตรีมมิง
ส่งคำขอ
วิธีการค้นหาต้องใช้ SearchGoogleAdsRequest
ซึ่งประกอบด้วยแอตทริบิวต์ต่อไปนี้
customer_id
- ภาษาสำหรับการค้นหาของ Google Ads
query
ที่ระบุทรัพยากรที่จะค้นหา แอตทริบิวต์ กลุ่ม และเมตริกที่จะดึง และเงื่อนไขที่จะใช้เพื่อจำกัดว่าออบเจ็กต์ใดที่จะแสดง - (
GoogleAdsService.Search
เท่านั้น) Apage_size
เพื่อระบุจำนวนออบเจ็กต์ที่จะแสดงผลในคำตอบเดียวเมื่อใช้การแบ่งหน้า - (เฉพาะ
GoogleAdsService.Search
เท่านั้น)page_token
ที่ไม่บังคับเพื่อดึงผลลัพธ์ชุดถัดไปเมื่อใช้การแบ่งหน้า
ดูข้อมูลเพิ่มเติมเกี่ยวกับภาษาของคำค้นหาของ Google Ads ได้ในคู่มือภาษาของคำค้นหาของ Google Ads
ประมวลผลคำตอบ
GoogleAdsService
จะแสดงผลรายการออบเจ็กต์ GoogleAdsRow
GoogleAdsRow
แต่ละรายการจะแสดงออบเจ็กต์ที่แสดงผลจากการค้นหาและประกอบด้วยชุดแอตทริบิวต์ที่สร้างขึ้นตามช่องที่ขอในวรรค SELECT
แอตทริบิวต์ที่ไม่รวมอยู่ในวรรค SELECT
จะไม่ถูกเติมลงในออบเจ็กต์ GoogleAdsRow
ในการตอบกลับ
ตัวอย่างเช่น แม้ว่า ad_group_criterion
มีแอตทริบิวต์ status
แต่ช่อง status
ของแอตทริบิวต์ ad_group_criterion
ของแถวจะไม่มีการป้อนข้อมูลในคำตอบสำหรับการค้นหาที่อนุประโยค SELECT
ไม่รวม ad_group_criterion.status
ในทํานองเดียวกัน ระบบจะไม่ป้อนข้อมูลแอตทริบิวต์ campaign
ของแถว หากอนุประโยค SELECT
ไม่มีช่องจากทรัพยากร campaign
GoogleAdsRow
แต่ละรายการอาจมีแอตทริบิวต์และเมตริกที่แตกต่างกันจากแถวอื่นในชุดผลลัพธ์เดียวกัน จึงควรดูแถวดังกล่าวเป็นออบเจ็กต์แทนที่จะเป็นแถวคงที่ของตาราง
ประเภท Enum ที่ไม่รู้จัก
ทรัพยากรที่ส่งกลับประเภท UNKNOWN
ไม่ได้รับการสนับสนุนอย่างสมบูรณ์ใน API เวอร์ชันนั้น ทรัพยากรเหล่านี้สามารถสร้างขึ้นผ่านอินเทอร์เฟซอื่นๆ เช่น UI ของ Google Ads คุณจะเลือกเมตริกได้เมื่อทรัพยากรมีประเภท UNKNOWN
แต่เปลี่ยนแปลงทรัพยากรผ่าน API ไม่ได้ เช่น แคมเปญหรือโฆษณาใหม่ที่เปิดตัวใน UI แต่ไม่รองรับในเวอร์ชัน API ที่คุณกำลังค้นหา
ข้อควรพิจารณาที่ควรคำนึงถึงมีดังนี้
- ระบบจะรองรับทรัพยากรที่มีประเภท
UNKNOWN
ในภายหลังหรือจะใช้UNKNOWN
ต่อไปได้อย่างไม่จำกัด - วัตถุใหม่ประเภท
UNKNOWN
จะปรากฏได้ทุกเมื่อ ออบเจ็กต์เหล่านี้เข้ากันได้แบบย้อนหลังเนื่องจากมีค่า enum อยู่แล้ว แหล่งข้อมูลต่างๆ จะมาพร้อมกับการเปลี่ยนแปลงนี้เมื่อพร้อมใช้งาน เพื่อให้คุณเห็นบัญชีได้อย่างถูกต้อง ทรัพยากรUNKNOWN
อาจปรากฏเนื่องจากมีกิจกรรมใหม่ในบัญชีของคุณผ่านอินเทอร์เฟซอื่นๆ หรือเมื่อระบบไม่รองรับทรัพยากรอีกต่อไป - ทรัพยากร
UNKNOWN
รายการอาจมีเมตริกโดยละเอียดแนบมากับทรัพยากรที่ค้นหาได้ - โดยทั่วไปทรัพยากร
UNKNOWN
รายการจะแสดงใน UI ของ Google Ads - โดยทั่วไปทรัพยากร
UNKNOWN
รายการจะเปลี่ยนแปลงไม่ได้
การแบ่งกลุ่ม
การตอบกลับจะมี GoogleAdsRow
1 รายการสำหรับแต่ละชุดค่าผสมต่อไปนี้
- อินสแตนซ์ของทรัพยากรหลักที่ระบุในอนุประโยค
FROM
- ค่าของช่อง
segment
ที่เลือกแต่ละช่อง
ตัวอย่างเช่น การตอบกลับสำหรับการค้นหาที่เลือก FROM campaign
และมี segments.ad_network_type
และ segments.date
ในอนุประโยค SELECT
จะมี 1 แถวสำหรับชุดค่าผสมแต่ละชุดต่อไปนี้
campaign
segments.ad_network_type
segments.date
ผลลัพธ์จะแบ่งโดยนัยตามอินสแตนซ์ของทรัพยากรหลักแต่ละรายการ ไม่ใช่ตามค่าของแต่ละช่องที่เลือก ตัวอย่างเช่น
SELECT campaign.status, metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_14_DAYS
จะได้ผลลัพธ์ 1 แถวต่อแคมเปญ ไม่ใช่ 1 แถวต่อค่าที่แตกต่างกันของช่อง campaign.status