ตามที่กล่าวไว้ในคู่มือโครงสร้าง API ทรัพยากรระดับบนสุดแต่ละรายการใน Google Ads API จะมีบริการเฉพาะประเภททรัพยากรที่เกี่ยวข้องซึ่งรองรับการแก้ไขอินสแตนซ์ของทรัพยากร
คู่มือนี้จะใช้ CampaignService เพื่อ
แสดงวิธีแก้ไขออบเจ็กต์ Campaign แต่แนวคิดเดียวกันนี้ใช้ได้กับบริการเฉพาะประเภททรัพยากรอื่นๆ ทั้งหมด
ออบเจ็กต์การเปลี่ยนแปลง
บริการเฉพาะประเภททรัพยากรแต่ละรายการจะมีเมธอด mutate ที่ยอมรับคำขอการเปลี่ยนแปลง คำขอนี้ประกอบด้วย
customerId- คอลเล็กชันของการดำเนินการ
- การตั้งค่าประเภทเนื้อหาการตอบกลับที่กำหนดว่าควรส่งคืนทรัพยากรที่เปลี่ยนแปลงได้หรือเพียงชื่อทรัพยากรหลังการเปลี่ยนแปลง
ตัวอย่างเช่น เมธอด MutateCampaigns ของ CampaignService ยอมรับ
MutateCampaignsRequest ซึ่งประกอบ
ด้วย:
customerId- คอลเล็กชันของออบเจ็กต์
CampaignOperation - ฟิลด์
response_content_typeที่ระบุประเภทการตอบกลับที่ต้องการ
การดำเนินการ
ออบเจ็กต์การดำเนินการ เช่น CampaignOperation ช่วยให้คุณระบุการดำเนินการที่ต้องการทำกับทรัพยากรเดียวได้โดยการตั้งค่าฟิลด์ operation
ฟิลด์นี้เป็นฟิลด์ oneof
ที่ประกอบด้วยแอตทริบิวต์ต่อไปนี้ซึ่งมีประเภทเป็นประเภททรัพยากร
create- สร้างอินสแตนซ์ใหม่ของทรัพยากร
updateอัปเดตทรัพยากรให้ตรงกับแอตทริบิวต์ของ
updateทรัพยากร เมื่อตั้งค่าฟิลด์นี้ คุณต้องตั้งค่า
update_maskของการดำเนินการด้วย ซึ่งจะบอก Google Ads API ว่าควรแก้ไขแอตทริบิวต์ใดระหว่างการดำเนินการอัปเดต ไลบรารีของไคลเอ็นต์แต่ละรายการจะมีเมธอดยูทิลิตี หรือเมธอดตัวช่วยที่จะสร้างupdate_maskให้คุณ ดังที่ แสดงในไลบรารีของไคลเอ็นต์removeนำทรัพยากรออก
เนื่องจากฟิลด์ operation เป็นฟิลด์ oneof คุณจึงใช้การดำเนินการเดียวเพื่อแก้ไขออบเจ็กต์หลายรายการไม่ได้ ตัวอย่างเช่น หากต้องการสร้างแคมเปญหนึ่งรายการและนำแคมเปญอื่นออก ให้เพิ่ม CampaignOperation 2 อินสแตนซ์ลงในคำขอ โดยอินสแตนซ์หนึ่งตั้งค่า create และอีกอินสแตนซ์หนึ่งตั้งค่า remove
การดำเนินการเป็นแบตช์
แม้ว่าการดำเนินการเดียวจะสร้าง อัปเดต หรือนำทรัพยากรเดียวออกได้เท่านั้น แต่คำขอการเปลี่ยนแปลงเดียวสามารถมีการดำเนินการหลายรายการได้ คุณควรรวมการดำเนินการไว้ในคำขอการเปลี่ยนแปลงเดียวแทนที่จะส่งคำขอการเปลี่ยนแปลงหลายรายการซึ่งแต่ละรายการมีการดำเนินการเดียว
ตัวอย่างเช่น หากต้องการสร้างแคมเปญ 10 รายการ คุณควรส่ง MutateCampaignsRequest รายการเดียว ที่มีออบเจ็กต์ CampaignOperation 10 รายการ
การตอบกลับการเปลี่ยนแปลง
สิ่งที่ส่งคืนในการตอบกลับจะขึ้นอยู่กับสิ่งที่ส่งใน
response_content_type
ของคำขอการเปลี่ยนแปลง ตัวอย่างเช่น หาก MUTABLE_RESOURCE ระบุไว้ การตอบกลับจะมีเพียงฟิลด์ที่เปลี่ยนแปลงได้ในแคมเปญ จากนั้นคุณจะทำการเปลี่ยนแปลงเพิ่มเติมในออบเจ็กต์ทรัพยากรนั้นได้โดยไม่ต้องสร้างใหม่
ข้อผิดพลาดในการเปลี่ยนแปลง
ระบบจะใช้การดำเนินการในคำขอการเปลี่ยนแปลงที่กำหนดกับบัญชี Google Ads ของคุณก็ต่อเมื่อ ทุก การดำเนินการในคำขอสำเร็จ ดูรายการข้อผิดพลาดที่พบบ่อยและวิธีแก้ไขได้ในคู่มือข้อผิดพลาดที่พบบ่อยcommon errors guide
ติดตามการเปลี่ยนแปลง
หากต้องการติดตามการเปลี่ยนแปลงที่ทำกับออบเจ็กต์ในบัญชี Google Ads หรือดึงข้อมูลสถานะปัจจุบันของออบเจ็กต์ คุณสามารถใช้ทรัพยากร change_status และ change_event ได้
change_statusแสดงข้อมูลสรุปของทรัพยากรที่มีการเปลี่ยนแปลงภายในระยะเวลาที่กำหนดchange_eventแสดงประวัติโดยละเอียดของการเปลี่ยนแปลง รวมถึงค่าเก่าและค่าใหม่ของฟิลด์ที่มีการเปลี่ยนแปลง
หากต้องการค้นหาทรัพยากรเหล่านี้ ให้ใช้เมธอด GoogleAdsService.SearchStream หรือ GoogleAdsService.Search ดูข้อมูลเพิ่มเติมเกี่ยวกับการสตรีมรายงาน
โดยใช้ GoogleAdsService