Tag Manager API - 參數參考資料

本文件說明代碼管理工具參數物件的用途和表示法。

簡介

您可以運用 Tag Manager API 建立及管理代碼管理工具資源,例如標記規則巨集

大多數的標記和巨集類型都有標記或巨集專用的其他參數,您可以在建立/更新資源時設定。每個標記和巨集類型的參數清單 (keytype 組合) 列於標記字典參考資料巨集字典參考資料中。

如要設定這些標記或巨集專用的參數,系統會定義參數物件,並將其設為標記 巨集資源的 parameter 屬性值。

參數物件

下列物件代表參數物件:

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

type

所設定的代碼或巨集的參數類型。

type 屬性會判斷是否需要在參數物件中加入 valuelistmap 屬性,如下表所示。

舉例來說,如果 type 設為 boolean,則參數物件中應包含 value 屬性,並設為 truefalse

其他要納入的屬性 如何設定其他資源
template value value 是任何字串,包括巨集參照,例如 foo{{bar}}
boolean value valuetruefalse
number value value 為整數。
list list list 會包含零或多個參數,順序可能並不重要;系統會忽略 list 中任何參數的 key
map map map 會包含零或多個參數,順序無關緊要;map 中任何參數的 key 都不得重複。

key

所設定的代碼或巨集的參數鍵。

key 欄位可用來識別要設定的特定標記或巨集的參數。所有參數類型都需要 key 屬性 (list 參數除外)。

範例

自訂 HTML 代碼的參數物件,其中包含一個 template 類型參數和兩個 boolean 類型參數:

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

對照表巨集的參數物件,其中包含兩個 template 類型參數和一個 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"
  }
]

函式呼叫標記的參數物件,其中包含一個 template 類型參數和一個 map 類型參數:

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