# Tag Manager API . accounts . containers . variables

## Instance Methods

Creates a GTM Variable.

Deletes a GTM Variable.

Gets a GTM Variable.

Lists all GTM Variables of a Container.

Updates a GTM Variable.

### Method Details

`create(accountId, containerId, body)`

    Creates a GTM Variable.

    Args:
      accountId: string, The GTM Account ID. (required)
      containerId: string, The GTM Container ID. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Represents a Google Tag Manager Variable.
        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
        "name": "A String", # Variable display name.
        "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
        "type": "A String", # GTM Variable Type.
        "notes": "A String", # User notes on how to apply this variable in the container.
        "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
          "A String",
        ],
        "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
        "accountId": "A String", # GTM Account ID.
        "parameter": [ # The variable's parameters.
          { # Represents a Google Tag Manager Parameter.
            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
              # Object with schema name: Parameter
            ],
            "list": [ # This list parameter's parameters (keys will be ignored).
              # Object with schema name: Parameter
            ],
            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
            "type": "A String", # The parameter type. Valid values are:
                # - boolean: The value represents a boolean, represented as 'true' or 'false'
                # - integer: The value represents a 64-bit signed integer value, in base 10
                # - list: A list of parameters should be specified
                # - map: A map of parameters should be specified
                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
          },
        ],
        "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
          "A String",
        ],
        "containerId": "A String", # GTM Container ID.
      }

    Returns:
      An object of the form:

        { # Represents a Google Tag Manager Variable.
          "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
          "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
          "name": "A String", # Variable display name.
          "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
          "type": "A String", # GTM Variable Type.
          "notes": "A String", # User notes on how to apply this variable in the container.
          "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
            "A String",
          ],
          "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
          "accountId": "A String", # GTM Account ID.
          "parameter": [ # The variable's parameters.
            { # Represents a Google Tag Manager Parameter.
              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
                # Object with schema name: Parameter
              ],
              "list": [ # This list parameter's parameters (keys will be ignored).
                # Object with schema name: Parameter
              ],
              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
              "type": "A String", # The parameter type. Valid values are:
                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
                  # - integer: The value represents a 64-bit signed integer value, in base 10
                  # - list: A list of parameters should be specified
                  # - map: A map of parameters should be specified
                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
            },
          ],
          "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
            "A String",
          ],
          "containerId": "A String", # GTM Container ID.
        }

`delete(accountId, containerId, variableId)`

    Deletes a GTM Variable.

    Args:
      accountId: string, The GTM Account ID. (required)
      containerId: string, The GTM Container ID. (required)
      variableId: string, The GTM Variable ID. (required)

`get(accountId, containerId, variableId)`

    Gets a GTM Variable.

    Args:
      accountId: string, The GTM Account ID. (required)
      containerId: string, The GTM Container ID. (required)
      variableId: string, The GTM Variable ID. (required)

    Returns:
      An object of the form:

        { # Represents a Google Tag Manager Variable.
          "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
          "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
          "name": "A String", # Variable display name.
          "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
          "type": "A String", # GTM Variable Type.
          "notes": "A String", # User notes on how to apply this variable in the container.
          "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
            "A String",
          ],
          "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
          "accountId": "A String", # GTM Account ID.
          "parameter": [ # The variable's parameters.
            { # Represents a Google Tag Manager Parameter.
              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
                # Object with schema name: Parameter
              ],
              "list": [ # This list parameter's parameters (keys will be ignored).
                # Object with schema name: Parameter
              ],
              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
              "type": "A String", # The parameter type. Valid values are:
                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
                  # - integer: The value represents a 64-bit signed integer value, in base 10
                  # - list: A list of parameters should be specified
                  # - map: A map of parameters should be specified
                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
            },
          ],
          "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
            "A String",
          ],
          "containerId": "A String", # GTM Container ID.
        }

`list(accountId, containerId)`

    Lists all GTM Variables of a Container.

    Args:
      accountId: string, The GTM Account ID. (required)
      containerId: string, The GTM Container ID. (required)

    Returns:
      An object of the form:

        { # List Variables Response.
        "variables": [ # All GTM Variables of a GTM Container.
          { # Represents a Google Tag Manager Variable.
              "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
              "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
              "name": "A String", # Variable display name.
              "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
              "type": "A String", # GTM Variable Type.
              "notes": "A String", # User notes on how to apply this variable in the container.
              "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
                "A String",
              ],
              "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
              "accountId": "A String", # GTM Account ID.
              "parameter": [ # The variable's parameters.
                { # Represents a Google Tag Manager Parameter.
                  "map": [ # This map parameter's parameters (must have keys; keys must be unique).
                    # Object with schema name: Parameter
                  ],
                  "list": [ # This list parameter's parameters (keys will be ignored).
                    # Object with schema name: Parameter
                  ],
                  "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
                  "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
                  "type": "A String", # The parameter type. Valid values are:
                      # - boolean: The value represents a boolean, represented as 'true' or 'false'
                      # - integer: The value represents a 64-bit signed integer value, in base 10
                      # - list: A list of parameters should be specified
                      # - map: A map of parameters should be specified
                      # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
                },
              ],
              "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
                "A String",
              ],
              "containerId": "A String", # GTM Container ID.
            },
        ],
      }

`update(accountId, containerId, variableId, body, fingerprint=None)`

    Updates a GTM Variable.

    Args:
      accountId: string, The GTM Account ID. (required)
      containerId: string, The GTM Container ID. (required)
      variableId: string, The GTM Variable ID. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Represents a Google Tag Manager Variable.
        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
        "name": "A String", # Variable display name.
        "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
        "type": "A String", # GTM Variable Type.
        "notes": "A String", # User notes on how to apply this variable in the container.
        "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
          "A String",
        ],
        "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
        "accountId": "A String", # GTM Account ID.
        "parameter": [ # The variable's parameters.
          { # Represents a Google Tag Manager Parameter.
            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
              # Object with schema name: Parameter
            ],
            "list": [ # This list parameter's parameters (keys will be ignored).
              # Object with schema name: Parameter
            ],
            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
            "type": "A String", # The parameter type. Valid values are:
                # - boolean: The value represents a boolean, represented as 'true' or 'false'
                # - integer: The value represents a 64-bit signed integer value, in base 10
                # - list: A list of parameters should be specified
                # - map: A map of parameters should be specified
                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
          },
        ],
        "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
          "A String",
        ],
        "containerId": "A String", # GTM Container ID.
      }

      fingerprint: string, When provided, this fingerprint must match the fingerprint of the variable in storage.

    Returns:
      An object of the form:

        { # Represents a Google Tag Manager Variable.
          "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
          "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
          "name": "A String", # Variable display name.
          "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
          "type": "A String", # GTM Variable Type.
          "notes": "A String", # User notes on how to apply this variable in the container.
          "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
            "A String",
          ],
          "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
          "accountId": "A String", # GTM Account ID.
          "parameter": [ # The variable's parameters.
            { # Represents a Google Tag Manager Parameter.
              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
                # Object with schema name: Parameter
              ],
              "list": [ # This list parameter's parameters (keys will be ignored).
                # Object with schema name: Parameter
              ],
              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
              "type": "A String", # The parameter type. Valid values are:
                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
                  # - integer: The value represents a 64-bit signed integer value, in base 10
                  # - list: A list of parameters should be specified
                  # - map: A map of parameters should be specified
                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
            },
          ],
          "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
            "A String",
          ],
          "containerId": "A String", # GTM Container ID.
        }