{
  "basePath": "",
  "discoveryVersion": "v1",
  "name": "tagmanager",
  "baseUrl": "https://tagmanager.googleapis.com/",
  "schemas": {
    "ListTemplatesResponse": {
      "properties": {
        "nextPageToken": {
          "description": "Continuation token for fetching the next page of results.",
          "type": "string"
        },
        "template": {
          "type": "array",
          "items": {
            "$ref": "CustomTemplate"
          },
          "description": "All GTM Custom Templates of a GTM Container."
        }
      },
      "type": "object",
      "id": "ListTemplatesResponse"
    },
    "SyncStatus": {
      "properties": {
        "mergeConflict": {
          "description": "Synchornization operation detected a merge conflict.",
          "type": "boolean"
        },
        "syncError": {
          "type": "boolean",
          "description": "An error occurred during the synchronization operation."
        }
      },
      "type": "object",
      "id": "SyncStatus",
      "description": "The status of a workspace after synchronization."
    },
    "ProposedChange": {
      "properties": {
        "changes": {
          "type": "array",
          "items": {
            "$ref": "Entity"
          },
          "description": "The list of workspace changes to be applied."
        }
      },
      "id": "ProposedChange",
      "type": "object"
    },
    "Transformation": {
      "properties": {
        "accountId": {
          "type": "string",
          "description": "GTM Account ID."
        },
        "workspaceId": {
          "description": "GTM Workspace ID.",
          "type": "string"
        },
        "parameter": {
          "type": "array",
          "items": {
            "$ref": "Parameter"
          },
          "description": "The transformation's parameters."
        },
        "fingerprint": {
          "description": "The fingerprint of the GTM Transformation as computed at storage time. This value is recomputed whenever the transformation is modified.",
          "type": "string"
        },
        "type": {
          "type": "string",
          "description": "Transformation type."
        },
        "parentFolderId": {
          "type": "string",
          "description": "Parent folder id."
        },
        "containerId": {
          "type": "string",
          "description": "GTM Container ID."
        },
        "notes": {
          "description": "User notes on how to apply this transformation in the container.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Transformation display name."
        },
        "path": {
          "description": "GTM transformation's API relative path.",
          "type": "string"
        },
        "transformationId": {
          "type": "string",
          "description": "The Transformation ID uniquely identifies the GTM transformation."
        },
        "tagManagerUrl": {
          "type": "string",
          "description": "Auto generated link to the tag manager UI"
        }
      },
      "type": "object",
      "id": "Transformation",
      "description": "Represents a Google Tag Manager Transformation."
    },
    "PublishContainerVersionResponse": {
      "properties": {
        "containerVersion": {
          "description": "The container version created.",
          "$ref": "ContainerVersion"
        },
        "compilerError": {
          "type": "boolean",
          "description": "Compiler errors or not."
        },
        "compilerErrors": {
          "description": "Compiler error details.",
          "type": "array",
          "items": {
            "$ref": "CompilerErrorLite"
          }
        }
      },
      "type": "object",
      "id": "PublishContainerVersionResponse",
      "description": "Publish container version response."
    },
    "ListEnvironmentsResponse": {
      "id": "ListEnvironmentsResponse",
      "description": "List Environments Response.",
      "type": "object",
      "properties": {
        "environment": {
          "description": "All Environments of a GTM Container.",
          "type": "array",
          "items": {
            "$ref": "Environment"
          }
        },
        "nextPageToken": {
          "type": "string",
          "description": "Continuation token for fetching the next page of results."
        }
      }
    },
    "Container": {
      "id": "Container",
      "description": "Represents a Google Tag Manager Container, which specifies the platform tags will run on, manages workspaces, and retains container versions.",
      "type": "object",
      "properties": {
        "containerId": {
          "description": "The Container ID uniquely identifies the GTM Container.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Container display name."
        },
        "tagIds": {
          "description": "All Tag IDs that refer to this Container.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tagManagerUrl": {
          "description": "Auto generated link to the tag manager UI",
          "type": "string"
        },
        "domainName": {
          "description": "List of domain names associated with the Container.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "usageContext": {
          "type": "array",
          "items": {
            "enumDescriptions": [
              "",
              "",
              "",
              "",
              "",
              "",
              "",
              ""
            ],
            "type": "string",
            "enum": [
              "usageContextUnspecified",
              "web",
              "android",
              "ios",
              "androidSdk5",
              "iosSdk5",
              "amp",
              "server"
            ]
          },
          "description": "List of Usage Contexts for the Container. Valid values include: web, android, or ios."
        },
        "notes": {
          "description": "Container Notes.",
          "type": "string"
        },
        "path": {
          "description": "GTM Container's API relative path.",
          "type": "string"
        },
        "accountId": {
          "type": "string",
          "description": "GTM Account ID."
        },
        "taggingServerUrls": {
          "description": "List of server-side container URLs for the Container. If multiple URLs are provided, all URL paths must match.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "publicId": {
          "type": "string",
          "description": "Container Public ID."
        },
        "features": {
          "description": "Read-only Container feature set.",
          "$ref": "ContainerFeatures"
        },
        "fingerprint": {
          "description": "The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.",
          "type": "string"
        }
      }
    },
    "GtagConfig": {
      "properties": {
        "accountId": {
          "type": "string",
          "description": "Google tag account ID."
        },
        "workspaceId": {
          "description": "Google tag workspace ID. Only used by GTM containers. Set to 0 otherwise.",
          "type": "string"
        },
        "parameter": {
          "type": "array",
          "items": {
            "$ref": "Parameter"
          },
          "description": "The Google tag config's parameters."
        },
        "fingerprint": {
          "description": "The fingerprint of the Google tag config as computed at storage time. This value is recomputed whenever the config is modified.",
          "type": "string"
        },
        "type": {
          "description": "Google tag config type.",
          "type": "string"
        },
        "gtagConfigId": {
          "type": "string",
          "description": "The ID uniquely identifies the Google tag config."
        },
        "containerId": {
          "description": "Google tag container ID.",
          "type": "string"
        },
        "path": {
          "type": "string",
          "description": "Google tag config's API relative path."
        },
        "tagManagerUrl": {
          "description": "Auto generated link to the tag manager UI",
          "type": "string"
        }
      },
      "type": "object",
      "id": "GtagConfig",
      "description": "Represents a Google tag configuration."
    },
    "AccountAccess": {
      "properties": {
        "permission": {
          "type": "string",
          "enum": [
            "accountPermissionUnspecified",
            "noAccess",
            "user",
            "admin"
          ],
          "description": "Whether the user has no access, user access, or admin access to an account.",
          "enumDescriptions": [
            "",
            "",
            "",
            ""
          ]
        }
      },
      "id": "AccountAccess",
      "description": "Defines the Google Tag Manager Account access permissions.",
      "type": "object"
    },
    "ListContainerVersionsResponse": {
      "properties": {
        "nextPageToken": {
          "description": "Continuation token for fetching the next page of results.",
          "type": "string"
        },
        "containerVersionHeader": {
          "description": "All container version headers of a GTM Container.",
          "type": "array",
          "items": {
            "$ref": "ContainerVersionHeader"
          }
        }
      },
      "id": "ListContainerVersionsResponse",
      "description": "List container versions response.",
      "type": "object"
    },
    "ContainerVersion": {
      "id": "ContainerVersion",
      "description": "Represents a Google Tag Manager Container Version.",
      "type": "object",
      "properties": {
        "builtInVariable": {
          "type": "array",
          "items": {
            "$ref": "BuiltInVariable"
          },
          "description": "The built-in variables in the container that this version was taken from."
        },
        "containerVersionId": {
          "description": "The Container Version ID uniquely identifies the GTM Container Version.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Container version display name."
        },
        "customTemplate": {
          "type": "array",
          "items": {
            "$ref": "CustomTemplate"
          },
          "description": "The custom templates in the container that this version was taken from."
        },
        "tagManagerUrl": {
          "type": "string",
          "description": "Auto generated link to the tag manager UI"
        },
        "container": {
          "description": "The container that this version was taken from.",
          "$ref": "Container"
        },
        "containerId": {
          "type": "string",
          "description": "GTM Container ID."
        },
        "client": {
          "type": "array",
          "items": {
            "$ref": "Client"
          },
          "description": "The clients in the container that this version was taken from."
        },
        "deleted": {
          "type": "boolean",
          "description": "A value of true indicates this container version has been deleted."
        },
        "zone": {
          "description": "The zones in the container that this version was taken from.",
          "type": "array",
          "items": {
            "$ref": "Zone"
          }
        },
        "path": {
          "type": "string",
          "description": "GTM Container Version's API relative path."
        },
        "variable": {
          "type": "array",
          "items": {
            "$ref": "Variable"
          },
          "description": "The variables in the container that this version was taken from."
        },
        "gtagConfig": {
          "description": "The Google tag configs in the container that this version was taken from.",
          "type": "array",
          "items": {
            "$ref": "GtagConfig"
          }
        },
        "tag": {
          "type": "array",
          "items": {
            "$ref": "Tag"
          },
          "description": "The tags in the container that this version was taken from."
        },
        "transformation": {
          "type": "array",
          "items": {
            "$ref": "Transformation"
          },
          "description": "The transformations in the container that this version was taken from."
        },
        "trigger": {
          "description": "The triggers in the container that this version was taken from.",
          "type": "array",
          "items": {
            "$ref": "Trigger"
          }
        },
        "fingerprint": {
          "type": "string",
          "description": "The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified."
        },
        "accountId": {
          "type": "string",
          "description": "GTM Account ID."
        },
        "description": {
          "description": "Container version description.",
          "type": "string"
        },
        "folder": {
          "description": "The folders in the container that this version was taken from.",
          "type": "array",
          "items": {
            "$ref": "Folder"
          }
        }
      }
    },
    "ListDestinationsResponse": {
      "properties": {
        "destination": {
          "description": "All Destinations linked to a GTM Container.",
          "type": "array",
          "items": {
            "$ref": "Destination"
          }
        },
        "nextPageToken": {
          "type": "string",
          "description": "Continuation token for fetching the next page of results."
        }
      },
      "id": "ListDestinationsResponse",
      "type": "object"
    },
    "BuiltInVariable": {
      "properties": {
        "path": {
          "type": "string",
          "description": "GTM BuiltInVariable's API relative path."
        },
        "name": {
          "type": "string",
          "description": "Name of the built-in variable to be used to refer to the built-in variable."
        },
        "accountId": {
          "description": "GTM Account ID.",
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "builtInVariableTypeUnspecified",
            "pageUrl",
            "pageHostname",
            "pagePath",
            "referrer",
            "event",
            "clickElement",
            "clickClasses",
            "clickId",
            "clickTarget",
            "clickUrl",
            "clickText",
            "firstPartyServingUrl",
            "formElement",
            "formClasses",
            "formId",
            "formTarget",
            "formUrl",
            "formText",
            "errorMessage",
            "errorUrl",
            "errorLine",
            "newHistoryUrl",
            "oldHistoryUrl",
            "newHistoryFragment",
            "oldHistoryFragment",
            "newHistoryState",
            "oldHistoryState",
            "historySource",
            "containerVersion",
            "debugMode",
            "randomNumber",
            "containerId",
            "appId",
            "appName",
            "appVersionCode",
            "appVersionName",
            "language",
            "osVersion",
            "platform",
            "sdkVersion",
            "deviceName",
            "resolution",
            "advertiserId",
            "advertisingTrackingEnabled",
            "htmlId",
            "environmentName",
            "ampBrowserLanguage",
            "ampCanonicalPath",
            "ampCanonicalUrl",
            "ampCanonicalHost",
            "ampReferrer",
            "ampTitle",
            "ampClientId",
            "ampClientTimezone",
            "ampClientTimestamp",
            "ampClientScreenWidth",
            "ampClientScreenHeight",
            "ampClientScrollX",
            "ampClientScrollY",
            "ampClientMaxScrollX",
            "ampClientMaxScrollY",
            "ampTotalEngagedTime",
            "ampPageViewId",
            "ampPageLoadTime",
            "ampPageDownloadTime",
            "ampGtmEvent",
            "eventName",
            "firebaseEventParameterCampaign",
            "firebaseEventParameterCampaignAclid",
            "firebaseEventParameterCampaignAnid",
            "firebaseEventParameterCampaignClickTimestamp",
            "firebaseEventParameterCampaignContent",
            "firebaseEventParameterCampaignCp1",
            "firebaseEventParameterCampaignGclid",
            "firebaseEventParameterCampaignSource",
            "firebaseEventParameterCampaignTerm",
            "firebaseEventParameterCurrency",
            "firebaseEventParameterDynamicLinkAcceptTime",
            "firebaseEventParameterDynamicLinkLinkid",
            "firebaseEventParameterNotificationMessageDeviceTime",
            "firebaseEventParameterNotificationMessageId",
            "firebaseEventParameterNotificationMessageName",
            "firebaseEventParameterNotificationMessageTime",
            "firebaseEventParameterNotificationTopic",
            "firebaseEventParameterPreviousAppVersion",
            "firebaseEventParameterPreviousOsVersion",
            "firebaseEventParameterPrice",
            "firebaseEventParameterProductId",
            "firebaseEventParameterQuantity",
            "firebaseEventParameterValue",
            "videoProvider",
            "videoUrl",
            "videoTitle",
            "videoDuration",
            "videoPercent",
            "videoVisible",
            "videoStatus",
            "videoCurrentTime",
            "scrollDepthThreshold",
            "scrollDepthUnits",
            "scrollDepthDirection",
            "elementVisibilityRatio",
            "elementVisibilityTime",
            "elementVisibilityFirstTime",
            "elementVisibilityRecentTime",
            "requestPath",
            "requestMethod",
            "clientName",
            "queryString",
            "serverPageLocationUrl",
            "serverPageLocationPath",
            "serverPageLocationHostname",
            "visitorRegion",
            "analyticsClientId",
            "analyticsSessionId",
            "analyticsSessionNumber"
          ],
          "description": "Type of built-in variable.",
          "enumDescriptions": [
            "",
            "",
            "",
            "",
            "",
            "For web or mobile.",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "For web or mobile.",
            "",
            "For web or mobile.",
            "For web or mobile.",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            ""
          ]
        },
        "containerId": {
          "description": "GTM Container ID.",
          "type": "string"
        },
        "workspaceId": {
          "description": "GTM Workspace ID.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "BuiltInVariable",
      "description": "Built-in variables are a special category of variables that are pre-created and non-customizable. They provide common functionality like accessing properties of the gtm data layer, monitoring clicks, or accessing elements of a page URL."
    },
    "ZoneBoundary": {
      "id": "ZoneBoundary",
      "description": "Represents a Zone's boundaries.",
      "type": "object",
      "properties": {
        "condition": {
          "description": "The conditions that, when conjoined, make up the boundary.",
          "type": "array",
          "items": {
            "$ref": "Condition"
          }
        },
        "customEvaluationTriggerId": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Custom evaluation trigger IDs. A zone will evaluate its boundary conditions when any of the listed triggers are true."
        }
      }
    },
    "RevertTransformationResponse": {
      "properties": {
        "transformation": {
          "description": "Transformation as it appears in the latest container version since the last workspace synchronization operation. If no transformation is present, that means the transformation was deleted in the latest container version.",
          "$ref": "Transformation"
        }
      },
      "type": "object",
      "id": "RevertTransformationResponse",
      "description": "The result of reverting a transformation in a workspace."
    },
    "Destination": {
      "properties": {
        "accountId": {
          "description": "GTM Account ID.",
          "type": "string"
        },
        "containerId": {
          "description": "GTM Container ID.",
          "type": "string"
        },
        "path": {
          "description": "Destination's API relative path.",
          "type": "string"
        },
        "destinationLinkId": {
          "description": "The Destination link ID uniquely identifies the Destination.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Destination display name."
        },
        "destinationId": {
          "type": "string",
          "description": "Destination ID."
        },
        "fingerprint": {
          "type": "string",
          "description": "The fingerprint of the Google Tag Destination as computed at storage time. This value is recomputed whenever the destination is modified."
        },
        "tagManagerUrl": {
          "description": "Auto generated link to the tag manager UI.",
          "type": "string"
        }
      },
      "id": "Destination",
      "description": "Represents a Google Tag Destination.",
      "type": "object"
    },
    "ListContainersResponse": {
      "id": "ListContainersResponse",
      "description": "List Containers Response.",
      "type": "object",
      "properties": {
        "container": {
          "description": "All Containers of a GTM Account.",
          "type": "array",
          "items": {
            "$ref": "Container"
          }
        },
        "nextPageToken": {
          "type": "string",
          "description": "Continuation token for fetching the next page of results."
        }
      }
    },
    "Trigger": {
      "properties": {
        "notes": {
          "description": "User notes on how to apply this trigger in the container.",
          "type": "string"
        },
        "checkValidation": {
          "description": "Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.",
          "$ref": "Parameter"
        },
        "horizontalScrollPercentageList": {
          "description": "List of integer percentage values for scroll triggers. The trigger will fire when each percentage is reached when the view is scrolled horizontally. Only valid for AMP scroll triggers.",
          "$ref": "Parameter"
        },
        "visiblePercentageMin": {
          "description": "A visibility trigger minimum percent visibility. Only valid for AMP Visibility trigger.",
          "$ref": "Parameter"
        },
        "visiblePercentageMax": {
          "description": "A visibility trigger maximum percent visibility. Only valid for AMP Visibility trigger.",
          "$ref": "Parameter"
        },
        "uniqueTriggerId": {
          "description": "Globally unique id of the trigger that auto-generates this (a Form Submit, Link Click or Timer listener) if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submit, Link Click and Timer triggers.",
          "$ref": "Parameter"
        },
        "triggerId": {
          "description": "The Trigger ID uniquely identifies the GTM Trigger.",
          "type": "string"
        },
        "totalTimeMinMilliseconds": {
          "description": "A visibility trigger minimum total visible time (in milliseconds). Only valid for AMP Visibility trigger.",
          "$ref": "Parameter"
        },
        "fingerprint": {
          "description": "The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.",
          "type": "string"
        },
        "parameter": {
          "type": "array",
          "items": {
            "$ref": "Parameter"
          },
          "description": "Additional parameters."
        },
        "autoEventFilter": {
          "description": "Used in the case of auto event tracking.",
          "type": "array",
          "items": {
            "$ref": "Condition"
          }
        },
        "containerId": {
          "description": "GTM Container ID.",
          "type": "string"
        },
        "waitForTags": {
          "description": "Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.",
          "$ref": "Parameter"
        },
        "filter": {
          "description": "The trigger will only fire iff all Conditions are true.",
          "type": "array",
          "items": {
            "$ref": "Condition"
          }
        },
        "verticalScrollPercentageList": {
          "description": "List of integer percentage values for scroll triggers. The trigger will fire when each percentage is reached when the view is scrolled vertically. Only valid for AMP scroll triggers.",
          "$ref": "Parameter"
        },
        "waitForTagsTimeout": {
          "description": "How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.",
          "$ref": "Parameter"
        },
        "visibilitySelector": {
          "description": "A visibility trigger CSS selector (i.e. \"#id\"). Only valid for AMP Visibility trigger.",
          "$ref": "Parameter"
        },
        "interval": {
          "description": "Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.",
          "$ref": "Parameter"
        },
        "customEventFilter": {
          "type": "array",
          "items": {
            "$ref": "Condition"
          },
          "description": "Used in the case of custom event, which is fired iff all Conditions are true."
        },
        "path": {
          "description": "GTM Trigger's API relative path.",
          "type": "string"
        },
        "limit": {
          "description": "Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.",
          "$ref": "Parameter"
        },
        "workspaceId": {
          "type": "string",
          "description": "GTM Workspace ID."
        },
        "intervalSeconds": {
          "description": "Time between Timer Events to fire (in seconds). Only valid for AMP Timer trigger.",
          "$ref": "Parameter"
        },
        "accountId": {
          "description": "GTM Account ID.",
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "eventTypeUnspecified",
            "pageview",
            "domReady",
            "windowLoaded",
            "customEvent",
            "triggerGroup",
            "init",
            "consentInit",
            "serverPageview",
            "always",
            "firebaseAppException",
            "firebaseAppUpdate",
            "firebaseCampaign",
            "firebaseFirstOpen",
            "firebaseInAppPurchase",
            "firebaseNotificationDismiss",
            "firebaseNotificationForeground",
            "firebaseNotificationOpen",
            "firebaseNotificationReceive",
            "firebaseOsUpdate",
            "firebaseSessionStart",
            "firebaseUserEngagement",
            "formSubmission",
            "click",
            "linkClick",
            "jsError",
            "historyChange",
            "timer",
            "ampClick",
            "ampTimer",
            "ampScroll",
            "ampVisibility",
            "youTubeVideo",
            "scrollDepth",
            "elementVisibility"
          ],
          "description": "Defines the data layer event that causes this trigger.",
          "enumDescriptions": [
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            ""
          ]
        },
        "parentFolderId": {
          "description": "Parent folder id.",
          "type": "string"
        },
        "maxTimerLengthSeconds": {
          "description": "Max time to fire Timer Events (in seconds). Only valid for AMP Timer trigger.",
          "$ref": "Parameter"
        },
        "eventName": {
          "description": "Name of the GTM event that is fired. Only valid for Timer triggers.",
          "$ref": "Parameter"
        },
        "tagManagerUrl": {
          "description": "Auto generated link to the tag manager UI",
          "type": "string"
        },
        "name": {
          "description": "Trigger display name.",
          "type": "string"
        },
        "continuousTimeMinMilliseconds": {
          "description": "A visibility trigger minimum continuous visible time (in milliseconds). Only valid for AMP Visibility trigger.",
          "$ref": "Parameter"
        },
        "selector": {
          "description": "A click trigger CSS selector (i.e. \"a\", \"button\" etc.). Only valid for AMP Click trigger.",
          "$ref": "Parameter"
        }
      },
      "id": "Trigger",
      "description": "Represents a Google Tag Manager Trigger",
      "type": "object"
    },
    "CreateContainerVersionResponse": {
      "properties": {
        "compilerError": {
          "description": "Compiler errors or not.",
          "type": "boolean"
        },
        "containerVersion": {
          "description": "The container version created.",
          "$ref": "ContainerVersion"
        },
        "syncStatus": {
          "description": "Whether version creation failed when syncing the workspace to the latest container version.",
          "$ref": "SyncStatus"
        },
        "compilerErrors": {
          "description": "Compiler error details.",
          "type": "array",
          "items": {
            "$ref": "CompilerErrorLite"
          }
        },
        "newWorkspacePath": {
          "type": "string",
          "description": "Auto generated workspace path created as a result of version creation. This field should only be populated if the created version was not a quick preview."
        }
      },
      "type": "object",
      "id": "CreateContainerVersionResponse",
      "description": "Create container versions response."
    },
    "ListEnabledBuiltInVariablesResponse": {
      "type": "object",
      "id": "ListEnabledBuiltInVariablesResponse",
      "description": "A list of enabled built-in variables.",
      "properties": {
        "builtInVariable": {
          "type": "array",
          "items": {
            "$ref": "BuiltInVariable"
          },
          "description": "All GTM BuiltInVariables of a GTM container."
        },
        "nextPageToken": {
          "description": "Continuation token for fetching the next page of results.",
          "type": "string"
        }
      }
    },
    "ListClientsResponse": {
      "id": "ListClientsResponse",
      "type": "object",
      "properties": {
        "client": {
          "type": "array",
          "items": {
            "$ref": "Client"
          },
          "description": "All GTM Clients of a GTM Container."
        },
        "nextPageToken": {
          "type": "string",
          "description": "Continuation token for fetching the next page of results."
        }
      }
    },
    "ContainerAccess": {
      "properties": {
        "permission": {
          "type": "string",
          "enum": [
            "containerPermissionUnspecified",
            "noAccess",
            "read",
            "edit",
            "approve",
            "publish"
          ],
          "description": "List of Container permissions.",
          "enumDescriptions": [
            "",
            "",
            "",
            "",
            "",
            ""
          ]
        },
        "containerId": {
          "description": "GTM Container ID.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "ContainerAccess",
      "description": "Defines the Google Tag Manager Container access permissions."
    },
    "ZoneTypeRestriction": {
      "properties": {
        "whitelistedTypeId": {
          "description": "List of type public ids that have been whitelisted for use in this Zone.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "enable": {
          "description": "True if type restrictions have been enabled for this Zone.",
          "type": "boolean"
        }
      },
      "type": "object",
      "id": "ZoneTypeRestriction",
      "description": "Represents a Zone's type restrictions."
    },
    "Condition": {
      "properties": {
        "parameter": {
          "description": "A list of named parameters (key/value), depending on the condition's type. Notes: - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively. - At this time, the left operand (arg0) must be a reference to a variable. - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive. - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true. ",
          "type": "array",
          "items": {
            "$ref": "Parameter"
          }
        },
        "type": {
          "type": "string",
          "enum": [
            "conditionTypeUnspecified",
            "equals",
            "contains",
            "startsWith",
            "endsWith",
            "matchRegex",
            "greater",
            "greaterOrEquals",
            "less",
            "lessOrEquals",
            "cssSelector",
            "urlMatches"
          ],
          "description": "The type of operator for this condition.",
          "enumDescriptions": [
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            ""
          ]
        }
      },
      "id": "Condition",
      "description": "Represents a predicate.",
      "type": "object"
    },
    "TagConsentSetting": {
      "properties": {
        "consentStatus": {
          "description": "The tag's consent status. If set to NEEDED, the runtime will check that the consent types specified by the consent_type field have been granted.",
          "enumDescriptions": [
            "Default value where user has not specified any setting on it.",
            "Tag doesn't require any additional consent settings.",
            "Tag requires additional consent settings."
          ],
          "type": "string",
          "enum": [
            "notSet",
            "notNeeded",
            "needed"
          ]
        },
        "consentType": {
          "description": "The type of consents to check for during tag firing if in the consent NEEDED state. This parameter must be of type LIST where each list item is of type STRING.",
          "$ref": "Parameter"
        }
      },
      "type": "object",
      "id": "TagConsentSetting"
    },
    "Zone": {
      "type": "object",
      "id": "Zone",
      "description": "Represents a Google Tag Manager Zone's contents.",
      "properties": {
        "typeRestriction": {
          "description": "This Zone's type restrictions.",
          "$ref": "ZoneTypeRestriction"
        },
        "accountId": {
          "type": "string",
          "description": "GTM Account ID."
        },
        "boundary": {
          "description": "This Zone's boundary.",
          "$ref": "ZoneBoundary"
        },
        "workspaceId": {
          "type": "string",
          "description": "GTM Workspace ID."
        },
        "fingerprint": {
          "description": "The fingerprint of the GTM Zone as computed at storage time. This value is recomputed whenever the zone is modified.",
          "type": "string"
        },
        "childContainer": {
          "type": "array",
          "items": {
            "$ref": "ZoneChildContainer"
          },
          "description": "Containers that are children of this Zone."
        },
        "containerId": {
          "description": "GTM Container ID.",
          "type": "string"
        },
        "notes": {
          "type": "string",
          "description": "User notes on how to apply this zone in the container."
        },
        "name": {
          "description": "Zone display name.",
          "type": "string"
        },
        "path": {
          "description": "GTM Zone's API relative path.",
          "type": "string"
        },
        "zoneId": {
          "description": "The Zone ID uniquely identifies the GTM Zone.",
          "type": "string"
        },
        "tagManagerUrl": {
          "description": "Auto generated link to the tag manager UI",
          "type": "string"
        }
      }
    },
    "ZoneChildContainer": {
      "properties": {
        "publicId": {
          "type": "string",
          "description": "The child container's public id."
        },
        "nickname": {
          "description": "The zone's nickname for the child container.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "ZoneChildContainer",
      "description": "Represents a child container of a Zone."
    },
    "AccountFeatures": {
      "properties": {
        "supportMultipleContainers": {
          "description": "Whether this Account supports multiple Containers.",
          "type": "boolean"
        },
        "supportUserPermissions": {
          "description": "Whether this Account supports user permissions managed by GTM.",
          "type": "boolean"
        }
      },
      "id": "AccountFeatures",
      "type": "object"
    },
    "MergeConflict": {
      "id": "MergeConflict",
      "description": "Represents a merge conflict.",
      "type": "object",
      "properties": {
        "entityInWorkspace": {
          "description": "The workspace entity that has conflicting changes compared to the base version. If an entity is deleted in a workspace, it will still appear with a deleted change status.",
          "$ref": "Entity"
        },
        "entityInBaseVersion": {
          "description": "The base version entity (since the latest sync operation) that has conflicting changes compared to the workspace. If this field is missing, it means the workspace entity is deleted from the base version.",
          "$ref": "Entity"
        }
      }
    },
    "RevertBuiltInVariableResponse": {
      "properties": {
        "enabled": {
          "description": "Whether the built-in variable is enabled after reversion.",
          "type": "boolean"
        }
      },
      "type": "object",
      "id": "RevertBuiltInVariableResponse",
      "description": "The result of reverting a built-in variable in a workspace."
    },
    "Tag": {
      "id": "Tag",
      "description": "Represents a Google Tag Manager Tag.",
      "type": "object",
      "properties": {
        "monitoringMetadata": {
          "description": "A map of key-value pairs of tag metadata to be included in the event data for tag monitoring. Notes: - This parameter must be type MAP. - Each parameter in the map are type TEMPLATE, however cannot contain variable references. ",
          "$ref": "Parameter"
        },
        "name": {
          "type": "string",
          "description": "Tag display name."
        },
        "tagManagerUrl": {
          "type": "string",
          "description": "Auto generated link to the tag manager UI"
        },
        "monitoringMetadataTagNameKey": {
          "type": "string",
          "description": "If non-empty, then the tag display name will be included in the monitoring metadata map using the key specified."
        },
        "type": {
          "description": "GTM Tag Type.",
          "type": "string"
        },
        "tagFiringOption": {
          "description": "Option to fire this tag.",
          "enumDescriptions": [
            "",
            "Tag can be fired multiple times per event.",
            "Tag can only be fired per event but can be fired multiple times per load (e.g., app load or page load).",
            "Tag can only be fired per load (e.g., app load or page load)."
          ],
          "type": "string",
          "enum": [
            "tagFiringOptionUnspecified",
            "unlimited",
            "oncePerEvent",
            "oncePerLoad"
          ]
        },
        "parentFolderId": {
          "type": "string",
          "description": "Parent folder id."
        },
        "blockingTriggerId": {
          "description": "Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "accountId": {
          "description": "GTM Account ID.",
          "type": "string"
        },
        "tagId": {
          "description": "The Tag ID uniquely identifies the GTM Tag.",
          "type": "string"
        },
        "workspaceId": {
          "description": "GTM Workspace ID.",
          "type": "string"
        },
        "consentSettings": {
          "description": "Consent settings of a tag.",
          "$ref": "TagConsentSetting"
        },
        "path": {
          "type": "string",
          "description": "GTM Tag's API relative path."
        },
        "scheduleStartMs": {
          "type": "string",
          "description": "The start timestamp in milliseconds to schedule a tag.",
          "format": "int64"
        },
        "setupTag": {
          "type": "array",
          "items": {
            "$ref": "SetupTag"
          },
          "description": "The list of setup tags. Currently we only allow one."
        },
        "firingTriggerId": {
          "description": "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.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "scheduleEndMs": {
          "format": "int64",
          "type": "string",
          "description": "The end timestamp in milliseconds to schedule a tag."
        },
        "containerId": {
          "type": "string",
          "description": "GTM Container ID."
        },
        "priority": {
          "description": "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.",
          "$ref": "Parameter"
        },
        "liveOnly": {
          "type": "boolean",
          "description": "If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode)."
        },
        "parameter": {
          "type": "array",
          "items": {
            "$ref": "Parameter"
          },
          "description": "The tag's parameters."
        },
        "fingerprint": {
          "description": "The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.",
          "type": "string"
        },
        "teardownTag": {
          "type": "array",
          "items": {
            "$ref": "TeardownTag"
          },
          "description": "The list of teardown tags. Currently we only allow one."
        },
        "paused": {
          "description": "Indicates whether the tag is paused, which prevents the tag from firing.",
          "type": "boolean"
        },
        "notes": {
          "type": "string",
          "description": "User notes on how to apply this tag in the container."
        }
      }
    },
    "SyncWorkspaceResponse": {
      "id": "SyncWorkspaceResponse",
      "description": "A response after synchronizing the workspace to the latest container version.",
      "type": "object",
      "properties": {
        "syncStatus": {
          "description": "Indicates whether synchronization caused a merge conflict or sync error.",
          "$ref": "SyncStatus"
        },
        "mergeConflict": {
          "type": "array",
          "items": {
            "$ref": "MergeConflict"
          },
          "description": "The merge conflict after sync. If this field is not empty, the sync is still treated as successful. But a version cannot be created until all conflicts are resolved."
        }
      }
    },
    "ListUserPermissionsResponse": {
      "properties": {
        "userPermission": {
          "description": "All GTM UserPermissions of a GTM Account.",
          "type": "array",
          "items": {
            "$ref": "UserPermission"
          }
        },
        "nextPageToken": {
          "description": "Continuation token for fetching the next page of results.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "ListUserPermissionsResponse",
      "description": "List user permissions response."
    },
    "RevertVariableResponse": {
      "properties": {
        "variable": {
          "description": "Variable as it appears in the latest container version since the last workspace synchronization operation. If no variable is present, that means the variable was deleted in the latest container version.",
          "$ref": "Variable"
        }
      },
      "type": "object",
      "id": "RevertVariableResponse",
      "description": "The result of reverting a variable in a workspace."
    },
    "Parameter": {
      "id": "Parameter",
      "description": "Represents a Google Tag Manager Parameter.",
      "type": "object",
      "properties": {
        "value": {
          "type": "string",
          "description": "A parameter's value (may contain variable references). as appropriate to the specified type."
        },
        "isWeakReference": {
          "description": "Whether or not a reference type parameter is strongly or weakly referenced. Only used by Transformations.",
          "type": "boolean"
        },
        "map": {
          "description": "This map parameter's parameters (must have keys; keys must be unique).",
          "type": "array",
          "items": {
            "$ref": "Parameter"
          }
        },
        "list": {
          "type": "array",
          "items": {
            "$ref": "Parameter"
          },
          "description": "This list parameter's parameters (keys will be ignored)."
        },
        "type": {
          "description": "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) - trigger_reference: The value represents a trigger, represented as the trigger id - tag_reference: The value represents a tag, represented as the tag name ",
          "enumDescriptions": [
            "",
            "May include variable references.",
            "",
            "",
            "",
            "",
            "",
            ""
          ],
          "type": "string",
          "enum": [
            "typeUnspecified",
            "template",
            "integer",
            "boolean",
            "list",
            "map",
            "triggerReference",
            "tagReference"
          ]
        },
        "key": {
          "description": "The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.",
          "type": "string"
        }
      }
    },
    "RevertTemplateResponse": {
      "properties": {
        "template": {
          "description": "Template as it appears in the latest container version since the last workspace synchronization operation. If no template is present, that means the template was deleted in the latest container version.",
          "$ref": "CustomTemplate"
        }
      },
      "type": "object",
      "id": "RevertTemplateResponse",
      "description": "The result of reverting a template in a workspace."
    },
    "ListWorkspacesResponse": {
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "Continuation token for fetching the next page of results."
        },
        "workspace": {
          "description": "All Workspaces of a GTM Container.",
          "type": "array",
          "items": {
            "$ref": "Workspace"
          }
        }
      },
      "type": "object",
      "id": "ListWorkspacesResponse",
      "description": "A list of workspaces in a container."
    },
    "RevertFolderResponse": {
      "id": "RevertFolderResponse",
      "description": "The result of reverting folder changes in a workspace.",
      "type": "object",
      "properties": {
        "folder": {
          "description": "Folder as it appears in the latest container version since the last workspace synchronization operation. If no folder is present, that means the folder was deleted in the latest container version.",
          "$ref": "Folder"
        }
      }
    },
    "GalleryReference": {
      "properties": {
        "version": {
          "type": "string",
          "description": "The version of the community gallery template."
        },
        "isModified": {
          "description": "If a user has manually edited the community gallery template.",
          "type": "boolean"
        },
        "host": {
          "type": "string",
          "description": "The name of the host for the community gallery template."
        },
        "owner": {
          "type": "string",
          "description": "The name of the owner for the community gallery template."
        },
        "signature": {
          "description": "The signature of the community gallery template as computed at import time. This value is recomputed whenever the template is updated from the gallery.",
          "type": "string"
        },
        "templateDeveloperId": {
          "type": "string",
          "description": "The developer id of the community gallery template. This value is set whenever the template is created from the gallery."
        },
        "galleryTemplateId": {
          "type": "string",
          "description": "ID for the gallery template that is generated once during first sync and travels with the template redirects."
        },
        "repository": {
          "description": "The name of the repository for the community gallery template.",
          "type": "string"
        }
      },
      "id": "GalleryReference",
      "description": "Represents the link between a custom template and an entry on the Community Template Gallery site.",
      "type": "object"
    },
    "VariableFormatValue": {
      "properties": {
        "caseConversionType": {
          "description": "The option to convert a string-type variable value to either lowercase or uppercase.",
          "enumDescriptions": [
            "",
            "The option to convert a variable value to lowercase.",
            "The option to convert a variable value to uppercase."
          ],
          "type": "string",
          "enum": [
            "none",
            "lowercase",
            "uppercase"
          ]
        },
        "convertUndefinedToValue": {
          "description": "The value to convert if a variable value is undefined.",
          "$ref": "Parameter"
        },
        "convertFalseToValue": {
          "description": "The value to convert if a variable value is false.",
          "$ref": "Parameter"
        },
        "convertToNumber": {
          "type": "string",
          "enum": [
            "decimalSeparatorTypeUnspecified",
            "period",
            "comma"
          ],
          "description": "The option to convert a variable value to a number.",
          "enumDescriptions": [
            "",
            "The option to convert a variable value to a number with a period as the decimal separator.",
            "The option to convert a variable value to a number with a comma as the decimal separator."
          ]
        },
        "convertToBoolean": {
          "type": "boolean",
          "description": "The option to convert a variable value to a boolean."
        },
        "convertNullToValue": {
          "description": "The value to convert if a variable value is null.",
          "$ref": "Parameter"
        },
        "convertTrueToValue": {
          "description": "The value to convert if a variable value is true.",
          "$ref": "Parameter"
        }
      },
      "id": "VariableFormatValue",
      "type": "object"
    },
    "BulkUpdateWorkspaceResponse": {
      "properties": {
        "changes": {
          "description": "The entities that were added or updated during the bulk-update. Does not include entities that were deleted or updated by the system.",
          "type": "array",
          "items": {
            "$ref": "Entity"
          }
        }
      },
      "id": "BulkUpdateWorkspaceResponse",
      "type": "object"
    },
    "TeardownTag": {
      "id": "TeardownTag",
      "description": "Represents a tag that fires after another tag in order to tear down dependencies.",
      "type": "object",
      "properties": {
        "tagName": {
          "description": "The name of the teardown tag.",
          "type": "string"
        },
        "stopTeardownOnFailure": {
          "description": "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.",
          "type": "boolean"
        }
      }
    },
    "QuickPreviewResponse": {
      "type": "object",
      "id": "QuickPreviewResponse",
      "description": "Response to quick previewing a workspace.",
      "properties": {
        "containerVersion": {
          "description": "The quick previewed container version.",
          "$ref": "ContainerVersion"
        },
        "syncStatus": {
          "description": "Whether quick previewing failed when syncing the workspace to the latest container version.",
          "$ref": "SyncStatus"
        },
        "compilerError": {
          "type": "boolean",
          "description": "Were there compiler errors or not."
        },
        "compilerErrors": {
          "type": "array",
          "items": {
            "$ref": "CompilerErrorLite"
          },
          "description": "Compiler error details."
        }
      }
    },
    "GetWorkspaceStatusResponse": {
      "id": "GetWorkspaceStatusResponse",
      "description": "The changes that have occurred in the workspace since the base container version.",
      "type": "object",
      "properties": {
        "mergeConflict": {
          "type": "array",
          "items": {
            "$ref": "MergeConflict"
          },
          "description": "The merge conflict after sync."
        },
        "workspaceChange": {
          "type": "array",
          "items": {
            "$ref": "Entity"
          },
          "description": "Entities that have been changed in the workspace."
        }
      }
    },
    "Entity": {
      "id": "Entity",
      "description": "A workspace entity that may represent a tag, trigger, variable, or folder in addition to its status in the workspace.",
      "type": "object",
      "properties": {
        "zone": {
          "description": "The zone being represented by the entity.",
          "$ref": "Zone"
        },
        "folder": {
          "description": "The folder being represented by the entity.",
          "$ref": "Folder"
        },
        "trigger": {
          "description": "The trigger being represented by the entity.",
          "$ref": "Trigger"
        },
        "changeStatus": {
          "type": "string",
          "enum": [
            "changeStatusUnspecified",
            "none",
            "added",
            "deleted",
            "updated"
          ],
          "description": "Represents how the entity has been changed in the workspace.",
          "enumDescriptions": [
            "",
            "The entity has never been changed.",
            "The entity is added to the workspace.",
            "The entity is deleted from the workspace.",
            "The entity has been updated in the workspace."
          ]
        },
        "transformation": {
          "description": "The transformation being represented by the entity.",
          "$ref": "Transformation"
        },
        "tag": {
          "description": "The tag being represented by the entity.",
          "$ref": "Tag"
        },
        "client": {
          "description": "The client being represented by the entity.",
          "$ref": "Client"
        },
        "gtagConfig": {
          "description": "The gtag config being represented by the entity.",
          "$ref": "GtagConfig"
        },
        "variable": {
          "description": "The variable being represented by the entity.",
          "$ref": "Variable"
        },
        "customTemplate": {
          "description": "The custom template being represented by the entity.",
          "$ref": "CustomTemplate"
        },
        "builtInVariable": {
          "description": "The built in variable being represented by the entity.",
          "$ref": "BuiltInVariable"
        }
      }
    },
    "ListAccountsResponse": {
      "id": "ListAccountsResponse",
      "description": "List Accounts Response.",
      "type": "object",
      "properties": {
        "account": {
          "description": "List of GTM Accounts that a user has access to.",
          "type": "array",
          "items": {
            "$ref": "Account"
          }
        },
        "nextPageToken": {
          "type": "string",
          "description": "Continuation token for fetching the next page of results."
        }
      }
    },
    "ListGtagConfigResponse": {
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "Continuation token for fetching the next page of results."
        },
        "gtagConfig": {
          "description": "All Google tag configs in a Container.",
          "type": "array",
          "items": {
            "$ref": "GtagConfig"
          }
        }
      },
      "id": "ListGtagConfigResponse",
      "type": "object"
    },
    "SetupTag": {
      "properties": {
        "stopOnSetupFailure": {
          "type": "boolean",
          "description": "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": {
          "type": "string",
          "description": "The name of the setup tag."
        }
      },
      "type": "object",
      "id": "SetupTag",
      "description": "Represents a reference to atag that fires before another tag in order to set up dependencies."
    },
    "ListTagsResponse": {
      "id": "ListTagsResponse",
      "description": "List Tags Response.",
      "type": "object",
      "properties": {
        "nextPageToken": {
          "description": "Continuation token for fetching the next page of results.",
          "type": "string"
        },
        "tag": {
          "description": "All GTM Tags of a GTM Container.",
          "type": "array",
          "items": {
            "$ref": "Tag"
          }
        }
      }
    },
    "ContainerVersionHeader": {
      "id": "ContainerVersionHeader",
      "description": "Represents a Google Tag Manager Container Version Header.",
      "type": "object",
      "properties": {
        "numCustomTemplates": {
          "type": "string",
          "description": "Number of custom templates in the container version."
        },
        "numZones": {
          "type": "string",
          "description": "Number of zones in the container version."
        },
        "accountId": {
          "description": "GTM Account ID.",
          "type": "string"
        },
        "path": {
          "type": "string",
          "description": "GTM Container Version's API relative path."
        },
        "numTransformations": {
          "description": "Number of transformations in the container version.",
          "type": "string"
        },
        "numTriggers": {
          "description": "Number of triggers in the container version.",
          "type": "string"
        },
        "numTags": {
          "description": "Number of tags in the container version.",
          "type": "string"
        },
        "deleted": {
          "description": "A value of true indicates this container version has been deleted.",
          "type": "boolean"
        },
        "containerVersionId": {
          "description": "The Container Version ID uniquely identifies the GTM Container Version.",
          "type": "string"
        },
        "name": {
          "description": "Container version display name.",
          "type": "string"
        },
        "numGtagConfigs": {
          "type": "string",
          "description": "Number of Google tag configs in the container version."
        },
        "numVariables": {
          "description": "Number of variables in the container version.",
          "type": "string"
        },
        "containerId": {
          "description": "GTM Container ID.",
          "type": "string"
        },
        "numClients": {
          "type": "string",
          "description": "Number of clients in the container version."
        }
      }
    },
    "RevertTagResponse": {
      "properties": {
        "tag": {
          "description": "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.",
          "$ref": "Tag"
        }
      },
      "id": "RevertTagResponse",
      "description": "The result of reverting a tag in a workspace.",
      "type": "object"
    },
    "GetContainerSnippetResponse": {
      "properties": {
        "snippet": {
          "description": "Tagging snippet for a Container.",
          "type": "string"
        },
        "containerConfig": {
          "description": "Server container config param for manually provisioning a tagging server.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "GetContainerSnippetResponse"
    },
    "Variable": {
      "properties": {
        "scheduleEndMs": {
          "description": "The end timestamp in milliseconds to schedule a variable.",
          "type": "string",
          "format": "int64"
        },
        "enablingTriggerId": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "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."
        },
        "name": {
          "type": "string",
          "description": "Variable display name."
        },
        "tagManagerUrl": {
          "description": "Auto generated link to the tag manager UI",
          "type": "string"
        },
        "parentFolderId": {
          "type": "string",
          "description": "Parent folder id."
        },
        "formatValue": {
          "description": "Option to convert a variable value to other value.",
          "$ref": "VariableFormatValue"
        },
        "type": {
          "description": "GTM Variable Type.",
          "type": "string"
        },
        "containerId": {
          "description": "GTM Container ID.",
          "type": "string"
        },
        "variableId": {
          "type": "string",
          "description": "The Variable ID uniquely identifies the GTM Variable."
        },
        "parameter": {
          "type": "array",
          "items": {
            "$ref": "Parameter"
          },
          "description": "The variable's parameters."
        },
        "fingerprint": {
          "type": "string",
          "description": "The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified."
        },
        "accountId": {
          "description": "GTM Account ID.",
          "type": "string"
        },
        "workspaceId": {
          "description": "GTM Workspace ID.",
          "type": "string"
        },
        "path": {
          "type": "string",
          "description": "GTM Variable's API relative path."
        },
        "scheduleStartMs": {
          "format": "int64",
          "type": "string",
          "description": "The start timestamp in milliseconds to schedule a variable."
        },
        "disablingTriggerId": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "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."
        },
        "notes": {
          "type": "string",
          "description": "User notes on how to apply this variable in the container."
        }
      },
      "type": "object",
      "id": "Variable",
      "description": "Represents a Google Tag Manager Variable."
    },
    "Account": {
      "type": "object",
      "id": "Account",
      "description": "Represents a Google Tag Manager Account.",
      "properties": {
        "shareData": {
          "description": "Whether the account shares data anonymously with Google and others. This flag enables benchmarking by sharing your data in an anonymous form. Google will remove all identifiable information about your website, combine the data with hundreds of other anonymous sites and report aggregate trends in the benchmarking service.",
          "type": "boolean"
        },
        "accountId": {
          "type": "string",
          "description": "The Account ID uniquely identifies the GTM Account."
        },
        "fingerprint": {
          "description": "The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified.",
          "type": "string"
        },
        "tagManagerUrl": {
          "type": "string",
          "description": "Auto generated link to the tag manager UI"
        },
        "path": {
          "type": "string",
          "description": "GTM Account's API relative path."
        },
        "features": {
          "description": "Read-only Account feature set",
          "$ref": "AccountFeatures"
        },
        "name": {
          "description": "Account display name.",
          "type": "string"
        }
      }
    },
    "ListTriggersResponse": {
      "properties": {
        "trigger": {
          "type": "array",
          "items": {
            "$ref": "Trigger"
          },
          "description": "All GTM Triggers of a GTM Container."
        },
        "nextPageToken": {
          "description": "Continuation token for fetching the next page of results.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "ListTriggersResponse",
      "description": "List triggers response."
    },
    "ListFoldersResponse": {
      "type": "object",
      "id": "ListFoldersResponse",
      "description": "List Folders Response.",
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "Continuation token for fetching the next page of results."
        },
        "folder": {
          "type": "array",
          "items": {
            "$ref": "Folder"
          },
          "description": "All GTM Folders of a GTM Container."
        }
      }
    },
    "ListZonesResponse": {
      "properties": {
        "zone": {
          "description": "All GTM Zones of a GTM Container.",
          "type": "array",
          "items": {
            "$ref": "Zone"
          }
        },
        "nextPageToken": {
          "description": "Continuation token for fetching the next page of results.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "ListZonesResponse"
    },
    "ContainerFeatures": {
      "type": "object",
      "id": "ContainerFeatures",
      "properties": {
        "supportFolders": {
          "description": "Whether this Container supports folders.",
          "type": "boolean"
        },
        "supportTriggers": {
          "type": "boolean",
          "description": "Whether this Container supports triggers."
        },
        "supportEnvironments": {
          "type": "boolean",
          "description": "Whether this Container supports environments."
        },
        "supportGtagConfigs": {
          "description": "Whether this Container supports Google tag config.",
          "type": "boolean"
        },
        "supportTemplates": {
          "type": "boolean",
          "description": "Whether this Container supports templates."
        },
        "supportTransformations": {
          "type": "boolean",
          "description": "Whether this Container supports transformations."
        },
        "supportTags": {
          "type": "boolean",
          "description": "Whether this Container supports tags."
        },
        "supportVariables": {
          "type": "boolean",
          "description": "Whether this Container supports variables."
        },
        "supportVersions": {
          "type": "boolean",
          "description": "Whether this Container supports Container versions."
        },
        "supportUserPermissions": {
          "description": "Whether this Container supports user permissions managed by GTM.",
          "type": "boolean"
        },
        "supportWorkspaces": {
          "type": "boolean",
          "description": "Whether this Container supports workspaces."
        },
        "supportZones": {
          "description": "Whether this Container supports zones.",
          "type": "boolean"
        },
        "supportBuiltInVariables": {
          "description": "Whether this Container supports built-in variables",
          "type": "boolean"
        },
        "supportClients": {
          "description": "Whether this Container supports clients.",
          "type": "boolean"
        }
      }
    },
    "CreateContainerVersionRequestVersionOptions": {
      "properties": {
        "name": {
          "description": "The name of the container version to be created.",
          "type": "string"
        },
        "notes": {
          "type": "string",
          "description": "The notes of the container version to be created."
        }
      },
      "type": "object",
      "id": "CreateContainerVersionRequestVersionOptions",
      "description": "Options for new container versions."
    },
    "RevertTriggerResponse": {
      "type": "object",
      "id": "RevertTriggerResponse",
      "description": "The result of reverting a trigger in a workspace.",
      "properties": {
        "trigger": {
          "description": "Trigger as it appears in the latest container version since the last workspace synchronization operation. If no trigger is present, that means the trigger was deleted in the latest container version.",
          "$ref": "Trigger"
        }
      }
    },
    "RevertClientResponse": {
      "properties": {
        "client": {
          "description": "Client as it appears in the latest container version since the last workspace synchronization operation. If no client is present, that means the client was deleted in the latest container version.",
          "$ref": "Client"
        }
      },
      "type": "object",
      "id": "RevertClientResponse",
      "description": "The result of reverting a client in a workspace."
    },
    "UserPermission": {
      "properties": {
        "accountAccess": {
          "description": "GTM Account access permissions.",
          "$ref": "AccountAccess"
        },
        "accountId": {
          "description": "The Account ID uniquely identifies the GTM Account.",
          "type": "string"
        },
        "emailAddress": {
          "type": "string",
          "description": "User's email address."
        },
        "containerAccess": {
          "type": "array",
          "items": {
            "$ref": "ContainerAccess"
          },
          "description": "GTM Container access permissions."
        },
        "path": {
          "type": "string",
          "description": "GTM UserPermission's API relative path."
        }
      },
      "type": "object",
      "id": "UserPermission",
      "description": "Represents a user's permissions to an account and its container."
    },
    "ListTransformationsResponse": {
      "id": "ListTransformationsResponse",
      "type": "object",
      "properties": {
        "transformation": {
          "description": "All GTM Transformations of a GTM Container.",
          "type": "array",
          "items": {
            "$ref": "Transformation"
          }
        },
        "nextPageToken": {
          "description": "Continuation token for fetching the next page of results.",
          "type": "string"
        }
      }
    },
    "CustomTemplate": {
      "type": "object",
      "id": "CustomTemplate",
      "description": "Represents a Google Tag Manager Custom Template's contents.",
      "properties": {
        "accountId": {
          "type": "string",
          "description": "GTM Account ID."
        },
        "workspaceId": {
          "description": "GTM Workspace ID.",
          "type": "string"
        },
        "galleryReference": {
          "description": "A reference to the Community Template Gallery entry.",
          "$ref": "GalleryReference"
        },
        "templateData": {
          "description": "The custom template in text format.",
          "type": "string"
        },
        "fingerprint": {
          "type": "string",
          "description": "The fingerprint of the GTM Custom Template as computed at storage time. This value is recomputed whenever the template is modified."
        },
        "containerId": {
          "type": "string",
          "description": "GTM Container ID."
        },
        "name": {
          "description": "Custom Template display name.",
          "type": "string"
        },
        "path": {
          "description": "GTM Custom Template's API relative path.",
          "type": "string"
        },
        "templateId": {
          "type": "string",
          "description": "The Custom Template ID uniquely identifies the GTM custom template."
        },
        "tagManagerUrl": {
          "description": "Auto generated link to the tag manager UI",
          "type": "string"
        }
      }
    },
    "CompilerErrorLite": {
      "properties": {
        "errorMessage": {
          "type": "string"
        },
        "errorType": {
          "type": "string",
          "enum": [
            "unknownErrorType",
            "duplicateAutoEventName",
            "duplicateConditionId",
            "duplicateDefaultMacro",
            "duplicateTagName",
            "internalCompilerError",
            "invalidMacroKey",
            "invalidNumberPredicateArgs",
            "invalidMacroFormat",
            "invalidMacroNameReference",
            "invalidMacroParameter",
            "invalidUsageContext",
            "invalidRegex",
            "macroCycle",
            "unknownConditionId",
            "unknownMacroInstance",
            "invalidManualEscaping",
            "invalidHtmlCssJs",
            "macroInCommentsError",
            "jsCompilerError",
            "jsonError",
            "invalidTagParameter",
            "javascriptTooLong",
            "unknownTagInstance",
            "invalidTagReference",
            "unknownTriggerId",
            "customTriggerMissingEventFilter",
            "duplicateTriggerId",
            "unsupportedTriggerType",
            "invalidTriggerParameter",
            "duplicateExperimentId",
            "pixieCompilerError",
            "macroNotServerSideResolvable",
            "invalidBlockingTrigger",
            "lineTooLong",
            "invalidTypeInSelect",
            "gaExperimentMacroIsDeprecated",
            "unsafeHtmlContent",
            "unsafeHtmlAttributeValue",
            "unsafeCssContent",
            "parameterReferenceNotFound",
            "invalidCustomTemplateRuntimeCode",
            "conflictingDestinationRouting",
            "missingRequiredActivity",
            "unresolvableDestinationTag",
            "invalidDestinationTag",
            "tosRequiredForThirdPartyTags"
          ],
          "enumDescriptions": [
            "Unknown error type. Place holder for the enum's default value; not valid.",
            "There are multiple auto-event instances with the same name. parent - N EntityKeys each with their auto_event_key populated.",
            "There are multiple conditions with the same id. parent - N EntityKeys each with their condition_key populated.",
            "There are multiple default macros with the same name. parent - N EntityKeys each with their macro_key populated. context - The macro name.",
            "There are multiple tag instances with the same name. parent - N EntityKeys each with their tag_key populated.",
            "An internal compiler invariant was broken. parent - 1 EntityKey which may have macro_key, condition_key, or tag_key populated. It's also possible that no keys are populated. context - An internal string (shouldn't be shown to the user) describing the problem.",
            "An macro instance key was invalid e.g. foo#bar parent - 1 EntityKey with one of the following populated: macro_key, condition_key, tag_key. context - The string of the invalid name.",
            "Wrong number of args passed to a predicate. parent - 1 EntityKey with its condition_key populated.",
            "Macro format was invalid e.g. foo#bar parent - 1 EntityKey with one of the following populated: condition_key, tag_key. context - The full string of the invalid macro and surrounding literals.",
            "A macro name was referenced instead of a macro key. parent - 1 EntityKey with one of the following populated: condition_key, tag_key. context - The name of the invalid macro name.",
            "Macro had an invalid parameter. This could be anything from a parameter being a complex type or a macro parameter containing a macro reference. parent - 1 EntityKey with its macro_key populated. context - The value of the offending parameter if it is string-able.",
            "Usage context of a container was invalid. Currently, this error can occur when a container context specifies both web and mobile. The UI shouldn't allowed creating such a mixed container. parent - not set context - The description of the context",
            "Contents of an Regex predicate had an invalid pattern. parent - 1 EntityKey with one of the following populated: condition_key. context - The offending pattern.",
            "There was a macro whose resolution would depend on itself. parent - N EntityKeys each with their macro_key, trigger_key, or condition_key populated. This represents the macro cycle. context - Empty.",
            "A condition id was used which doesn't exist in the conditions list. parent - 1 EntityKey with its tag_key populated. context - The integer id of the missing conditional.",
            "A macro name was used which doesn't exist in the macro list. parent - 1 EntityKey with one of the following populated: condition_key, tag_key. context - The name of the missing macro instance.",
            "User-provided escaping inappropriate for the context in which it is used. parent - 1 EntityKey with one of the following populated: macro_key, condition_key, tag_key. context - Empty.",
            "Auto-escaped content is not valid HTML, CSS or JavaScript. parent - 1 EntityKey with one of the following populated: tag_key. context - Empty.",
            "Macro reference found inside an HTML, CSS or JavaScript comment. parent - 1 EntityKey with one of the following populated: tag_key. context - Empty.",
            "Contents of an HTML script tag could not be compiled by JsCompiler. parent - 1 EntityKey with one of the following populated: tag_key. context - Empty.",
            "Contents of a ConfigurationValue script tag could not be parsed by the JSON parser. parent - 1 EntityKey with one of the following populated: tag_key. context - Empty.",
            "Tag had an invalid parameter. This could be anything from a parameter being a complex type or a macro parameter containing a macro reference. parent - 1 EntityKey with its tag_key populated. context - The value of the offending parameter if it is string-able.",
            "An arbitrary HTML tag contains a piece of javascript with too many contiguous non-whitespace characters (e.g. a long array with no spaces between elements or an extremely long variable name).",
            "A tag name was used which doesn't exist in the input tag list. parent - 1 EntityKey with tag_key populated. context - The name of the missing tag instance.",
            "A tag name was used which doesn't exist in the compiled tag list. This happens if a tag is dependent on another tag, but the other tag has no rules attached to it and is pruned in the compiler. parent - 1 EntityKey with tag_key populated. context - The name of the missing tag instance.",
            "A trigger id was used which doesn't exist in the triggers list. parent - 1 EntityKey parent of the unknown trigger. context - The id of the missing trigger instance.",
            "A trigger of type custom trigger was created that doesn't include a custom event filter. parent - 1 EntityKey with its trigger_key populated. context - Empty.",
            "There are multiple triggers with the same id. parent - N EntityKeys each with their trigger_key populated. context - Empty.",
            "There is an unknown or unsupported trigger type. parent - 1 EntityKey with its trigger_key populated. context - The trigger type.",
            "A trigger has an invalid parameter. parent - 1 EntityKey with its trigger_key populated. context - The invalid field.",
            "There are multiple experiments with the same id. parent - N EntityKeys each with their experiment_key populated. context - Empty.",
            "Contents of a pixie tag/macro could not be compiled by Pixie Parser. parent - 1 EntityKey with one of the following populated: tag_key, macro_key. context - Empty.",
            "The macro cannot be resolved at server side. parent - 1 EntityKey indicating the entity in which this macro is used. context - The macro name.",
            "The trigger cannot be used in blocking predicates (i.e. only All/Some pages triggers work for AMP, NS etc.) parent - 1 EntityKey indicating the tag in which this trigger is used. context - The trigger name.",
            "A line in the input text is too long.",
            "The value of a SELECT parameter in a vendor template instance does not point to an allowed vendor template instance. For details, see the documentation of the typesInSelect property in a vendor template. parent - 1 EntityKey indicating the tag/macro with this parameter. context - The parameter name.",
            "The input container version contains a deprecated GA content experiment macro that needs to be removed.",
            "Reminder: new error types will be treated as internal errors and trigger alerts unless they are handled in j/c/g/analytics/containertag/compiler/ErrorReporter.java&l=104 Please also remember to add new error types to CTUI at j/c/g/analytics/containertag/ui/app/components/container/compilererror/ HTML is not sanitized and contains unsafe content.",
            "HTML attribute is not sanitized and the value is unsafe.",
            "CSS is not sanitized and contains unsafe content.",
            "The specified parameter was not found in the referenced entity. parent - 1 EntityKey with tag_key populated. context - The missing parameter in the form of \".\".",
            "The custom template has invalid runtime code. parent - Entity key for the custom template. context - The error message.",
            "The container version contains a Google tag tag and a destination tag that use the same destination ID. parent - Entity key for the conflicting Google tag. context - The Google tag tag name.",
            "The container version has routing destinations, but is missing required activity instances. parent - Empty. context - Empty. proposed_change - The proposed change to add the missing activities.",
            "The container version contains a product destination tag with a destination ID value that cannot be resolved statically. parent - Entity key of the destination tag. context - The name of the variable that could not be resolved. If the destination ID was a template value, then this will be the serialized value.",
            "The container version contains a product destination tag with a destination ID value that is in an invalid format. parent - Entity key of the destination tag. context - The invalid destination ID.",
            "GTM ToS is required for publishing versions with 3P tags. parent - not set context - Empty."
          ]
        }
      },
      "id": "CompilerErrorLite",
      "type": "object"
    },
    "Folder": {
      "properties": {
        "fingerprint": {
          "type": "string",
          "description": "The fingerprint of the GTM Folder as computed at storage time. This value is recomputed whenever the folder is modified."
        },
        "workspaceId": {
          "description": "GTM Workspace ID.",
          "type": "string"
        },
        "accountId": {
          "type": "string",
          "description": "GTM Account ID."
        },
        "tagManagerUrl": {
          "description": "Auto generated link to the tag manager UI",
          "type": "string"
        },
        "path": {
          "type": "string",
          "description": "GTM Folder's API relative path."
        },
        "name": {
          "type": "string",
          "description": "Folder display name."
        },
        "containerId": {
          "description": "GTM Container ID.",
          "type": "string"
        },
        "notes": {
          "type": "string",
          "description": "User notes on how to apply this folder in the container."
        },
        "folderId": {
          "type": "string",
          "description": "The Folder ID uniquely identifies the GTM Folder."
        }
      },
      "id": "Folder",
      "description": "Represents a Google Tag Manager Folder.",
      "type": "object"
    },
    "ListVariablesResponse": {
      "id": "ListVariablesResponse",
      "description": "List Variables Response.",
      "type": "object",
      "properties": {
        "variable": {
          "type": "array",
          "items": {
            "$ref": "Variable"
          },
          "description": "All GTM Variables of a GTM Container."
        },
        "nextPageToken": {
          "type": "string",
          "description": "Continuation token for fetching the next page of results."
        }
      }
    },
    "Client": {
      "id": "Client",
      "type": "object",
      "properties": {
        "workspaceId": {
          "description": "GTM Workspace ID.",
          "type": "string"
        },
        "accountId": {
          "description": "GTM Account ID.",
          "type": "string"
        },
        "parameter": {
          "description": "The client's parameters.",
          "type": "array",
          "items": {
            "$ref": "Parameter"
          }
        },
        "fingerprint": {
          "description": "The fingerprint of the GTM Client as computed at storage time. This value is recomputed whenever the client is modified.",
          "type": "string"
        },
        "priority": {
          "format": "int32",
          "description": "Priority determines relative firing order.",
          "type": "integer"
        },
        "notes": {
          "description": "User notes on how to apply this tag in the container.",
          "type": "string"
        },
        "path": {
          "type": "string",
          "description": "GTM client's API relative path."
        },
        "clientId": {
          "type": "string",
          "description": "The Client ID uniquely identifies the GTM client."
        },
        "containerId": {
          "description": "GTM Container ID.",
          "type": "string"
        },
        "parentFolderId": {
          "description": "Parent folder id.",
          "type": "string"
        },
        "type": {
          "description": "Client type.",
          "type": "string"
        },
        "tagManagerUrl": {
          "description": "Auto generated link to the tag manager UI",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Client display name."
        }
      }
    },
    "Environment": {
      "type": "object",
      "id": "Environment",
      "description": "Represents a Google Tag Manager Environment. Note that a user can create, delete and update environments of type USER, but can only update the enable_debug and url fields of environments of other types.",
      "properties": {
        "fingerprint": {
          "description": "The fingerprint of the GTM environment as computed at storage time. This value is recomputed whenever the environment is modified.",
          "type": "string"
        },
        "authorizationTimestamp": {
          "format": "google-datetime",
          "description": "The last update time-stamp for the authorization code.",
          "type": "string"
        },
        "accountId": {
          "type": "string",
          "description": "GTM Account ID."
        },
        "description": {
          "description": "The environment description. Can be set or changed only on USER type environments.",
          "type": "string"
        },
        "workspaceId": {
          "description": "Represents a link to a quick preview of a workspace.",
          "type": "string"
        },
        "path": {
          "description": "GTM Environment's API relative path.",
          "type": "string"
        },
        "environmentId": {
          "type": "string",
          "description": "GTM Environment ID uniquely identifies the GTM Environment."
        },
        "authorizationCode": {
          "type": "string",
          "description": "The environment authorization code."
        },
        "enableDebug": {
          "type": "boolean",
          "description": "Whether or not to enable debug by default for the environment."
        },
        "url": {
          "description": "Default preview page url for the environment.",
          "type": "string"
        },
        "name": {
          "description": "The environment display name. Can be set or changed only on USER type environments.",
          "type": "string"
        },
        "containerVersionId": {
          "type": "string",
          "description": "Represents a link to a container version."
        },
        "tagManagerUrl": {
          "type": "string",
          "description": "Auto generated link to the tag manager UI"
        },
        "type": {
          "description": "The type of this environment.",
          "enumDescriptions": [
            "Points to a user defined environment.",
            "Points to the current live container version.",
            "Points to the latest container version.",
            "Automatically managed environment that points to a workspace preview or version created by a workspace."
          ],
          "type": "string",
          "enum": [
            "user",
            "live",
            "latest",
            "workspace"
          ]
        },
        "containerId": {
          "type": "string",
          "description": "GTM Container ID."
        }
      }
    },
    "Workspace": {
      "properties": {
        "path": {
          "description": "GTM Workspace's API relative path.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Workspace display name."
        },
        "fingerprint": {
          "description": "The fingerprint of the GTM Workspace as computed at storage time. This value is recomputed whenever the workspace is modified.",
          "type": "string"
        },
        "tagManagerUrl": {
          "type": "string",
          "description": "Auto generated link to the tag manager UI"
        },
        "accountId": {
          "type": "string",
          "description": "GTM Account ID."
        },
        "description": {
          "type": "string",
          "description": "Workspace description."
        },
        "containerId": {
          "description": "GTM Container ID.",
          "type": "string"
        },
        "workspaceId": {
          "type": "string",
          "description": "The Workspace ID uniquely identifies the GTM Workspace."
        }
      },
      "id": "Workspace",
      "description": "Represents a Google Tag Manager Container Workspace.",
      "type": "object"
    },
    "FolderEntities": {
      "type": "object",
      "id": "FolderEntities",
      "description": "Represents a Google Tag Manager Folder's contents.",
      "properties": {
        "tag": {
          "type": "array",
          "items": {
            "$ref": "Tag"
          },
          "description": "The list of tags inside the folder."
        },
        "trigger": {
          "type": "array",
          "items": {
            "$ref": "Trigger"
          },
          "description": "The list of triggers inside the folder."
        },
        "variable": {
          "description": "The list of variables inside the folder.",
          "type": "array",
          "items": {
            "$ref": "Variable"
          }
        },
        "nextPageToken": {
          "description": "Continuation token for fetching the next page of results.",
          "type": "string"
        }
      }
    },
    "CreateBuiltInVariableResponse": {
      "id": "CreateBuiltInVariableResponse",
      "type": "object",
      "properties": {
        "builtInVariable": {
          "description": "List of created built-in variables.",
          "type": "array",
          "items": {
            "$ref": "BuiltInVariable"
          }
        }
      }
    },
    "RevertZoneResponse": {
      "properties": {
        "zone": {
          "description": "Zone as it appears in the latest container version since the last workspace synchronization operation. If no zone is present, that means the zone was deleted in the latest container version.",
          "$ref": "Zone"
        }
      },
      "type": "object",
      "id": "RevertZoneResponse",
      "description": "The result of reverting a zone in a workspace."
    }
  },
  "rootUrl": "https://tagmanager.googleapis.com/",
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/tagmanager.readonly": {
          "description": "View your Google Tag Manager container and its subcomponents"
        },
        "https://www.googleapis.com/auth/tagmanager.manage.users": {
          "description": "Manage user permissions of your Google Tag Manager account and container"
        },
        "https://www.googleapis.com/auth/tagmanager.delete.containers": {
          "description": "Delete your Google Tag Manager containers"
        },
        "https://www.googleapis.com/auth/tagmanager.edit.containers": {
          "description": "Manage your Google Tag Manager container and its subcomponents, excluding versioning and publishing"
        },
        "https://www.googleapis.com/auth/tagmanager.edit.containerversions": {
          "description": "Manage your Google Tag Manager container versions"
        },
        "https://www.googleapis.com/auth/tagmanager.publish": {
          "description": "Publish your Google Tag Manager container versions"
        },
        "https://www.googleapis.com/auth/tagmanager.manage.accounts": {
          "description": "View and manage your Google Tag Manager accounts"
        }
      }
    }
  },
  "id": "tagmanager:v2",
  "revision": "20260617",
  "ownerDomain": "google.com",
  "batchPath": "batch",
  "protocol": "rest",
  "version": "v2",
  "title": "Tag Manager API",
  "parameters": {
    "access_token": {
      "type": "string",
      "description": "OAuth access token.",
      "location": "query"
    },
    "callback": {
      "type": "string",
      "description": "JSONP",
      "location": "query"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "$.xgafv": {
      "enum": [
        "1",
        "2"
      ],
      "type": "string",
      "description": "V1 error format.",
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "key": {
      "type": "string",
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query"
    },
    "prettyPrint": {
      "description": "Returns response with indentations and line breaks.",
      "default": "true",
      "location": "query",
      "type": "boolean"
    },
    "alt": {
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "default": "json",
      "type": "string",
      "description": "Data format for response.",
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query"
    }
  },
  "documentationLink": "https://developers.google.com/tag-manager",
  "canonicalName": "Tag Manager",
  "servicePath": "",
  "ownerName": "Google",
  "resources": {
    "accounts": {
      "methods": {
        "list": {
          "description": "Lists all GTM Accounts that a user has access to.",
          "flatPath": "tagmanager/v2/accounts",
          "scopes": [
            "https://www.googleapis.com/auth/tagmanager.edit.containers",
            "https://www.googleapis.com/auth/tagmanager.manage.accounts",
            "https://www.googleapis.com/auth/tagmanager.readonly"
          ],
          "id": "tagmanager.accounts.list",
          "httpMethod": "GET",
          "parameterOrder": [],
          "response": {
            "$ref": "ListAccountsResponse"
          },
          "path": "tagmanager/v2/accounts",
          "parameters": {
            "pageToken": {
              "description": "Continuation token for fetching the next page of results.",
              "location": "query",
              "type": "string"
            },
            "includeGoogleTags": {
              "description": "Also retrieve accounts associated with Google Tag when true.",
              "location": "query",
              "type": "boolean"
            }
          }
        },
        "update": {
          "description": "Updates a GTM Account.",
          "flatPath": "tagmanager/v2/accounts/{accountsId}",
          "request": {
            "$ref": "Account"
          },
          "scopes": [
            "https://www.googleapis.com/auth/tagmanager.manage.accounts"
          ],
          "id": "tagmanager.accounts.update",
          "httpMethod": "PUT",
          "parameterOrder": [
            "path"
          ],
          "response": {
            "$ref": "Account"
          },
          "path": "tagmanager/v2/{+path}",
          "parameters": {
            "path": {
              "required": true,
              "pattern": "^accounts/[^/]+$",
              "type": "string",
              "description": "GTM Account's API relative path.",
              "location": "path"
            },
            "fingerprint": {
              "type": "string",
              "description": "When provided, this fingerprint must match the fingerprint of the account in storage.",
              "location": "query"
            }
          }
        },
        "get": {
          "path": "tagmanager/v2/{+path}",
          "parameters": {
            "path": {
              "type": "string",
              "description": "GTM Account's API relative path.",
              "location": "path",
              "pattern": "^accounts/[^/]+$",
              "required": true
            }
          },
          "flatPath": "tagmanager/v2/accounts/{accountsId}",
          "description": "Gets a GTM Account.",
          "scopes": [
            "https://www.googleapis.com/auth/tagmanager.edit.containers",
            "https://www.googleapis.com/auth/tagmanager.manage.accounts",
            "https://www.googleapis.com/auth/tagmanager.readonly"
          ],
          "id": "tagmanager.accounts.get",
          "response": {
            "$ref": "Account"
          },
          "httpMethod": "GET",
          "parameterOrder": [
            "path"
          ]
        }
      },
      "resources": {
        "user_permissions": {
          "methods": {
            "list": {
              "id": "tagmanager.accounts.user_permissions.list",
              "httpMethod": "GET",
              "parameterOrder": [
                "parent"
              ],
              "response": {
                "$ref": "ListUserPermissionsResponse"
              },
              "description": "List all users that have access to the account along with Account and Container user access granted to each of them.",
              "flatPath": "tagmanager/v2/accounts/{accountsId}/user_permissions",
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.manage.users"
              ],
              "path": "tagmanager/v2/{+parent}/user_permissions",
              "parameters": {
                "parent": {
                  "pattern": "^accounts/[^/]+$",
                  "type": "string",
                  "description": "GTM Account's API relative path.",
                  "location": "path",
                  "required": true
                },
                "pageToken": {
                  "type": "string",
                  "description": "Continuation token for fetching the next page of results.",
                  "location": "query"
                }
              }
            },
            "update": {
              "parameters": {
                "path": {
                  "description": "GTM UserPermission's API relative path.",
                  "location": "path",
                  "type": "string",
                  "pattern": "^accounts/[^/]+/user_permissions/[^/]+$",
                  "required": true
                }
              },
              "path": "tagmanager/v2/{+path}",
              "response": {
                "$ref": "UserPermission"
              },
              "httpMethod": "PUT",
              "parameterOrder": [
                "path"
              ],
              "id": "tagmanager.accounts.user_permissions.update",
              "request": {
                "$ref": "UserPermission"
              },
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.manage.users"
              ],
              "flatPath": "tagmanager/v2/accounts/{accountsId}/user_permissions/{user_permissionsId}",
              "description": "Updates a user's Account & Container access."
            },
            "get": {
              "parameters": {
                "path": {
                  "required": true,
                  "type": "string",
                  "description": "GTM UserPermission's API relative path.",
                  "location": "path",
                  "pattern": "^accounts/[^/]+/user_permissions/[^/]+$"
                }
              },
              "path": "tagmanager/v2/{+path}",
              "httpMethod": "GET",
              "parameterOrder": [
                "path"
              ],
              "response": {
                "$ref": "UserPermission"
              },
              "id": "tagmanager.accounts.user_permissions.get",
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.manage.users"
              ],
              "description": "Gets a user's Account & Container access.",
              "flatPath": "tagmanager/v2/accounts/{accountsId}/user_permissions/{user_permissionsId}"
            },
            "create": {
              "path": "tagmanager/v2/{+parent}/user_permissions",
              "parameters": {
                "parent": {
                  "description": "GTM Account's API relative path.",
                  "location": "path",
                  "type": "string",
                  "pattern": "^accounts/[^/]+$",
                  "required": true
                }
              },
              "id": "tagmanager.accounts.user_permissions.create",
              "httpMethod": "POST",
              "parameterOrder": [
                "parent"
              ],
              "response": {
                "$ref": "UserPermission"
              },
              "description": "Creates a user's Account & Container access.",
              "flatPath": "tagmanager/v2/accounts/{accountsId}/user_permissions",
              "request": {
                "$ref": "UserPermission"
              },
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.manage.users"
              ]
            },
            "delete": {
              "httpMethod": "DELETE",
              "parameters": {
                "path": {
                  "required": true,
                  "description": "GTM UserPermission's API relative path.",
                  "location": "path",
                  "type": "string",
                  "pattern": "^accounts/[^/]+/user_permissions/[^/]+$"
                }
              },
              "parameterOrder": [
                "path"
              ],
              "id": "tagmanager.accounts.user_permissions.delete",
              "path": "tagmanager/v2/{+path}",
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.manage.users"
              ],
              "description": "Removes a user from the account, revoking access to it and all of its containers.",
              "flatPath": "tagmanager/v2/accounts/{accountsId}/user_permissions/{user_permissionsId}"
            }
          }
        },
        "containers": {
          "resources": {
            "workspaces": {
              "resources": {
                "triggers": {
                  "methods": {
                    "delete": {
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "description": "Deletes a GTM Trigger.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers/{triggersId}",
                      "httpMethod": "DELETE",
                      "parameters": {
                        "path": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/triggers/[^/]+$",
                          "type": "string",
                          "description": "GTM Trigger's API relative path.",
                          "location": "path"
                        }
                      },
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.triggers.delete",
                      "path": "tagmanager/v2/{+path}"
                    },
                    "list": {
                      "parameters": {
                        "parent": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "type": "string"
                        },
                        "pageToken": {
                          "type": "string",
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query"
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/triggers",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "ListTriggersResponse"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.triggers.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "description": "Lists all GTM Triggers of a Container.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers"
                    },
                    "update": {
                      "path": "tagmanager/v2/{+path}",
                      "parameters": {
                        "path": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/triggers/[^/]+$",
                          "description": "GTM Trigger's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        },
                        "fingerprint": {
                          "type": "string",
                          "description": "When provided, this fingerprint must match the fingerprint of the trigger in storage.",
                          "location": "query"
                        }
                      },
                      "description": "Updates a GTM Trigger.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers/{triggersId}",
                      "request": {
                        "$ref": "Trigger"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.triggers.update",
                      "httpMethod": "PUT",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "Trigger"
                      }
                    },
                    "get": {
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "description": "Gets a GTM Trigger.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers/{triggersId}",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "Trigger"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.triggers.get",
                      "parameters": {
                        "path": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/triggers/[^/]+$",
                          "description": "GTM Trigger's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        }
                      },
                      "path": "tagmanager/v2/{+path}"
                    },
                    "create": {
                      "id": "tagmanager.accounts.containers.workspaces.triggers.create",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "Trigger"
                      },
                      "description": "Creates a GTM Trigger.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers",
                      "request": {
                        "$ref": "Trigger"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "path": "tagmanager/v2/{+parent}/triggers",
                      "parameters": {
                        "parent": {
                          "required": true,
                          "type": "string",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$"
                        }
                      }
                    },
                    "revert": {
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers/{triggersId}:revert",
                      "description": "Reverts changes to a GTM Trigger in a GTM Workspace.",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.triggers.revert",
                      "response": {
                        "$ref": "RevertTriggerResponse"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ],
                      "path": "tagmanager/v2/{+path}:revert",
                      "parameters": {
                        "path": {
                          "type": "string",
                          "description": "GTM Trigger's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/triggers/[^/]+$",
                          "required": true
                        },
                        "fingerprint": {
                          "description": "When provided, this fingerprint must match the fingerprint of the trigger in storage.",
                          "location": "query",
                          "type": "string"
                        }
                      }
                    }
                  }
                },
                "gtag_config": {
                  "methods": {
                    "delete": {
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/gtag_config/{gtag_configId}",
                      "description": "Deletes a Google tag config.",
                      "httpMethod": "DELETE",
                      "parameters": {
                        "path": {
                          "required": true,
                          "description": "Google tag config's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/gtag_config/[^/]+$"
                        }
                      },
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.gtag_config.delete",
                      "path": "tagmanager/v2/{+path}"
                    },
                    "list": {
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/gtag_config",
                      "description": "Lists all Google tag configs in a Container.",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.gtag_config.list",
                      "response": {
                        "$ref": "ListGtagConfigResponse"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "path": "tagmanager/v2/{+parent}/gtag_config",
                      "parameters": {
                        "parent": {
                          "required": true,
                          "type": "string",
                          "description": "Workspace's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$"
                        },
                        "pageToken": {
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query",
                          "type": "string"
                        }
                      }
                    },
                    "update": {
                      "response": {
                        "$ref": "GtagConfig"
                      },
                      "httpMethod": "PUT",
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.gtag_config.update",
                      "request": {
                        "$ref": "GtagConfig"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/gtag_config/{gtag_configId}",
                      "description": "Updates a Google tag config.",
                      "parameters": {
                        "path": {
                          "required": true,
                          "type": "string",
                          "description": "Google tag config's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/gtag_config/[^/]+$"
                        },
                        "fingerprint": {
                          "description": "When provided, this fingerprint must match the fingerprint of the config in storage.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "path": "tagmanager/v2/{+path}"
                    },
                    "create": {
                      "response": {
                        "$ref": "GtagConfig"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.gtag_config.create",
                      "request": {
                        "$ref": "GtagConfig"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/gtag_config",
                      "description": "Creates a Google tag config.",
                      "parameters": {
                        "parent": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "type": "string",
                          "description": "Workspace's API relative path.",
                          "location": "path"
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/gtag_config"
                    },
                    "get": {
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "GtagConfig"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.gtag_config.get",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "description": "Gets a Google tag config.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/gtag_config/{gtag_configId}",
                      "parameters": {
                        "path": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/gtag_config/[^/]+$",
                          "description": "Google tag config's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        }
                      },
                      "path": "tagmanager/v2/{+path}"
                    }
                  }
                },
                "clients": {
                  "methods": {
                    "delete": {
                      "id": "tagmanager.accounts.containers.workspaces.clients.delete",
                      "path": "tagmanager/v2/{+path}",
                      "httpMethod": "DELETE",
                      "parameters": {
                        "path": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/clients/[^/]+$",
                          "description": "GTM Client's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        }
                      },
                      "parameterOrder": [
                        "path"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/clients/{clientsId}",
                      "description": "Deletes a GTM Client.",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ]
                    },
                    "get": {
                      "parameters": {
                        "path": {
                          "required": true,
                          "description": "GTM Client's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/clients/[^/]+$"
                        }
                      },
                      "path": "tagmanager/v2/{+path}",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "description": "Gets a GTM Client.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/clients/{clientsId}",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "Client"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.clients.get"
                    },
                    "create": {
                      "request": {
                        "$ref": "Client"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/clients",
                      "description": "Creates a GTM Client.",
                      "response": {
                        "$ref": "Client"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.clients.create",
                      "parameters": {
                        "parent": {
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "required": true
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/clients"
                    },
                    "revert": {
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/clients/{clientsId}:revert",
                      "description": "Reverts changes to a GTM Client in a GTM Workspace.",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.clients.revert",
                      "response": {
                        "$ref": "RevertClientResponse"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ],
                      "path": "tagmanager/v2/{+path}:revert",
                      "parameters": {
                        "path": {
                          "required": true,
                          "description": "GTM Client's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/clients/[^/]+$"
                        },
                        "fingerprint": {
                          "type": "string",
                          "description": "When provided, this fingerprint must match the fingerprint of the client in storage.",
                          "location": "query"
                        }
                      }
                    },
                    "list": {
                      "path": "tagmanager/v2/{+parent}/clients",
                      "parameters": {
                        "parent": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "type": "string",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "required": true
                        },
                        "pageToken": {
                          "type": "string",
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query"
                        }
                      },
                      "description": "Lists all GTM Clients of a GTM container workspace.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/clients",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.clients.list",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "ListClientsResponse"
                      }
                    },
                    "update": {
                      "parameters": {
                        "path": {
                          "type": "string",
                          "description": "GTM Client's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/clients/[^/]+$",
                          "required": true
                        },
                        "fingerprint": {
                          "description": "When provided, this fingerprint must match the fingerprint of the client in storage.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "path": "tagmanager/v2/{+path}",
                      "response": {
                        "$ref": "Client"
                      },
                      "httpMethod": "PUT",
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.clients.update",
                      "request": {
                        "$ref": "Client"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/clients/{clientsId}",
                      "description": "Updates a GTM Client."
                    }
                  }
                },
                "variables": {
                  "methods": {
                    "delete": {
                      "description": "Deletes a GTM Variable.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables/{variablesId}",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.variables.delete",
                      "path": "tagmanager/v2/{+path}",
                      "httpMethod": "DELETE",
                      "parameters": {
                        "path": {
                          "required": true,
                          "type": "string",
                          "description": "GTM Variable's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/variables/[^/]+$"
                        }
                      },
                      "parameterOrder": [
                        "path"
                      ]
                    },
                    "get": {
                      "id": "tagmanager.accounts.containers.workspaces.variables.get",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "Variable"
                      },
                      "description": "Gets a GTM Variable.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables/{variablesId}",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "path": "tagmanager/v2/{+path}",
                      "parameters": {
                        "path": {
                          "description": "GTM Variable's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/variables/[^/]+$",
                          "required": true
                        }
                      }
                    },
                    "create": {
                      "parameters": {
                        "parent": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/variables",
                      "request": {
                        "$ref": "Variable"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables",
                      "description": "Creates a GTM Variable.",
                      "response": {
                        "$ref": "Variable"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.variables.create"
                    },
                    "revert": {
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables/{variablesId}:revert",
                      "description": "Reverts changes to a GTM Variable in a GTM Workspace.",
                      "response": {
                        "$ref": "RevertVariableResponse"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.variables.revert",
                      "parameters": {
                        "path": {
                          "description": "GTM Variable's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/variables/[^/]+$",
                          "required": true
                        },
                        "fingerprint": {
                          "type": "string",
                          "description": "When provided, this fingerprint must match the fingerprint of the variable in storage.",
                          "location": "query"
                        }
                      },
                      "path": "tagmanager/v2/{+path}:revert"
                    },
                    "list": {
                      "parameters": {
                        "parent": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "type": "string"
                        },
                        "pageToken": {
                          "type": "string",
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query"
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/variables",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables",
                      "description": "Lists all GTM Variables of a Container.",
                      "response": {
                        "$ref": "ListVariablesResponse"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.variables.list"
                    },
                    "update": {
                      "response": {
                        "$ref": "Variable"
                      },
                      "httpMethod": "PUT",
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.variables.update",
                      "request": {
                        "$ref": "Variable"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables/{variablesId}",
                      "description": "Updates a GTM Variable.",
                      "parameters": {
                        "path": {
                          "required": true,
                          "description": "GTM Variable's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/variables/[^/]+$"
                        },
                        "fingerprint": {
                          "type": "string",
                          "description": "When provided, this fingerprint must match the fingerprint of the variable in storage.",
                          "location": "query"
                        }
                      },
                      "path": "tagmanager/v2/{+path}"
                    }
                  }
                },
                "built_in_variables": {
                  "methods": {
                    "list": {
                      "path": "tagmanager/v2/{+parent}/built_in_variables",
                      "parameters": {
                        "parent": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        },
                        "pageToken": {
                          "type": "string",
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query"
                        }
                      },
                      "id": "tagmanager.accounts.containers.workspaces.built_in_variables.list",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "ListEnabledBuiltInVariablesResponse"
                      },
                      "description": "Lists all the enabled Built-In Variables of a GTM Container.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/built_in_variables",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ]
                    },
                    "delete": {
                      "httpMethod": "DELETE",
                      "parameters": {
                        "path": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/built_in_variables$",
                          "description": "GTM BuiltInVariable's API relative path.",
                          "location": "path",
                          "type": "string"
                        },
                        "type": {
                          "type": "string",
                          "description": "The types of built-in variables to delete.",
                          "location": "query",
                          "repeated": true,
                          "enumDescriptions": [
                            "",
                            "",
                            "",
                            "",
                            "",
                            "For web or mobile.",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "For web or mobile.",
                            "",
                            "For web or mobile.",
                            "For web or mobile.",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            ""
                          ],
                          "enum": [
                            "builtInVariableTypeUnspecified",
                            "pageUrl",
                            "pageHostname",
                            "pagePath",
                            "referrer",
                            "event",
                            "clickElement",
                            "clickClasses",
                            "clickId",
                            "clickTarget",
                            "clickUrl",
                            "clickText",
                            "firstPartyServingUrl",
                            "formElement",
                            "formClasses",
                            "formId",
                            "formTarget",
                            "formUrl",
                            "formText",
                            "errorMessage",
                            "errorUrl",
                            "errorLine",
                            "newHistoryUrl",
                            "oldHistoryUrl",
                            "newHistoryFragment",
                            "oldHistoryFragment",
                            "newHistoryState",
                            "oldHistoryState",
                            "historySource",
                            "containerVersion",
                            "debugMode",
                            "randomNumber",
                            "containerId",
                            "appId",
                            "appName",
                            "appVersionCode",
                            "appVersionName",
                            "language",
                            "osVersion",
                            "platform",
                            "sdkVersion",
                            "deviceName",
                            "resolution",
                            "advertiserId",
                            "advertisingTrackingEnabled",
                            "htmlId",
                            "environmentName",
                            "ampBrowserLanguage",
                            "ampCanonicalPath",
                            "ampCanonicalUrl",
                            "ampCanonicalHost",
                            "ampReferrer",
                            "ampTitle",
                            "ampClientId",
                            "ampClientTimezone",
                            "ampClientTimestamp",
                            "ampClientScreenWidth",
                            "ampClientScreenHeight",
                            "ampClientScrollX",
                            "ampClientScrollY",
                            "ampClientMaxScrollX",
                            "ampClientMaxScrollY",
                            "ampTotalEngagedTime",
                            "ampPageViewId",
                            "ampPageLoadTime",
                            "ampPageDownloadTime",
                            "ampGtmEvent",
                            "eventName",
                            "firebaseEventParameterCampaign",
                            "firebaseEventParameterCampaignAclid",
                            "firebaseEventParameterCampaignAnid",
                            "firebaseEventParameterCampaignClickTimestamp",
                            "firebaseEventParameterCampaignContent",
                            "firebaseEventParameterCampaignCp1",
                            "firebaseEventParameterCampaignGclid",
                            "firebaseEventParameterCampaignSource",
                            "firebaseEventParameterCampaignTerm",
                            "firebaseEventParameterCurrency",
                            "firebaseEventParameterDynamicLinkAcceptTime",
                            "firebaseEventParameterDynamicLinkLinkid",
                            "firebaseEventParameterNotificationMessageDeviceTime",
                            "firebaseEventParameterNotificationMessageId",
                            "firebaseEventParameterNotificationMessageName",
                            "firebaseEventParameterNotificationMessageTime",
                            "firebaseEventParameterNotificationTopic",
                            "firebaseEventParameterPreviousAppVersion",
                            "firebaseEventParameterPreviousOsVersion",
                            "firebaseEventParameterPrice",
                            "firebaseEventParameterProductId",
                            "firebaseEventParameterQuantity",
                            "firebaseEventParameterValue",
                            "videoProvider",
                            "videoUrl",
                            "videoTitle",
                            "videoDuration",
                            "videoPercent",
                            "videoVisible",
                            "videoStatus",
                            "videoCurrentTime",
                            "scrollDepthThreshold",
                            "scrollDepthUnits",
                            "scrollDepthDirection",
                            "elementVisibilityRatio",
                            "elementVisibilityTime",
                            "elementVisibilityFirstTime",
                            "elementVisibilityRecentTime",
                            "requestPath",
                            "requestMethod",
                            "clientName",
                            "queryString",
                            "serverPageLocationUrl",
                            "serverPageLocationPath",
                            "serverPageLocationHostname",
                            "visitorRegion",
                            "analyticsClientId",
                            "analyticsSessionId",
                            "analyticsSessionNumber"
                          ]
                        }
                      },
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.built_in_variables.delete",
                      "path": "tagmanager/v2/{+path}",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "description": "Deletes one or more GTM Built-In Variables.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/built_in_variables"
                    },
                    "create": {
                      "parameters": {
                        "parent": {
                          "type": "string",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "required": true
                        },
                        "type": {
                          "enum": [
                            "builtInVariableTypeUnspecified",
                            "pageUrl",
                            "pageHostname",
                            "pagePath",
                            "referrer",
                            "event",
                            "clickElement",
                            "clickClasses",
                            "clickId",
                            "clickTarget",
                            "clickUrl",
                            "clickText",
                            "firstPartyServingUrl",
                            "formElement",
                            "formClasses",
                            "formId",
                            "formTarget",
                            "formUrl",
                            "formText",
                            "errorMessage",
                            "errorUrl",
                            "errorLine",
                            "newHistoryUrl",
                            "oldHistoryUrl",
                            "newHistoryFragment",
                            "oldHistoryFragment",
                            "newHistoryState",
                            "oldHistoryState",
                            "historySource",
                            "containerVersion",
                            "debugMode",
                            "randomNumber",
                            "containerId",
                            "appId",
                            "appName",
                            "appVersionCode",
                            "appVersionName",
                            "language",
                            "osVersion",
                            "platform",
                            "sdkVersion",
                            "deviceName",
                            "resolution",
                            "advertiserId",
                            "advertisingTrackingEnabled",
                            "htmlId",
                            "environmentName",
                            "ampBrowserLanguage",
                            "ampCanonicalPath",
                            "ampCanonicalUrl",
                            "ampCanonicalHost",
                            "ampReferrer",
                            "ampTitle",
                            "ampClientId",
                            "ampClientTimezone",
                            "ampClientTimestamp",
                            "ampClientScreenWidth",
                            "ampClientScreenHeight",
                            "ampClientScrollX",
                            "ampClientScrollY",
                            "ampClientMaxScrollX",
                            "ampClientMaxScrollY",
                            "ampTotalEngagedTime",
                            "ampPageViewId",
                            "ampPageLoadTime",
                            "ampPageDownloadTime",
                            "ampGtmEvent",
                            "eventName",
                            "firebaseEventParameterCampaign",
                            "firebaseEventParameterCampaignAclid",
                            "firebaseEventParameterCampaignAnid",
                            "firebaseEventParameterCampaignClickTimestamp",
                            "firebaseEventParameterCampaignContent",
                            "firebaseEventParameterCampaignCp1",
                            "firebaseEventParameterCampaignGclid",
                            "firebaseEventParameterCampaignSource",
                            "firebaseEventParameterCampaignTerm",
                            "firebaseEventParameterCurrency",
                            "firebaseEventParameterDynamicLinkAcceptTime",
                            "firebaseEventParameterDynamicLinkLinkid",
                            "firebaseEventParameterNotificationMessageDeviceTime",
                            "firebaseEventParameterNotificationMessageId",
                            "firebaseEventParameterNotificationMessageName",
                            "firebaseEventParameterNotificationMessageTime",
                            "firebaseEventParameterNotificationTopic",
                            "firebaseEventParameterPreviousAppVersion",
                            "firebaseEventParameterPreviousOsVersion",
                            "firebaseEventParameterPrice",
                            "firebaseEventParameterProductId",
                            "firebaseEventParameterQuantity",
                            "firebaseEventParameterValue",
                            "videoProvider",
                            "videoUrl",
                            "videoTitle",
                            "videoDuration",
                            "videoPercent",
                            "videoVisible",
                            "videoStatus",
                            "videoCurrentTime",
                            "scrollDepthThreshold",
                            "scrollDepthUnits",
                            "scrollDepthDirection",
                            "elementVisibilityRatio",
                            "elementVisibilityTime",
                            "elementVisibilityFirstTime",
                            "elementVisibilityRecentTime",
                            "requestPath",
                            "requestMethod",
                            "clientName",
                            "queryString",
                            "serverPageLocationUrl",
                            "serverPageLocationPath",
                            "serverPageLocationHostname",
                            "visitorRegion",
                            "analyticsClientId",
                            "analyticsSessionId",
                            "analyticsSessionNumber"
                          ],
                          "description": "The types of built-in variables to enable.",
                          "location": "query",
                          "repeated": true,
                          "enumDescriptions": [
                            "",
                            "",
                            "",
                            "",
                            "",
                            "For web or mobile.",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "For web or mobile.",
                            "",
                            "For web or mobile.",
                            "For web or mobile.",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            ""
                          ],
                          "type": "string"
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/built_in_variables",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/built_in_variables",
                      "description": "Creates one or more GTM Built-In Variables.",
                      "response": {
                        "$ref": "CreateBuiltInVariableResponse"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.built_in_variables.create"
                    },
                    "revert": {
                      "parameters": {
                        "type": {
                          "enum": [
                            "builtInVariableTypeUnspecified",
                            "pageUrl",
                            "pageHostname",
                            "pagePath",
                            "referrer",
                            "event",
                            "clickElement",
                            "clickClasses",
                            "clickId",
                            "clickTarget",
                            "clickUrl",
                            "clickText",
                            "firstPartyServingUrl",
                            "formElement",
                            "formClasses",
                            "formId",
                            "formTarget",
                            "formUrl",
                            "formText",
                            "errorMessage",
                            "errorUrl",
                            "errorLine",
                            "newHistoryUrl",
                            "oldHistoryUrl",
                            "newHistoryFragment",
                            "oldHistoryFragment",
                            "newHistoryState",
                            "oldHistoryState",
                            "historySource",
                            "containerVersion",
                            "debugMode",
                            "randomNumber",
                            "containerId",
                            "appId",
                            "appName",
                            "appVersionCode",
                            "appVersionName",
                            "language",
                            "osVersion",
                            "platform",
                            "sdkVersion",
                            "deviceName",
                            "resolution",
                            "advertiserId",
                            "advertisingTrackingEnabled",
                            "htmlId",
                            "environmentName",
                            "ampBrowserLanguage",
                            "ampCanonicalPath",
                            "ampCanonicalUrl",
                            "ampCanonicalHost",
                            "ampReferrer",
                            "ampTitle",
                            "ampClientId",
                            "ampClientTimezone",
                            "ampClientTimestamp",
                            "ampClientScreenWidth",
                            "ampClientScreenHeight",
                            "ampClientScrollX",
                            "ampClientScrollY",
                            "ampClientMaxScrollX",
                            "ampClientMaxScrollY",
                            "ampTotalEngagedTime",
                            "ampPageViewId",
                            "ampPageLoadTime",
                            "ampPageDownloadTime",
                            "ampGtmEvent",
                            "eventName",
                            "firebaseEventParameterCampaign",
                            "firebaseEventParameterCampaignAclid",
                            "firebaseEventParameterCampaignAnid",
                            "firebaseEventParameterCampaignClickTimestamp",
                            "firebaseEventParameterCampaignContent",
                            "firebaseEventParameterCampaignCp1",
                            "firebaseEventParameterCampaignGclid",
                            "firebaseEventParameterCampaignSource",
                            "firebaseEventParameterCampaignTerm",
                            "firebaseEventParameterCurrency",
                            "firebaseEventParameterDynamicLinkAcceptTime",
                            "firebaseEventParameterDynamicLinkLinkid",
                            "firebaseEventParameterNotificationMessageDeviceTime",
                            "firebaseEventParameterNotificationMessageId",
                            "firebaseEventParameterNotificationMessageName",
                            "firebaseEventParameterNotificationMessageTime",
                            "firebaseEventParameterNotificationTopic",
                            "firebaseEventParameterPreviousAppVersion",
                            "firebaseEventParameterPreviousOsVersion",
                            "firebaseEventParameterPrice",
                            "firebaseEventParameterProductId",
                            "firebaseEventParameterQuantity",
                            "firebaseEventParameterValue",
                            "videoProvider",
                            "videoUrl",
                            "videoTitle",
                            "videoDuration",
                            "videoPercent",
                            "videoVisible",
                            "videoStatus",
                            "videoCurrentTime",
                            "scrollDepthThreshold",
                            "scrollDepthUnits",
                            "scrollDepthDirection",
                            "elementVisibilityRatio",
                            "elementVisibilityTime",
                            "elementVisibilityFirstTime",
                            "elementVisibilityRecentTime",
                            "requestPath",
                            "requestMethod",
                            "clientName",
                            "queryString",
                            "serverPageLocationUrl",
                            "serverPageLocationPath",
                            "serverPageLocationHostname",
                            "visitorRegion",
                            "analyticsClientId",
                            "analyticsSessionId",
                            "analyticsSessionNumber"
                          ],
                          "type": "string",
                          "description": "The type of built-in variable to revert.",
                          "location": "query",
                          "enumDescriptions": [
                            "",
                            "",
                            "",
                            "",
                            "",
                            "For web or mobile.",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "For web or mobile.",
                            "",
                            "For web or mobile.",
                            "For web or mobile.",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            "",
                            ""
                          ]
                        },
                        "path": {
                          "required": true,
                          "description": "GTM BuiltInVariable's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$"
                        }
                      },
                      "path": "tagmanager/v2/{+path}/built_in_variables:revert",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/built_in_variables:revert",
                      "description": "Reverts changes to a GTM Built-In Variables in a GTM Workspace.",
                      "response": {
                        "$ref": "RevertBuiltInVariableResponse"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.built_in_variables.revert"
                    }
                  }
                },
                "folders": {
                  "methods": {
                    "entities": {
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}:entities",
                      "description": "List all entities in a GTM Folder.",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.folders.entities",
                      "response": {
                        "$ref": "FolderEntities"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ],
                      "path": "tagmanager/v2/{+path}:entities",
                      "parameters": {
                        "pageToken": {
                          "type": "string",
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query"
                        },
                        "path": {
                          "required": true,
                          "type": "string",
                          "description": "GTM Folder's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$"
                        }
                      }
                    },
                    "delete": {
                      "httpMethod": "DELETE",
                      "parameters": {
                        "path": {
                          "description": "GTM Folder's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$",
                          "required": true
                        }
                      },
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.folders.delete",
                      "path": "tagmanager/v2/{+path}",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "description": "Deletes a GTM Folder.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}"
                    },
                    "move_entities_to_folder": {
                      "path": "tagmanager/v2/{+path}:move_entities_to_folder",
                      "parameters": {
                        "triggerId": {
                          "type": "string",
                          "description": "The triggers to be moved to the folder.",
                          "location": "query",
                          "repeated": true
                        },
                        "path": {
                          "required": true,
                          "type": "string",
                          "description": "GTM Folder's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$"
                        },
                        "tagId": {
                          "description": "The tags to be moved to the folder.",
                          "location": "query",
                          "repeated": true,
                          "type": "string"
                        },
                        "variableId": {
                          "type": "string",
                          "description": "The variables to be moved to the folder.",
                          "location": "query",
                          "repeated": true
                        }
                      },
                      "description": "Moves entities to a GTM Folder. If {folder_id} in the request path equals 0, this will instead move entities out of the folder they currently belong to.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}:move_entities_to_folder",
                      "request": {
                        "$ref": "Folder"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.folders.move_entities_to_folder",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ]
                    },
                    "list": {
                      "parameters": {
                        "parent": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "type": "string",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "required": true
                        },
                        "pageToken": {
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/folders",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "description": "Lists all GTM Folders of a Container.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "ListFoldersResponse"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.folders.list"
                    },
                    "update": {
                      "parameters": {
                        "path": {
                          "required": true,
                          "type": "string",
                          "description": "GTM Folder's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$"
                        },
                        "fingerprint": {
                          "description": "When provided, this fingerprint must match the fingerprint of the folder in storage.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "path": "tagmanager/v2/{+path}",
                      "response": {
                        "$ref": "Folder"
                      },
                      "httpMethod": "PUT",
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.folders.update",
                      "request": {
                        "$ref": "Folder"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}",
                      "description": "Updates a GTM Folder."
                    },
                    "create": {
                      "parameters": {
                        "parent": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/folders",
                      "request": {
                        "$ref": "Folder"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "description": "Creates a GTM Folder.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "Folder"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.folders.create"
                    },
                    "revert": {
                      "description": "Reverts changes to a GTM Folder in a GTM Workspace.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}:revert",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.folders.revert",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "RevertFolderResponse"
                      },
                      "path": "tagmanager/v2/{+path}:revert",
                      "parameters": {
                        "path": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$",
                          "type": "string",
                          "description": "GTM Folder's API relative path.",
                          "location": "path"
                        },
                        "fingerprint": {
                          "description": "When provided, this fingerprint must match the fingerprint of the tag in storage.",
                          "location": "query",
                          "type": "string"
                        }
                      }
                    },
                    "get": {
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}",
                      "description": "Gets a GTM Folder.",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.folders.get",
                      "response": {
                        "$ref": "Folder"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "path"
                      ],
                      "path": "tagmanager/v2/{+path}",
                      "parameters": {
                        "path": {
                          "required": true,
                          "type": "string",
                          "description": "GTM Folder's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$"
                        }
                      }
                    }
                  }
                },
                "tags": {
                  "methods": {
                    "delete": {
                      "httpMethod": "DELETE",
                      "parameters": {
                        "path": {
                          "description": "GTM Tag's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/tags/[^/]+$",
                          "required": true
                        }
                      },
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.tags.delete",
                      "path": "tagmanager/v2/{+path}",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags/{tagsId}",
                      "description": "Deletes a GTM Tag."
                    },
                    "list": {
                      "description": "Lists all GTM Tags of a Container.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.tags.list",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "ListTagsResponse"
                      },
                      "path": "tagmanager/v2/{+parent}/tags",
                      "parameters": {
                        "parent": {
                          "type": "string",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "required": true
                        },
                        "pageToken": {
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query",
                          "type": "string"
                        }
                      }
                    },
                    "update": {
                      "path": "tagmanager/v2/{+path}",
                      "parameters": {
                        "path": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/tags/[^/]+$",
                          "type": "string",
                          "description": "GTM Tag's API relative path.",
                          "location": "path"
                        },
                        "fingerprint": {
                          "type": "string",
                          "description": "When provided, this fingerprint must match the fingerprint of the tag in storage.",
                          "location": "query"
                        }
                      },
                      "description": "Updates a GTM Tag.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags/{tagsId}",
                      "request": {
                        "$ref": "Tag"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.tags.update",
                      "httpMethod": "PUT",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "Tag"
                      }
                    },
                    "get": {
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags/{tagsId}",
                      "description": "Gets a GTM Tag.",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.tags.get",
                      "response": {
                        "$ref": "Tag"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "path"
                      ],
                      "path": "tagmanager/v2/{+path}",
                      "parameters": {
                        "path": {
                          "required": true,
                          "description": "GTM Tag's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/tags/[^/]+$"
                        }
                      }
                    },
                    "create": {
                      "path": "tagmanager/v2/{+parent}/tags",
                      "parameters": {
                        "parent": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        }
                      },
                      "description": "Creates a GTM Tag.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags",
                      "request": {
                        "$ref": "Tag"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.tags.create",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "Tag"
                      }
                    },
                    "revert": {
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "RevertTagResponse"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.tags.revert",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "description": "Reverts changes to a GTM Tag in a GTM Workspace.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags/{tagsId}:revert",
                      "parameters": {
                        "path": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/tags/[^/]+$",
                          "type": "string",
                          "description": "GTM Tag's API relative path.",
                          "location": "path"
                        },
                        "fingerprint": {
                          "description": "When provided, this fingerprint must match the fingerprint of thetag in storage.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "path": "tagmanager/v2/{+path}:revert"
                    }
                  }
                },
                "templates": {
                  "methods": {
                    "import_from_gallery": {
                      "path": "tagmanager/v2/{+parent}/templates:import_from_gallery",
                      "parameters": {
                        "acknowledgePermissions": {
                          "type": "boolean",
                          "description": "Must be set to true to allow Gallery template to be imported into the workspace. If this bit is false, the import operation will fail.",
                          "location": "query"
                        },
                        "galleryOwner": {
                          "description": "Owner of the Gallery template to import",
                          "location": "query",
                          "type": "string"
                        },
                        "galleryRepository": {
                          "type": "string",
                          "description": "Repository of the Gallery template to import",
                          "location": "query"
                        },
                        "gallerySha": {
                          "type": "string",
                          "description": "SHA version of the Gallery template to import. Defaulted to the latest SHA version if not provided.",
                          "location": "query"
                        },
                        "parent": {
                          "required": true,
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$"
                        }
                      },
                      "description": "Imports a GTM Custom Template from Gallery.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates:import_from_gallery",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.templates.import_from_gallery",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "CustomTemplate"
                      }
                    },
                    "delete": {
                      "id": "tagmanager.accounts.containers.workspaces.templates.delete",
                      "path": "tagmanager/v2/{+path}",
                      "httpMethod": "DELETE",
                      "parameters": {
                        "path": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/templates/[^/]+$",
                          "description": "GTM Custom Template's API relative path.",
                          "location": "path",
                          "type": "string"
                        }
                      },
                      "parameterOrder": [
                        "path"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates/{templatesId}",
                      "description": "Deletes a GTM Template.",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ]
                    },
                    "create": {
                      "response": {
                        "$ref": "CustomTemplate"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.templates.create",
                      "request": {
                        "$ref": "CustomTemplate"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates",
                      "description": "Creates a GTM Custom Template.",
                      "parameters": {
                        "parent": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "type": "string",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "required": true
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/templates"
                    },
                    "revert": {
                      "path": "tagmanager/v2/{+path}:revert",
                      "parameters": {
                        "path": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/templates/[^/]+$",
                          "description": "GTM Custom Template's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        },
                        "fingerprint": {
                          "description": "When provided, this fingerprint must match the fingerprint of the template in storage.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates/{templatesId}:revert",
                      "description": "Reverts changes to a GTM Template in a GTM Workspace.",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.templates.revert",
                      "response": {
                        "$ref": "RevertTemplateResponse"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ]
                    },
                    "get": {
                      "parameters": {
                        "path": {
                          "description": "GTM Custom Template's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/templates/[^/]+$",
                          "required": true
                        }
                      },
                      "path": "tagmanager/v2/{+path}",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "description": "Gets a GTM Template.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates/{templatesId}",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "CustomTemplate"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.templates.get"
                    },
                    "list": {
                      "parameters": {
                        "parent": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "type": "string",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path"
                        },
                        "pageToken": {
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/templates",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates",
                      "description": "Lists all GTM Templates of a GTM container workspace.",
                      "response": {
                        "$ref": "ListTemplatesResponse"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.templates.list"
                    },
                    "update": {
                      "parameters": {
                        "path": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/templates/[^/]+$",
                          "type": "string",
                          "description": "GTM Custom Template's API relative path.",
                          "location": "path"
                        },
                        "fingerprint": {
                          "type": "string",
                          "description": "When provided, this fingerprint must match the fingerprint of the templates in storage.",
                          "location": "query"
                        }
                      },
                      "path": "tagmanager/v2/{+path}",
                      "request": {
                        "$ref": "CustomTemplate"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "description": "Updates a GTM Template.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates/{templatesId}",
                      "httpMethod": "PUT",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "CustomTemplate"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.templates.update"
                    }
                  }
                },
                "zones": {
                  "methods": {
                    "delete": {
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones/{zonesId}",
                      "description": "Deletes a GTM Zone.",
                      "httpMethod": "DELETE",
                      "parameters": {
                        "path": {
                          "required": true,
                          "description": "GTM Zone's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/zones/[^/]+$"
                        }
                      },
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.zones.delete",
                      "path": "tagmanager/v2/{+path}"
                    },
                    "list": {
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones",
                      "description": "Lists all GTM Zones of a GTM container workspace.",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.zones.list",
                      "response": {
                        "$ref": "ListZonesResponse"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "path": "tagmanager/v2/{+parent}/zones",
                      "parameters": {
                        "parent": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "type": "string",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "required": true
                        },
                        "pageToken": {
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query",
                          "type": "string"
                        }
                      }
                    },
                    "update": {
                      "id": "tagmanager.accounts.containers.workspaces.zones.update",
                      "response": {
                        "$ref": "Zone"
                      },
                      "httpMethod": "PUT",
                      "parameterOrder": [
                        "path"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones/{zonesId}",
                      "description": "Updates a GTM Zone.",
                      "request": {
                        "$ref": "Zone"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "path": "tagmanager/v2/{+path}",
                      "parameters": {
                        "path": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/zones/[^/]+$",
                          "type": "string",
                          "description": "GTM Zone's API relative path.",
                          "location": "path"
                        },
                        "fingerprint": {
                          "description": "When provided, this fingerprint must match the fingerprint of the zone in storage.",
                          "location": "query",
                          "type": "string"
                        }
                      }
                    },
                    "create": {
                      "path": "tagmanager/v2/{+parent}/zones",
                      "parameters": {
                        "parent": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "type": "string",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "required": true
                        }
                      },
                      "id": "tagmanager.accounts.containers.workspaces.zones.create",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "response": {
                        "$ref": "Zone"
                      },
                      "description": "Creates a GTM Zone.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones",
                      "request": {
                        "$ref": "Zone"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ]
                    },
                    "revert": {
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "RevertZoneResponse"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.zones.revert",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "description": "Reverts changes to a GTM Zone in a GTM Workspace.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones/{zonesId}:revert",
                      "parameters": {
                        "path": {
                          "type": "string",
                          "description": "GTM Zone's API relative path.",
                          "location": "path",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/zones/[^/]+$",
                          "required": true
                        },
                        "fingerprint": {
                          "type": "string",
                          "description": "When provided, this fingerprint must match the fingerprint of the zone in storage.",
                          "location": "query"
                        }
                      },
                      "path": "tagmanager/v2/{+path}:revert"
                    },
                    "get": {
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "Zone"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.zones.get",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "description": "Gets a GTM Zone.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones/{zonesId}",
                      "parameters": {
                        "path": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/zones/[^/]+$",
                          "description": "GTM Zone's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        }
                      },
                      "path": "tagmanager/v2/{+path}"
                    }
                  }
                },
                "transformations": {
                  "methods": {
                    "list": {
                      "response": {
                        "$ref": "ListTransformationsResponse"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.transformations.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/transformations",
                      "description": "Lists all GTM Transformations of a GTM container workspace.",
                      "parameters": {
                        "parent": {
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "required": true
                        },
                        "pageToken": {
                          "type": "string",
                          "description": "Continuation token for fetching the next page of results.",
                          "location": "query"
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/transformations"
                    },
                    "update": {
                      "path": "tagmanager/v2/{+path}",
                      "parameters": {
                        "path": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/transformations/[^/]+$",
                          "description": "GTM Transformation's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        },
                        "fingerprint": {
                          "description": "When provided, this fingerprint must match the fingerprint of the transformation in storage.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "id": "tagmanager.accounts.containers.workspaces.transformations.update",
                      "httpMethod": "PUT",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "Transformation"
                      },
                      "description": "Updates a GTM Transformation.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/transformations/{transformationsId}",
                      "request": {
                        "$ref": "Transformation"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ]
                    },
                    "get": {
                      "path": "tagmanager/v2/{+path}",
                      "parameters": {
                        "path": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/transformations/[^/]+$",
                          "description": "GTM Transformation's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        }
                      },
                      "description": "Gets a GTM Transformation.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/transformations/{transformationsId}",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers",
                        "https://www.googleapis.com/auth/tagmanager.readonly"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.transformations.get",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "Transformation"
                      }
                    },
                    "create": {
                      "response": {
                        "$ref": "Transformation"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.transformations.create",
                      "request": {
                        "$ref": "Transformation"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/transformations",
                      "description": "Creates a GTM Transformation.",
                      "parameters": {
                        "parent": {
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                          "description": "GTM Workspace's API relative path.",
                          "location": "path",
                          "type": "string",
                          "required": true
                        }
                      },
                      "path": "tagmanager/v2/{+parent}/transformations"
                    },
                    "revert": {
                      "parameters": {
                        "path": {
                          "description": "GTM Transformation's API relative path.",
                          "location": "path",
                          "type": "string",
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/transformations/[^/]+$",
                          "required": true
                        },
                        "fingerprint": {
                          "type": "string",
                          "description": "When provided, this fingerprint must match the fingerprint of the transformation in storage.",
                          "location": "query"
                        }
                      },
                      "path": "tagmanager/v2/{+path}:revert",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "description": "Reverts changes to a GTM Transformation in a GTM Workspace.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/transformations/{transformationsId}:revert",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "path"
                      ],
                      "response": {
                        "$ref": "RevertTransformationResponse"
                      },
                      "id": "tagmanager.accounts.containers.workspaces.transformations.revert"
                    },
                    "delete": {
                      "httpMethod": "DELETE",
                      "parameters": {
                        "path": {
                          "required": true,
                          "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/transformations/[^/]+$",
                          "type": "string",
                          "description": "GTM Transformation's API relative path.",
                          "location": "path"
                        }
                      },
                      "parameterOrder": [
                        "path"
                      ],
                      "id": "tagmanager.accounts.containers.workspaces.transformations.delete",
                      "path": "tagmanager/v2/{+path}",
                      "scopes": [
                        "https://www.googleapis.com/auth/tagmanager.edit.containers"
                      ],
                      "description": "Deletes a GTM Transformation.",
                      "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/transformations/{transformationsId}"
                    }
                  }
                }
              },
              "methods": {
                "update": {
                  "response": {
                    "$ref": "Workspace"
                  },
                  "httpMethod": "PUT",
                  "parameterOrder": [
                    "path"
                  ],
                  "id": "tagmanager.accounts.containers.workspaces.update",
                  "request": {
                    "$ref": "Workspace"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers"
                  ],
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}",
                  "description": "Updates a Workspace.",
                  "parameters": {
                    "path": {
                      "required": true,
                      "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                      "type": "string",
                      "description": "GTM Workspace's API relative path.",
                      "location": "path"
                    },
                    "fingerprint": {
                      "type": "string",
                      "description": "When provided, this fingerprint must match the fingerprint of the workspace in storage.",
                      "location": "query"
                    }
                  },
                  "path": "tagmanager/v2/{+path}"
                },
                "create": {
                  "response": {
                    "$ref": "Workspace"
                  },
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "parent"
                  ],
                  "id": "tagmanager.accounts.containers.workspaces.create",
                  "request": {
                    "$ref": "Workspace"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers"
                  ],
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces",
                  "description": "Creates a Workspace.",
                  "parameters": {
                    "parent": {
                      "type": "string",
                      "description": "GTM parent Container's API relative path.",
                      "location": "path",
                      "pattern": "^accounts/[^/]+/containers/[^/]+$",
                      "required": true
                    }
                  },
                  "path": "tagmanager/v2/{+parent}/workspaces"
                },
                "resolve_conflict": {
                  "parameters": {
                    "path": {
                      "type": "string",
                      "description": "GTM Workspace's API relative path.",
                      "location": "path",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                      "required": true
                    },
                    "fingerprint": {
                      "type": "string",
                      "description": "When provided, this fingerprint must match the fingerprint of the entity_in_workspace in the merge conflict.",
                      "location": "query"
                    }
                  },
                  "path": "tagmanager/v2/{+path}:resolve_conflict",
                  "request": {
                    "$ref": "Entity"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers"
                  ],
                  "description": "Resolves a merge conflict for a workspace entity by updating it to the resolved entity passed in the request.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}:resolve_conflict",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "path"
                  ],
                  "id": "tagmanager.accounts.containers.workspaces.resolve_conflict"
                },
                "getStatus": {
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "GetWorkspaceStatusResponse"
                  },
                  "id": "tagmanager.accounts.containers.workspaces.getStatus",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "description": "Finds conflicting and modified entities in the workspace.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/status",
                  "parameters": {
                    "path": {
                      "required": true,
                      "description": "GTM Workspace's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$"
                    }
                  },
                  "path": "tagmanager/v2/{+path}/status"
                },
                "quick_preview": {
                  "parameters": {
                    "path": {
                      "type": "string",
                      "description": "GTM Workspace's API relative path.",
                      "location": "path",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                      "required": true
                    }
                  },
                  "path": "tagmanager/v2/{+path}:quick_preview",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containerversions"
                  ],
                  "description": "Quick previews a workspace by creating a fake container version from all entities in the provided workspace.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}:quick_preview",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "QuickPreviewResponse"
                  },
                  "id": "tagmanager.accounts.containers.workspaces.quick_preview"
                },
                "sync": {
                  "description": "Syncs a workspace to the latest container version by updating all unmodified workspace entities and displaying conflicts for modified entities.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}:sync",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers"
                  ],
                  "id": "tagmanager.accounts.containers.workspaces.sync",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "SyncWorkspaceResponse"
                  },
                  "path": "tagmanager/v2/{+path}:sync",
                  "parameters": {
                    "path": {
                      "type": "string",
                      "description": "GTM Workspace's API relative path.",
                      "location": "path",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                      "required": true
                    }
                  }
                },
                "list": {
                  "id": "tagmanager.accounts.containers.workspaces.list",
                  "response": {
                    "$ref": "ListWorkspacesResponse"
                  },
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "parent"
                  ],
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces",
                  "description": "Lists all Workspaces that belong to a GTM Container.",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "path": "tagmanager/v2/{+parent}/workspaces",
                  "parameters": {
                    "parent": {
                      "pattern": "^accounts/[^/]+/containers/[^/]+$",
                      "type": "string",
                      "description": "GTM parent Container's API relative path.",
                      "location": "path",
                      "required": true
                    },
                    "pageToken": {
                      "description": "Continuation token for fetching the next page of results.",
                      "location": "query",
                      "type": "string"
                    }
                  }
                },
                "get": {
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "Workspace"
                  },
                  "id": "tagmanager.accounts.containers.workspaces.get",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "description": "Gets a Workspace.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}",
                  "parameters": {
                    "path": {
                      "required": true,
                      "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$",
                      "type": "string",
                      "description": "GTM Workspace's API relative path.",
                      "location": "path"
                    }
                  },
                  "path": "tagmanager/v2/{+path}"
                },
                "bulk_update": {
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/bulk_update",
                  "description": "Applies multiple entity changes to a workspace in one call. When creating new entities, their entity IDs must be unique and in correct format. That is, they must start with \"new_\" and followed by number, e.g. \"new_1\", \"new_2\". Example body snippet to create myNewTag under myNewFolder is: ``` \"changes\": [ { \"folder\": { \"folderId\": \"new_1\", \"name\": \"myNewFolder\", ... }, \"changeStatus\": \"added\" }, { \"tag\": { \"tagId\": \"new_2\", \"name\": \"myNewTag\", \"parentFolderId\": \"new_1\", ... }, \"changeStatus\": \"added\" } ] ```",
                  "request": {
                    "$ref": "ProposedChange"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers"
                  ],
                  "id": "tagmanager.accounts.containers.workspaces.bulk_update",
                  "response": {
                    "$ref": "BulkUpdateWorkspaceResponse"
                  },
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "path"
                  ],
                  "path": "tagmanager/v2/{+path}/bulk_update",
                  "parameters": {
                    "path": {
                      "required": true,
                      "description": "GTM Workspace's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$"
                    }
                  }
                },
                "delete": {
                  "httpMethod": "DELETE",
                  "parameters": {
                    "path": {
                      "required": true,
                      "description": "GTM Workspace's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$"
                    }
                  },
                  "parameterOrder": [
                    "path"
                  ],
                  "id": "tagmanager.accounts.containers.workspaces.delete",
                  "path": "tagmanager/v2/{+path}",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.delete.containers"
                  ],
                  "description": "Deletes a Workspace.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}"
                },
                "create_version": {
                  "path": "tagmanager/v2/{+path}:create_version",
                  "parameters": {
                    "path": {
                      "required": true,
                      "description": "GTM Workspace's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$"
                    }
                  },
                  "description": "Creates a Container Version from the entities present in the workspace, deletes the workspace, and sets the base container version to the newly created version.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}:create_version",
                  "request": {
                    "$ref": "CreateContainerVersionRequestVersionOptions"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containerversions"
                  ],
                  "id": "tagmanager.accounts.containers.workspaces.create_version",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "CreateContainerVersionResponse"
                  }
                }
              }
            },
            "version_headers": {
              "methods": {
                "list": {
                  "id": "tagmanager.accounts.containers.version_headers.list",
                  "response": {
                    "$ref": "ListContainerVersionsResponse"
                  },
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "parent"
                  ],
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/version_headers",
                  "description": "Lists all Container Versions of a GTM Container.",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.edit.containerversions",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "path": "tagmanager/v2/{+parent}/version_headers",
                  "parameters": {
                    "includeDeleted": {
                      "description": "Also retrieve deleted (archived) versions when true.",
                      "location": "query",
                      "type": "boolean"
                    },
                    "parent": {
                      "pattern": "^accounts/[^/]+/containers/[^/]+$",
                      "type": "string",
                      "description": "GTM Container's API relative path.",
                      "location": "path",
                      "required": true
                    },
                    "pageToken": {
                      "description": "Continuation token for fetching the next page of results.",
                      "location": "query",
                      "type": "string"
                    }
                  }
                },
                "latest": {
                  "response": {
                    "$ref": "ContainerVersionHeader"
                  },
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "parent"
                  ],
                  "id": "tagmanager.accounts.containers.version_headers.latest",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/version_headers:latest",
                  "description": "Gets the latest container version header",
                  "parameters": {
                    "parent": {
                      "description": "GTM Container's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+$",
                      "required": true
                    }
                  },
                  "path": "tagmanager/v2/{+parent}/version_headers:latest"
                }
              }
            },
            "environments": {
              "methods": {
                "delete": {
                  "httpMethod": "DELETE",
                  "parameters": {
                    "path": {
                      "required": true,
                      "description": "GTM Environment's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/environments/[^/]+$"
                    }
                  },
                  "parameterOrder": [
                    "path"
                  ],
                  "id": "tagmanager.accounts.containers.environments.delete",
                  "path": "tagmanager/v2/{+path}",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers"
                  ],
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments/{environmentsId}",
                  "description": "Deletes a GTM Environment."
                },
                "reauthorize": {
                  "description": "Re-generates the authorization code for a GTM Environment.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments/{environmentsId}:reauthorize",
                  "request": {
                    "$ref": "Environment"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.publish"
                  ],
                  "id": "tagmanager.accounts.containers.environments.reauthorize",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "Environment"
                  },
                  "path": "tagmanager/v2/{+path}:reauthorize",
                  "parameters": {
                    "path": {
                      "required": true,
                      "description": "GTM Environment's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/environments/[^/]+$"
                    }
                  }
                },
                "list": {
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments",
                  "description": "Lists all GTM Environments of a GTM Container.",
                  "response": {
                    "$ref": "ListEnvironmentsResponse"
                  },
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "parent"
                  ],
                  "id": "tagmanager.accounts.containers.environments.list",
                  "parameters": {
                    "parent": {
                      "pattern": "^accounts/[^/]+/containers/[^/]+$",
                      "description": "GTM Container's API relative path.",
                      "location": "path",
                      "type": "string",
                      "required": true
                    },
                    "pageToken": {
                      "type": "string",
                      "description": "Continuation token for fetching the next page of results.",
                      "location": "query"
                    }
                  },
                  "path": "tagmanager/v2/{+parent}/environments"
                },
                "update": {
                  "description": "Updates a GTM Environment.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments/{environmentsId}",
                  "request": {
                    "$ref": "Environment"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers"
                  ],
                  "id": "tagmanager.accounts.containers.environments.update",
                  "httpMethod": "PUT",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "Environment"
                  },
                  "path": "tagmanager/v2/{+path}",
                  "parameters": {
                    "path": {
                      "required": true,
                      "pattern": "^accounts/[^/]+/containers/[^/]+/environments/[^/]+$",
                      "description": "GTM Environment's API relative path.",
                      "location": "path",
                      "type": "string"
                    },
                    "fingerprint": {
                      "type": "string",
                      "description": "When provided, this fingerprint must match the fingerprint of the environment in storage.",
                      "location": "query"
                    }
                  }
                },
                "get": {
                  "parameters": {
                    "path": {
                      "required": true,
                      "pattern": "^accounts/[^/]+/containers/[^/]+/environments/[^/]+$",
                      "description": "GTM Environment's API relative path.",
                      "location": "path",
                      "type": "string"
                    }
                  },
                  "path": "tagmanager/v2/{+path}",
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "Environment"
                  },
                  "id": "tagmanager.accounts.containers.environments.get",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "description": "Gets a GTM Environment.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments/{environmentsId}"
                },
                "create": {
                  "response": {
                    "$ref": "Environment"
                  },
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "parent"
                  ],
                  "id": "tagmanager.accounts.containers.environments.create",
                  "request": {
                    "$ref": "Environment"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers"
                  ],
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments",
                  "description": "Creates a GTM Environment.",
                  "parameters": {
                    "parent": {
                      "required": true,
                      "type": "string",
                      "description": "GTM Container's API relative path.",
                      "location": "path",
                      "pattern": "^accounts/[^/]+/containers/[^/]+$"
                    }
                  },
                  "path": "tagmanager/v2/{+parent}/environments"
                }
              }
            },
            "destinations": {
              "methods": {
                "get": {
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/destinations/{destinationsId}",
                  "description": "Gets a Destination.",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "deprecated": true,
                  "id": "tagmanager.accounts.containers.destinations.get",
                  "response": {
                    "$ref": "Destination"
                  },
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "path"
                  ],
                  "path": "tagmanager/v2/{+path}",
                  "parameters": {
                    "path": {
                      "required": true,
                      "type": "string",
                      "description": "Google Tag Destination's API relative path.",
                      "location": "path",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/destinations/[^/]+$"
                    }
                  }
                },
                "link": {
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers"
                  ],
                  "deprecated": true,
                  "description": "Adds a Destination to this Container and removes it from the Container to which it is currently linked.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/destinations:link",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "parent"
                  ],
                  "response": {
                    "$ref": "Destination"
                  },
                  "id": "tagmanager.accounts.containers.destinations.link",
                  "parameters": {
                    "destinationId": {
                      "type": "string",
                      "description": "Destination ID to be linked to the current container.",
                      "location": "query"
                    },
                    "allowUserPermissionFeatureUpdate": {
                      "type": "boolean",
                      "description": "Must be set to true to allow features.user_permissions to change from false to true. If this operation causes an update but this bit is false, the operation will fail.",
                      "location": "query"
                    },
                    "parent": {
                      "description": "GTM parent Container's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+$",
                      "required": true
                    }
                  },
                  "path": "tagmanager/v2/{+parent}/destinations:link"
                },
                "list": {
                  "path": "tagmanager/v2/{+parent}/destinations",
                  "parameters": {
                    "parent": {
                      "description": "GTM parent Container's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+$",
                      "required": true
                    }
                  },
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/destinations",
                  "description": "Lists all Destinations linked to a GTM Container.",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "id": "tagmanager.accounts.containers.destinations.list",
                  "response": {
                    "$ref": "ListDestinationsResponse"
                  },
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "parent"
                  ]
                }
              }
            },
            "versions": {
              "methods": {
                "get": {
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.edit.containerversions",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}",
                  "description": "Gets a Container Version.",
                  "response": {
                    "$ref": "ContainerVersion"
                  },
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "path"
                  ],
                  "id": "tagmanager.accounts.containers.versions.get",
                  "parameters": {
                    "containerVersionId": {
                      "type": "string",
                      "description": "The GTM ContainerVersion ID. Specify published to retrieve the currently published version.",
                      "location": "query"
                    },
                    "path": {
                      "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$",
                      "description": "GTM ContainerVersion's API relative path.",
                      "location": "path",
                      "type": "string",
                      "required": true
                    }
                  },
                  "path": "tagmanager/v2/{+path}"
                },
                "undelete": {
                  "parameters": {
                    "path": {
                      "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$",
                      "type": "string",
                      "description": "GTM ContainerVersion's API relative path.",
                      "location": "path",
                      "required": true
                    }
                  },
                  "path": "tagmanager/v2/{+path}:undelete",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containerversions"
                  ],
                  "description": "Undeletes a Container Version.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}:undelete",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "ContainerVersion"
                  },
                  "id": "tagmanager.accounts.containers.versions.undelete"
                },
                "update": {
                  "description": "Updates a Container Version.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}",
                  "request": {
                    "$ref": "ContainerVersion"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containerversions"
                  ],
                  "id": "tagmanager.accounts.containers.versions.update",
                  "httpMethod": "PUT",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "ContainerVersion"
                  },
                  "path": "tagmanager/v2/{+path}",
                  "parameters": {
                    "path": {
                      "required": true,
                      "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$",
                      "description": "GTM ContainerVersion's API relative path.",
                      "location": "path",
                      "type": "string"
                    },
                    "fingerprint": {
                      "description": "When provided, this fingerprint must match the fingerprint of the container version in storage.",
                      "location": "query",
                      "type": "string"
                    }
                  }
                },
                "set_latest": {
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "ContainerVersion"
                  },
                  "id": "tagmanager.accounts.containers.versions.set_latest",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers"
                  ],
                  "description": "Sets the latest version used for synchronization of workspaces when detecting conflicts and errors.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}:set_latest",
                  "parameters": {
                    "path": {
                      "required": true,
                      "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$",
                      "type": "string",
                      "description": "GTM ContainerVersion's API relative path.",
                      "location": "path"
                    }
                  },
                  "path": "tagmanager/v2/{+path}:set_latest"
                },
                "publish": {
                  "description": "Publishes a Container Version.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}:publish",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.publish"
                  ],
                  "id": "tagmanager.accounts.containers.versions.publish",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "path"
                  ],
                  "response": {
                    "$ref": "PublishContainerVersionResponse"
                  },
                  "path": "tagmanager/v2/{+path}:publish",
                  "parameters": {
                    "path": {
                      "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$",
                      "type": "string",
                      "description": "GTM ContainerVersion's API relative path.",
                      "location": "path",
                      "required": true
                    },
                    "fingerprint": {
                      "description": "When provided, this fingerprint must match the fingerprint of the container version in storage.",
                      "location": "query",
                      "type": "string"
                    }
                  }
                },
                "live": {
                  "parameters": {
                    "parent": {
                      "required": true,
                      "description": "GTM Container's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+$"
                    }
                  },
                  "path": "tagmanager/v2/{+parent}/versions:live",
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containers",
                    "https://www.googleapis.com/auth/tagmanager.readonly"
                  ],
                  "description": "Gets the live (i.e. published) container version",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions:live",
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "parent"
                  ],
                  "response": {
                    "$ref": "ContainerVersion"
                  },
                  "id": "tagmanager.accounts.containers.versions.live"
                },
                "delete": {
                  "scopes": [
                    "https://www.googleapis.com/auth/tagmanager.edit.containerversions"
                  ],
                  "description": "Deletes a Container Version.",
                  "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}",
                  "httpMethod": "DELETE",
                  "parameters": {
                    "path": {
                      "required": true,
                      "description": "GTM ContainerVersion's API relative path.",
                      "location": "path",
                      "type": "string",
                      "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$"
                    }
                  },
                  "parameterOrder": [
                    "path"
                  ],
                  "id": "tagmanager.accounts.containers.versions.delete",
                  "path": "tagmanager/v2/{+path}"
                }
              }
            }
          },
          "methods": {
            "delete": {
              "id": "tagmanager.accounts.containers.delete",
              "path": "tagmanager/v2/{+path}",
              "httpMethod": "DELETE",
              "parameters": {
                "path": {
                  "required": true,
                  "pattern": "^accounts/[^/]+/containers/[^/]+$",
                  "type": "string",
                  "description": "GTM Container's API relative path.",
                  "location": "path"
                }
              },
              "parameterOrder": [
                "path"
              ],
              "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}",
              "description": "Deletes a Container.",
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.delete.containers"
              ]
            },
            "get": {
              "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}",
              "description": "Gets a Container.",
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.edit.containers",
                "https://www.googleapis.com/auth/tagmanager.readonly"
              ],
              "id": "tagmanager.accounts.containers.get",
              "response": {
                "$ref": "Container"
              },
              "httpMethod": "GET",
              "parameterOrder": [
                "path"
              ],
              "path": "tagmanager/v2/{+path}",
              "parameters": {
                "path": {
                  "required": true,
                  "type": "string",
                  "description": "GTM Container's API relative path.",
                  "location": "path",
                  "pattern": "^accounts/[^/]+/containers/[^/]+$"
                }
              }
            },
            "combine": {
              "parameters": {
                "settingSource": {
                  "type": "string",
                  "description": "Specify the source of config setting after combine",
                  "location": "query",
                  "enumDescriptions": [
                    "",
                    "Keep the current container config setting after combine",
                    "Use config setting from the other tag after combine"
                  ],
                  "enum": [
                    "settingSourceUnspecified",
                    "current",
                    "other"
                  ]
                },
                "path": {
                  "required": true,
                  "type": "string",
                  "description": "GTM Container's API relative path.",
                  "location": "path",
                  "pattern": "^accounts/[^/]+/containers/[^/]+$"
                },
                "allowUserPermissionFeatureUpdate": {
                  "description": "Must be set to true to allow features.user_permissions to change from false to true. If this operation causes an update but this bit is false, the operation will fail.",
                  "location": "query",
                  "type": "boolean"
                },
                "containerId": {
                  "description": "ID of container that will be merged into the current container.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "tagmanager/v2/{+path}:combine",
              "httpMethod": "POST",
              "parameterOrder": [
                "path"
              ],
              "response": {
                "$ref": "Container"
              },
              "id": "tagmanager.accounts.containers.combine",
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.edit.containers"
              ],
              "description": "Combines Containers.",
              "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}:combine"
            },
            "list": {
              "description": "Lists all Containers that belongs to a GTM Account.",
              "flatPath": "tagmanager/v2/accounts/{accountsId}/containers",
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.edit.containers",
                "https://www.googleapis.com/auth/tagmanager.readonly"
              ],
              "id": "tagmanager.accounts.containers.list",
              "httpMethod": "GET",
              "parameterOrder": [
                "parent"
              ],
              "response": {
                "$ref": "ListContainersResponse"
              },
              "path": "tagmanager/v2/{+parent}/containers",
              "parameters": {
                "parent": {
                  "required": true,
                  "description": "GTM Account's API relative path.",
                  "location": "path",
                  "type": "string",
                  "pattern": "^accounts/[^/]+$"
                },
                "pageToken": {
                  "type": "string",
                  "description": "Continuation token for fetching the next page of results.",
                  "location": "query"
                }
              }
            },
            "lookup": {
              "description": "Looks up a Container by destination ID or tag ID.",
              "flatPath": "tagmanager/v2/accounts/containers:lookup",
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.edit.containers",
                "https://www.googleapis.com/auth/tagmanager.readonly"
              ],
              "id": "tagmanager.accounts.containers.lookup",
              "httpMethod": "GET",
              "parameterOrder": [],
              "response": {
                "$ref": "Container"
              },
              "path": "tagmanager/v2/accounts/containers:lookup",
              "parameters": {
                "destinationId": {
                  "description": "Destination ID linked to a GTM Container, e.g. AW-123456789. Only one of destination_id or tag_id should be set.",
                  "location": "query",
                  "type": "string"
                },
                "tagId": {
                  "type": "string",
                  "description": "Tag ID for a GTM Container, e.g. GTM-123456789. Only one of destination_id or tag_id should be set.",
                  "location": "query"
                }
              }
            },
            "snippet": {
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.edit.containers",
                "https://www.googleapis.com/auth/tagmanager.readonly"
              ],
              "description": "Gets the tagging snippet for a Container.",
              "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}:snippet",
              "httpMethod": "GET",
              "parameterOrder": [
                "path"
              ],
              "response": {
                "$ref": "GetContainerSnippetResponse"
              },
              "id": "tagmanager.accounts.containers.snippet",
              "parameters": {
                "path": {
                  "required": true,
                  "description": "Container snippet's API relative path.",
                  "location": "path",
                  "type": "string",
                  "pattern": "^accounts/[^/]+/containers/[^/]+$"
                }
              },
              "path": "tagmanager/v2/{+path}:snippet"
            },
            "create": {
              "response": {
                "$ref": "Container"
              },
              "httpMethod": "POST",
              "parameterOrder": [
                "parent"
              ],
              "id": "tagmanager.accounts.containers.create",
              "request": {
                "$ref": "Container"
              },
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.edit.containers"
              ],
              "flatPath": "tagmanager/v2/accounts/{accountsId}/containers",
              "description": "Creates a Container.",
              "parameters": {
                "parent": {
                  "pattern": "^accounts/[^/]+$",
                  "description": "GTM Account's API relative path.",
                  "location": "path",
                  "type": "string",
                  "required": true
                }
              },
              "path": "tagmanager/v2/{+parent}/containers"
            },
            "move_tag_id": {
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.edit.containers"
              ],
              "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}:move_tag_id",
              "description": "Move Tag ID out of a Container.",
              "response": {
                "$ref": "Container"
              },
              "httpMethod": "POST",
              "parameterOrder": [
                "path"
              ],
              "id": "tagmanager.accounts.containers.move_tag_id",
              "parameters": {
                "copyTermsOfService": {
                  "description": "Must be set to true to accept all terms of service agreements copied from the current tag to the newly created tag. If this bit is false, the operation will fail.",
                  "location": "query",
                  "type": "boolean"
                },
                "tagId": {
                  "type": "string",
                  "description": "Tag ID to be removed from the current Container.",
                  "location": "query"
                },
                "copyUsers": {
                  "description": "Whether or not to copy users from this tag to the new tag.",
                  "location": "query",
                  "type": "boolean"
                },
                "allowUserPermissionFeatureUpdate": {
                  "type": "boolean",
                  "description": "Must be set to true to allow features.user_permissions to change from false to true. If this operation causes an update but this bit is false, the operation will fail.",
                  "location": "query"
                },
                "tagName": {
                  "type": "string",
                  "description": "The name for the newly created tag.",
                  "location": "query"
                },
                "path": {
                  "required": true,
                  "description": "GTM Container's API relative path.",
                  "location": "path",
                  "type": "string",
                  "pattern": "^accounts/[^/]+/containers/[^/]+$"
                },
                "copySettings": {
                  "description": "Whether or not to copy tag settings from this tag to the new tag.",
                  "location": "query",
                  "type": "boolean"
                }
              },
              "path": "tagmanager/v2/{+path}:move_tag_id"
            },
            "update": {
              "parameters": {
                "path": {
                  "description": "GTM Container's API relative path.",
                  "location": "path",
                  "type": "string",
                  "pattern": "^accounts/[^/]+/containers/[^/]+$",
                  "required": true
                },
                "fingerprint": {
                  "description": "When provided, this fingerprint must match the fingerprint of the container in storage.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "tagmanager/v2/{+path}",
              "httpMethod": "PUT",
              "parameterOrder": [
                "path"
              ],
              "response": {
                "$ref": "Container"
              },
              "id": "tagmanager.accounts.containers.update",
              "request": {
                "$ref": "Container"
              },
              "scopes": [
                "https://www.googleapis.com/auth/tagmanager.edit.containers"
              ],
              "description": "Updates a Container.",
              "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}"
            }
          }
        }
      }
    }
  },
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://tagmanager.mtls.googleapis.com/",
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "description": "This API allows clients to access and modify container and tag configuration."
}
