Tag Manager API – Parameterreferenz

In diesem Dokument werden Zweck und Darstellung des Tag Manager-Parameterobjekts beschrieben.

Einführung

Mit der Tag Manager API können Sie Tag Manager-Ressourcen wie Tags, Regeln und Makros erstellen und verwalten.

Die meisten Tag- und Makrotypen haben zusätzliche Parameter, die für das Tag oder Makro spezifisch sind und beim Erstellen/Aktualisieren der Ressource festgelegt werden können. Die Liste der Parameter (key- und type-Paare) für jeden Tag- und Makrotyp finden Sie unter Tag Dictionary-Referenz und Makro-Wörterbuch-Referenz.

Zum Konfigurieren dieser Tag- oder Makro-spezifischen Parameter wird ein Parameterobjekt definiert und als Wert für das Attribut parameter der Tag- oder Makro-Ressource festgelegt.

Parameterobjekt

Das folgende Objekt stellt ein Parameterobjekt dar:

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

type

Der Parametertyp des Tags oder Makros, das bzw. das konfiguriert wird.

Das Attribut type bestimmt, ob das Attribut value, list oder map im Parameterobjekt enthalten sein muss. Dies wird in der folgenden Tabelle beschrieben.

Wenn beispielsweise type auf boolean gesetzt ist, sollte das Parameterobjekt ein value-Attribut enthalten und auf true oder false gesetzt sein.

Wert Weitere hinzuzufügende Property Zusätzliche Property festlegen
template value value ist ein beliebiger String, einschließlich Makroverweisen, z.B. foo{{bar}}.
boolean value value ist entweder true oder false.
number value value ist eine Ganzzahl.
list list list enthält null oder mehr Parameter. Die Reihenfolge spielt dabei keine Rolle. Der key eines Parameters im list wird ignoriert.
map map map enthält null oder mehr Parameter, die Reihenfolge ist unerheblich. Der key-Wert eines Parameters im map muss eindeutig sein.

key

Der Parameterschlüssel des Tags oder Makros, das bzw. das konfiguriert wird.

Mit dem Feld key werden die Parameter bestimmter Tags oder Makros identifiziert, die festgelegt werden. Alle Parametertypen benötigen ein key-Attribut (außer list-Parameter).

Beispiele

Ein Parameterobjekt für ein benutzerdefiniertes HTML-Tag, das einen Parameter vom Typ template und zwei Parameter vom Typ boolean enthält:

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

Ein Parameterobjekt für ein Suchtabellen-Makro, das zwei Parameter vom Typ template und einen Parameter vom Typ list hat:

"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"
  }
]

Ein Parameterobjekt für ein Funktionsaufruf-Tag, das einen Parameter vom Typ template und einen Parameter vom Typ map hat:

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