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

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

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

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

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

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

ส่งคำขอ

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

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

API เวอร์ชันนั้นไม่รองรับทรัพยากรที่แสดงผลด้วยประเภท UNKNOWN อย่างเต็มที่ แหล่งข้อมูลเหล่านี้อาจสร้างขึ้นผ่านอินเทอร์เฟซอื่นๆ เช่น 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