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 ของแถวในคำตอบสำหรับคำค้นหาที่ไม่มีad_group_criterion.status ในอนุประโยค SELECT ในทำนองเดียวกัน ระบบจะไม่ป้อนข้อมูลแอตทริบิวต์ 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 แถวสำหรับชุดค่าผสมแต่ละชุดต่อไปนี้
campaignsegments.ad_network_typesegments.date
ระบบจะแบ่งกลุ่มผลลัพธ์โดยปริยายตามอินสแตนซ์แต่ละรายการของทรัพยากรหลัก ไม่ใช่ตามค่าของฟิลด์แต่ละรายการที่เลือก ตัวอย่างเช่น
SELECT campaign.status, metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_14_DAYS
ส่งผลให้มี 1 แถวต่อแคมเปญ ไม่ใช่ 1 แถวต่อค่าที่แตกต่างกันของฟิลด์
campaign.status