# Tag Manager API . accounts . containers . workspaces . tags

## Instance Methods

Creates a GTM Tag.

Deletes a GTM Tag.

Gets a GTM Tag.

Lists all GTM Tags of a Container.

Retrieves the next page of results.

Reverts changes to a GTM Tag in a GTM Workspace.

Updates a GTM Tag.

### Method Details

`create(parent, body)`

    Creates a GTM Tag.

    Args:
      parent: string, GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id} (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Represents a Google Tag Manager Tag.
      "setupTag": [ # The list of setup tags. Currently we only allow one.
        { # Represents a reference to atag that fires before another tag in order to set up dependencies.
          "stopOnSetupFailure": True or False, # If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status.
          "tagName": "A String", # The name of the setup tag.
        },
      ],
      "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
        "A String",
      ],
      "accountId": "A String", # GTM Account ID.
      "teardownTag": [ # The list of teardown tags. Currently we only allow one.
        { # Represents a tag that fires after another tag in order to tear down dependencies.
          "stopTeardownOnFailure": True or False, # If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status.
          "tagName": "A String", # The name of the teardown tag.
        },
      ],
      "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
        "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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
      },
      "workspaceId": "A String", # GTM Workspace ID.
      "type": "A String", # GTM Tag Type.
      "parentFolderId": "A String", # Parent folder id.
      "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
      "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
      "containerId": "A String", # GTM Container ID.
      "tagFiringOption": "A String", # Option to fire this tag.
      "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
      "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
        "A String",
      ],
      "tagManagerUrl": "A String", # Auto generated link to the tag manager UI
      "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
      "path": "A String", # GTM Tag's API relative path.
      "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
        "A String",
      ],
      "name": "A String", # Tag display name.
      "parameter": [ # The tag'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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
        },
      ],
      "notes": "A String", # User notes on how to apply this tag in the container.
      "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
      "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
        "A String",
      ],
    }

    Returns:
      An object of the form:

        { # Represents a Google Tag Manager Tag.
        "setupTag": [ # The list of setup tags. Currently we only allow one.
          { # Represents a reference to atag that fires before another tag in order to set up dependencies.
            "stopOnSetupFailure": True or False, # If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status.
            "tagName": "A String", # The name of the setup tag.
          },
        ],
        "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
          "A String",
        ],
        "accountId": "A String", # GTM Account ID.
        "teardownTag": [ # The list of teardown tags. Currently we only allow one.
          { # Represents a tag that fires after another tag in order to tear down dependencies.
            "stopTeardownOnFailure": True or False, # If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status.
            "tagName": "A String", # The name of the teardown tag.
          },
        ],
        "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
          "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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
        },
        "workspaceId": "A String", # GTM Workspace ID.
        "type": "A String", # GTM Tag Type.
        "parentFolderId": "A String", # Parent folder id.
        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
        "containerId": "A String", # GTM Container ID.
        "tagFiringOption": "A String", # Option to fire this tag.
        "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
        "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
          "A String",
        ],
        "tagManagerUrl": "A String", # Auto generated link to the tag manager UI
        "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
        "path": "A String", # GTM Tag's API relative path.
        "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
          "A String",
        ],
        "name": "A String", # Tag display name.
        "parameter": [ # The tag'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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
          },
        ],
        "notes": "A String", # User notes on how to apply this tag in the container.
        "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
        "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
          "A String",
        ],
      }

`delete(path)`

    Deletes a GTM Tag.

    Args:
      path: string, GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id} (required)

