Tag Manager API – Словари макросов

В этом документе описываются свойства, которые можно задавать для макросов Google Менеджера тегов.

Введение

У каждого макроса Google Менеджера тегов есть код type, идентифицирующий тип макроса. Кроме того, у большинства макросов есть параметры (пары keytype), которые можно задавать в объекте-параметре при создании или изменении макроса. Подробнее о настройке параметров в объекте-параметре можно узнать здесь.

Ниже приведено описание всех поддерживаемых макросов.

Основной файл cookie

Код типа

k

Параметры

Ключ Тип Примечания
name template Название файла cookie.

Пример

 {
   "name": "Sample 1st Party Cookie Macro",
   "type": "k",
   "parameter": [
    {
     "type": "template",
     "key": "name",
     "value": "myCookieName"
    }
   ]
 }

Переменная автоматического события

Код типа

aev

Параметры

Ключ Тип Примечания
varType template Допустимые значения: ELEMENT, CLASSES, ID, TARGET, TEXT, URL, HISTORY_NEW_URL_FRAGMENT, HISTORY_OLD_URL_FRAGMENT, HISTORY_NEW_STATE, HISTORY_OLD_STATE, HISTORY_CHANGE_SOURCE.
defaultValue template Необязательный параметр.

Пример

  {
   "name": "Sample AutoEvent Variable",
   "type": "aev",
   "parameter": [
    {
     "type": "template",
     "key": "varType",
     "value": "CLASSES"
    },
    {
     "type": "template",
     "key": "defaultValue",
     "value": "MyDefault"
    }
   ]
  }

Постоянная строка

Код типа

c

Параметры

Ключ Тип
value template

Пример

  {
   "name": "Sample Constant String",
   "type": "c",
   "parameter": [
    {
     "type": "template",
     "key": "value",
     "value": "MyString"
    }
   ]
  }

Номер версии контейнера

Код типа

ctv

Параметры

Пример

  {
   "name": "Sample Container Version Number",
   "type": "ctv"
  }

Пользовательское событие

Код типа

Параметры

Пример

  {
   "name": "Custom Event Name",
   "type": "e"
  }

Собственный код JavaScript

Код типа

jsm

Параметры

Ключ Тип
javascript template

Пример

  {
   "name": "Sample Custom Javascript",
   "type": "jsm",
   "parameter": [
    {
     "type": "template",
     "key": "javascript",
     "value": "function() {\n return \"Hello World\";\n}"
    }
   ]
  }

Переменная уровня данных

Код типа

v

Параметры

Ключ Тип Примечания
name template Название переменной уровня данных.
defaultValue template
dataLayerVersion integer 1 или 2.

Пример

  {
   "name": "Sample Data Layer Variable",
   "type": "v",
   "parameter": [
    {
     "type": "template",
     "key": "name",
     "value": "DL Variable Name"
    },
    {
     "type": "template",
     "key": "defaultValue",
     "value": "DEFAULT"
    },
    {
     "type": "integer",
     "key": "dataLayerVersion",
     "value": "2"
    }
   ]
  }

Режим отладки

Код типа

dbg

Параметры

Пример

  {
   "name": "Sample Debug Mode Macro",
   "type": "dbg"
  }

Элемент DOM

Код типа

d

Параметры

Ключ Тип Примечания
elementId template
attributeName template Необязательный параметр.

Пример

  {
   "name": "Sample DOM Element Macro",
   "type": "d",
   "parameter": [
    {
     "type": "template",
     "key": "elementId",
     "value": "MyElementId"
    },
    {
     "type": "template",
     "key": "attributeName",
     "value": "MyAttributeName"
    }
   ]
  }

Ссылающийся домен HTTP

Код типа

f

Параметры

Ключ Тип Примечания
component template Допустимые значения: URL, PROTOCOL, HOST, PORT, PATH, QUERY, FRAGMENT.
stripWww boolean Для компонента HOST.
queryKey tempalte Для компонента QUERY.

Пример

  {
   "name": "Sample HTTP Referrer Macro",
   "type": "f",
   "parameter": [
    {
     "type": "template",
     "key": "component",
     "value": "URL"
    }
   ]
  }

Переменная JavaScript

Код типа

j

Параметры

Ключ Тип Примечания
name template Название глобальной переменной.

Пример

  {
   "name": "Sample Javascript Variable",
   "type": "j",
   "parameter": [
    {
     "type": "template",
     "key": "name",
     "value": "MyGlobalVarName"
    }
   ]
  }

Таблица поиска

Код типа

smm

Параметры

Ключ Тип Примечания
input template Значение, используемое для поиска, должно ссылаться на макрос.
map list Список объектов map, каждый из которых представляет собой пару [key, value].
map[].key template
map[].value template
defaultValue template Необязательный параметр.

Пример

  {
   "name": "Sample Lookup Table Macro",
   "type": "smm",
   "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"
    }
   ]
  }

Случайное число

Код типа

r

Параметры

Пример

  {
   "name": "Sample Random Number Macro",
   "type": "r"
  }

URL

Код типа

u

Параметры

Ключ Тип Примечания
component template Допустимые значения: URL, PROTOCOL, HOST, PORT, PATH, QUERY, FRAGMENT.
customUrlSource template Необязательный параметр.
stripWww boolean Для компонента HOST.
queryKey tempalte Для компонента QUERY.

Пример

  {
   "name": "Sample URL Macro",
   "type": "u",
   "parameter": [
    {
     "type": "template",
     "key": "component",
     "value": "URL"
    },
    {
     "type": "template",
     "key": "customUrlSource",
     "value": "{{element}}"
    }
   ]
  }