म्यूट करें

ज़्यादातर संसाधनों में Mutate तरीके का इस्तेमाल करके बदलाव किए जाते हैं, बनाए जाते हैं, अपडेट किए जाते हैं या हटाए जाते हैं. किसी संसाधन के हिसाब से बने यूआरएल के लिए, Mutate तरीके को एचटीटीपी POST के तौर पर शुरू किया गया है. यह यूआरएल, रिसॉर्स के नाम के पैटर्न से मिलता-जुलता है, लेकिन इसके लिए पुराने रिसॉर्स आईडी का इस्तेमाल नहीं किया जाता. जिन संसाधनों में बदलाव किया जाना है उनके आईडी, JSON के अनुरोध वाले हिस्से में भेजे जाते हैं. इससे एक एपीआई कॉल भेजा जा सकता है, जिसमें अलग-अलग संसाधनों पर कई कार्रवाइयां शामिल होती हैं.

उदाहरण के लिए, कैंपेन के संसाधन का नाम नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करता है:

customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID

कैंपेन में बदलाव करने के लिए इस्तेमाल किया गया यूआरएल पाने के लिए, पीछे लगने वाला संसाधन आईडी छोड़ दें और :mutate जोड़ें:

https://googleads.googleapis.com/v16/customers/CUSTOMER_ID/campaigns:mutate

Mutate मैसेज में, operations कलेक्शन के साथ टॉप लेवल JSON ऑब्जेक्ट होता है, जिसमें कई operation ऑब्जेक्ट हो सकते हैं. हालांकि, हर ऑपरेशन इनमें से एक हो सकता है: create, update या remove. सिर्फ़ ये ही संभावित बदलाव हैं.

POST /v16/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
  "operations": [
    ...
  ]
}

ज़्यादातर सेवाएं एक एपीआई कॉल में हज़ारों कार्रवाइयों का समर्थन करती हैं. सिस्टम की सीमाएं, अनुरोध के साइज़ से जुड़ी सीमाओं की जानकारी देती हैं.

एक एपीआई अनुरोध के अंदर होने वाली कार्रवाइयां, डिफ़ॉल्ट रूप से कार्रवाइयों के एक सेट के तौर पर की जाती हैं. इसका मतलब है कि या तो वे सभी एक साथ काम करती हैं या कोई एक कार्रवाई पूरी नहीं होती है, तो पूरा बैच काम नहीं करता है. कुछ सेवाओं में, इस व्यवहार को बदलने के लिए partialFailure एट्रिब्यूट का इस्तेमाल किया जाता है. ऑपरेशन सेमैंटिक में बदलाव करने के बारे में ज़्यादा जानकारी के लिए, म्यूट करने के संसाधन देखें.

बनाएं

क्रिएट करने से नई इकाइयां बनती हैं. साथ ही, इसमें उस संसाधन का JSON फ़ॉर्मैट शामिल होना चाहिए जिसे आपको बनाना है.

POST /v16/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
  "operations": [
    {
    "create": {
        "name": "An example campaign",
        "status": "PAUSED",
        "campaignBudget": "customers/CUSTOMER_ID/campaignBudgets/CAMPAIGN_BUDGET_ID",
        "advertisingChannelType": "SEARCH",
        "networkSettings": {
          "targetGoogleSearch": true,
          "targetSearchNetwork": true,
          "targetContentNetwork": true,
          "targetPartnerSearchNetwork": false
        },
        "target_spend": {}
      }
    }
  ]
}

अपडेट करें

अपडेट की कार्रवाइयां, मौजूदा संसाधन के लिए ज़रूरी अपडेट करती हैं. आपको सिर्फ़ उन फ़ील्ड के बारे में बताना होगा जिनमें आपको बदलाव करना है.

आपको जिन फ़ील्ड को अपडेट करना है उनके बारे में बताने के लिए, updateMask एट्रिब्यूट को कॉमा लगाकर अलग की गई फ़ील्ड के नामों की सूची पर सेट करें. यह खास तौर पर तब फ़ायदेमंद होता है, जब आपके पास पहले से ही किसी ऑब्जेक्ट का JSON फ़ॉर्मैट में होना चाहिए (उदाहरण के लिए, जैसा कि पिछले एपीआई कॉल से दिखाया गया था), लेकिन आपको सिर्फ़ कुछ फ़ील्ड में बदलाव करना है. JSON ऑब्जेक्ट में काट-छांट करने के बजाय, updateMask में बदलाव करने के लिए फ़ील्ड के नामों को लिस्ट किया जा सकता है और पूरा JSON ऑब्जेक्ट भेजा जा सकता है.

नीचे दिए गए उदाहरण में, दिए गए resourceName वाले मौजूदा कैंपेन के name और status को बदला गया है.

POST /v16/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
  "operations": [
    {
      "updateMask": "name,status",
      "update": {
        "resourceName": "customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID",
        "name": "My renamed campaign",
        "status": "PAUSED",
      }
    }
  ]
}

हटाएं

किसी ऑब्जेक्ट को हटाने की कार्रवाइयां करके, ऑब्जेक्ट को पूरी तरह से मिटा दिया जाता है. इस वजह से, Google Ads का स्टेटस REMOVED पर सेट हो जाता है. सिर्फ़ resourceName को हटाना ज़रूरी है.

POST /v16/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
  "operations": [
    {
      "remove": "customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID"
    }
  ]
}