`get(path)`

    Gets a GTM Tag.

    Args:
      path: string, GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id} (required)

    Returns:
      An object of the form:

        { # Represents a Google Tag Manager Tag.
        "setupTag": [ # The list of setup tags. Currently we only allow one.
          { # Represents a reference to atag that fires before another tag in order to set up dependencies.
            "stopOnSetupFailure": True or False, # If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status.
            "tagName": "A String", # The name of the setup tag.
          },
        ],
        "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
          "A String",
        ],
        "accountId": "A String", # GTM Account ID.
        "teardownTag": [ # The list of teardown tags. Currently we only allow one.
          { # Represents a tag that fires after another tag in order to tear down dependencies.
            "stopTeardownOnFailure": True or False, # If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status.
            "tagName": "A String", # The name of the teardown tag.
          },
        ],
        "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
          "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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
        },
        "workspaceId": "A String", # GTM Workspace ID.
        "type": "A String", # GTM Tag Type.
        "parentFolderId": "A String", # Parent folder id.
        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
        "containerId": "A String", # GTM Container ID.
        "tagFiringOption": "A String", # Option to fire this tag.
        "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
        "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
          "A String",
        ],
        "tagManagerUrl": "A String", # Auto generated link to the tag manager UI
        "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
        "path": "A String", # GTM Tag's API relative path.
        "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
          "A String",
        ],
        "name": "A String", # Tag display name.
        "parameter": [ # The tag'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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
          },
        ],
        "notes": "A String", # User notes on how to apply this tag in the container.
        "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
        "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
          "A String",
        ],
      }

`list(parent, pageToken=None)`

    Lists all GTM Tags of a Container.

    Args:
      parent: string, GTM Workspace's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id} (required)
      pageToken: string, Continuation token for fetching the next page of results.

    Returns:
      An object of the form:

        { # List Tags Response.
        "nextPageToken": "A String", # Continuation token for fetching the next page of results.
        "tag": [ # All GTM Tags of a GTM Container.
          { # Represents a Google Tag Manager Tag.
            "setupTag": [ # The list of setup tags. Currently we only allow one.
              { # Represents a reference to atag that fires before another tag in order to set up dependencies.
                "stopOnSetupFailure": True or False, # If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status.
                "tagName": "A String", # The name of the setup tag.
              },
            ],
            "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
              "A String",
            ],
            "accountId": "A String", # GTM Account ID.
            "teardownTag": [ # The list of teardown tags. Currently we only allow one.
              { # Represents a tag that fires after another tag in order to tear down dependencies.
                "stopTeardownOnFailure": True or False, # If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status.
                "tagName": "A String", # The name of the teardown tag.
              },
            ],
            "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
              "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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
            },
            "workspaceId": "A String", # GTM Workspace ID.
            "type": "A String", # GTM Tag Type.
            "parentFolderId": "A String", # Parent folder id.
            "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
            "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
            "containerId": "A String", # GTM Container ID.
            "tagFiringOption": "A String", # Option to fire this tag.
            "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
            "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
              "A String",
            ],
            "tagManagerUrl": "A String", # Auto generated link to the tag manager UI
            "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
            "path": "A String", # GTM Tag's API relative path.
            "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
              "A String",
            ],
            "name": "A String", # Tag display name.
            "parameter": [ # The tag'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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
              },
            ],
            "notes": "A String", # User notes on how to apply this tag in the container.
            "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
            "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
              "A String",
            ],
          },
        ],
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`revert(path, fingerprint=None)`

    Reverts changes to a GTM Tag in a GTM Workspace.

    Args:
      path: string, GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id} (required)
      fingerprint: string, When provided, this fingerprint must match the fingerprint of thetag in storage.

    Returns:
      An object of the form:

        { # The result of reverting a tag in a workspace.
        "tag": { # Represents a Google Tag Manager Tag. # Tag as it appears in the latest container version since the last workspace synchronization operation. If no tag is present, that means the tag was deleted in the latest container version.
          "setupTag": [ # The list of setup tags. Currently we only allow one.
            { # Represents a reference to atag that fires before another tag in order to set up dependencies.
              "stopOnSetupFailure": True or False, # If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status.
              "tagName": "A String", # The name of the setup tag.
            },
          ],
          "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
            "A String",
          ],
          "accountId": "A String", # GTM Account ID.
          "teardownTag": [ # The list of teardown tags. Currently we only allow one.
            { # Represents a tag that fires after another tag in order to tear down dependencies.
              "stopTeardownOnFailure": True or False, # If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status.
              "tagName": "A String", # The name of the teardown tag.
            },
          ],
          "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
            "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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
          },
          "workspaceId": "A String", # GTM Workspace ID.
          "type": "A String", # GTM Tag Type.
          "parentFolderId": "A String", # Parent folder id.
          "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
          "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
          "containerId": "A String", # GTM Container ID.
          "tagFiringOption": "A String", # Option to fire this tag.
          "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
          "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
            "A String",
          ],
          "tagManagerUrl": "A String", # Auto generated link to the tag manager UI
          "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
          "path": "A String", # GTM Tag's API relative path.
          "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
            "A String",
          ],
          "name": "A String", # Tag display name.
          "parameter": [ # The tag'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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
            },
          ],
          "notes": "A String", # User notes on how to apply this tag in the container.
          "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
          "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
            "A String",
          ],
        },
      }

