กําลังเรียกออบเจ็กต์

GoogleAdsService เป็นบริการดึงข้อมูลออบเจ็กต์และการรายงานแบบรวมของ Google Ads API บริการมีวิธีดำเนินการต่อไปนี้

  • ดึงข้อมูลแอตทริบิวต์เฉพาะของออบเจ็กต์
  • เรียกข้อมูลเมตริกประสิทธิภาพของออบเจ็กต์ตามช่วงวันที่
  • เรียงลำดับออบเจ็กต์ตามแอตทริบิวต์
  • ใช้เงื่อนไขเพื่อระบุว่าออบเจ็กต์ใดที่คุณต้องการให้แสดงผลในคำตอบ
  • จำกัดจำนวนของออบเจ็กต์ที่ส่งกลับ

GoogleAdsService แสดงผลลัพธ์ได้ 2 วิธี ดังนี้

  • GoogleAdsService.SearchStream แสดงผลแถวทั้งหมดในการตอบกลับสตรีมมิงครั้งเดียว ซึ่งมีประสิทธิภาพมากกว่าสำหรับชุดผลลัพธ์ขนาดใหญ่ (มากกว่า 10,000 แถว) วิธีนี้อาจเหมาะสมกว่าหากแอปพลิเคชันแบบกลุ่มของคุณต้องการดาวน์โหลดข้อมูลให้มากที่สุดเท่าที่จะทำได้
  • GoogleAdsService.Search แบ่งคำตอบขนาดใหญ่ออกเป็นหน้าผลลัพธ์ที่จัดการได้ วิธีนี้อาจเหมาะสมกว่าหากแอปพลิเคชันแบบอินเทอร์แอกทีฟแสดงหน้าผลการค้นหาพร้อมกัน

ดูข้อมูลเพิ่มเติมเกี่ยวกับการแบ่งหน้าเทียบกับสตรีมมิง

ส่งคำขอ

วิธีการค้นหาต้องใช้ SearchGoogleAdsRequest ซึ่งประกอบด้วยแอตทริบิวต์ต่อไปนี้

  • customer_id
  • ภาษาสำหรับการค้นหาของ Google Ads query ที่ระบุทรัพยากรที่จะค้นหา แอตทริบิวต์ กลุ่ม และเมตริกที่จะดึง และเงื่อนไขที่จะใช้เพื่อจำกัดว่าออบเจ็กต์ใดที่จะแสดง
  • (GoogleAdsService.Search เท่านั้น) A page_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