API Tag Manager: referência de parâmetros

Neste documento, descrevemos a finalidade e a representação do objeto do parâmetro do Gerenciador de tags.

Introdução

Com a API Tag Manager, você pode criar e gerenciar recursos do Gerenciador de tags, como Tags, Rules e Macros.

A maioria dos tipos de Tag e Macro tem parâmetros adicionais específicos para cada recurso e pode ser definida ao criar/atualizar o recurso. A lista de parâmetros (pares key, type) para cada tipo de tag e macro aparece na Referência do dicionário de tags e na Referência do dicionário de macros.

Para configurar esses parâmetros específicos de tags ou macros, um objeto de parâmetro é definido como o valor da propriedade parameter do recurso de tag ou macro.

Objeto de parâmetro

O objeto a seguir representa um objeto de parâmetro:

[
  {
    "type": string,
    "key": string,
    "value": string,
    "list": [
      (Parameter)
    ],
    "map": [
      (Parameter)
    ]
  }
]

type

O tipo de parâmetro do Tag ou Macro que está sendo configurado.

A propriedade type determinará se uma propriedade value, list ou map precisa ser incluída no objeto de parâmetro, conforme descrito na tabela abaixo.

Por exemplo, se type for definido como boolean, será necessário incluir uma propriedade value no objeto de parâmetro e defini-la como true ou false.

Valor Propriedade adicional a ser incluída Definição da propriedade adicional
template value value é qualquer string, incluindo referências de macro, por exemplo, foo{{bar}}.
boolean value value é true ou false.
number value value é um número inteiro
list list list conterá zero ou mais parâmetros, independentemente ou não da ordem; o key de qualquer parâmetro no list será ignorado.
map map map conterá zero ou mais parâmetros, a ordem não importa. O key em qualquer parâmetro no map precisa ser exclusivo.

key

A chave do parâmetro do recurso Tag ou Macro que está sendo configurado.

O campo key é usado para identificar o parâmetro de tags ou macros específicas que estão sendo definidas. Todos os tipos de parâmetro precisam de uma propriedade key (exceto parâmetros list).

Exemplos

Um objeto de parâmetro para uma tag HTML personalizada, que tem um parâmetro do tipo template e dois do tipo boolean:

"parameter": [
  {
    "key": "html",
    "type": "template",
    "value": "<script>alert('hello world')</script>"
  },
  {
    "key": "supportDocumentWrite",
    "type": "boolean",
    "value": "false"
  }
]

Um objeto de parâmetro para um macro de tabela de consulta, que tem dois parâmetros do tipo template e um parâmetro do tipo list:

"parameter": [
  {
    "type": "template",
    "key": "input",
    "value": "{{event}}"
  },
  {
    "type": "list",
    "key": "map",
    "list": [
      {
        "type": "map",
        "map": [
          {
            "type": "template",
            "key": "key",
            "value": "EventEqualsThis"
          },
          {
            "type": "template",
            "key": "value",
            "value": "ThenSetToThis"
          }
        ]
      }
    ]
  },
  {
    "type": "template",
    "key": "defaultValue",
    "value": "MyDefaultValue"
  }
]

Um objeto de parâmetro para uma tag de chamada de função, que tem um parâmetro do tipo template e um do tipo map:

"parameter": [
  {
    "key": "functionName",
    "type": "template",
    "value": "fn"
  },
  {
    "key": "functionArgument",
    "map": [
      {
        "key": "argkey1",
        "type": "template",
        "value": "argval1"
      }
    ],
    "type": "map"
  }
]