เปลี่ยนแปลงทรัพยากร

Google Ads API มีหลายวิธีในการเปลี่ยนแปลงทรัพยากรตามกรณีการใช้งานของคุณ

  • บริการทรัพยากรเปลี่ยนแปลง: ทรัพยากรที่เปลี่ยนแปลงได้แต่ละรายการมีบริการเฉพาะที่ดำเนินการสำหรับทรัพยากรประเภทนั้นๆ เช่น Campaign resource ใช้ปลายทาง CampaignService.MutateCampaigns สำหรับการสร้าง อัปเดต หรือนำแคมเปญออก
  • การเปลี่ยนแปลงแบบกลุ่ม: GoogleAdsService.Mutate ปลายทางจะรวมลำดับการดำเนินการ mutate ในทรัพยากรหลายประเภท (และใน v23 ขึ้นไป การดำเนินการที่รองรับ เช่น แคมเปญการจองหรือการเสนอราคา) ไว้ในคำขอที่โหลดแบบซิงโครนัสรายการเดียว
  • งานแบบกลุ่มแบบอะซิงโครนัส: สำหรับการเปลี่ยนแปลงขนาดใหญ่หรืองานที่ใช้เวลานาน BatchJobService จะดำเนินการแบบอะซิงโครนัส โดยไม่เสี่ยงต่อการหมดเวลาของคำขอที่โหลดแบบซิงโครนัส GoogleAdsService.Mutate BatchJobService จะดำเนินการภายใต้ความหมายของการทำงานบางส่วนล้มเหลวเสมอและไม่รองรับโหมด validate_only หรือการดำเนินการของแอ็กชัน (book_campaigns_operation, quote_campaigns_operation) เนื่องจากความล้มเหลวบางส่วนจะเปิดใช้งานอยู่เสมอ BatchJobService จึงปฏิเสธการดำเนินการของทรัพยากรที่บริการพื้นฐานไม่รองรับความล้มเหลวบางส่วน (เช่น CustomerOperation, CampaignConversionGoalOperation, ConversionGoalCampaignConfigOperation, CustomConversionGoalOperation, และ CustomerConversionGoalOperation) ด้วย MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE

สิทธิประโยชน์ของการเปลี่ยนแปลงหลายรายการพร้อมกัน

การใช้ GoogleAdsService.Mutate มีสิทธิประโยชน์ดังนี้ (ดูคำแนะนำในการติดตั้งใช้งานที่แนวทางปฏิบัติแนะนำในการเปลี่ยนแปลง)

  • การดำเนินการแบบกลุ่มในบริการทรัพยากรต่างๆ: ในขณะที่การเรียกใช้บริการทรัพยากรแต่ละรายการยอมรับเฉพาะการดำเนินการสำหรับทรัพยากรประเภทเดียว GoogleAdsService.Mutate จะช่วยให้คุณแก้ไขทรัพยากรหลายประเภทในการเรียกใช้ครั้งเดียวได้
  • ชื่อทรัพยากรชั่วคราว: คุณสามารถกำหนดรหัสจำนวนเต็มลบ (เช่น customers/CUSTOMER_ID/campaigns/-1) ให้กับเอนทิตีหลักที่สร้างขึ้นใหม่และ อ้างอิงรหัสชั่วคราวเหล่านั้นในการดำเนินการย่อยภายในคำขอเดียวกัน

ความสามารถเหล่านี้ช่วยให้คุณใช้ GoogleAdsService.Mutate เพื่อ สร้างลําดับชั้นของแคมเปญทั้งหมดแบบอะตอม เพื่อให้การดําเนินการทั้งหมดสําเร็จหรือ ล้มเหลวพร้อมกัน หรือตั้งค่า partial_failure เป็น true เพื่อทําการดําเนินการที่ถูกต้อง แยกกัน