`update(path, body, fingerprint=None)`

    Updates a GTM Tag.

    Args:
      path: string, GTM Tag's API relative path. Example: accounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id} (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Represents a Google Tag Manager Tag.
      "setupTag": [ # The list of setup tags. Currently we only allow one.
        { # Represents a reference to atag that fires before another tag in order to set up dependencies.
          "stopOnSetupFailure": True or False, # If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status.
          "tagName": "A String", # The name of the setup tag.
        },
      ],
      "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
        "A String",
      ],
      "accountId": "A String", # GTM Account ID.
      "teardownTag": [ # The list of teardown tags. Currently we only allow one.
        { # Represents a tag that fires after another tag in order to tear down dependencies.
          "stopTeardownOnFailure": True or False, # If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status.
          "tagName": "A String", # The name of the teardown tag.
        },
      ],
      "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
        "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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
      },
      "workspaceId": "A String", # GTM Workspace ID.
      "type": "A String", # GTM Tag Type.
      "parentFolderId": "A String", # Parent folder id.
      "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
      "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
      "containerId": "A String", # GTM Container ID.
      "tagFiringOption": "A String", # Option to fire this tag.
      "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
      "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
        "A String",
      ],
      "tagManagerUrl": "A String", # Auto generated link to the tag manager UI
      "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
      "path": "A String", # GTM Tag's API relative path.
      "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
        "A String",
      ],
      "name": "A String", # Tag display name.
      "parameter": [ # The tag'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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
        },
      ],
      "notes": "A String", # User notes on how to apply this tag in the container.
      "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
      "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
        "A String",
      ],
    }

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

    Returns:
      An object of the form:

        { # Represents a Google Tag Manager Tag.
        "setupTag": [ # The list of setup tags. Currently we only allow one.
          { # Represents a reference to atag that fires before another tag in order to set up dependencies.
            "stopOnSetupFailure": True or False, # If true, fire the main tag if and only if the setup tag fires successfully. If false, fire the main tag regardless of setup tag firing status.
            "tagName": "A String", # The name of the setup tag.
          },
        ],
        "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
          "A String",
        ],
        "accountId": "A String", # GTM Account ID.
        "teardownTag": [ # The list of teardown tags. Currently we only allow one.
          { # Represents a tag that fires after another tag in order to tear down dependencies.
            "stopTeardownOnFailure": True or False, # If true, fire the teardown tag if and only if the main tag fires successfully. If false, fire the teardown tag regardless of main tag firing status.
            "tagName": "A String", # The name of the teardown tag.
          },
        ],
        "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
          "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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
        },
        "workspaceId": "A String", # GTM Workspace ID.
        "type": "A String", # GTM Tag Type.
        "parentFolderId": "A String", # Parent folder id.
        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
        "containerId": "A String", # GTM Container ID.
        "tagFiringOption": "A String", # Option to fire this tag.
        "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
        "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
          "A String",
        ],
        "tagManagerUrl": "A String", # Auto generated link to the tag manager UI
        "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
        "path": "A String", # GTM Tag's API relative path.
        "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
          "A String",
        ],
        "name": "A String", # Tag display name.
        "parameter": [ # The tag'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 variable references such as "{{myVariable}}") 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 variable references (even variable references that might return non-string types)
          },
        ],
        "notes": "A String", # User notes on how to apply this tag in the container.
        "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
        "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
          "A String",
        ],
      }