การเปลี่ยนและตรวจสอบออบเจ็กต์

ตามที่กล่าวไว้ในคู่มือโครงสร้าง API ทรัพยากรระดับบนสุดแต่ละรายการใน Google Ads API มีบริการเฉพาะประเภททรัพยากรที่เกี่ยวข้อง ซึ่งจะรองรับสิ่งต่อไปนี้

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

คู่มือนี้จะใช้ CampaignService เพื่อสาธิตการแก้ไขและตรวจสอบออบเจ็กต์ Campaign แต่แนวคิดเดียวกันนี้จะใช้กับบริการอื่นๆ ทั้งหมดที่เจาะจงประเภททรัพยากร

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

บริการเฉพาะประเภททรัพยากรแต่ละรายการจะมีเมธอด mutate ที่ยอมรับคำขอเปลี่ยนแปลง โดยคำขอนี้ประกอบไปด้วย

  • customerId
  • คอลเล็กชันการดำเนินงาน
  • การตั้งค่าประเภทเนื้อหาการตอบกลับที่กำหนดว่าควรแสดงผลทรัพยากรที่เปลี่ยนแปลงได้หรือเฉพาะชื่อทรัพยากรหลังการเปลี่ยนแปลง

ตัวอย่างเช่น เมธอด MutateCampaigns ของ CampaignService จะยอมรับ MutateCampaignsRequest ที่ประกอบด้วย

  • customerId
  • คอลเล็กชันของออบเจ็กต์ CampaignOperation รายการ
  • ช่อง response_content_type ที่ระบุประเภทคำตอบที่ต้องการ

การทำงาน

ออบเจ็กต์การดำเนินการ เช่น CampaignOperation ช่วยให้คุณระบุการดำเนินการที่ต้องการดำเนินการกับทรัพยากรรายการเดียวได้โดยตั้งค่าช่อง operation ของทรัพยากรนั้น ช่องนี้เป็นช่องใดช่องหนึ่งที่ประกอบด้วยแอตทริบิวต์ต่อไปนี้ซึ่งมีประเภทเป็นประเภททรัพยากร

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 ก็ต่อเมื่อการดำเนินการทั้งหมดในคำขอประสบความสำเร็จเท่านั้น อ่านคู่มือข้อผิดพลาดที่พบบ่อยเพื่อดูรายการข้อผิดพลาดที่พบบ่อยและวิธีแก้ไข

การตรวจสอบออบเจ็กต์ด้วย get (เลิกใช้งาน)

นอกจากการเปลี่ยนแปลงออบเจ็กต์แล้ว บริการเฉพาะทรัพยากรแต่ละประเภทยังมีเมธอด get ในการเรียกข้อมูลแอตทริบิวต์ทั้งหมดของทรัพยากร รายการเดียว วิธีนี้ยอมรับคำขอรับที่มีแอตทริบิวต์เพียง resource_name รายการ

เมธอด get เป็นความสะดวกที่ Google Ads API มีให้เพื่อช่วยให้ดึงข้อมูลแอตทริบิวต์ทั้งหมดของออบเจ็กต์เดียวได้อย่างง่ายดาย แม้ว่านี่จะเป็นเครื่องมือที่ยอดเยี่ยมสำหรับการเรียนรู้ API หรือตรวจสอบออบเจ็กต์แต่ละรายการเพื่อวัตถุประสงค์ในการแก้ไขข้อบกพร่องหรือการศึกษา แต่แอปของคุณไม่ควรใช้เมธอด get เพื่อเรียกออบเจ็กต์เพื่อประมวลผลหรือรายงาน ให้ใช้ GoogleAdsService แทน เนื่องจากจะช่วยให้คุณดึงแอตทริบิวต์ที่เจาะจงของออบเจ็กต์ รองรับการดึงข้อมูลเมตริกประสิทธิภาพ และสตรีมผ่านชุดผลลัพธ์ขนาดใหญ่ได้ หากแอปส่งคำขอรับเป็นจำนวนมาก คุณอาจพบกับขีดจำกัดอัตราคำขอ