Macros: update

इसके लिए, अनुमति लेना ज़रूरी है

GTM मैक्रो अपडेट करता है. इसे अभी आज़माएं या उदाहरण देखें.

अनुरोध

एचटीटीपी अनुरोध

PUT https://www.googleapis.com/tagmanager/v1/accounts/accountId/containers/containerId/macros/macroId

पैरामीटर

पैरामीटर का नाम वैल्यू ब्यौरा
पाथ पैरामीटर
accountId string GTM खाता आईडी.
containerId string GTM कंटेनर आईडी.
macroId string GTM मैक्रो आईडी.
वैकल्पिक क्वेरी पैरामीटर
fingerprint string अगर यह फ़िंगरप्रिंट उपलब्ध कराया जाता है, तो इसे स्टोरेज में मौजूद मैक्रो के फ़िंगरप्रिंट से मेल खाना चाहिए.

अनुमति देना

इस अनुरोध के लिए नीचे दिए गए दायरे के साथ अनुमति की ज़रूरत है (पुष्टि करने और अनुमति देने के बारे में ज़्यादा पढ़ें).

स्कोप
https://www.googleapis.com/auth/tagmanager.edit.containers

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में, इन प्रॉपर्टी के साथ मैक्रो संसाधन उपलब्ध कराएं:

प्रॉपर्टी का नाम वैल्यू ब्यौरा ज़रूरी जानकारी
ज़रूरी प्रॉपर्टी
parameter[].type string पैरामीटर का टाइप. मान्य मान हैं:
  • boolean: वैल्यू एक बूलियन को दिखाती है, जिसे 'true' या 'false' के रूप में दिखाया जाता है
  • integer: यह वैल्यू, बेस 10 में साइन किए गए 64-बिट पूर्णांक की वैल्यू दिखाती है
  • list: पैरामीटर की सूची दी जानी चाहिए
  • map: पैरामीटर का मैप तय किया जाना चाहिए
  • template: मान किसी भी टेक्स्ट को दिखाता है; इसमें मैक्रो संदर्भ शामिल हो सकते हैं (यहां तक कि मैक्रो संदर्भ भी जो बिना स्ट्रिंग वाले प्रकार दिखा सकते हैं)


स्वीकार की जाने वाली वैल्यू हैं:
  • "boolean"
  • "integer"
  • "list"
  • "map"
  • "template"
लिखने योग्य
type string GTM मैक्रो टाइप. लिखने योग्य
वैकल्पिक प्रॉपर्टी
disablingRuleId[] list सिर्फ़ मोबाइल कंटेनर के लिए: शर्त के साथ मैक्रो को बंद करने के लिए नियम आईडी की सूची; मैक्रो को तब चालू किया जाता है, जब चालू करने का कोई नियम सही हो और सभी बंद करने के नियम गलत हों. इस सेट को बिना क्रम के माना जाता है. लिखने योग्य
enablingRuleId[] list सिर्फ़ मोबाइल कंटेनर के लिए: कंडिशनल मैक्रो को चालू करने के लिए नियम आईडी की सूची; मैक्रो को चालू करने से पहले, उसे चालू करने का कोई नियम सही होने पर और बंद करने के सभी नियम गलत होने पर, मैक्रो चालू हो जाता है. इस सेट को बिना क्रम के माना जाता है. लिखने योग्य
name string मैक्रो डिसप्ले नेम. लिखने योग्य
notes string कंटेनर में इस मैक्रो को लागू करने के तरीके के बारे में उपयोगकर्ता की जानकारी. लिखने योग्य
parameter[] list मैक्रो के पैरामीटर. लिखने योग्य
parameter[].key string नाम वाली कुंजी, जो किसी पैरामीटर की खास तौर पर पहचान करती है. टॉप-लेवल के पैरामीटर और मैप वैल्यू के लिए ज़रूरी है. सूची की वैल्यू के लिए अनदेखा किया जाता है. लिखने योग्य
parameter[].list[] list इस सूची में पैरामीटर के पैरामीटर (कुंजी को अनदेखा कर दिया जाएगा). लिखने योग्य
parameter[].map[] list इस मैप पैरामीटर के पैरामीटर (कुंजियां होनी चाहिए; कुंजियां यूनीक होनी चाहिए). लिखने योग्य
parameter[].value string पैरामीटर का मान (इसमें " जैसे मैक्रो संदर्भ शामिल हो सकते हैं") जो दिए गए टाइप के हिसाब से सही हैं. लिखने योग्य
scheduleEndMs long मैक्रो शेड्यूल करने के लिए, खत्म होने का टाइमस्टैंप मिलीसेकंड में. लिखने योग्य
scheduleStartMs long मैक्रो शेड्यूल करने के लिए शुरुआती टाइमस्टैंप, मिलीसेकंड में. लिखने योग्य

