สร้าง อัปเดต หรือนําทรัพยากรออก วิธีนี้รองรับธุรกรรมแบบอะตอมที่มีทรัพยากรหลายประเภท เช่น คุณสามารถสร้างแคมเปญและงบประมาณแคมเปญแบบเป็นกลุ่ม หรือทําการเปลี่ยนแปลงแบบเป็นกลุ่มได้สูงสุดหลายพันรายการ
โดยพื้นฐานแล้ว วิธีการนี้เป็น Wrapper ของชุดเมธอดการกลายพันธุ์ ฟีเจอร์เดียวที่การเรียกใช้เมธอดเหล่านี้ผ่าน Executor ทำได้มากกว่าการเรียกใช้เมธอดเหล่านั้นโดยตรงมีดังนี้
- ธุรกรรมแบบอะตอม
- ชื่อทรัพยากรชั่วคราว (อธิบายไว้ด้านล่าง)
- เวลาในการตอบสนองลดลงเล็กน้อยเมื่อทำการเรียกใช้การกลายพันธุ์หลายรายการ
หมายเหตุ: ระบบจะรวมเฉพาะทรัพยากรที่รองรับธุรกรรมแบบอะตอมเท่านั้น ดังนั้นวิธีนี้จึงไม่สามารถแทนที่การเรียกแต่ละบริการได้ทั้งหมด
ประโยชน์ของธุรกรรมแบบอะตอม
ความเป็นอะตอมช่วยให้จัดการข้อผิดพลาดได้ง่ายขึ้นมาก หากคุณทำการเปลี่ยนแปลงหลายรายการและการเปลี่ยนแปลงหนึ่งไม่สำเร็จ บัญชีอาจอยู่ในสถานะที่ไม่สอดคล้องกัน เมื่อใช้ความเป็นอะตอม คุณอาจไปถึงสถานะที่เลือกโดยตรง หรือคําขออาจไม่สําเร็จและคุณลองอีกครั้งได้
ชื่อทรัพยากรชั่วคราว
ชื่อทรัพยากรชั่วคราวเป็นชื่อทรัพยากรประเภทพิเศษที่ใช้สร้างทรัพยากรและอ้างอิงทรัพยากรนั้นในคำขอเดียวกัน เช่น หากสร้างงบประมาณแคมเปญโดยให้ resourceName
เท่ากับ customers/123/campaignBudgets/-1
คุณจะใช้ชื่อทรัพยากรนั้นซ้ำในช่อง Campaign.budget
ในคําขอเดียวกันได้ วิธีนี้จะทำให้ระบบสร้างและลิงก์ทรัพยากร 2 รายการเข้าด้วยกัน
หากต้องการสร้างชื่อทรัพยากรชั่วคราว ให้ใส่ตัวเลขติดลบในส่วนชื่อที่เซิร์ฟเวอร์จะจัดสรรตามปกติ
หมายเหตุ:
- ทรัพยากรต้องสร้างด้วยชื่อชั่วคราวก่อนจึงจะใช้ชื่อซ้ำได้ ตัวอย่างเช่น ตัวอย่าง CampaignBudget+Campaign ก่อนหน้านี้จะดำเนินการไม่สำเร็จหากลำดับการดําเนินการของ mutator กลับกัน
- ระบบจะไม่จดจําชื่อชั่วคราวในคําขอต่างๆ
- ไม่มีการจำกัดจำนวนชื่อชั่วคราวในคำขอ
- ชื่อชั่วคราวแต่ละชื่อต้องใช้ตัวเลขติดลบที่ไม่ซ้ำกัน แม้ว่าประเภททรัพยากรจะแตกต่างกันก็ตาม
เวลาในการตอบสนอง
คุณควรจัดกลุ่มการกลายพันธุ์ตามประเภททรัพยากร ไม่เช่นนั้นคำขออาจหมดเวลาและดำเนินการไม่สำเร็จ เวลาในการตอบสนองจะเท่ากับชุดการเรียกใช้เมธอดการกลายพันธุ์แต่ละรายการโดยคร่าวๆ ซึ่งการเปลี่ยนแปลงแต่ละรายการในประเภททรัพยากรเป็นการเรียกใช้ใหม่ เช่น การเปลี่ยนแคมเปญ 10 รายการแล้วเปลี่ยนกลุ่มโฆษณา 10 กลุ่มจะเหมือนกับการเรียก 2 ครั้ง ส่วนการเปลี่ยนแคมเปญ 1 รายการ กลุ่มโฆษณา 1 กลุ่ม แคมเปญ 1 รายการ กลุ่มโฆษณา 1 กลุ่มจะเหมือนกับการเรียก 4 ครั้ง
รายการข้อผิดพลาดที่แสดง: AdCustomizerError AdError AdGroupAdError AdGroupCriterionError AdGroupError AssetError AuthenticationError AuthorizationError BiddingError CampaignBudgetError CampaignCriterionError CampaignError CampaignExperimentError CampaignSharedSetError CollectionSizeError ContextError ConversionActionError CriterionError CustomerFeedError DatabaseError DateError DateRangeError DistinctError ExtensionFeedItemError ExtensionSettingError FeedAttributeReferenceError FeedError FeedItemError FeedItemSetError FieldError FieldMaskError FunctionParsingError HeaderError ImageError InternalError KeywordPlanAdGroupKeywordError KeywordPlanCampaignError KeywordPlanError LabelError ListOperationError MediaUploadError MutateError NewResourceCreationError NullError
คำขอ HTTP
POST https://googleads.googleapis.com/v19/customers/{customerId}/googleAds:mutate
URL ใช้ไวยากรณ์การแปลง gRPC
พารามิเตอร์เส้นทาง
พารามิเตอร์ | |
---|---|
customerId |
ต้องระบุ รหัสของลูกค้าที่มีการเปลี่ยนแปลงทรัพยากร |
เนื้อหาของคำขอ
เนื้อความของคำขอมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
การแสดง JSON |
---|
{ "mutateOperations": [ { object ( |
ช่อง | |
---|---|
mutateOperations[] |
ต้องระบุ รายการการดำเนินการที่จะทำกับทรัพยากรแต่ละรายการ |
partialFailure |
หากเป็นจริง ระบบจะดำเนินการที่สำเร็จและการดำเนินการที่ไม่ถูกต้องจะแสดงข้อผิดพลาด หากเป็นเท็จ ระบบจะดําเนินการทั้งหมดในธุรกรรมเดียวเฉพาะในกรณีที่การดำเนินการทั้งหมดถูกต้องเท่านั้น ค่าเริ่มต้นคือ False |
validateOnly |
หากเป็นจริง ระบบจะตรวจสอบคำขอแต่ไม่ดำเนินการ ระบบจะแสดงเฉพาะข้อผิดพลาดเท่านั้น โดยจะไม่มีผลลัพธ์ |
responseContentType |
การตั้งค่าประเภทเนื้อหาของคำตอบ กำหนดว่าควรแสดงทรัพยากรที่เปลี่ยนแปลงได้หรือแค่ชื่อทรัพยากรหลังการดัดแปลง ระบบจะแสดงทรัพยากรที่เปลี่ยนแปลงได้ก็ต่อเมื่อทรัพยากรมีฟิลด์คำตอบที่เหมาะสมเท่านั้น เช่น MutateCampaignResult.campaign |
เนื้อหาการตอบกลับ
ข้อความตอบกลับสำหรับ GoogleAdsService.Mutate
หากทำสำเร็จ เนื้อหาการตอบกลับจะมีข้อมูลซึ่งมีโครงสร้างดังต่อไปนี้
การแสดง JSON |
---|
{ "partialFailureError": { object ( |
ช่อง | |
---|---|
partialFailureError |
ข้อผิดพลาดที่เกี่ยวข้องกับการดำเนินการที่ไม่สำเร็จในโหมดไม่สำเร็จบางส่วน ระบบจะแสดงผลเฉพาะเมื่อ partialFailure = true และข้อผิดพลาดทั้งหมดเกิดขึ้นภายในการดำเนินการ หากเกิดข้อผิดพลาดนอกการดำเนินการ (เช่น ข้อผิดพลาดในการให้สิทธิ์) เราจะแสดงข้อผิดพลาดระดับ RPC |
mutateOperationResponses[] |
คำตอบทั้งหมดสำหรับการเปลี่ยน |
ขอบเขตการให้สิทธิ์
ต้องใช้ขอบเขต OAuth ต่อไปนี้
https://www.googleapis.com/auth/adwords
ดูข้อมูลเพิ่มเติมได้ที่ OAuth 2.0 Overview