เปลี่ยนวัตถุ

ตามที่กล่าวไว้ในคู่มือโครงสร้าง 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