Macros: update

Richiede l'autorizzazione

Consente di aggiornare una macro GTM. Prova subito o guarda un esempio.

Richiesta

Richiesta HTTP

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

Parametri

Nome del parametro Valore Descrizione
Parametri del percorso
accountId string L'ID account GTM.
containerId string L'ID contenitore GTM.
macroId string L'ID macro GTM.
Parametri di query facoltativi
fingerprint string Se fornita, questa impronta deve corrispondere a quella della macro nello spazio di archiviazione.

Autorizzazione

Questa richiesta richiede l'autorizzazione con il seguente ambito (scopri di più su autenticazione e autorizzazione).

Ambito
https://www.googleapis.com/auth/tagmanager.edit.containers

Corpo della richiesta

Nel corpo della richiesta, fornisci una risorsa Macro con le seguenti proprietà:

Nome proprietà Valore Descrizione Note
Proprietà obbligatorie
parameter[].type string Il tipo di parametro. I valori validi sono:
  • boolean: il valore rappresenta un valore booleano, rappresentato come "true" o "false"
  • integer: il valore rappresenta un valore intero con segno a 64 bit, in base 10
  • list: è necessario specificare un elenco di parametri
  • map: è necessario specificare una mappa dei parametri
  • template: il valore rappresenta qualsiasi testo; possono essere inclusi riferimenti alle macro (anche riferimenti alle macro che potrebbero restituire tipi diversi da una stringa)


I valori accettati sono:
  • "boolean"
  • "integer"
  • "list"
  • "map"
  • "template"
scrivibile
type string Tipo di macro GTM. scrivibile
Proprietà facoltative
disablingRuleId[] list Solo per i contenitori per dispositivi mobili: un elenco di ID regola per la disattivazione delle macro condizionali; la macro viene attivata se una delle regole di attivazione è vera e tutte le regole di disattivazione sono false. Sono considerati come un insieme non ordinato. scrivibile
enablingRuleId[] list Solo per i contenitori per dispositivi mobili: un elenco di ID regola per l'attivazione di macro condizionali; la macro viene attivata se una delle regole di attivazione è vera e tutte le regole di disattivazione sono false. Sono considerati come un insieme non ordinato. scrivibile
name string Nome visualizzato della macro. scrivibile
notes string Note dell'utente su come applicare questa macro nel contenitore. scrivibile
parameter[] list I parametri della macro. scrivibile
parameter[].key string La chiave denominata che identifica in modo univoco un parametro. Obbligatorio per i parametri di primo livello e per i valori della mappa. Ignorato per i valori dell'elenco. scrivibile
parameter[].list[] list Parametri di questo parametro elenco (le chiavi verranno ignorate). scrivibile
parameter[].map[] list I parametri di questo parametro mappa (devono essere dotati di chiavi; le chiavi devono essere univoche). scrivibile
parameter[].value string Il valore di un parametro (può contenere riferimenti a macro come "") a seconda del tipo specificato. scrivibile
scheduleEndMs long Il timestamp di fine in millisecondi per pianificare una macro. scrivibile
scheduleStartMs long Il timestamp di inizio in millisecondi per pianificare una macro. scrivibile

Risposta

In caso di esito positivo, questo metodo restituisce una risorsa Macro nel corpo della risposta.

Esempi

Nota: gli esempi di codice disponibili per questo metodo non rappresentano tutti i linguaggi di programmazione supportati (consulta la pagina relativa alle librerie client per un elenco dei linguaggi supportati).

Java

Utilizza la libreria client 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

Utilizza la libreria client 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')

Prova.

Utilizza Explorer API di seguito per chiamare questo metodo sui dati in tempo reale e visualizzare la risposta.