एपीआई स्ट्रक्चर गाइड में बताया गया है कि Google Ads API में हर टॉप-लेवल रिसॉर्स के लिए, रिसॉर्स टाइप के हिसाब से एक सेवा होती है. यह सेवा, रिसॉर्स के इंस्टेंस में बदलाव करने की सुविधा देती है.
इस गाइड में, Campaign
ऑब्जेक्ट में बदलाव करने का तरीका दिखाने के लिए, CampaignService
का इस्तेमाल किया जाएगा. हालांकि, यही कॉन्सेप्ट संसाधन के टाइप के हिसाब से उपलब्ध अन्य सभी सेवाओं पर लागू होते हैं.
ऑब्जेक्ट बदलना
हर संसाधन टाइप के लिए खास तौर पर बनाई गई सेवा में, बदलाव करें तरीका होगा. यह बदलाव करने का अनुरोध स्वीकार करेगा. इस अनुरोध में ये शामिल हैं:
customerId
- कार्रवाइयों का कलेक्शन
- यह रिस्पॉन्स कॉन्टेंट-टाइप सेटिंग है. इससे यह तय होता है कि बदलाव के बाद, बदले जा सकने वाले संसाधन या सिर्फ़ संसाधन का नाम वापस भेजा जाना चाहिए.
उदाहरण के लिए, CampaignService
का MutateCampaigns
तरीका, MutateCampaignsRequest
को स्वीकार करता है. इसमें यह जानकारी शामिल होती है:
customerId
CampaignOperation
ऑब्जेक्ट का कलेक्शनresponse_content_type
फ़ील्ड, पसंदीदा जवाब के टाइप के बारे में बताता है.
कार्रवाइयां
ऑपरेशन ऑब्जेक्ट, जैसे कि CampaignOperation
की मदद से, किसी एक संसाधन पर की जाने वाली कार्रवाई तय की जा सकती है. इसके लिए, आपको operation
फ़ील्ड सेट करना होगा. यह फ़ील्ड, oneof फ़ील्ड है. इसमें ये एट्रिब्यूट शामिल हैं. इनका टाइप, संसाधन टाइप है:
create
- इससे संसाधन का नया इंस्टेंस बनता है.
update
- संसाधन को अपडेट करता है, ताकि वह
update
संसाधन के एट्रिब्यूट से मेल खा सके. इस फ़ील्ड को सेट करने पर, आपको ऑपरेशन काupdate_mask
भी सेट करना होगा. इससे Google Ads API को पता चलता है कि अपडेट ऑपरेशन के दौरान किन एट्रिब्यूट में बदलाव करना है. हर क्लाइंट लाइब्रेरी में एक यूटिलिटी या हेल्पर मेथड होता है. यह आपके लिएupdate_mask
जनरेट करेगा. इसके बारे में, हमारी क्लाइंट लाइब्रेरी में बताया गया है. remove
- इस तरीके से, संसाधन को हटाया जाता है.
operation
फ़ील्ड, oneof
फ़ील्ड है. इसलिए, एक साथ कई ऑब्जेक्ट में बदलाव करने के लिए, एक ही ऑपरेशन का इस्तेमाल नहीं किया जा सकता. उदाहरण के लिए, अगर आपको एक कैंपेन बनाना है और दूसरे कैंपेन को हटाना है, तो अपने अनुरोध में CampaignOperation
के दो इंस्टेंस जोड़ें: एक में create
सेट हो और दूसरे में remove
सेट हो.
बैच कार्रवाइयां
हालांकि, किसी एक ऑपरेशन में सिर्फ़ एक संसाधन बनाया, अपडेट किया या हटाया जा सकता है. हालांकि, एक ही बदलाव के अनुरोध में कई ऑपरेशन शामिल हो सकते हैं. आपको कई म्यूटेट अनुरोध भेजने के बजाय, अपने सभी ऑपरेशन को एक ही म्यूटेट अनुरोध में शामिल करना चाहिए. हर म्यूटेट अनुरोध में सिर्फ़ एक ऑपरेशन शामिल होता है.
उदाहरण के लिए, अगर आपको दस कैंपेन बनाने हैं, तो आपको एक सिंगल MutateCampaignsRequest
भेजना होगा, जिसमें दस CampaignOperation
ऑब्जेक्ट हों.
बदलाव से जुड़े जवाब
जवाब में क्या दिखाया जाएगा, यह इस बात पर निर्भर करता है कि म्यूटेट अनुरोध के response_content_type
में क्या भेजा गया था. उदाहरण के लिए, अगर MUTABLE_RESOURCE
को तय किया गया था, तो जवाब में सिर्फ़ कैंपेन के बदले जा सकने वाले फ़ील्ड शामिल होंगे. इसके बाद, उस संसाधन ऑब्जेक्ट में बदलाव किए जा सकते हैं. इसके लिए, आपको उसे फिर से बनाने की ज़रूरत नहीं होगी.
बदलाव से जुड़ी गड़बड़ियां
बदलाव करने के किसी अनुरोध में किए गए ऑपरेशन, आपके Google Ads खाते पर सिर्फ़ तब लागू होंगे, जब अनुरोध में शामिल हर ऑपरेशन पूरा हो जाएगा. सामान्य गड़बड़ियों की सूची और उन्हें ठीक करने का तरीका जानने के लिए, सामान्य गड़बड़ियों की गाइड देखें.