जवाब

कामयाब होने पर, यह तरीका रिस्पॉन्स के मुख्य हिस्से में मैक्रो संसाधन दिखाता है.

उदाहरण

ध्यान दें: इस तरीके के लिए दिए गए कोड के उदाहरणों में इसके साथ काम करने वाली सभी प्रोग्रामिंग भाषाएं नहीं दिखाई गई हैं (इसके साथ काम करने वाली भाषाओं की सूची के लिए क्लाइंट लाइब्रेरी वाला पेज देखें).

Java

Java क्लाइंट लाइब्रेरी का इस्तेमाल करता है.

/*
 * Note: This code assumes you have an authorized tagmanager service object.
 */

/*
 * This request updates an existing macro for the authorized user.
 */

// Construct the macro object.
Macro macro = new Macro();
macro.setName("Updated URL Macro");
macro.setType("u");

// Construct the parameters.
Parameter arg0 = new Parameter();
arg0.setType("template");
arg0.setKey("component");
arg0.setValue("URL");

Parameter arg1 = new Parameter();
arg1.setType("template");
arg1.setKey("customUrlSource");
arg1.setValue("{{element}}");

// set the parameters on the macro.
macro.setParameter(Arrays.asList(arg0, arg1));

try {
  Macro response = tagmanager.accounts().containers().
      macros().update("123456", "54321", "18", macro).execute();

} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}

/*
 * The results of the update method are stored in the response object.
 * The following code shows how to access the updated name and fingerprint.
 */
System.out.println("Updated Name = " + response.getName());
System.out.println("Updated Fingerprint = " + response.getFingerprint());

Python

Python क्लाइंट लाइब्रेरी का इस्तेमाल करता हो.

# Note: This code assumes you have an authorized tagmanager service object.

# This request updates an existing macro for the authorized user.
try:
  response = tagmanager.accounts().containers().macros().update(
      accountId='123456',
      containerId='54321',
      macroId='19',
      body={
          'name': 'Sample URL Macro',
          'type': 'u',
          'parameter': [
              {
                  'type': 'template',
                  'key': 'component',
                  'value': 'URL'
              },
              {
                  'type': 'template',
                  'key': 'customUrlSource',
                  'value': '{{element}}'
              }
          ]
      }
  ).execute()

except TypeError, error:
  # Handle errors in constructing a query.
  print 'There was an error in constructing your query : %s' % error

except HttpError, error:
  # Handle API errors.
  print ('There was an API error : %s : %s' %
         (error.resp.status, error.resp.reason))

# The results of the update method are stored in the response object.
# The following code shows how to access the updated name and fingerprint.
print 'Updated Name = %s' % response.get('name')
print 'Updated Fingerprint = %s' % response.get('fingerprint')

इसे आज़माएं!

इस तरीके को लाइव डेटा पर कॉल करने और रिस्पॉन्स देखने के लिए, नीचे दिए गए एपीआई एक्सप्लोरर का इस्तेमाल करें.