| // Copyright 2020 Google LLC. | 
 | // Use of this source code is governed by a BSD-style | 
 | // license that can be found in the LICENSE file. | 
 |  | 
 | // Code generated file. DO NOT EDIT. | 
 |  | 
 | // Package tagmanager provides access to the Tag Manager API. | 
 | // | 
 | // For product documentation, see: https://developers.google.com/tag-manager | 
 | // | 
 | // Creating a client | 
 | // | 
 | // Usage example: | 
 | // | 
 | //   import "google.golang.org/api/tagmanager/v2" | 
 | //   ... | 
 | //   ctx := context.Background() | 
 | //   tagmanagerService, err := tagmanager.NewService(ctx) | 
 | // | 
 | // In this example, Google Application Default Credentials are used for authentication. | 
 | // | 
 | // For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. | 
 | // | 
 | // Other authentication options | 
 | // | 
 | // By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes: | 
 | // | 
 | //   tagmanagerService, err := tagmanager.NewService(ctx, option.WithScopes(tagmanager.TagmanagerReadonlyScope)) | 
 | // | 
 | // To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey: | 
 | // | 
 | //   tagmanagerService, err := tagmanager.NewService(ctx, option.WithAPIKey("AIza...")) | 
 | // | 
 | // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: | 
 | // | 
 | //   config := &oauth2.Config{...} | 
 | //   // ... | 
 | //   token, err := config.Exchange(ctx, ...) | 
 | //   tagmanagerService, err := tagmanager.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) | 
 | // | 
 | // See https://godoc.org/google.golang.org/api/option/ for details on options. | 
 | package tagmanager // import "google.golang.org/api/tagmanager/v2" | 
 |  | 
 | import ( | 
 | 	"bytes" | 
 | 	"context" | 
 | 	"encoding/json" | 
 | 	"errors" | 
 | 	"fmt" | 
 | 	"io" | 
 | 	"net/http" | 
 | 	"net/url" | 
 | 	"strconv" | 
 | 	"strings" | 
 |  | 
 | 	googleapi "google.golang.org/api/googleapi" | 
 | 	gensupport "google.golang.org/api/internal/gensupport" | 
 | 	option "google.golang.org/api/option" | 
 | 	internaloption "google.golang.org/api/option/internaloption" | 
 | 	htransport "google.golang.org/api/transport/http" | 
 | ) | 
 |  | 
 | // Always reference these packages, just in case the auto-generated code | 
 | // below doesn't. | 
 | var _ = bytes.NewBuffer | 
 | var _ = strconv.Itoa | 
 | var _ = fmt.Sprintf | 
 | var _ = json.NewDecoder | 
 | var _ = io.Copy | 
 | var _ = url.Parse | 
 | var _ = gensupport.MarshalJSON | 
 | var _ = googleapi.Version | 
 | var _ = errors.New | 
 | var _ = strings.Replace | 
 | var _ = context.Canceled | 
 | var _ = internaloption.WithDefaultEndpoint | 
 |  | 
 | const apiId = "tagmanager:v2" | 
 | const apiName = "tagmanager" | 
 | const apiVersion = "v2" | 
 | const basePath = "https://www.googleapis.com/" | 
 |  | 
 | // OAuth2 scopes used by this API. | 
 | const ( | 
 | 	// Delete your Google Tag Manager containers | 
 | 	TagmanagerDeleteContainersScope = "https://www.googleapis.com/auth/tagmanager.delete.containers" | 
 |  | 
 | 	// Manage your Google Tag Manager container and its subcomponents, | 
 | 	// excluding versioning and publishing | 
 | 	TagmanagerEditContainersScope = "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 |  | 
 | 	// Manage your Google Tag Manager container versions | 
 | 	TagmanagerEditContainerversionsScope = "https://www.googleapis.com/auth/tagmanager.edit.containerversions" | 
 |  | 
 | 	// View and manage your Google Tag Manager accounts | 
 | 	TagmanagerManageAccountsScope = "https://www.googleapis.com/auth/tagmanager.manage.accounts" | 
 |  | 
 | 	// Manage user permissions of your Google Tag Manager account and | 
 | 	// container | 
 | 	TagmanagerManageUsersScope = "https://www.googleapis.com/auth/tagmanager.manage.users" | 
 |  | 
 | 	// Publish your Google Tag Manager container versions | 
 | 	TagmanagerPublishScope = "https://www.googleapis.com/auth/tagmanager.publish" | 
 |  | 
 | 	// View your Google Tag Manager container and its subcomponents | 
 | 	TagmanagerReadonlyScope = "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | ) | 
 |  | 
 | // NewService creates a new Service. | 
 | func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { | 
 | 	scopesOption := option.WithScopes( | 
 | 		"https://www.googleapis.com/auth/tagmanager.delete.containers", | 
 | 		"https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 		"https://www.googleapis.com/auth/tagmanager.edit.containerversions", | 
 | 		"https://www.googleapis.com/auth/tagmanager.manage.accounts", | 
 | 		"https://www.googleapis.com/auth/tagmanager.manage.users", | 
 | 		"https://www.googleapis.com/auth/tagmanager.publish", | 
 | 		"https://www.googleapis.com/auth/tagmanager.readonly", | 
 | 	) | 
 | 	// NOTE: prepend, so we don't override user-specified scopes. | 
 | 	opts = append([]option.ClientOption{scopesOption}, opts...) | 
 | 	opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) | 
 | 	client, endpoint, err := htransport.NewClient(ctx, opts...) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	s, err := New(client) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	if endpoint != "" { | 
 | 		s.BasePath = endpoint | 
 | 	} | 
 | 	return s, nil | 
 | } | 
 |  | 
 | // New creates a new Service. It uses the provided http.Client for requests. | 
 | // | 
 | // Deprecated: please use NewService instead. | 
 | // To provide a custom HTTP client, use option.WithHTTPClient. | 
 | // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. | 
 | func New(client *http.Client) (*Service, error) { | 
 | 	if client == nil { | 
 | 		return nil, errors.New("client is nil") | 
 | 	} | 
 | 	s := &Service{client: client, BasePath: basePath} | 
 | 	s.Accounts = NewAccountsService(s) | 
 | 	return s, nil | 
 | } | 
 |  | 
 | type Service struct { | 
 | 	client    *http.Client | 
 | 	BasePath  string // API endpoint base URL | 
 | 	UserAgent string // optional additional User-Agent fragment | 
 |  | 
 | 	Accounts *AccountsService | 
 | } | 
 |  | 
 | func (s *Service) userAgent() string { | 
 | 	if s.UserAgent == "" { | 
 | 		return googleapi.UserAgent | 
 | 	} | 
 | 	return googleapi.UserAgent + " " + s.UserAgent | 
 | } | 
 |  | 
 | func NewAccountsService(s *Service) *AccountsService { | 
 | 	rs := &AccountsService{s: s} | 
 | 	rs.Containers = NewAccountsContainersService(s) | 
 | 	rs.UserPermissions = NewAccountsUserPermissionsService(s) | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsService struct { | 
 | 	s *Service | 
 |  | 
 | 	Containers *AccountsContainersService | 
 |  | 
 | 	UserPermissions *AccountsUserPermissionsService | 
 | } | 
 |  | 
 | func NewAccountsContainersService(s *Service) *AccountsContainersService { | 
 | 	rs := &AccountsContainersService{s: s} | 
 | 	rs.Environments = NewAccountsContainersEnvironmentsService(s) | 
 | 	rs.VersionHeaders = NewAccountsContainersVersionHeadersService(s) | 
 | 	rs.Versions = NewAccountsContainersVersionsService(s) | 
 | 	rs.Workspaces = NewAccountsContainersWorkspacesService(s) | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersService struct { | 
 | 	s *Service | 
 |  | 
 | 	Environments *AccountsContainersEnvironmentsService | 
 |  | 
 | 	VersionHeaders *AccountsContainersVersionHeadersService | 
 |  | 
 | 	Versions *AccountsContainersVersionsService | 
 |  | 
 | 	Workspaces *AccountsContainersWorkspacesService | 
 | } | 
 |  | 
 | func NewAccountsContainersEnvironmentsService(s *Service) *AccountsContainersEnvironmentsService { | 
 | 	rs := &AccountsContainersEnvironmentsService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersEnvironmentsService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | func NewAccountsContainersVersionHeadersService(s *Service) *AccountsContainersVersionHeadersService { | 
 | 	rs := &AccountsContainersVersionHeadersService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersVersionHeadersService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | func NewAccountsContainersVersionsService(s *Service) *AccountsContainersVersionsService { | 
 | 	rs := &AccountsContainersVersionsService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersVersionsService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | func NewAccountsContainersWorkspacesService(s *Service) *AccountsContainersWorkspacesService { | 
 | 	rs := &AccountsContainersWorkspacesService{s: s} | 
 | 	rs.BuiltInVariables = NewAccountsContainersWorkspacesBuiltInVariablesService(s) | 
 | 	rs.Folders = NewAccountsContainersWorkspacesFoldersService(s) | 
 | 	rs.Tags = NewAccountsContainersWorkspacesTagsService(s) | 
 | 	rs.Templates = NewAccountsContainersWorkspacesTemplatesService(s) | 
 | 	rs.Triggers = NewAccountsContainersWorkspacesTriggersService(s) | 
 | 	rs.Variables = NewAccountsContainersWorkspacesVariablesService(s) | 
 | 	rs.Zones = NewAccountsContainersWorkspacesZonesService(s) | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersWorkspacesService struct { | 
 | 	s *Service | 
 |  | 
 | 	BuiltInVariables *AccountsContainersWorkspacesBuiltInVariablesService | 
 |  | 
 | 	Folders *AccountsContainersWorkspacesFoldersService | 
 |  | 
 | 	Tags *AccountsContainersWorkspacesTagsService | 
 |  | 
 | 	Templates *AccountsContainersWorkspacesTemplatesService | 
 |  | 
 | 	Triggers *AccountsContainersWorkspacesTriggersService | 
 |  | 
 | 	Variables *AccountsContainersWorkspacesVariablesService | 
 |  | 
 | 	Zones *AccountsContainersWorkspacesZonesService | 
 | } | 
 |  | 
 | func NewAccountsContainersWorkspacesBuiltInVariablesService(s *Service) *AccountsContainersWorkspacesBuiltInVariablesService { | 
 | 	rs := &AccountsContainersWorkspacesBuiltInVariablesService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersWorkspacesBuiltInVariablesService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | func NewAccountsContainersWorkspacesFoldersService(s *Service) *AccountsContainersWorkspacesFoldersService { | 
 | 	rs := &AccountsContainersWorkspacesFoldersService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersWorkspacesFoldersService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | func NewAccountsContainersWorkspacesTagsService(s *Service) *AccountsContainersWorkspacesTagsService { | 
 | 	rs := &AccountsContainersWorkspacesTagsService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersWorkspacesTagsService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | func NewAccountsContainersWorkspacesTemplatesService(s *Service) *AccountsContainersWorkspacesTemplatesService { | 
 | 	rs := &AccountsContainersWorkspacesTemplatesService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersWorkspacesTemplatesService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | func NewAccountsContainersWorkspacesTriggersService(s *Service) *AccountsContainersWorkspacesTriggersService { | 
 | 	rs := &AccountsContainersWorkspacesTriggersService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersWorkspacesTriggersService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | func NewAccountsContainersWorkspacesVariablesService(s *Service) *AccountsContainersWorkspacesVariablesService { | 
 | 	rs := &AccountsContainersWorkspacesVariablesService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersWorkspacesVariablesService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | func NewAccountsContainersWorkspacesZonesService(s *Service) *AccountsContainersWorkspacesZonesService { | 
 | 	rs := &AccountsContainersWorkspacesZonesService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsContainersWorkspacesZonesService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | func NewAccountsUserPermissionsService(s *Service) *AccountsUserPermissionsService { | 
 | 	rs := &AccountsUserPermissionsService{s: s} | 
 | 	return rs | 
 | } | 
 |  | 
 | type AccountsUserPermissionsService struct { | 
 | 	s *Service | 
 | } | 
 |  | 
 | // Account: Represents a Google Tag Manager Account. | 
 | type Account struct { | 
 | 	// AccountId: The Account ID uniquely identifies the GTM Account. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Account as computed at | 
 | 	// storage time. | 
 | 	// This value is recomputed whenever the account is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// Name: Account display name. | 
 | 	// @mutable tagmanager.accounts.create | 
 | 	// @mutable tagmanager.accounts.update | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Path: GTM Account's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// ShareData: 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. | 
 | 	// @mutable tagmanager.accounts.create | 
 | 	// @mutable tagmanager.accounts.update | 
 | 	ShareData bool `json:"shareData,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Account) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Account | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // AccountAccess: Defines the Google Tag Manager Account access | 
 | // permissions. | 
 | type AccountAccess struct { | 
 | 	// Permission: Whether the user has no access, user access, or admin | 
 | 	// access to an account. | 
 | 	// @mutable tagmanager.accounts.permissions.create | 
 | 	// @mutable tagmanager.accounts.permissions.update | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "accountPermissionUnspecified" | 
 | 	//   "noAccess" | 
 | 	//   "user" | 
 | 	//   "admin" | 
 | 	Permission string `json:"permission,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Permission") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Permission") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *AccountAccess) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod AccountAccess | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // BuiltInVariable: Built-in variables are a special category of | 
 | // variables that are pre-created | 
 | // and non-customizable. They provide common functionality like | 
 | // accessing | 
 | // propeties of the gtm data layer, monitoring clicks, or accessing | 
 | // elements | 
 | // of a page URL. | 
 | type BuiltInVariable struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// Name: Name of the built-in variable to be used to refer to the | 
 | 	// built-in variable. | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Path: GTM BuiltInVariable's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// Type: Type of built-in | 
 | 	// variable. | 
 | 	// @required.tagmanager.accounts.containers.workspaces.built_in | 
 | 	// _variable.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.built_in_variable.update | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "builtInVariableTypeUnspecified" | 
 | 	//   "pageUrl" | 
 | 	//   "pageHostname" | 
 | 	//   "pagePath" | 
 | 	//   "referrer" | 
 | 	//   "event" - For web or mobile. | 
 | 	//   "clickElement" | 
 | 	//   "clickClasses" | 
 | 	//   "clickId" | 
 | 	//   "clickTarget" | 
 | 	//   "clickUrl" | 
 | 	//   "clickText" | 
 | 	//   "firstPartyServingUrl" | 
 | 	//   "formElement" | 
 | 	//   "formClasses" | 
 | 	//   "formId" | 
 | 	//   "formTarget" | 
 | 	//   "formUrl" | 
 | 	//   "formText" | 
 | 	//   "errorMessage" | 
 | 	//   "errorUrl" | 
 | 	//   "errorLine" | 
 | 	//   "newHistoryUrl" | 
 | 	//   "oldHistoryUrl" | 
 | 	//   "newHistoryFragment" | 
 | 	//   "oldHistoryFragment" | 
 | 	//   "newHistoryState" | 
 | 	//   "oldHistoryState" | 
 | 	//   "historySource" | 
 | 	//   "containerVersion" - For web or mobile. | 
 | 	//   "debugMode" | 
 | 	//   "randomNumber" - For web or mobile. | 
 | 	//   "containerId" - For web or mobile. | 
 | 	//   "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" | 
 | 	Type string `json:"type,omitempty"` | 
 |  | 
 | 	// WorkspaceId: GTM Workspace ID. | 
 | 	WorkspaceId string `json:"workspaceId,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *BuiltInVariable) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod BuiltInVariable | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | type Client struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// ClientId: The Client ID uniquely identifies the GTM client. | 
 | 	ClientId string `json:"clientId,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Client as computed at storage | 
 | 	// time. | 
 | 	// This value is recomputed whenever the client is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// Name: Client display name. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.clients.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.clients.update | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Parameter: The client's parameters. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.clients.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.clients.update | 
 | 	Parameter []*Parameter `json:"parameter,omitempty"` | 
 |  | 
 | 	// Path: GTM client's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// Priority: Priority determines relative firing order. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.clients.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.clients.update | 
 | 	Priority int64 `json:"priority,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// Type: Client type. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.clients.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.clients.update | 
 | 	Type string `json:"type,omitempty"` | 
 |  | 
 | 	// WorkspaceId: GTM Workspace ID. | 
 | 	WorkspaceId string `json:"workspaceId,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Client) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Client | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Condition: Represents a predicate. | 
 | type Condition struct { | 
 | 	// Parameter: A list of named parameters (key/value), depending on the | 
 | 	// condition's type. | 
 | 	// Notes:<ul> | 
 | 	// <li>For binary operators, include parameters named <code>arg0</code> | 
 | 	// and | 
 | 	//    <code>arg1</code> for specifying the left and right operands, | 
 | 	//    respectively.</li> | 
 | 	// <li>At this time, the left operand (<code>arg0</code>) must be a | 
 | 	// reference | 
 | 	//     to a variable.</li> | 
 | 	// <li>For case-insensitive Regex matching, include a boolean parameter | 
 | 	// named | 
 | 	//     <code>ignore_case</code> that is set to <code>true</code>. | 
 | 	//     If not specified or set to any other value, the matching will be | 
 | 	// case | 
 | 	//     sensitive.</li> | 
 | 	// <li>To negate an operator, include a boolean parameter named | 
 | 	//     <code>negate</code> boolean parameter that is set to | 
 | 	// <code>true</code>. | 
 | 	//     </li> | 
 | 	// </ul> | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	Parameter []*Parameter `json:"parameter,omitempty"` | 
 |  | 
 | 	// Type: The type of operator for this condition. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "conditionTypeUnspecified" | 
 | 	//   "equals" | 
 | 	//   "contains" | 
 | 	//   "startsWith" | 
 | 	//   "endsWith" | 
 | 	//   "matchRegex" | 
 | 	//   "greater" | 
 | 	//   "greaterOrEquals" | 
 | 	//   "less" | 
 | 	//   "lessOrEquals" | 
 | 	//   "cssSelector" | 
 | 	//   "urlMatches" - NOTE(lanzone): When defining a ConditionType here, | 
 | 	// don't forget to also | 
 | 	// define a matching PredicateType (in condition.proto). | 
 | 	Type string `json:"type,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Parameter") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Parameter") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Condition) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Condition | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Container: Represents a Google Tag Manager Container, which specifies | 
 | // the platform tags | 
 | // will run on, manages workspaces, and retains container versions. | 
 | type Container struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// ContainerId: The Container ID uniquely identifies the GTM Container. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// DomainName: List of domain names associated with the | 
 | 	// Container. | 
 | 	// @mutable tagmanager.accounts.containers.create | 
 | 	// @mutable tagmanager.accounts.containers.update | 
 | 	DomainName []string `json:"domainName,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Container as computed at | 
 | 	// storage time.  This | 
 | 	// value is recomputed whenever the account is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// Name: Container display name. | 
 | 	// @mutable tagmanager.accounts.containers.create | 
 | 	// @mutable tagmanager.accounts.containers.update | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Notes: Container Notes. | 
 | 	// @mutable tagmanager.accounts.containers.create | 
 | 	// @mutable tagmanager.accounts.containers.update | 
 | 	Notes string `json:"notes,omitempty"` | 
 |  | 
 | 	// Path: GTM Container's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// PublicId: Container Public ID. | 
 | 	PublicId string `json:"publicId,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// UsageContext: List of Usage Contexts for the Container. Valid values | 
 | 	// include: <code>web, | 
 | 	// android, or ios</code>. | 
 | 	// @mutable tagmanager.accounts.containers.create | 
 | 	// @mutable tagmanager.accounts.containers.update | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "usageContextUnspecified" | 
 | 	//   "web" | 
 | 	//   "android" | 
 | 	//   "ios" | 
 | 	//   "androidSdk5" | 
 | 	//   "iosSdk5" | 
 | 	//   "amp" | 
 | 	UsageContext []string `json:"usageContext,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Container) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Container | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ContainerAccess: Defines the Google Tag Manager Container access | 
 | // permissions. | 
 | type ContainerAccess struct { | 
 | 	// ContainerId: GTM Container ID. | 
 | 	// @mutable tagmanager.accounts.permissions.create | 
 | 	// @mutable tagmanager.accounts.permissions.update | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// Permission: List of Container permissions. | 
 | 	// @mutable tagmanager.accounts.permissions.create | 
 | 	// @mutable tagmanager.accounts.permissions.update | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "containerPermissionUnspecified" | 
 | 	//   "noAccess" | 
 | 	//   "read" | 
 | 	//   "edit" | 
 | 	//   "approve" | 
 | 	//   "publish" | 
 | 	Permission string `json:"permission,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "ContainerId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "ContainerId") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ContainerAccess) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ContainerAccess | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ContainerVersion: Represents a Google Tag Manager Container Version. | 
 | type ContainerVersion struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// BuiltInVariable: The built-in variables in the container that this | 
 | 	// version was taken from. | 
 | 	BuiltInVariable []*BuiltInVariable `json:"builtInVariable,omitempty"` | 
 |  | 
 | 	// Client: The clients in the container that this version was taken | 
 | 	// from. | 
 | 	Client []*Client `json:"client,omitempty"` | 
 |  | 
 | 	// Container: The container that this version was taken from. | 
 | 	Container *Container `json:"container,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// ContainerVersionId: The Container Version ID uniquely identifies the | 
 | 	// GTM Container Version. | 
 | 	ContainerVersionId string `json:"containerVersionId,omitempty"` | 
 |  | 
 | 	// CustomTemplate: The custom templates in the container that this | 
 | 	// version was taken from. | 
 | 	CustomTemplate []*CustomTemplate `json:"customTemplate,omitempty"` | 
 |  | 
 | 	// Deleted: A value of true indicates this container version has been | 
 | 	// deleted. | 
 | 	Deleted bool `json:"deleted,omitempty"` | 
 |  | 
 | 	// Description: Container version description. | 
 | 	// @mutable tagmanager.accounts.containers.versions.update | 
 | 	Description string `json:"description,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Container Version as computed | 
 | 	// at | 
 | 	// storage time. This value is recomputed whenever the container version | 
 | 	// is | 
 | 	// modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// Folder: The folders in the container that this version was taken | 
 | 	// from. | 
 | 	Folder []*Folder `json:"folder,omitempty"` | 
 |  | 
 | 	// Name: Container version display name. | 
 | 	// @mutable tagmanager.accounts.containers.versions.update | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Path: GTM ContainerVersions's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// Tag: The tags in the container that this version was taken from. | 
 | 	Tag []*Tag `json:"tag,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// Trigger: The triggers in the container that this version was taken | 
 | 	// from. | 
 | 	Trigger []*Trigger `json:"trigger,omitempty"` | 
 |  | 
 | 	// Variable: The variables in the container that this version was taken | 
 | 	// from. | 
 | 	Variable []*Variable `json:"variable,omitempty"` | 
 |  | 
 | 	// Zone: The zones in the container that this version was taken from. | 
 | 	Zone []*Zone `json:"zone,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ContainerVersion) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ContainerVersion | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ContainerVersionHeader: Represents a Google Tag Manager Container | 
 | // Version Header. | 
 | type ContainerVersionHeader struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// ContainerVersionId: The Container Version ID uniquely identifies the | 
 | 	// GTM Container Version. | 
 | 	ContainerVersionId string `json:"containerVersionId,omitempty"` | 
 |  | 
 | 	// Deleted: A value of true indicates this container version has been | 
 | 	// deleted. | 
 | 	Deleted bool `json:"deleted,omitempty"` | 
 |  | 
 | 	// Name: Container version display name. | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// NumCustomTemplates: Number of custom templates in the container | 
 | 	// version. | 
 | 	NumCustomTemplates string `json:"numCustomTemplates,omitempty"` | 
 |  | 
 | 	// NumMacros: Number of macros in the container version. | 
 | 	NumMacros string `json:"numMacros,omitempty"` | 
 |  | 
 | 	// NumRules: Number of rules in the container version. | 
 | 	NumRules string `json:"numRules,omitempty"` | 
 |  | 
 | 	// NumTags: Number of tags in the container version. | 
 | 	NumTags string `json:"numTags,omitempty"` | 
 |  | 
 | 	// NumTriggers: Number of triggers in the container version. | 
 | 	NumTriggers string `json:"numTriggers,omitempty"` | 
 |  | 
 | 	// NumVariables: Number of variables in the container version. | 
 | 	NumVariables string `json:"numVariables,omitempty"` | 
 |  | 
 | 	// NumZones: Number of zones in the container version. | 
 | 	NumZones string `json:"numZones,omitempty"` | 
 |  | 
 | 	// Path: GTM Container Versions's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ContainerVersionHeader) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ContainerVersionHeader | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | type CreateBuiltInVariableResponse struct { | 
 | 	// BuiltInVariable: List of created built-in variables. | 
 | 	BuiltInVariable []*BuiltInVariable `json:"builtInVariable,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "BuiltInVariable") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "BuiltInVariable") to | 
 | 	// include in API requests with the JSON null value. By default, fields | 
 | 	// with empty values are omitted from API requests. However, any field | 
 | 	// with an empty value appearing in NullFields will be sent to the | 
 | 	// server as null. It is an error if a field in this list has a | 
 | 	// non-empty value. This may be used to include null fields in Patch | 
 | 	// requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *CreateBuiltInVariableResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod CreateBuiltInVariableResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // CreateContainerVersionRequestVersionOptions: Options for new | 
 | // container versions. | 
 | type CreateContainerVersionRequestVersionOptions struct { | 
 | 	// Name: The name of the container version to be created. | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Notes: The notes of the container version to be created. | 
 | 	Notes string `json:"notes,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Name") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Name") to include in API | 
 | 	// requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *CreateContainerVersionRequestVersionOptions) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod CreateContainerVersionRequestVersionOptions | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // CreateContainerVersionResponse: Create container versions response. | 
 | type CreateContainerVersionResponse struct { | 
 | 	// CompilerError: Compiler errors or not. | 
 | 	CompilerError bool `json:"compilerError,omitempty"` | 
 |  | 
 | 	// ContainerVersion: The container version created. | 
 | 	ContainerVersion *ContainerVersion `json:"containerVersion,omitempty"` | 
 |  | 
 | 	// NewWorkspacePath: 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. | 
 | 	NewWorkspacePath string `json:"newWorkspacePath,omitempty"` | 
 |  | 
 | 	// SyncStatus: Whether version creation failed when syncing the | 
 | 	// workspace to the latest | 
 | 	// container version. | 
 | 	SyncStatus *SyncStatus `json:"syncStatus,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "CompilerError") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "CompilerError") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *CreateContainerVersionResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod CreateContainerVersionResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // CustomTemplate: Represents a Google Tag Manager Custom Template's | 
 | // contents. | 
 | type CustomTemplate struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Custom Template as computed | 
 | 	// at storage time. | 
 | 	// This value is recomputed whenever the template is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// GalleryReference: A reference to the Community Template Gallery | 
 | 	// entry. | 
 | 	GalleryReference *GalleryReference `json:"galleryReference,omitempty"` | 
 |  | 
 | 	// Name: Custom Template display name. | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Path: GTM Custom Template's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// TemplateData: The custom template in text format. | 
 | 	TemplateData string `json:"templateData,omitempty"` | 
 |  | 
 | 	// TemplateId: The Custom Template ID uniquely identifies the GTM custom | 
 | 	// template. | 
 | 	TemplateId string `json:"templateId,omitempty"` | 
 |  | 
 | 	// WorkspaceId: GTM Workspace ID. | 
 | 	WorkspaceId string `json:"workspaceId,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *CustomTemplate) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod CustomTemplate | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Entity: A workspace entity that may represent a tag, trigger, | 
 | // variable, or folder in | 
 | // addition to its status in the workspace. | 
 | type Entity struct { | 
 | 	// ChangeStatus: Represents how the entity has been changed in the | 
 | 	// workspace. | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "changeStatusUnspecified" | 
 | 	//   "none" - The entity has never been changed. | 
 | 	//   "added" - The entity is added to the workspace. | 
 | 	//   "deleted" - The entity is deleted from the workspace. | 
 | 	//   "updated" - The entity has been updated in the workspace. | 
 | 	ChangeStatus string `json:"changeStatus,omitempty"` | 
 |  | 
 | 	// Folder: The Folder being represented by the entity. | 
 | 	Folder *Folder `json:"folder,omitempty"` | 
 |  | 
 | 	// Tag: The tag being represented by the entity. | 
 | 	Tag *Tag `json:"tag,omitempty"` | 
 |  | 
 | 	// Trigger: The trigger being represented by the entity. | 
 | 	Trigger *Trigger `json:"trigger,omitempty"` | 
 |  | 
 | 	// Variable: The variable being represented by the entity. | 
 | 	Variable *Variable `json:"variable,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "ChangeStatus") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "ChangeStatus") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Entity) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Entity | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Environment: 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. | 
 | type Environment struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// AuthorizationCode: The environment authorization code. | 
 | 	AuthorizationCode string `json:"authorizationCode,omitempty"` | 
 |  | 
 | 	// AuthorizationTimestamp: The last update time-stamp for the | 
 | 	// authorization code. | 
 | 	AuthorizationTimestamp string `json:"authorizationTimestamp,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// ContainerVersionId: Represents a link to a container version. | 
 | 	ContainerVersionId string `json:"containerVersionId,omitempty"` | 
 |  | 
 | 	// Description: The environment description. Can be set or changed only | 
 | 	// on USER type | 
 | 	// environments. | 
 | 	// @mutable tagmanager.accounts.containers.environments.create | 
 | 	// @mutable tagmanager.accounts.containers.environments.update | 
 | 	Description string `json:"description,omitempty"` | 
 |  | 
 | 	// EnableDebug: Whether or not to enable debug by default for the | 
 | 	// environment. | 
 | 	// @mutable tagmanager.accounts.containers.environments.create | 
 | 	// @mutable tagmanager.accounts.containers.environments.update | 
 | 	EnableDebug bool `json:"enableDebug,omitempty"` | 
 |  | 
 | 	// EnvironmentId: GTM Environment ID uniquely identifies the GTM | 
 | 	// Environment. | 
 | 	EnvironmentId string `json:"environmentId,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM environment as computed at | 
 | 	// storage time. | 
 | 	// This value is recomputed whenever the environment is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// Name: The environment display name. Can be set or changed only on | 
 | 	// USER type | 
 | 	// environments. | 
 | 	// @mutable tagmanager.accounts.containers.environments.create | 
 | 	// @mutable tagmanager.accounts.containers.environments.update | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Path: GTM Environment's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// Type: The type of this environment. | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "user" - Points to a user defined environment. | 
 | 	//   "live" - Points to the current live container version. | 
 | 	//   "latest" - Points to the latest container version. | 
 | 	//   "workspace" - Automatically managed environment that points to a | 
 | 	// workspace preview or | 
 | 	// version created by a workspace. | 
 | 	Type string `json:"type,omitempty"` | 
 |  | 
 | 	// Url: Default preview page url for the environment. | 
 | 	// @mutable tagmanager.accounts.containers.environments.create | 
 | 	// @mutable tagmanager.accounts.containers.environments.update | 
 | 	Url string `json:"url,omitempty"` | 
 |  | 
 | 	// WorkspaceId: Represents a link to a quick preview of a workspace. | 
 | 	WorkspaceId string `json:"workspaceId,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Environment) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Environment | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Folder: Represents a Google Tag Manager Folder. | 
 | type Folder struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Folder as computed at storage | 
 | 	// time. | 
 | 	// This value is recomputed whenever the folder is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// FolderId: The Folder ID uniquely identifies the GTM Folder. | 
 | 	FolderId string `json:"folderId,omitempty"` | 
 |  | 
 | 	// Name: Folder display name. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.folders.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.folders.update | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Notes: User notes on how to apply this folder in the | 
 | 	// container. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.folders.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.folders.update | 
 | 	Notes string `json:"notes,omitempty"` | 
 |  | 
 | 	// Path: GTM Folder's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// WorkspaceId: GTM Workspace ID. | 
 | 	WorkspaceId string `json:"workspaceId,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Folder) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Folder | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // FolderEntities: Represents a Google Tag Manager Folder's contents. | 
 | type FolderEntities struct { | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// Tag: The list of tags inside the folder. | 
 | 	Tag []*Tag `json:"tag,omitempty"` | 
 |  | 
 | 	// Trigger: The list of triggers inside the folder. | 
 | 	Trigger []*Trigger `json:"trigger,omitempty"` | 
 |  | 
 | 	// Variable: The list of variables inside the folder. | 
 | 	Variable []*Variable `json:"variable,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "NextPageToken") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "NextPageToken") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *FolderEntities) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod FolderEntities | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // GalleryReference: Represents the link between a custom template and | 
 | // an entry on the Community | 
 | // Template Gallery site. | 
 | type GalleryReference struct { | 
 | 	// Host: The name of the host for the community gallery template. | 
 | 	Host string `json:"host,omitempty"` | 
 |  | 
 | 	// IsModified: If a user has manually edited the community  gallery | 
 | 	// template. | 
 | 	IsModified bool `json:"isModified,omitempty"` | 
 |  | 
 | 	// Owner: The name of the owner for the community gallery template. | 
 | 	Owner string `json:"owner,omitempty"` | 
 |  | 
 | 	// Repository: The name of the repository for the community gallery | 
 | 	// template. | 
 | 	Repository string `json:"repository,omitempty"` | 
 |  | 
 | 	// Signature: The signature of the community gallery template as | 
 | 	// computed at import time. | 
 | 	// This value is recomputed whenever the template is updated from the | 
 | 	// gallery. | 
 | 	Signature string `json:"signature,omitempty"` | 
 |  | 
 | 	// Version: The version of the community gallery template. | 
 | 	Version string `json:"version,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Host") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Host") to include in API | 
 | 	// requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *GalleryReference) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod GalleryReference | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // GetWorkspaceStatusResponse: The changes that have occurred in the | 
 | // workspace since the base container | 
 | // version. | 
 | type GetWorkspaceStatusResponse struct { | 
 | 	// MergeConflict: The merge conflict after sync. | 
 | 	MergeConflict []*MergeConflict `json:"mergeConflict,omitempty"` | 
 |  | 
 | 	// WorkspaceChange: Entities that have been changed in the workspace. | 
 | 	WorkspaceChange []*Entity `json:"workspaceChange,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "MergeConflict") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "MergeConflict") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *GetWorkspaceStatusResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod GetWorkspaceStatusResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListAccountsResponse: List Accounts Response. | 
 | type ListAccountsResponse struct { | 
 | 	// Account: List of GTM Accounts that a user has access to. | 
 | 	Account []*Account `json:"account,omitempty"` | 
 |  | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Account") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Account") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListAccountsResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListAccountsResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListContainerVersionsResponse: List container versions response. | 
 | type ListContainerVersionsResponse struct { | 
 | 	// ContainerVersionHeader: All container version headers of a GTM | 
 | 	// Container. | 
 | 	ContainerVersionHeader []*ContainerVersionHeader `json:"containerVersionHeader,omitempty"` | 
 |  | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. | 
 | 	// "ContainerVersionHeader") to unconditionally include in API requests. | 
 | 	// By default, fields with empty values are omitted from API requests. | 
 | 	// However, any non-pointer, non-interface field appearing in | 
 | 	// ForceSendFields will be sent to the server regardless of whether the | 
 | 	// field is empty or not. This may be used to include empty fields in | 
 | 	// Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "ContainerVersionHeader") | 
 | 	// to include in API requests with the JSON null value. By default, | 
 | 	// fields with empty values are omitted from API requests. However, any | 
 | 	// field with an empty value appearing in NullFields will be sent to the | 
 | 	// server as null. It is an error if a field in this list has a | 
 | 	// non-empty value. This may be used to include null fields in Patch | 
 | 	// requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListContainerVersionsResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListContainerVersionsResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListContainersResponse: List Containers Response. | 
 | type ListContainersResponse struct { | 
 | 	// Container: All Containers of a GTM Account. | 
 | 	Container []*Container `json:"container,omitempty"` | 
 |  | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Container") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Container") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListContainersResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListContainersResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListEnabledBuiltInVariablesResponse: A list of enabled built-in | 
 | // variables. | 
 | type ListEnabledBuiltInVariablesResponse struct { | 
 | 	// BuiltInVariable: All GTM BuiltInVariables of a GTM container. | 
 | 	BuiltInVariable []*BuiltInVariable `json:"builtInVariable,omitempty"` | 
 |  | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "BuiltInVariable") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "BuiltInVariable") to | 
 | 	// include in API requests with the JSON null value. By default, fields | 
 | 	// with empty values are omitted from API requests. However, any field | 
 | 	// with an empty value appearing in NullFields will be sent to the | 
 | 	// server as null. It is an error if a field in this list has a | 
 | 	// non-empty value. This may be used to include null fields in Patch | 
 | 	// requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListEnabledBuiltInVariablesResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListEnabledBuiltInVariablesResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListEnvironmentsResponse: List Environments Response. | 
 | type ListEnvironmentsResponse struct { | 
 | 	// Environment: All Environments of a GTM Container. | 
 | 	Environment []*Environment `json:"environment,omitempty"` | 
 |  | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Environment") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Environment") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListEnvironmentsResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListEnvironmentsResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListFoldersResponse: List Folders Response. | 
 | type ListFoldersResponse struct { | 
 | 	// Folder: All GTM Folders of a GTM Container. | 
 | 	Folder []*Folder `json:"folder,omitempty"` | 
 |  | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Folder") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Folder") to include in API | 
 | 	// requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListFoldersResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListFoldersResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListTagsResponse: List Tags Response. | 
 | type ListTagsResponse struct { | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// Tag: All GTM Tags of a GTM Container. | 
 | 	Tag []*Tag `json:"tag,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "NextPageToken") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "NextPageToken") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListTagsResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListTagsResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | type ListTemplatesResponse struct { | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// Template: All GTM Custom Templates of a GTM Container. | 
 | 	Template []*CustomTemplate `json:"template,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "NextPageToken") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "NextPageToken") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListTemplatesResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListTemplatesResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListTriggersResponse: List triggers response. | 
 | type ListTriggersResponse struct { | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// Trigger: All GTM Triggers of a GTM Container. | 
 | 	Trigger []*Trigger `json:"trigger,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "NextPageToken") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "NextPageToken") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListTriggersResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListTriggersResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListUserPermissionsResponse: List user permissions response. | 
 | type ListUserPermissionsResponse struct { | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// UserPermission: All GTM UserPermissions of a GTM Account. | 
 | 	UserPermission []*UserPermission `json:"userPermission,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "NextPageToken") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "NextPageToken") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListUserPermissionsResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListUserPermissionsResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListVariablesResponse: List Variables Response. | 
 | type ListVariablesResponse struct { | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// Variable: All GTM Variables of a GTM Container. | 
 | 	Variable []*Variable `json:"variable,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "NextPageToken") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "NextPageToken") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListVariablesResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListVariablesResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ListWorkspacesResponse: A list of workspaces in a container. | 
 | type ListWorkspacesResponse struct { | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// Workspace: All Workspaces of a GTM Container. | 
 | 	Workspace []*Workspace `json:"workspace,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "NextPageToken") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "NextPageToken") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListWorkspacesResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListWorkspacesResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | type ListZonesResponse struct { | 
 | 	// NextPageToken: Continuation token for fetching the next page of | 
 | 	// results. | 
 | 	NextPageToken string `json:"nextPageToken,omitempty"` | 
 |  | 
 | 	// Zone: All GTM Zones of a GTM Container. | 
 | 	Zone []*Zone `json:"zone,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "NextPageToken") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "NextPageToken") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ListZonesResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ListZonesResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // MergeConflict: Represents a merge conflict. | 
 | type MergeConflict struct { | 
 | 	// EntityInBaseVersion: 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. | 
 | 	EntityInBaseVersion *Entity `json:"entityInBaseVersion,omitempty"` | 
 |  | 
 | 	// EntityInWorkspace: 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. | 
 | 	EntityInWorkspace *Entity `json:"entityInWorkspace,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "EntityInBaseVersion") | 
 | 	// to unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "EntityInBaseVersion") to | 
 | 	// include in API requests with the JSON null value. By default, fields | 
 | 	// with empty values are omitted from API requests. However, any field | 
 | 	// with an empty value appearing in NullFields will be sent to the | 
 | 	// server as null. It is an error if a field in this list has a | 
 | 	// non-empty value. This may be used to include null fields in Patch | 
 | 	// requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *MergeConflict) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod MergeConflict | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Parameter: Represents a Google Tag Manager Parameter. | 
 | type Parameter struct { | 
 | 	// Key: The named key that uniquely identifies a parameter.  Required | 
 | 	// for top-level | 
 | 	// parameters, as well as map values.  Ignored for list values. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	Key string `json:"key,omitempty"` | 
 |  | 
 | 	// List: This list parameter's parameters (keys will be | 
 | 	// ignored). | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	List []*Parameter `json:"list,omitempty"` | 
 |  | 
 | 	// Map: This map parameter's parameters (must have keys; keys must be | 
 | 	// unique). | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	Map []*Parameter `json:"map,omitempty"` | 
 |  | 
 | 	// Type: The parameter type.  Valid values | 
 | 	// are:<ul> | 
 | 	// <li><code>boolean</code>: The value represents a boolean, represented | 
 | 	// as | 
 | 	//     'true' or 'false'</li> | 
 | 	// <li><code>integer</code>: The value represents a 64-bit signed | 
 | 	// integer | 
 | 	//     value, in base 10</li> | 
 | 	// <li><code>list</code>: A list of parameters should be | 
 | 	// specified</li> | 
 | 	// <li><code>map</code>: A map of parameters should be | 
 | 	// specified</li> | 
 | 	// <li><code>template</code>: The value represents any text; this can | 
 | 	// include | 
 | 	//     variable references (even variable references that might return | 
 | 	//     non-string types)</li> | 
 | 	// <li><code>trigger_reference</code>: The value represents a trigger, | 
 | 	//     represented as the trigger | 
 | 	// id</li> | 
 | 	// <li><code>tag_reference</code>: The value represents a tag, | 
 | 	// represented as | 
 | 	//     the tag name</li> | 
 | 	// </ul> | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "typeUnspecified" | 
 | 	//   "template" - May include variable references (such as | 
 | 	// "{{myVariable}}"). | 
 | 	//   "integer" | 
 | 	//   "boolean" | 
 | 	//   "list" | 
 | 	//   "map" | 
 | 	//   "triggerReference" | 
 | 	//   "tagReference" | 
 | 	Type string `json:"type,omitempty"` | 
 |  | 
 | 	// Value: A parameter's value (may contain variable references such | 
 | 	// as | 
 | 	// "{{myVariable}}") | 
 | 	// as appropriate to the specified type. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	Value string `json:"value,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Key") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Key") to include in API | 
 | 	// requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Parameter) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Parameter | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // PublishContainerVersionResponse: Publish container version response. | 
 | type PublishContainerVersionResponse struct { | 
 | 	// CompilerError: Compiler errors or not. | 
 | 	CompilerError bool `json:"compilerError,omitempty"` | 
 |  | 
 | 	// ContainerVersion: The container version created. | 
 | 	ContainerVersion *ContainerVersion `json:"containerVersion,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "CompilerError") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "CompilerError") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *PublishContainerVersionResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod PublishContainerVersionResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // QuickPreviewResponse: Response to quick previewing a workspace. | 
 | type QuickPreviewResponse struct { | 
 | 	// CompilerError: Were there compiler errors or not. | 
 | 	CompilerError bool `json:"compilerError,omitempty"` | 
 |  | 
 | 	// ContainerVersion: The quick previewed container version. | 
 | 	ContainerVersion *ContainerVersion `json:"containerVersion,omitempty"` | 
 |  | 
 | 	// SyncStatus: Whether quick previewing failed when syncing the | 
 | 	// workspace to the latest | 
 | 	// container version. | 
 | 	SyncStatus *SyncStatus `json:"syncStatus,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "CompilerError") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "CompilerError") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *QuickPreviewResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod QuickPreviewResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // RevertBuiltInVariableResponse: The result of reverting a built-in | 
 | // variable in a workspace. | 
 | type RevertBuiltInVariableResponse struct { | 
 | 	// Enabled: Whether the built-in variable is enabled after reversion. | 
 | 	Enabled bool `json:"enabled,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Enabled") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Enabled") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *RevertBuiltInVariableResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod RevertBuiltInVariableResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // RevertFolderResponse: The result of reverting folder changes in a | 
 | // workspace. | 
 | type RevertFolderResponse struct { | 
 | 	// Folder: 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. | 
 | 	Folder *Folder `json:"folder,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Folder") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Folder") to include in API | 
 | 	// requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *RevertFolderResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod RevertFolderResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // RevertTagResponse: The result of reverting a tag in a workspace. | 
 | type RevertTagResponse struct { | 
 | 	// Tag: Tag as it appears in the latest container version since the | 
 | 	// last | 
 | 	// workspace synchronization operation. If no tag is present, that | 
 | 	// means | 
 | 	// the tag was deleted in the latest container version. | 
 | 	Tag *Tag `json:"tag,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Tag") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Tag") to include in API | 
 | 	// requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *RevertTagResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod RevertTagResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // RevertTemplateResponse: The result of reverting a template in a | 
 | // workspace. | 
 | type RevertTemplateResponse struct { | 
 | 	// Template: 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. | 
 | 	Template *CustomTemplate `json:"template,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Template") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Template") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *RevertTemplateResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod RevertTemplateResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // RevertTriggerResponse: The result of reverting a trigger in a | 
 | // workspace. | 
 | type RevertTriggerResponse struct { | 
 | 	// Trigger: 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. | 
 | 	Trigger *Trigger `json:"trigger,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Trigger") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Trigger") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *RevertTriggerResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod RevertTriggerResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // RevertVariableResponse: The result of reverting a variable in a | 
 | // workspace. | 
 | type RevertVariableResponse struct { | 
 | 	// Variable: 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. | 
 | 	Variable *Variable `json:"variable,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Variable") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Variable") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *RevertVariableResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod RevertVariableResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // RevertZoneResponse: The result of reverting a zone in a workspace. | 
 | type RevertZoneResponse struct { | 
 | 	// Zone: 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. | 
 | 	Zone *Zone `json:"zone,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Zone") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Zone") to include in API | 
 | 	// requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *RevertZoneResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod RevertZoneResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // SetupTag: Represents a reference to atag that fires before another | 
 | // tag in order to | 
 | // set up dependencies. | 
 | type SetupTag struct { | 
 | 	// StopOnSetupFailure: 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. | 
 | 	StopOnSetupFailure bool `json:"stopOnSetupFailure,omitempty"` | 
 |  | 
 | 	// TagName: The name of the setup tag. | 
 | 	TagName string `json:"tagName,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "StopOnSetupFailure") | 
 | 	// to unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "StopOnSetupFailure") to | 
 | 	// include in API requests with the JSON null value. By default, fields | 
 | 	// with empty values are omitted from API requests. However, any field | 
 | 	// with an empty value appearing in NullFields will be sent to the | 
 | 	// server as null. It is an error if a field in this list has a | 
 | 	// non-empty value. This may be used to include null fields in Patch | 
 | 	// requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *SetupTag) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod SetupTag | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // SyncStatus: The status of a workspace after synchronization. | 
 | type SyncStatus struct { | 
 | 	// MergeConflict: Synchornization operation detected a merge conflict. | 
 | 	MergeConflict bool `json:"mergeConflict,omitempty"` | 
 |  | 
 | 	// SyncError: An error occurred during the synchronization operation. | 
 | 	SyncError bool `json:"syncError,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "MergeConflict") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "MergeConflict") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *SyncStatus) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod SyncStatus | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // SyncWorkspaceResponse: A response after synchronizing the workspace | 
 | // to the latest container version. | 
 | type SyncWorkspaceResponse struct { | 
 | 	// MergeConflict: 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. | 
 | 	MergeConflict []*MergeConflict `json:"mergeConflict,omitempty"` | 
 |  | 
 | 	// SyncStatus: Indicates whether synchronization caused a merge conflict | 
 | 	// or sync error. | 
 | 	SyncStatus *SyncStatus `json:"syncStatus,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "MergeConflict") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "MergeConflict") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *SyncWorkspaceResponse) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod SyncWorkspaceResponse | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Tag: Represents a Google Tag Manager Tag. | 
 | type Tag struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// BlockingRuleId: Blocking rule IDs. If any of the listed rules | 
 | 	// evaluate to true, the tag | 
 | 	//     will not fire. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	BlockingRuleId []string `json:"blockingRuleId,omitempty"` | 
 |  | 
 | 	// BlockingTriggerId: Blocking trigger IDs. If any of the listed | 
 | 	// triggers evaluate to true, the | 
 | 	// tag will not fire. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	BlockingTriggerId []string `json:"blockingTriggerId,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Tag as computed at storage | 
 | 	// time. | 
 | 	// This value is recomputed whenever the tag is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// FiringRuleId: Firing rule IDs. A tag will fire when any of the listed | 
 | 	// rules are true and | 
 | 	//     all of its <code>blockingRuleIds</code> (if any specified) are | 
 | 	// false. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	FiringRuleId []string `json:"firingRuleId,omitempty"` | 
 |  | 
 | 	// FiringTriggerId: Firing trigger IDs. A tag will fire when any of the | 
 | 	// listed triggers are | 
 | 	// true and all of its <code>blockingTriggerIds</code> (if any | 
 | 	// specified) are | 
 | 	// false. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	FiringTriggerId []string `json:"firingTriggerId,omitempty"` | 
 |  | 
 | 	// LiveOnly: If set to true, this tag will only fire in the live | 
 | 	// environment (e.g. not | 
 | 	// in preview or debug mode). | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	LiveOnly bool `json:"liveOnly,omitempty"` | 
 |  | 
 | 	// MonitoringMetadata: A map of key-value pairs of tag metadata to be | 
 | 	// included in the event data | 
 | 	// for tag monitoring. | 
 | 	// Notes:<ul> | 
 | 	// <li>This parameter must be type <code>MAP</code>.</li> | 
 | 	// <li>Each parameter in the map are type <code>TEMPLATE</code>, | 
 | 	// however | 
 | 	// cannot contain variable references.</li> | 
 | 	// </ul> | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	MonitoringMetadata *Parameter `json:"monitoringMetadata,omitempty"` | 
 |  | 
 | 	// MonitoringMetadataTagNameKey: If non-empty, then the tag display name | 
 | 	// will be included in the monitoring | 
 | 	// metadata map using the key specified. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	MonitoringMetadataTagNameKey string `json:"monitoringMetadataTagNameKey,omitempty"` | 
 |  | 
 | 	// Name: Tag display name. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Notes: User notes on how to apply this tag in the container. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	Notes string `json:"notes,omitempty"` | 
 |  | 
 | 	// Parameter: The tag's parameters. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	Parameter []*Parameter `json:"parameter,omitempty"` | 
 |  | 
 | 	// ParentFolderId: Parent folder id. | 
 | 	ParentFolderId string `json:"parentFolderId,omitempty"` | 
 |  | 
 | 	// Path: GTM Tag's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// Paused: Indicates whether the tag is paused, which prevents the tag | 
 | 	// from firing. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	Paused bool `json:"paused,omitempty"` | 
 |  | 
 | 	// Priority: 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. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	Priority *Parameter `json:"priority,omitempty"` | 
 |  | 
 | 	// ScheduleEndMs: The end timestamp in milliseconds to schedule a | 
 | 	// tag. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	ScheduleEndMs int64 `json:"scheduleEndMs,omitempty,string"` | 
 |  | 
 | 	// ScheduleStartMs: The start timestamp in milliseconds to schedule a | 
 | 	// tag. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	ScheduleStartMs int64 `json:"scheduleStartMs,omitempty,string"` | 
 |  | 
 | 	// SetupTag: The list of setup tags. Currently we only allow one. | 
 | 	SetupTag []*SetupTag `json:"setupTag,omitempty"` | 
 |  | 
 | 	// TagFiringOption: Option to fire this tag. | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "tagFiringOptionUnspecified" | 
 | 	//   "unlimited" - Tag can be fired multiple times per event. | 
 | 	//   "oncePerEvent" - Tag can only be fired per event but can be fired | 
 | 	// multiple times per load | 
 | 	// (e.g., app load or page load). | 
 | 	//   "oncePerLoad" - Tag can only be fired per load (e.g., app load or | 
 | 	// page load). | 
 | 	TagFiringOption string `json:"tagFiringOption,omitempty"` | 
 |  | 
 | 	// TagId: The Tag ID uniquely identifies the GTM Tag. | 
 | 	TagId string `json:"tagId,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// TeardownTag: The list of teardown tags. Currently we only allow one. | 
 | 	TeardownTag []*TeardownTag `json:"teardownTag,omitempty"` | 
 |  | 
 | 	// Type: GTM Tag Type. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.tags.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.tags.update | 
 | 	Type string `json:"type,omitempty"` | 
 |  | 
 | 	// WorkspaceId: GTM Workspace ID. | 
 | 	WorkspaceId string `json:"workspaceId,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Tag) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Tag | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // TeardownTag: Represents a tag that fires after another tag in order | 
 | // to tear down | 
 | // dependencies. | 
 | type TeardownTag struct { | 
 | 	// StopTeardownOnFailure: 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. | 
 | 	StopTeardownOnFailure bool `json:"stopTeardownOnFailure,omitempty"` | 
 |  | 
 | 	// TagName: The name of the teardown tag. | 
 | 	TagName string `json:"tagName,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. | 
 | 	// "StopTeardownOnFailure") to unconditionally include in API requests. | 
 | 	// By default, fields with empty values are omitted from API requests. | 
 | 	// However, any non-pointer, non-interface field appearing in | 
 | 	// ForceSendFields will be sent to the server regardless of whether the | 
 | 	// field is empty or not. This may be used to include empty fields in | 
 | 	// Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "StopTeardownOnFailure") to | 
 | 	// include in API requests with the JSON null value. By default, fields | 
 | 	// with empty values are omitted from API requests. However, any field | 
 | 	// with an empty value appearing in NullFields will be sent to the | 
 | 	// server as null. It is an error if a field in this list has a | 
 | 	// non-empty value. This may be used to include null fields in Patch | 
 | 	// requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *TeardownTag) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod TeardownTag | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Trigger: Represents a Google Tag Manager Trigger | 
 | type Trigger struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// AutoEventFilter: Used in the case of auto event tracking. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	AutoEventFilter []*Condition `json:"autoEventFilter,omitempty"` | 
 |  | 
 | 	// CheckValidation: 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. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	CheckValidation *Parameter `json:"checkValidation,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// ContinuousTimeMinMilliseconds: A visibility trigger minimum | 
 | 	// continuous visible time (in milliseconds). | 
 | 	// Only valid for AMP Visibility trigger. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	ContinuousTimeMinMilliseconds *Parameter `json:"continuousTimeMinMilliseconds,omitempty"` | 
 |  | 
 | 	// CustomEventFilter: Used in the case of custom event, which is fired | 
 | 	// iff all Conditions are | 
 | 	// true. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	CustomEventFilter []*Condition `json:"customEventFilter,omitempty"` | 
 |  | 
 | 	// EventName: Name of the GTM event that is fired. Only valid for Timer | 
 | 	// triggers. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	EventName *Parameter `json:"eventName,omitempty"` | 
 |  | 
 | 	// Filter: The trigger will only fire iff all Conditions are | 
 | 	// true. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	Filter []*Condition `json:"filter,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Trigger as computed at | 
 | 	// storage time. | 
 | 	// This value is recomputed whenever the trigger is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// HorizontalScrollPercentageList: 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. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	HorizontalScrollPercentageList *Parameter `json:"horizontalScrollPercentageList,omitempty"` | 
 |  | 
 | 	// Interval: Time between triggering recurring Timer Events (in | 
 | 	// milliseconds). Only | 
 | 	// valid for Timer triggers. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	Interval *Parameter `json:"interval,omitempty"` | 
 |  | 
 | 	// IntervalSeconds: Time between Timer Events to fire (in seconds). Only | 
 | 	// valid for AMP Timer | 
 | 	// trigger. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	IntervalSeconds *Parameter `json:"intervalSeconds,omitempty"` | 
 |  | 
 | 	// Limit: 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. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	Limit *Parameter `json:"limit,omitempty"` | 
 |  | 
 | 	// MaxTimerLengthSeconds: Max time to fire Timer Events (in seconds). | 
 | 	// Only valid for AMP Timer | 
 | 	// trigger. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	MaxTimerLengthSeconds *Parameter `json:"maxTimerLengthSeconds,omitempty"` | 
 |  | 
 | 	// Name: Trigger display name. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Notes: User notes on how to apply this trigger in the | 
 | 	// container. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	Notes string `json:"notes,omitempty"` | 
 |  | 
 | 	// Parameter: Additional parameters. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	Parameter []*Parameter `json:"parameter,omitempty"` | 
 |  | 
 | 	// ParentFolderId: Parent folder id. | 
 | 	ParentFolderId string `json:"parentFolderId,omitempty"` | 
 |  | 
 | 	// Path: GTM Trigger's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// Selector: A click trigger CSS selector (i.e. "a", "button" etc.). | 
 | 	// Only valid for AMP | 
 | 	// Click trigger. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	Selector *Parameter `json:"selector,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// TotalTimeMinMilliseconds: A visibility trigger minimum total visible | 
 | 	// time (in milliseconds). | 
 | 	// Only valid for AMP Visibility trigger. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	TotalTimeMinMilliseconds *Parameter `json:"totalTimeMinMilliseconds,omitempty"` | 
 |  | 
 | 	// TriggerId: The Trigger ID uniquely identifies the GTM Trigger. | 
 | 	TriggerId string `json:"triggerId,omitempty"` | 
 |  | 
 | 	// Type: Defines the data layer event that causes this trigger. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "eventTypeUnspecified" | 
 | 	//   "pageview" | 
 | 	//   "domReady" | 
 | 	//   "windowLoaded" | 
 | 	//   "customEvent" | 
 | 	//   "triggerGroup" | 
 | 	//   "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" | 
 | 	Type string `json:"type,omitempty"` | 
 |  | 
 | 	// UniqueTriggerId: 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. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	UniqueTriggerId *Parameter `json:"uniqueTriggerId,omitempty"` | 
 |  | 
 | 	// VerticalScrollPercentageList: 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. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	VerticalScrollPercentageList *Parameter `json:"verticalScrollPercentageList,omitempty"` | 
 |  | 
 | 	// VisibilitySelector: A visibility trigger CSS selector (i.e. "#id"). | 
 | 	// Only valid for AMP | 
 | 	// Visibility trigger. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	VisibilitySelector *Parameter `json:"visibilitySelector,omitempty"` | 
 |  | 
 | 	// VisiblePercentageMax: A visibility trigger maximum percent | 
 | 	// visibility. Only valid for AMP | 
 | 	// Visibility trigger. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	VisiblePercentageMax *Parameter `json:"visiblePercentageMax,omitempty"` | 
 |  | 
 | 	// VisiblePercentageMin: A visibility trigger minimum percent | 
 | 	// visibility. Only valid for AMP | 
 | 	// Visibility trigger. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	VisiblePercentageMin *Parameter `json:"visiblePercentageMin,omitempty"` | 
 |  | 
 | 	// WaitForTags: 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. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	WaitForTags *Parameter `json:"waitForTags,omitempty"` | 
 |  | 
 | 	// WaitForTagsTimeout: How long to wait (in milliseconds) for tags to | 
 | 	// fire when 'waits_for_tags' | 
 | 	// above evaluates to <code>true</code>.  Only valid for Form Submission | 
 | 	// and | 
 | 	// Link Click triggers. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.triggers.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.triggers.update | 
 | 	WaitForTagsTimeout *Parameter `json:"waitForTagsTimeout,omitempty"` | 
 |  | 
 | 	// WorkspaceId: GTM Workspace ID. | 
 | 	WorkspaceId string `json:"workspaceId,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Trigger) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Trigger | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // UserPermission: Represents a user's permissions to an account and its | 
 | // container. | 
 | type UserPermission struct { | 
 | 	// AccountAccess: GTM Account access permissions. | 
 | 	// @mutable tagmanager.accounts.permissions.create | 
 | 	// @mutable tagmanager.accounts.permissions.update | 
 | 	AccountAccess *AccountAccess `json:"accountAccess,omitempty"` | 
 |  | 
 | 	// AccountId: The Account ID uniquely identifies the GTM Account. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// ContainerAccess: GTM Container access permissions. | 
 | 	// @mutable tagmanager.accounts.permissions.create | 
 | 	// @mutable tagmanager.accounts.permissions.update | 
 | 	ContainerAccess []*ContainerAccess `json:"containerAccess,omitempty"` | 
 |  | 
 | 	// EmailAddress: User's email address. | 
 | 	// @mutable tagmanager.accounts.permissions.create | 
 | 	EmailAddress string `json:"emailAddress,omitempty"` | 
 |  | 
 | 	// Path: GTM UserPermission's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountAccess") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountAccess") to include | 
 | 	// in API requests with the JSON null value. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any field with | 
 | 	// an empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *UserPermission) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod UserPermission | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Variable: Represents a Google Tag Manager Variable. | 
 | type Variable struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// DisablingTriggerId: For mobile containers only: A list of trigger IDs | 
 | 	// for disabling conditional | 
 | 	// variables; the variable is enabled if one of the enabling trigger is | 
 | 	// true | 
 | 	// while all the disabling trigger are false. Treated as an unordered | 
 | 	// set. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.variables.update | 
 | 	DisablingTriggerId []string `json:"disablingTriggerId,omitempty"` | 
 |  | 
 | 	// EnablingTriggerId: For mobile containers only: A list of trigger IDs | 
 | 	// for enabling conditional | 
 | 	// variables; the variable is enabled if one of the enabling triggers is | 
 | 	// true | 
 | 	// while all the disabling triggers are false. Treated as an unordered | 
 | 	// set. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.variables.update | 
 | 	EnablingTriggerId []string `json:"enablingTriggerId,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Variable as computed at | 
 | 	// storage time. | 
 | 	// This value is recomputed whenever the variable is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// FormatValue: Option to convert a variable value to other value. | 
 | 	FormatValue *VariableFormatValue `json:"formatValue,omitempty"` | 
 |  | 
 | 	// Name: Variable display name. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.variables.update | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Notes: User notes on how to apply this variable in the | 
 | 	// container. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.variables.update | 
 | 	Notes string `json:"notes,omitempty"` | 
 |  | 
 | 	// Parameter: The variable's parameters. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.variables.update | 
 | 	Parameter []*Parameter `json:"parameter,omitempty"` | 
 |  | 
 | 	// ParentFolderId: Parent folder id. | 
 | 	ParentFolderId string `json:"parentFolderId,omitempty"` | 
 |  | 
 | 	// Path: GTM Variable's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// ScheduleEndMs: The end timestamp in milliseconds to schedule a | 
 | 	// variable. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.variables.update | 
 | 	ScheduleEndMs int64 `json:"scheduleEndMs,omitempty,string"` | 
 |  | 
 | 	// ScheduleStartMs: The start timestamp in milliseconds to schedule a | 
 | 	// variable. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.variables.update | 
 | 	ScheduleStartMs int64 `json:"scheduleStartMs,omitempty,string"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// Type: GTM Variable Type. | 
 | 	// @mutable | 
 | 	// tagmanager.accounts.containers.workspaces.variables.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.variables.update | 
 | 	Type string `json:"type,omitempty"` | 
 |  | 
 | 	// VariableId: The Variable ID uniquely identifies the GTM Variable. | 
 | 	VariableId string `json:"variableId,omitempty"` | 
 |  | 
 | 	// WorkspaceId: GTM Workspace ID. | 
 | 	WorkspaceId string `json:"workspaceId,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Variable) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Variable | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | type VariableFormatValue struct { | 
 | 	// CaseConversionType: The option to convert a string-type variable | 
 | 	// value to either lowercase or | 
 | 	// uppercase. | 
 | 	// | 
 | 	// Possible values: | 
 | 	//   "none" | 
 | 	//   "lowercase" - The option to convert a variable value to lowercase. | 
 | 	//   "uppercase" - The option to convert a variable value to uppercase. | 
 | 	CaseConversionType string `json:"caseConversionType,omitempty"` | 
 |  | 
 | 	// ConvertFalseToValue: The value to convert if a variable value is | 
 | 	// false. | 
 | 	ConvertFalseToValue *Parameter `json:"convertFalseToValue,omitempty"` | 
 |  | 
 | 	// ConvertNullToValue: The value to convert if a variable value is null. | 
 | 	ConvertNullToValue *Parameter `json:"convertNullToValue,omitempty"` | 
 |  | 
 | 	// ConvertTrueToValue: The value to convert if a variable value is true. | 
 | 	ConvertTrueToValue *Parameter `json:"convertTrueToValue,omitempty"` | 
 |  | 
 | 	// ConvertUndefinedToValue: The value to convert if a variable value is | 
 | 	// undefined. | 
 | 	ConvertUndefinedToValue *Parameter `json:"convertUndefinedToValue,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "CaseConversionType") | 
 | 	// to unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "CaseConversionType") to | 
 | 	// include in API requests with the JSON null value. By default, fields | 
 | 	// with empty values are omitted from API requests. However, any field | 
 | 	// with an empty value appearing in NullFields will be sent to the | 
 | 	// server as null. It is an error if a field in this list has a | 
 | 	// non-empty value. This may be used to include null fields in Patch | 
 | 	// requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *VariableFormatValue) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod VariableFormatValue | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Workspace: Represents a Google Tag Manager Container Workspace. | 
 | type Workspace struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// Description: Workspace description. | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.update | 
 | 	Description string `json:"description,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Workspace as computed at | 
 | 	// storage time. This | 
 | 	// value is recomputed whenever the workspace is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// Name: Workspace display name. | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.create | 
 | 	// @mutable tagmanager.accounts.containers.workspaces.update | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Path: GTM Workspace's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// WorkspaceId: The Workspace ID uniquely identifies the GTM Workspace. | 
 | 	WorkspaceId string `json:"workspaceId,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Workspace) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Workspace | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // Zone: Represents a Google Tag Manager Zone's contents. | 
 | type Zone struct { | 
 | 	// AccountId: GTM Account ID. | 
 | 	AccountId string `json:"accountId,omitempty"` | 
 |  | 
 | 	// Boundary: This Zone's boundary. | 
 | 	Boundary *ZoneBoundary `json:"boundary,omitempty"` | 
 |  | 
 | 	// ChildContainer: Containers that are children of this Zone. | 
 | 	ChildContainer []*ZoneChildContainer `json:"childContainer,omitempty"` | 
 |  | 
 | 	// ContainerId: GTM Container ID. | 
 | 	ContainerId string `json:"containerId,omitempty"` | 
 |  | 
 | 	// Fingerprint: The fingerprint of the GTM Zone as computed at storage | 
 | 	// time. | 
 | 	// This value is recomputed whenever the zone is modified. | 
 | 	Fingerprint string `json:"fingerprint,omitempty"` | 
 |  | 
 | 	// Name: Zone display name. | 
 | 	Name string `json:"name,omitempty"` | 
 |  | 
 | 	// Notes: User notes on how to apply this zone in the container. | 
 | 	Notes string `json:"notes,omitempty"` | 
 |  | 
 | 	// Path: GTM Zone's API relative path. | 
 | 	Path string `json:"path,omitempty"` | 
 |  | 
 | 	// TagManagerUrl: Auto generated link to the tag manager UI | 
 | 	TagManagerUrl string `json:"tagManagerUrl,omitempty"` | 
 |  | 
 | 	// TypeRestriction: This Zone's type restrictions. | 
 | 	TypeRestriction *ZoneTypeRestriction `json:"typeRestriction,omitempty"` | 
 |  | 
 | 	// WorkspaceId: GTM Workspace ID. | 
 | 	WorkspaceId string `json:"workspaceId,omitempty"` | 
 |  | 
 | 	// ZoneId: The Zone ID uniquely identifies the GTM Zone. | 
 | 	ZoneId string `json:"zoneId,omitempty"` | 
 |  | 
 | 	// ServerResponse contains the HTTP response code and headers from the | 
 | 	// server. | 
 | 	googleapi.ServerResponse `json:"-"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "AccountId") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "AccountId") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *Zone) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod Zone | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ZoneBoundary: Represents a Zone's boundaries. | 
 | type ZoneBoundary struct { | 
 | 	// Condition: The conditions that, when conjoined, make up the boundary. | 
 | 	Condition []*Condition `json:"condition,omitempty"` | 
 |  | 
 | 	// CustomEvaluationTriggerId: Custom evaluation trigger IDs. A zone will | 
 | 	// evaluate its boundary | 
 | 	// conditions when any of the listed triggers are true. | 
 | 	CustomEvaluationTriggerId []string `json:"customEvaluationTriggerId,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Condition") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Condition") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ZoneBoundary) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ZoneBoundary | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ZoneChildContainer: Represents a child container of a Zone. | 
 | type ZoneChildContainer struct { | 
 | 	// Nickname: The zone's nickname for the child container. | 
 | 	Nickname string `json:"nickname,omitempty"` | 
 |  | 
 | 	// PublicId: The child container's public id. | 
 | 	PublicId string `json:"publicId,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Nickname") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Nickname") to include in | 
 | 	// API requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ZoneChildContainer) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ZoneChildContainer | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // ZoneTypeRestriction: Represents a Zone's type restrictions. | 
 | type ZoneTypeRestriction struct { | 
 | 	// Enable: True if type restrictions have been enabled for this Zone. | 
 | 	Enable bool `json:"enable,omitempty"` | 
 |  | 
 | 	// WhitelistedTypeId: List of type public ids that have been whitelisted | 
 | 	// for use in this Zone. | 
 | 	WhitelistedTypeId []string `json:"whitelistedTypeId,omitempty"` | 
 |  | 
 | 	// ForceSendFields is a list of field names (e.g. "Enable") to | 
 | 	// unconditionally include in API requests. By default, fields with | 
 | 	// empty values are omitted from API requests. However, any non-pointer, | 
 | 	// non-interface field appearing in ForceSendFields will be sent to the | 
 | 	// server regardless of whether the field is empty or not. This may be | 
 | 	// used to include empty fields in Patch requests. | 
 | 	ForceSendFields []string `json:"-"` | 
 |  | 
 | 	// NullFields is a list of field names (e.g. "Enable") to include in API | 
 | 	// requests with the JSON null value. By default, fields with empty | 
 | 	// values are omitted from API requests. However, any field with an | 
 | 	// empty value appearing in NullFields will be sent to the server as | 
 | 	// null. It is an error if a field in this list has a non-empty value. | 
 | 	// This may be used to include null fields in Patch requests. | 
 | 	NullFields []string `json:"-"` | 
 | } | 
 |  | 
 | func (s *ZoneTypeRestriction) MarshalJSON() ([]byte, error) { | 
 | 	type NoMethod ZoneTypeRestriction | 
 | 	raw := NoMethod(*s) | 
 | 	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.get": | 
 |  | 
 | type AccountsGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a GTM Account. | 
 | func (r *AccountsService) Get(path string) *AccountsGetCall { | 
 | 	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.get" call. | 
 | // Exactly one of *Account or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Account.ServerResponse.Header or (if a response was returned at all) | 
 | // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | 
 | // check whether the returned error was because http.StatusNotModified | 
 | // was returned. | 
 | func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Account{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a GTM Account.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Accounts's API relative path.\nExample: accounts/{account_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "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" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.list": | 
 |  | 
 | type AccountsListCall struct { | 
 | 	s            *Service | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all GTM Accounts that a user has access to. | 
 | func (r *AccountsService) List() *AccountsListCall { | 
 | 	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/accounts") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.list" call. | 
 | // Exactly one of *ListAccountsResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListAccountsResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*ListAccountsResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListAccountsResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all GTM Accounts that a user has access to.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.list", | 
 | 	//   "parameterOrder": [], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/accounts", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListAccountsResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.manage.accounts", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsListCall) Pages(ctx context.Context, f func(*ListAccountsResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.update": | 
 |  | 
 | type AccountsUpdateCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	account    *Account | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Update: Updates a GTM Account. | 
 | func (r *AccountsService) Update(path string, account *Account) *AccountsUpdateCall { | 
 | 	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.account = account | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the account | 
 | // in storage. | 
 | func (c *AccountsUpdateCall) Fingerprint(fingerprint string) *AccountsUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.update" call. | 
 | // Exactly one of *Account or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Account.ServerResponse.Header or (if a response was returned at all) | 
 | // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | 
 | // check whether the returned error was because http.StatusNotModified | 
 | // was returned. | 
 | func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Account{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a GTM Account.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the account\nin storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Accounts's API relative path.\nExample: accounts/{account_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Account" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Account" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.manage.accounts" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.create": | 
 |  | 
 | type AccountsContainersCreateCall struct { | 
 | 	s          *Service | 
 | 	parent     string | 
 | 	container  *Container | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Create: Creates a Container. | 
 | func (r *AccountsContainersService) Create(parent string, container *Container) *AccountsContainersCreateCall { | 
 | 	c := &AccountsContainersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	c.container = container | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersCreateCall) Fields(s ...googleapi.Field) *AccountsContainersCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersCreateCall) Context(ctx context.Context) *AccountsContainersCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.container) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/containers") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.create" call. | 
 | // Exactly one of *Container or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *Container.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersCreateCall) Do(opts ...googleapi.CallOption) (*Container, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Container{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Account's API relative path.\nExample: accounts/{account_id}.", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/containers", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Container" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Container" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.delete": | 
 |  | 
 | type AccountsContainersDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes a Container. | 
 | func (r *AccountsContainersService) Delete(path string) *AccountsContainersDeleteCall { | 
 | 	c := &AccountsContainersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersDeleteCall) Context(ctx context.Context) *AccountsContainersDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.delete" call. | 
 | func (c *AccountsContainersDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes a Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Container's API relative path.\nExample: accounts/{account_id}/containers/{container_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.delete.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.get": | 
 |  | 
 | type AccountsContainersGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a Container. | 
 | func (r *AccountsContainersService) Get(path string) *AccountsContainersGetCall { | 
 | 	c := &AccountsContainersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersGetCall) Fields(s ...googleapi.Field) *AccountsContainersGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersGetCall) IfNoneMatch(entityTag string) *AccountsContainersGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersGetCall) Context(ctx context.Context) *AccountsContainersGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.get" call. | 
 | // Exactly one of *Container or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *Container.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersGetCall) Do(opts ...googleapi.CallOption) (*Container, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Container{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Container's API relative path.\nExample: accounts/{account_id}/containers/{container_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "Container" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.list": | 
 |  | 
 | type AccountsContainersListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all Containers that belongs to a GTM Account. | 
 | func (r *AccountsContainersService) List(parent string) *AccountsContainersListCall { | 
 | 	c := &AccountsContainersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersListCall) PageToken(pageToken string) *AccountsContainersListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersListCall) Fields(s ...googleapi.Field) *AccountsContainersListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersListCall) IfNoneMatch(entityTag string) *AccountsContainersListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersListCall) Context(ctx context.Context) *AccountsContainersListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/containers") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.list" call. | 
 | // Exactly one of *ListContainersResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListContainersResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersListCall) Do(opts ...googleapi.CallOption) (*ListContainersResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListContainersResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all Containers that belongs to a GTM Account.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Accounts's API relative path.\nExample: accounts/{account_id}.", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/containers", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListContainersResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersListCall) Pages(ctx context.Context, f func(*ListContainersResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.update": | 
 |  | 
 | type AccountsContainersUpdateCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	container  *Container | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Update: Updates a Container. | 
 | func (r *AccountsContainersService) Update(path string, container *Container) *AccountsContainersUpdateCall { | 
 | 	c := &AccountsContainersUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.container = container | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the | 
 | // container in storage. | 
 | func (c *AccountsContainersUpdateCall) Fingerprint(fingerprint string) *AccountsContainersUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersUpdateCall) Fields(s ...googleapi.Field) *AccountsContainersUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersUpdateCall) Context(ctx context.Context) *AccountsContainersUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.container) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.update" call. | 
 | // Exactly one of *Container or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *Container.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersUpdateCall) Do(opts ...googleapi.CallOption) (*Container, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Container{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.containers.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the\ncontainer in storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Container's API relative path.\nExample: accounts/{account_id}/containers/{container_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Container" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Container" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.environments.create": | 
 |  | 
 | type AccountsContainersEnvironmentsCreateCall struct { | 
 | 	s           *Service | 
 | 	parent      string | 
 | 	environment *Environment | 
 | 	urlParams_  gensupport.URLParams | 
 | 	ctx_        context.Context | 
 | 	header_     http.Header | 
 | } | 
 |  | 
 | // Create: Creates a GTM Environment. | 
 | func (r *AccountsContainersEnvironmentsService) Create(parent string, environment *Environment) *AccountsContainersEnvironmentsCreateCall { | 
 | 	c := &AccountsContainersEnvironmentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	c.environment = environment | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersEnvironmentsCreateCall) Fields(s ...googleapi.Field) *AccountsContainersEnvironmentsCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersEnvironmentsCreateCall) Context(ctx context.Context) *AccountsContainersEnvironmentsCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersEnvironmentsCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersEnvironmentsCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.environment) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/environments") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.environments.create" call. | 
 | // Exactly one of *Environment or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *Environment.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersEnvironmentsCreateCall) Do(opts ...googleapi.CallOption) (*Environment, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Environment{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a GTM Environment.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.environments.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Container's API relative path.\nExample: accounts/{account_id}/containers/{container_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/environments", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Environment" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Environment" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.environments.delete": | 
 |  | 
 | type AccountsContainersEnvironmentsDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes a GTM Environment. | 
 | func (r *AccountsContainersEnvironmentsService) Delete(path string) *AccountsContainersEnvironmentsDeleteCall { | 
 | 	c := &AccountsContainersEnvironmentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersEnvironmentsDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersEnvironmentsDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersEnvironmentsDeleteCall) Context(ctx context.Context) *AccountsContainersEnvironmentsDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersEnvironmentsDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersEnvironmentsDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.environments.delete" call. | 
 | func (c *AccountsContainersEnvironmentsDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes a GTM Environment.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments/{environmentsId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.environments.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Environment's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/environments/{environment_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/environments/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.environments.get": | 
 |  | 
 | type AccountsContainersEnvironmentsGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a GTM Environment. | 
 | func (r *AccountsContainersEnvironmentsService) Get(path string) *AccountsContainersEnvironmentsGetCall { | 
 | 	c := &AccountsContainersEnvironmentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersEnvironmentsGetCall) Fields(s ...googleapi.Field) *AccountsContainersEnvironmentsGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersEnvironmentsGetCall) IfNoneMatch(entityTag string) *AccountsContainersEnvironmentsGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersEnvironmentsGetCall) Context(ctx context.Context) *AccountsContainersEnvironmentsGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersEnvironmentsGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersEnvironmentsGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.environments.get" call. | 
 | // Exactly one of *Environment or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *Environment.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersEnvironmentsGetCall) Do(opts ...googleapi.CallOption) (*Environment, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Environment{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a GTM Environment.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments/{environmentsId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.environments.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Environment's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/environments/{environment_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/environments/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "Environment" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.environments.list": | 
 |  | 
 | type AccountsContainersEnvironmentsListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all GTM Environments of a GTM Container. | 
 | func (r *AccountsContainersEnvironmentsService) List(parent string) *AccountsContainersEnvironmentsListCall { | 
 | 	c := &AccountsContainersEnvironmentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersEnvironmentsListCall) PageToken(pageToken string) *AccountsContainersEnvironmentsListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersEnvironmentsListCall) Fields(s ...googleapi.Field) *AccountsContainersEnvironmentsListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersEnvironmentsListCall) IfNoneMatch(entityTag string) *AccountsContainersEnvironmentsListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersEnvironmentsListCall) Context(ctx context.Context) *AccountsContainersEnvironmentsListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersEnvironmentsListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersEnvironmentsListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/environments") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.environments.list" call. | 
 | // Exactly one of *ListEnvironmentsResponse or error will be non-nil. | 
 | // Any non-2xx status code is an error. Response headers are in either | 
 | // *ListEnvironmentsResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersEnvironmentsListCall) Do(opts ...googleapi.CallOption) (*ListEnvironmentsResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListEnvironmentsResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all GTM Environments of a GTM Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.environments.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Container's API relative path.\nExample: accounts/{account_id}/containers/{container_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/environments", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListEnvironmentsResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersEnvironmentsListCall) Pages(ctx context.Context, f func(*ListEnvironmentsResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.environments.reauthorize": | 
 |  | 
 | type AccountsContainersEnvironmentsReauthorizeCall struct { | 
 | 	s           *Service | 
 | 	path        string | 
 | 	environment *Environment | 
 | 	urlParams_  gensupport.URLParams | 
 | 	ctx_        context.Context | 
 | 	header_     http.Header | 
 | } | 
 |  | 
 | // Reauthorize: Re-generates the authorization code for a GTM | 
 | // Environment. | 
 | func (r *AccountsContainersEnvironmentsService) Reauthorize(path string, environment *Environment) *AccountsContainersEnvironmentsReauthorizeCall { | 
 | 	c := &AccountsContainersEnvironmentsReauthorizeCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.environment = environment | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersEnvironmentsReauthorizeCall) Fields(s ...googleapi.Field) *AccountsContainersEnvironmentsReauthorizeCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersEnvironmentsReauthorizeCall) Context(ctx context.Context) *AccountsContainersEnvironmentsReauthorizeCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersEnvironmentsReauthorizeCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersEnvironmentsReauthorizeCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.environment) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:reauthorize") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.environments.reauthorize" call. | 
 | // Exactly one of *Environment or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *Environment.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersEnvironmentsReauthorizeCall) Do(opts ...googleapi.CallOption) (*Environment, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Environment{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Re-generates the authorization code for a GTM Environment.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments/{environmentsId}:reauthorize", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.environments.reauthorize", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Environment's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/environments/{environment_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/environments/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:reauthorize", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Environment" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Environment" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.publish" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.environments.update": | 
 |  | 
 | type AccountsContainersEnvironmentsUpdateCall struct { | 
 | 	s           *Service | 
 | 	path        string | 
 | 	environment *Environment | 
 | 	urlParams_  gensupport.URLParams | 
 | 	ctx_        context.Context | 
 | 	header_     http.Header | 
 | } | 
 |  | 
 | // Update: Updates a GTM Environment. | 
 | func (r *AccountsContainersEnvironmentsService) Update(path string, environment *Environment) *AccountsContainersEnvironmentsUpdateCall { | 
 | 	c := &AccountsContainersEnvironmentsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.environment = environment | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the | 
 | // environment in storage. | 
 | func (c *AccountsContainersEnvironmentsUpdateCall) Fingerprint(fingerprint string) *AccountsContainersEnvironmentsUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersEnvironmentsUpdateCall) Fields(s ...googleapi.Field) *AccountsContainersEnvironmentsUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersEnvironmentsUpdateCall) Context(ctx context.Context) *AccountsContainersEnvironmentsUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersEnvironmentsUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersEnvironmentsUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.environment) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.environments.update" call. | 
 | // Exactly one of *Environment or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *Environment.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersEnvironmentsUpdateCall) Do(opts ...googleapi.CallOption) (*Environment, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Environment{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a GTM Environment.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/environments/{environmentsId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.containers.environments.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the\nenvironment in storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Environment's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/environments/{environment_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/environments/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Environment" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Environment" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.version_headers.latest": | 
 |  | 
 | type AccountsContainersVersionHeadersLatestCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Latest: Gets the latest container version header | 
 | func (r *AccountsContainersVersionHeadersService) Latest(parent string) *AccountsContainersVersionHeadersLatestCall { | 
 | 	c := &AccountsContainersVersionHeadersLatestCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersVersionHeadersLatestCall) Fields(s ...googleapi.Field) *AccountsContainersVersionHeadersLatestCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersVersionHeadersLatestCall) IfNoneMatch(entityTag string) *AccountsContainersVersionHeadersLatestCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersVersionHeadersLatestCall) Context(ctx context.Context) *AccountsContainersVersionHeadersLatestCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersVersionHeadersLatestCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersVersionHeadersLatestCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/version_headers:latest") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.version_headers.latest" call. | 
 | // Exactly one of *ContainerVersionHeader or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ContainerVersionHeader.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersVersionHeadersLatestCall) Do(opts ...googleapi.CallOption) (*ContainerVersionHeader, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ContainerVersionHeader{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets the latest container version header", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/version_headers:latest", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.version_headers.latest", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Container's API relative path.\nExample: accounts/{account_id}/containers/{container_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/version_headers:latest", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ContainerVersionHeader" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.version_headers.list": | 
 |  | 
 | type AccountsContainersVersionHeadersListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all Container Versions of a GTM Container. | 
 | func (r *AccountsContainersVersionHeadersService) List(parent string) *AccountsContainersVersionHeadersListCall { | 
 | 	c := &AccountsContainersVersionHeadersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // IncludeDeleted sets the optional parameter "includeDeleted": Also | 
 | // retrieve deleted (archived) versions when true. | 
 | func (c *AccountsContainersVersionHeadersListCall) IncludeDeleted(includeDeleted bool) *AccountsContainersVersionHeadersListCall { | 
 | 	c.urlParams_.Set("includeDeleted", fmt.Sprint(includeDeleted)) | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersVersionHeadersListCall) PageToken(pageToken string) *AccountsContainersVersionHeadersListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersVersionHeadersListCall) Fields(s ...googleapi.Field) *AccountsContainersVersionHeadersListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersVersionHeadersListCall) IfNoneMatch(entityTag string) *AccountsContainersVersionHeadersListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersVersionHeadersListCall) Context(ctx context.Context) *AccountsContainersVersionHeadersListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersVersionHeadersListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersVersionHeadersListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/version_headers") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.version_headers.list" call. | 
 | // Exactly one of *ListContainerVersionsResponse or error will be | 
 | // non-nil. Any non-2xx status code is an error. Response headers are in | 
 | // either *ListContainerVersionsResponse.ServerResponse.Header or (if a | 
 | // response was returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersVersionHeadersListCall) Do(opts ...googleapi.CallOption) (*ListContainerVersionsResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListContainerVersionsResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all Container Versions of a GTM Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/version_headers", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.version_headers.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "includeDeleted": { | 
 | 	//       "description": "Also retrieve deleted (archived) versions when true.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "boolean" | 
 | 	//     }, | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Container's API relative path.\nExample: accounts/{account_id}/containers/{container_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/version_headers", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListContainerVersionsResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containerversions", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersVersionHeadersListCall) Pages(ctx context.Context, f func(*ListContainerVersionsResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.versions.delete": | 
 |  | 
 | type AccountsContainersVersionsDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes a Container Version. | 
 | func (r *AccountsContainersVersionsService) Delete(path string) *AccountsContainersVersionsDeleteCall { | 
 | 	c := &AccountsContainersVersionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersVersionsDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersVersionsDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersVersionsDeleteCall) Context(ctx context.Context) *AccountsContainersVersionsDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersVersionsDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersVersionsDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.versions.delete" call. | 
 | func (c *AccountsContainersVersionsDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes a Container Version.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.versions.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM ContainerVersion's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/versions/{version_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containerversions" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.versions.get": | 
 |  | 
 | type AccountsContainersVersionsGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a Container Version. | 
 | func (r *AccountsContainersVersionsService) Get(path string) *AccountsContainersVersionsGetCall { | 
 | 	c := &AccountsContainersVersionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // ContainerVersionId sets the optional parameter "containerVersionId": | 
 | // The GTM ContainerVersion ID. Specify <code>published</code> to | 
 | // retrieve | 
 | // the currently published version. | 
 | func (c *AccountsContainersVersionsGetCall) ContainerVersionId(containerVersionId string) *AccountsContainersVersionsGetCall { | 
 | 	c.urlParams_.Set("containerVersionId", containerVersionId) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersVersionsGetCall) Fields(s ...googleapi.Field) *AccountsContainersVersionsGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersVersionsGetCall) IfNoneMatch(entityTag string) *AccountsContainersVersionsGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersVersionsGetCall) Context(ctx context.Context) *AccountsContainersVersionsGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersVersionsGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersVersionsGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.versions.get" call. | 
 | // Exactly one of *ContainerVersion or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ContainerVersion.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersVersionsGetCall) Do(opts ...googleapi.CallOption) (*ContainerVersion, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ContainerVersion{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a Container Version.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.versions.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "containerVersionId": { | 
 | 	//       "description": "The GTM ContainerVersion ID. Specify \u003ccode\u003epublished\u003c/code\u003e to retrieve\nthe currently published version.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM ContainerVersion's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/versions/{version_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ContainerVersion" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containerversions", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.versions.live": | 
 |  | 
 | type AccountsContainersVersionsLiveCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Live: Gets the live (i.e. published) container version | 
 | func (r *AccountsContainersVersionsService) Live(parent string) *AccountsContainersVersionsLiveCall { | 
 | 	c := &AccountsContainersVersionsLiveCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersVersionsLiveCall) Fields(s ...googleapi.Field) *AccountsContainersVersionsLiveCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersVersionsLiveCall) IfNoneMatch(entityTag string) *AccountsContainersVersionsLiveCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersVersionsLiveCall) Context(ctx context.Context) *AccountsContainersVersionsLiveCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersVersionsLiveCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersVersionsLiveCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/versions:live") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.versions.live" call. | 
 | // Exactly one of *ContainerVersion or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ContainerVersion.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersVersionsLiveCall) Do(opts ...googleapi.CallOption) (*ContainerVersion, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ContainerVersion{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets the live (i.e. published) container version", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions:live", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.versions.live", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Container's API relative path.\nExample: accounts/{account_id}/containers/{container_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/versions:live", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ContainerVersion" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.versions.publish": | 
 |  | 
 | type AccountsContainersVersionsPublishCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Publish: Publishes a Container Version. | 
 | func (r *AccountsContainersVersionsService) Publish(path string) *AccountsContainersVersionsPublishCall { | 
 | 	c := &AccountsContainersVersionsPublishCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the | 
 | // container version in storage. | 
 | func (c *AccountsContainersVersionsPublishCall) Fingerprint(fingerprint string) *AccountsContainersVersionsPublishCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersVersionsPublishCall) Fields(s ...googleapi.Field) *AccountsContainersVersionsPublishCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersVersionsPublishCall) Context(ctx context.Context) *AccountsContainersVersionsPublishCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersVersionsPublishCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersVersionsPublishCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:publish") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.versions.publish" call. | 
 | // Exactly one of *PublishContainerVersionResponse or error will be | 
 | // non-nil. Any non-2xx status code is an error. Response headers are in | 
 | // either *PublishContainerVersionResponse.ServerResponse.Header or (if | 
 | // a response was returned at all) in error.(*googleapi.Error).Header. | 
 | // Use googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersVersionsPublishCall) Do(opts ...googleapi.CallOption) (*PublishContainerVersionResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &PublishContainerVersionResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Publishes a Container Version.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}:publish", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.versions.publish", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the\ncontainer version in storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM ContainerVersion's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/versions/{version_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:publish", | 
 | 	//   "response": { | 
 | 	//     "$ref": "PublishContainerVersionResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.publish" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.versions.set_latest": | 
 |  | 
 | type AccountsContainersVersionsSetLatestCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // SetLatest: Sets the latest version used for synchronization of | 
 | // workspaces when | 
 | // detecting conflicts and errors. | 
 | func (r *AccountsContainersVersionsService) SetLatest(path string) *AccountsContainersVersionsSetLatestCall { | 
 | 	c := &AccountsContainersVersionsSetLatestCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersVersionsSetLatestCall) Fields(s ...googleapi.Field) *AccountsContainersVersionsSetLatestCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersVersionsSetLatestCall) Context(ctx context.Context) *AccountsContainersVersionsSetLatestCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersVersionsSetLatestCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersVersionsSetLatestCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:set_latest") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.versions.set_latest" call. | 
 | // Exactly one of *ContainerVersion or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ContainerVersion.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersVersionsSetLatestCall) Do(opts ...googleapi.CallOption) (*ContainerVersion, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ContainerVersion{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Sets the latest version used for synchronization of workspaces when\ndetecting conflicts and errors.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}:set_latest", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.versions.set_latest", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM ContainerVersion's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/versions/{version_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:set_latest", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ContainerVersion" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.versions.undelete": | 
 |  | 
 | type AccountsContainersVersionsUndeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Undelete: Undeletes a Container Version. | 
 | func (r *AccountsContainersVersionsService) Undelete(path string) *AccountsContainersVersionsUndeleteCall { | 
 | 	c := &AccountsContainersVersionsUndeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersVersionsUndeleteCall) Fields(s ...googleapi.Field) *AccountsContainersVersionsUndeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersVersionsUndeleteCall) Context(ctx context.Context) *AccountsContainersVersionsUndeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersVersionsUndeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersVersionsUndeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:undelete") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.versions.undelete" call. | 
 | // Exactly one of *ContainerVersion or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ContainerVersion.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersVersionsUndeleteCall) Do(opts ...googleapi.CallOption) (*ContainerVersion, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ContainerVersion{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Undeletes a Container Version.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}:undelete", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.versions.undelete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM ContainerVersion's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/versions/{version_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:undelete", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ContainerVersion" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containerversions" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.versions.update": | 
 |  | 
 | type AccountsContainersVersionsUpdateCall struct { | 
 | 	s                *Service | 
 | 	path             string | 
 | 	containerversion *ContainerVersion | 
 | 	urlParams_       gensupport.URLParams | 
 | 	ctx_             context.Context | 
 | 	header_          http.Header | 
 | } | 
 |  | 
 | // Update: Updates a Container Version. | 
 | func (r *AccountsContainersVersionsService) Update(path string, containerversion *ContainerVersion) *AccountsContainersVersionsUpdateCall { | 
 | 	c := &AccountsContainersVersionsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.containerversion = containerversion | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the | 
 | // container version in storage. | 
 | func (c *AccountsContainersVersionsUpdateCall) Fingerprint(fingerprint string) *AccountsContainersVersionsUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersVersionsUpdateCall) Fields(s ...googleapi.Field) *AccountsContainersVersionsUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersVersionsUpdateCall) Context(ctx context.Context) *AccountsContainersVersionsUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersVersionsUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersVersionsUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.containerversion) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.versions.update" call. | 
 | // Exactly one of *ContainerVersion or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ContainerVersion.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersVersionsUpdateCall) Do(opts ...googleapi.CallOption) (*ContainerVersion, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ContainerVersion{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a Container Version.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/versions/{versionsId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.containers.versions.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the\ncontainer version in storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM ContainerVersion's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/versions/{version_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/versions/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "ContainerVersion" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "ContainerVersion" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containerversions" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.create": | 
 |  | 
 | type AccountsContainersWorkspacesCreateCall struct { | 
 | 	s          *Service | 
 | 	parent     string | 
 | 	workspace  *Workspace | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Create: Creates a Workspace. | 
 | func (r *AccountsContainersWorkspacesService) Create(parent string, workspace *Workspace) *AccountsContainersWorkspacesCreateCall { | 
 | 	c := &AccountsContainersWorkspacesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	c.workspace = workspace | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesCreateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesCreateCall) Context(ctx context.Context) *AccountsContainersWorkspacesCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.workspace) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/workspaces") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.create" call. | 
 | // Exactly one of *Workspace or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *Workspace.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesCreateCall) Do(opts ...googleapi.CallOption) (*Workspace, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Workspace{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM parent Container's API relative path.\nExample: accounts/{account_id}/containers/{container_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/workspaces", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Workspace" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Workspace" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.create_version": | 
 |  | 
 | type AccountsContainersWorkspacesCreateVersionCall struct { | 
 | 	s                                           *Service | 
 | 	path                                        string | 
 | 	createcontainerversionrequestversionoptions *CreateContainerVersionRequestVersionOptions | 
 | 	urlParams_                                  gensupport.URLParams | 
 | 	ctx_                                        context.Context | 
 | 	header_                                     http.Header | 
 | } | 
 |  | 
 | // CreateVersion: 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. | 
 | func (r *AccountsContainersWorkspacesService) CreateVersion(path string, createcontainerversionrequestversionoptions *CreateContainerVersionRequestVersionOptions) *AccountsContainersWorkspacesCreateVersionCall { | 
 | 	c := &AccountsContainersWorkspacesCreateVersionCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.createcontainerversionrequestversionoptions = createcontainerversionrequestversionoptions | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesCreateVersionCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesCreateVersionCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesCreateVersionCall) Context(ctx context.Context) *AccountsContainersWorkspacesCreateVersionCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesCreateVersionCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesCreateVersionCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.createcontainerversionrequestversionoptions) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:create_version") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.create_version" call. | 
 | // Exactly one of *CreateContainerVersionResponse or error will be | 
 | // non-nil. Any non-2xx status code is an error. Response headers are in | 
 | // either *CreateContainerVersionResponse.ServerResponse.Header or (if a | 
 | // response was returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesCreateVersionCall) Do(opts ...googleapi.CallOption) (*CreateContainerVersionResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &CreateContainerVersionResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a Container Version from the entities present in the workspace,\ndeletes the workspace, and sets the base container version to the newly\ncreated version.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}:create_version", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.create_version", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:create_version", | 
 | 	//   "request": { | 
 | 	//     "$ref": "CreateContainerVersionRequestVersionOptions" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "CreateContainerVersionResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containerversions" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.delete": | 
 |  | 
 | type AccountsContainersWorkspacesDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes a Workspace. | 
 | func (r *AccountsContainersWorkspacesService) Delete(path string) *AccountsContainersWorkspacesDeleteCall { | 
 | 	c := &AccountsContainersWorkspacesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesDeleteCall) Context(ctx context.Context) *AccountsContainersWorkspacesDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.delete" call. | 
 | func (c *AccountsContainersWorkspacesDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes a Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.delete.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.get": | 
 |  | 
 | type AccountsContainersWorkspacesGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a Workspace. | 
 | func (r *AccountsContainersWorkspacesService) Get(path string) *AccountsContainersWorkspacesGetCall { | 
 | 	c := &AccountsContainersWorkspacesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesGetCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesGetCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesGetCall) Context(ctx context.Context) *AccountsContainersWorkspacesGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.get" call. | 
 | // Exactly one of *Workspace or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *Workspace.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesGetCall) Do(opts ...googleapi.CallOption) (*Workspace, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Workspace{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "Workspace" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.getStatus": | 
 |  | 
 | type AccountsContainersWorkspacesGetStatusCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // GetStatus: Finds conflicting and modified entities in the workspace. | 
 | func (r *AccountsContainersWorkspacesService) GetStatus(path string) *AccountsContainersWorkspacesGetStatusCall { | 
 | 	c := &AccountsContainersWorkspacesGetStatusCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesGetStatusCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesGetStatusCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesGetStatusCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesGetStatusCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesGetStatusCall) Context(ctx context.Context) *AccountsContainersWorkspacesGetStatusCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesGetStatusCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesGetStatusCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}/status") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.getStatus" call. | 
 | // Exactly one of *GetWorkspaceStatusResponse or error will be non-nil. | 
 | // Any non-2xx status code is an error. Response headers are in either | 
 | // *GetWorkspaceStatusResponse.ServerResponse.Header or (if a response | 
 | // was returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesGetStatusCall) Do(opts ...googleapi.CallOption) (*GetWorkspaceStatusResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &GetWorkspaceStatusResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Finds conflicting and modified entities in the workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/status", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.getStatus", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}/status", | 
 | 	//   "response": { | 
 | 	//     "$ref": "GetWorkspaceStatusResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.list": | 
 |  | 
 | type AccountsContainersWorkspacesListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all Workspaces that belong to a GTM Container. | 
 | func (r *AccountsContainersWorkspacesService) List(parent string) *AccountsContainersWorkspacesListCall { | 
 | 	c := &AccountsContainersWorkspacesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersWorkspacesListCall) PageToken(pageToken string) *AccountsContainersWorkspacesListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesListCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesListCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesListCall) Context(ctx context.Context) *AccountsContainersWorkspacesListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/workspaces") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.list" call. | 
 | // Exactly one of *ListWorkspacesResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListWorkspacesResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesListCall) Do(opts ...googleapi.CallOption) (*ListWorkspacesResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListWorkspacesResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all Workspaces that belong to a GTM Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM parent Container's API relative path.\nExample: accounts/{account_id}/containers/{container_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/workspaces", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListWorkspacesResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersWorkspacesListCall) Pages(ctx context.Context, f func(*ListWorkspacesResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.quick_preview": | 
 |  | 
 | type AccountsContainersWorkspacesQuickPreviewCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // QuickPreview: Quick previews a workspace by creating a fake container | 
 | // version from all | 
 | // entities in the provided workspace. | 
 | func (r *AccountsContainersWorkspacesService) QuickPreview(path string) *AccountsContainersWorkspacesQuickPreviewCall { | 
 | 	c := &AccountsContainersWorkspacesQuickPreviewCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesQuickPreviewCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesQuickPreviewCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesQuickPreviewCall) Context(ctx context.Context) *AccountsContainersWorkspacesQuickPreviewCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesQuickPreviewCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesQuickPreviewCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:quick_preview") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.quick_preview" call. | 
 | // Exactly one of *QuickPreviewResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *QuickPreviewResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesQuickPreviewCall) Do(opts ...googleapi.CallOption) (*QuickPreviewResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &QuickPreviewResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Quick previews a workspace by creating a fake container version from all\nentities in the provided workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}:quick_preview", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.quick_preview", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:quick_preview", | 
 | 	//   "response": { | 
 | 	//     "$ref": "QuickPreviewResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containerversions" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.resolve_conflict": | 
 |  | 
 | type AccountsContainersWorkspacesResolveConflictCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	entity     *Entity | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // ResolveConflict: Resolves a merge conflict for a workspace entity by | 
 | // updating it to the | 
 | // resolved entity passed in the request. | 
 | func (r *AccountsContainersWorkspacesService) ResolveConflict(path string, entity *Entity) *AccountsContainersWorkspacesResolveConflictCall { | 
 | 	c := &AccountsContainersWorkspacesResolveConflictCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.entity = entity | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of | 
 | // the | 
 | // entity_in_workspace in the merge conflict. | 
 | func (c *AccountsContainersWorkspacesResolveConflictCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesResolveConflictCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesResolveConflictCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesResolveConflictCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesResolveConflictCall) Context(ctx context.Context) *AccountsContainersWorkspacesResolveConflictCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesResolveConflictCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesResolveConflictCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.entity) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:resolve_conflict") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.resolve_conflict" call. | 
 | func (c *AccountsContainersWorkspacesResolveConflictCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Resolves a merge conflict for a workspace entity by updating it to the\nresolved entity passed in the request.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}:resolve_conflict", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.resolve_conflict", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the\nentity_in_workspace in the merge conflict.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:resolve_conflict", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Entity" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.sync": | 
 |  | 
 | type AccountsContainersWorkspacesSyncCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Sync: Syncs a workspace to the latest container version by updating | 
 | // all | 
 | // unmodified workspace entities and displaying conflicts for | 
 | // modified | 
 | // entities. | 
 | func (r *AccountsContainersWorkspacesService) Sync(path string) *AccountsContainersWorkspacesSyncCall { | 
 | 	c := &AccountsContainersWorkspacesSyncCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesSyncCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesSyncCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesSyncCall) Context(ctx context.Context) *AccountsContainersWorkspacesSyncCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesSyncCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesSyncCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:sync") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.sync" call. | 
 | // Exactly one of *SyncWorkspaceResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *SyncWorkspaceResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesSyncCall) Do(opts ...googleapi.CallOption) (*SyncWorkspaceResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &SyncWorkspaceResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Syncs a workspace to the latest container version by updating all\nunmodified workspace entities and displaying conflicts for modified\nentities.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}:sync", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.sync", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:sync", | 
 | 	//   "response": { | 
 | 	//     "$ref": "SyncWorkspaceResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.update": | 
 |  | 
 | type AccountsContainersWorkspacesUpdateCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	workspace  *Workspace | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Update: Updates a Workspace. | 
 | func (r *AccountsContainersWorkspacesService) Update(path string, workspace *Workspace) *AccountsContainersWorkspacesUpdateCall { | 
 | 	c := &AccountsContainersWorkspacesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.workspace = workspace | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the | 
 | // workspace in storage. | 
 | func (c *AccountsContainersWorkspacesUpdateCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesUpdateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesUpdateCall) Context(ctx context.Context) *AccountsContainersWorkspacesUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.workspace) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.update" call. | 
 | // Exactly one of *Workspace or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *Workspace.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesUpdateCall) Do(opts ...googleapi.CallOption) (*Workspace, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Workspace{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the\nworkspace in storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Workspace" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Workspace" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.built_in_variables.create": | 
 |  | 
 | type AccountsContainersWorkspacesBuiltInVariablesCreateCall struct { | 
 | 	s          *Service | 
 | 	parent     string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Create: Creates one or more GTM Built-In Variables. | 
 | func (r *AccountsContainersWorkspacesBuiltInVariablesService) Create(parent string) *AccountsContainersWorkspacesBuiltInVariablesCreateCall { | 
 | 	c := &AccountsContainersWorkspacesBuiltInVariablesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // Type sets the optional parameter "type": The types of built-in | 
 | // variables to enable. | 
 | // | 
 | // Possible values: | 
 | //   "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" | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesCreateCall) Type(type_ ...string) *AccountsContainersWorkspacesBuiltInVariablesCreateCall { | 
 | 	c.urlParams_.SetMulti("type", append([]string{}, type_...)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesCreateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesBuiltInVariablesCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesCreateCall) Context(ctx context.Context) *AccountsContainersWorkspacesBuiltInVariablesCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/built_in_variables") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.built_in_variables.create" call. | 
 | // Exactly one of *CreateBuiltInVariableResponse or error will be | 
 | // non-nil. Any non-2xx status code is an error. Response headers are in | 
 | // either *CreateBuiltInVariableResponse.ServerResponse.Header or (if a | 
 | // response was returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesCreateCall) Do(opts ...googleapi.CallOption) (*CreateBuiltInVariableResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &CreateBuiltInVariableResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates one or more GTM Built-In Variables.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/built_in_variables", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.built_in_variables.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "type": { | 
 | 	//       "description": "The types of built-in variables to enable.", | 
 | 	//       "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" | 
 | 	//       ], | 
 | 	//       "location": "query", | 
 | 	//       "repeated": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/built_in_variables", | 
 | 	//   "response": { | 
 | 	//     "$ref": "CreateBuiltInVariableResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.built_in_variables.delete": | 
 |  | 
 | type AccountsContainersWorkspacesBuiltInVariablesDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes one or more GTM Built-In Variables. | 
 | func (r *AccountsContainersWorkspacesBuiltInVariablesService) Delete(path string) *AccountsContainersWorkspacesBuiltInVariablesDeleteCall { | 
 | 	c := &AccountsContainersWorkspacesBuiltInVariablesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Type sets the optional parameter "type": The types of built-in | 
 | // variables to delete. | 
 | // | 
 | // Possible values: | 
 | //   "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" | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesDeleteCall) Type(type_ ...string) *AccountsContainersWorkspacesBuiltInVariablesDeleteCall { | 
 | 	c.urlParams_.SetMulti("type", append([]string{}, type_...)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesBuiltInVariablesDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesDeleteCall) Context(ctx context.Context) *AccountsContainersWorkspacesBuiltInVariablesDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.built_in_variables.delete" call. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes one or more GTM Built-In Variables.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/built_in_variables", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.built_in_variables.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM BuiltInVariable's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/built_in_variables", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/built_in_variables$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "type": { | 
 | 	//       "description": "The types of built-in variables to delete.", | 
 | 	//       "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" | 
 | 	//       ], | 
 | 	//       "location": "query", | 
 | 	//       "repeated": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.built_in_variables.list": | 
 |  | 
 | type AccountsContainersWorkspacesBuiltInVariablesListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all the enabled Built-In Variables of a GTM Container. | 
 | func (r *AccountsContainersWorkspacesBuiltInVariablesService) List(parent string) *AccountsContainersWorkspacesBuiltInVariablesListCall { | 
 | 	c := &AccountsContainersWorkspacesBuiltInVariablesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesListCall) PageToken(pageToken string) *AccountsContainersWorkspacesBuiltInVariablesListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesListCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesBuiltInVariablesListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesListCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesBuiltInVariablesListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesListCall) Context(ctx context.Context) *AccountsContainersWorkspacesBuiltInVariablesListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/built_in_variables") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.built_in_variables.list" call. | 
 | // Exactly one of *ListEnabledBuiltInVariablesResponse or error will be | 
 | // non-nil. Any non-2xx status code is an error. Response headers are in | 
 | // either *ListEnabledBuiltInVariablesResponse.ServerResponse.Header or | 
 | // (if a response was returned at all) in | 
 | // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | 
 | // whether the returned error was because http.StatusNotModified was | 
 | // returned. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesListCall) Do(opts ...googleapi.CallOption) (*ListEnabledBuiltInVariablesResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListEnabledBuiltInVariablesResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all the enabled Built-In Variables of a GTM Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/built_in_variables", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.built_in_variables.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/built_in_variables", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListEnabledBuiltInVariablesResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesListCall) Pages(ctx context.Context, f func(*ListEnabledBuiltInVariablesResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.built_in_variables.revert": | 
 |  | 
 | type AccountsContainersWorkspacesBuiltInVariablesRevertCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Revert: Reverts changes to a GTM Built-In Variables in a GTM | 
 | // Workspace. | 
 | func (r *AccountsContainersWorkspacesBuiltInVariablesService) Revert(path string) *AccountsContainersWorkspacesBuiltInVariablesRevertCall { | 
 | 	c := &AccountsContainersWorkspacesBuiltInVariablesRevertCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Type sets the optional parameter "type": The type of built-in | 
 | // variable to revert. | 
 | // | 
 | // Possible values: | 
 | //   "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" | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesRevertCall) Type(type_ string) *AccountsContainersWorkspacesBuiltInVariablesRevertCall { | 
 | 	c.urlParams_.Set("type", type_) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesRevertCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesBuiltInVariablesRevertCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesRevertCall) Context(ctx context.Context) *AccountsContainersWorkspacesBuiltInVariablesRevertCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesRevertCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesRevertCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}/built_in_variables:revert") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.built_in_variables.revert" call. | 
 | // Exactly one of *RevertBuiltInVariableResponse or error will be | 
 | // non-nil. Any non-2xx status code is an error. Response headers are in | 
 | // either *RevertBuiltInVariableResponse.ServerResponse.Header or (if a | 
 | // response was returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesBuiltInVariablesRevertCall) Do(opts ...googleapi.CallOption) (*RevertBuiltInVariableResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &RevertBuiltInVariableResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Reverts changes to a GTM Built-In Variables in a GTM Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/built_in_variables:revert", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.built_in_variables.revert", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM BuiltInVariable's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/built_in_variables", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "type": { | 
 | 	//       "description": "The type of built-in variable to revert.", | 
 | 	//       "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" | 
 | 	//       ], | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}/built_in_variables:revert", | 
 | 	//   "response": { | 
 | 	//     "$ref": "RevertBuiltInVariableResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.folders.create": | 
 |  | 
 | type AccountsContainersWorkspacesFoldersCreateCall struct { | 
 | 	s          *Service | 
 | 	parent     string | 
 | 	folder     *Folder | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Create: Creates a GTM Folder. | 
 | func (r *AccountsContainersWorkspacesFoldersService) Create(parent string, folder *Folder) *AccountsContainersWorkspacesFoldersCreateCall { | 
 | 	c := &AccountsContainersWorkspacesFoldersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	c.folder = folder | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesFoldersCreateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesFoldersCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesFoldersCreateCall) Context(ctx context.Context) *AccountsContainersWorkspacesFoldersCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesFoldersCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesFoldersCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.folder) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/folders") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.folders.create" call. | 
 | // Exactly one of *Folder or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Folder.ServerResponse.Header or (if a response was returned at all) | 
 | // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | 
 | // check whether the returned error was because http.StatusNotModified | 
 | // was returned. | 
 | func (c *AccountsContainersWorkspacesFoldersCreateCall) Do(opts ...googleapi.CallOption) (*Folder, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Folder{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a GTM Folder.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.folders.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/folders", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Folder" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Folder" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.folders.delete": | 
 |  | 
 | type AccountsContainersWorkspacesFoldersDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes a GTM Folder. | 
 | func (r *AccountsContainersWorkspacesFoldersService) Delete(path string) *AccountsContainersWorkspacesFoldersDeleteCall { | 
 | 	c := &AccountsContainersWorkspacesFoldersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesFoldersDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesFoldersDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesFoldersDeleteCall) Context(ctx context.Context) *AccountsContainersWorkspacesFoldersDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesFoldersDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesFoldersDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.folders.delete" call. | 
 | func (c *AccountsContainersWorkspacesFoldersDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes a GTM Folder.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.folders.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Folder's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.folders.entities": | 
 |  | 
 | type AccountsContainersWorkspacesFoldersEntitiesCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Entities: List all entities in a GTM Folder. | 
 | func (r *AccountsContainersWorkspacesFoldersService) Entities(path string) *AccountsContainersWorkspacesFoldersEntitiesCall { | 
 | 	c := &AccountsContainersWorkspacesFoldersEntitiesCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersWorkspacesFoldersEntitiesCall) PageToken(pageToken string) *AccountsContainersWorkspacesFoldersEntitiesCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesFoldersEntitiesCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesFoldersEntitiesCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesFoldersEntitiesCall) Context(ctx context.Context) *AccountsContainersWorkspacesFoldersEntitiesCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesFoldersEntitiesCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesFoldersEntitiesCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:entities") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.folders.entities" call. | 
 | // Exactly one of *FolderEntities or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *FolderEntities.ServerResponse.Header or (if a response was returned | 
 | // at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesFoldersEntitiesCall) Do(opts ...googleapi.CallOption) (*FolderEntities, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &FolderEntities{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "List all entities in a GTM Folder.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}:entities", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.folders.entities", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Folder's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:entities", | 
 | 	//   "response": { | 
 | 	//     "$ref": "FolderEntities" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersWorkspacesFoldersEntitiesCall) Pages(ctx context.Context, f func(*FolderEntities) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.folders.get": | 
 |  | 
 | type AccountsContainersWorkspacesFoldersGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a GTM Folder. | 
 | func (r *AccountsContainersWorkspacesFoldersService) Get(path string) *AccountsContainersWorkspacesFoldersGetCall { | 
 | 	c := &AccountsContainersWorkspacesFoldersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesFoldersGetCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesFoldersGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesFoldersGetCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesFoldersGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesFoldersGetCall) Context(ctx context.Context) *AccountsContainersWorkspacesFoldersGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesFoldersGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesFoldersGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.folders.get" call. | 
 | // Exactly one of *Folder or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Folder.ServerResponse.Header or (if a response was returned at all) | 
 | // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | 
 | // check whether the returned error was because http.StatusNotModified | 
 | // was returned. | 
 | func (c *AccountsContainersWorkspacesFoldersGetCall) Do(opts ...googleapi.CallOption) (*Folder, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Folder{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a GTM Folder.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.folders.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Folder's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "Folder" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.folders.list": | 
 |  | 
 | type AccountsContainersWorkspacesFoldersListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all GTM Folders of a Container. | 
 | func (r *AccountsContainersWorkspacesFoldersService) List(parent string) *AccountsContainersWorkspacesFoldersListCall { | 
 | 	c := &AccountsContainersWorkspacesFoldersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersWorkspacesFoldersListCall) PageToken(pageToken string) *AccountsContainersWorkspacesFoldersListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesFoldersListCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesFoldersListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesFoldersListCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesFoldersListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesFoldersListCall) Context(ctx context.Context) *AccountsContainersWorkspacesFoldersListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesFoldersListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesFoldersListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/folders") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.folders.list" call. | 
 | // Exactly one of *ListFoldersResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListFoldersResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesFoldersListCall) Do(opts ...googleapi.CallOption) (*ListFoldersResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListFoldersResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all GTM Folders of a Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.folders.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/folders", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListFoldersResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersWorkspacesFoldersListCall) Pages(ctx context.Context, f func(*ListFoldersResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.folders.move_entities_to_folder": | 
 |  | 
 | type AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	folder     *Folder | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // MoveEntitiesToFolder: Moves entities to a GTM Folder. | 
 | func (r *AccountsContainersWorkspacesFoldersService) MoveEntitiesToFolder(path string, folder *Folder) *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall { | 
 | 	c := &AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.folder = folder | 
 | 	return c | 
 | } | 
 |  | 
 | // TagId sets the optional parameter "tagId": The tags to be moved to | 
 | // the folder. | 
 | func (c *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall) TagId(tagId ...string) *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall { | 
 | 	c.urlParams_.SetMulti("tagId", append([]string{}, tagId...)) | 
 | 	return c | 
 | } | 
 |  | 
 | // TriggerId sets the optional parameter "triggerId": The triggers to be | 
 | // moved to the folder. | 
 | func (c *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall) TriggerId(triggerId ...string) *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall { | 
 | 	c.urlParams_.SetMulti("triggerId", append([]string{}, triggerId...)) | 
 | 	return c | 
 | } | 
 |  | 
 | // VariableId sets the optional parameter "variableId": The variables to | 
 | // be moved to the folder. | 
 | func (c *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall) VariableId(variableId ...string) *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall { | 
 | 	c.urlParams_.SetMulti("variableId", append([]string{}, variableId...)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall) Context(ctx context.Context) *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.folder) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:move_entities_to_folder") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.folders.move_entities_to_folder" call. | 
 | func (c *AccountsContainersWorkspacesFoldersMoveEntitiesToFolderCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Moves entities to a GTM Folder.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}:move_entities_to_folder", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.folders.move_entities_to_folder", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Folder's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "tagId": { | 
 | 	//       "description": "The tags to be moved to the folder.", | 
 | 	//       "location": "query", | 
 | 	//       "repeated": true, | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "triggerId": { | 
 | 	//       "description": "The triggers to be moved to the folder.", | 
 | 	//       "location": "query", | 
 | 	//       "repeated": true, | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "variableId": { | 
 | 	//       "description": "The variables to be moved to the folder.", | 
 | 	//       "location": "query", | 
 | 	//       "repeated": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:move_entities_to_folder", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Folder" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.folders.revert": | 
 |  | 
 | type AccountsContainersWorkspacesFoldersRevertCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Revert: Reverts changes to a GTM Folder in a GTM Workspace. | 
 | func (r *AccountsContainersWorkspacesFoldersService) Revert(path string) *AccountsContainersWorkspacesFoldersRevertCall { | 
 | 	c := &AccountsContainersWorkspacesFoldersRevertCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the tag | 
 | // in storage. | 
 | func (c *AccountsContainersWorkspacesFoldersRevertCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesFoldersRevertCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesFoldersRevertCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesFoldersRevertCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesFoldersRevertCall) Context(ctx context.Context) *AccountsContainersWorkspacesFoldersRevertCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesFoldersRevertCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesFoldersRevertCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:revert") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.folders.revert" call. | 
 | // Exactly one of *RevertFolderResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *RevertFolderResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesFoldersRevertCall) Do(opts ...googleapi.CallOption) (*RevertFolderResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &RevertFolderResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Reverts changes to a GTM Folder in a GTM Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}:revert", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.folders.revert", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the tag\nin storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Folder's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:revert", | 
 | 	//   "response": { | 
 | 	//     "$ref": "RevertFolderResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.folders.update": | 
 |  | 
 | type AccountsContainersWorkspacesFoldersUpdateCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	folder     *Folder | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Update: Updates a GTM Folder. | 
 | func (r *AccountsContainersWorkspacesFoldersService) Update(path string, folder *Folder) *AccountsContainersWorkspacesFoldersUpdateCall { | 
 | 	c := &AccountsContainersWorkspacesFoldersUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.folder = folder | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the folder in | 
 | // storage. | 
 | func (c *AccountsContainersWorkspacesFoldersUpdateCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesFoldersUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesFoldersUpdateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesFoldersUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesFoldersUpdateCall) Context(ctx context.Context) *AccountsContainersWorkspacesFoldersUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesFoldersUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesFoldersUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.folder) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.folders.update" call. | 
 | // Exactly one of *Folder or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Folder.ServerResponse.Header or (if a response was returned at all) | 
 | // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | 
 | // check whether the returned error was because http.StatusNotModified | 
 | // was returned. | 
 | func (c *AccountsContainersWorkspacesFoldersUpdateCall) Do(opts ...googleapi.CallOption) (*Folder, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Folder{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a GTM Folder.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/folders/{foldersId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.folders.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the folder in\nstorage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Folder's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/folders/{folder_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/folders/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Folder" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Folder" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.tags.create": | 
 |  | 
 | type AccountsContainersWorkspacesTagsCreateCall struct { | 
 | 	s          *Service | 
 | 	parent     string | 
 | 	tag        *Tag | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Create: Creates a GTM Tag. | 
 | func (r *AccountsContainersWorkspacesTagsService) Create(parent string, tag *Tag) *AccountsContainersWorkspacesTagsCreateCall { | 
 | 	c := &AccountsContainersWorkspacesTagsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	c.tag = tag | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTagsCreateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTagsCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTagsCreateCall) Context(ctx context.Context) *AccountsContainersWorkspacesTagsCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTagsCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTagsCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.tag) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/tags") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.tags.create" call. | 
 | // Exactly one of *Tag or error will be non-nil. Any non-2xx status code | 
 | // is an error. Response headers are in either | 
 | // *Tag.ServerResponse.Header or (if a response was returned at all) in | 
 | // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | 
 | // whether the returned error was because http.StatusNotModified was | 
 | // returned. | 
 | func (c *AccountsContainersWorkspacesTagsCreateCall) Do(opts ...googleapi.CallOption) (*Tag, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Tag{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a GTM Tag.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.tags.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/tags", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Tag" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Tag" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.tags.delete": | 
 |  | 
 | type AccountsContainersWorkspacesTagsDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes a GTM Tag. | 
 | func (r *AccountsContainersWorkspacesTagsService) Delete(path string) *AccountsContainersWorkspacesTagsDeleteCall { | 
 | 	c := &AccountsContainersWorkspacesTagsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTagsDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTagsDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTagsDeleteCall) Context(ctx context.Context) *AccountsContainersWorkspacesTagsDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTagsDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTagsDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.tags.delete" call. | 
 | func (c *AccountsContainersWorkspacesTagsDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes a GTM Tag.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags/{tagsId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.tags.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Tag's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/tags/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.tags.get": | 
 |  | 
 | type AccountsContainersWorkspacesTagsGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a GTM Tag. | 
 | func (r *AccountsContainersWorkspacesTagsService) Get(path string) *AccountsContainersWorkspacesTagsGetCall { | 
 | 	c := &AccountsContainersWorkspacesTagsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTagsGetCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTagsGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesTagsGetCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesTagsGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTagsGetCall) Context(ctx context.Context) *AccountsContainersWorkspacesTagsGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTagsGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTagsGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.tags.get" call. | 
 | // Exactly one of *Tag or error will be non-nil. Any non-2xx status code | 
 | // is an error. Response headers are in either | 
 | // *Tag.ServerResponse.Header or (if a response was returned at all) in | 
 | // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | 
 | // whether the returned error was because http.StatusNotModified was | 
 | // returned. | 
 | func (c *AccountsContainersWorkspacesTagsGetCall) Do(opts ...googleapi.CallOption) (*Tag, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Tag{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a GTM Tag.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags/{tagsId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.tags.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Tag's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/tags/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "Tag" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.tags.list": | 
 |  | 
 | type AccountsContainersWorkspacesTagsListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all GTM Tags of a Container. | 
 | func (r *AccountsContainersWorkspacesTagsService) List(parent string) *AccountsContainersWorkspacesTagsListCall { | 
 | 	c := &AccountsContainersWorkspacesTagsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersWorkspacesTagsListCall) PageToken(pageToken string) *AccountsContainersWorkspacesTagsListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTagsListCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTagsListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesTagsListCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesTagsListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTagsListCall) Context(ctx context.Context) *AccountsContainersWorkspacesTagsListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTagsListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTagsListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/tags") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.tags.list" call. | 
 | // Exactly one of *ListTagsResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListTagsResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesTagsListCall) Do(opts ...googleapi.CallOption) (*ListTagsResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListTagsResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all GTM Tags of a Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.tags.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/tags", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListTagsResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersWorkspacesTagsListCall) Pages(ctx context.Context, f func(*ListTagsResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.tags.revert": | 
 |  | 
 | type AccountsContainersWorkspacesTagsRevertCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Revert: Reverts changes to a GTM Tag in a GTM Workspace. | 
 | func (r *AccountsContainersWorkspacesTagsService) Revert(path string) *AccountsContainersWorkspacesTagsRevertCall { | 
 | 	c := &AccountsContainersWorkspacesTagsRevertCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of thetag | 
 | // in storage. | 
 | func (c *AccountsContainersWorkspacesTagsRevertCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesTagsRevertCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTagsRevertCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTagsRevertCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTagsRevertCall) Context(ctx context.Context) *AccountsContainersWorkspacesTagsRevertCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTagsRevertCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTagsRevertCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:revert") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.tags.revert" call. | 
 | // Exactly one of *RevertTagResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *RevertTagResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesTagsRevertCall) Do(opts ...googleapi.CallOption) (*RevertTagResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &RevertTagResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Reverts changes to a GTM Tag in a GTM Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags/{tagsId}:revert", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.tags.revert", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of thetag\nin storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Tag's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/tags/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:revert", | 
 | 	//   "response": { | 
 | 	//     "$ref": "RevertTagResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.tags.update": | 
 |  | 
 | type AccountsContainersWorkspacesTagsUpdateCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	tag        *Tag | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Update: Updates a GTM Tag. | 
 | func (r *AccountsContainersWorkspacesTagsService) Update(path string, tag *Tag) *AccountsContainersWorkspacesTagsUpdateCall { | 
 | 	c := &AccountsContainersWorkspacesTagsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.tag = tag | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the tag in | 
 | // storage. | 
 | func (c *AccountsContainersWorkspacesTagsUpdateCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesTagsUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTagsUpdateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTagsUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTagsUpdateCall) Context(ctx context.Context) *AccountsContainersWorkspacesTagsUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTagsUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTagsUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.tag) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.tags.update" call. | 
 | // Exactly one of *Tag or error will be non-nil. Any non-2xx status code | 
 | // is an error. Response headers are in either | 
 | // *Tag.ServerResponse.Header or (if a response was returned at all) in | 
 | // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | 
 | // whether the returned error was because http.StatusNotModified was | 
 | // returned. | 
 | func (c *AccountsContainersWorkspacesTagsUpdateCall) Do(opts ...googleapi.CallOption) (*Tag, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Tag{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a GTM Tag.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/tags/{tagsId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.tags.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the tag in\nstorage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Tag's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/tags/{tag_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/tags/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Tag" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Tag" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.templates.create": | 
 |  | 
 | type AccountsContainersWorkspacesTemplatesCreateCall struct { | 
 | 	s              *Service | 
 | 	parent         string | 
 | 	customtemplate *CustomTemplate | 
 | 	urlParams_     gensupport.URLParams | 
 | 	ctx_           context.Context | 
 | 	header_        http.Header | 
 | } | 
 |  | 
 | // Create: Creates a GTM Custom Template. | 
 | func (r *AccountsContainersWorkspacesTemplatesService) Create(parent string, customtemplate *CustomTemplate) *AccountsContainersWorkspacesTemplatesCreateCall { | 
 | 	c := &AccountsContainersWorkspacesTemplatesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	c.customtemplate = customtemplate | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTemplatesCreateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTemplatesCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTemplatesCreateCall) Context(ctx context.Context) *AccountsContainersWorkspacesTemplatesCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTemplatesCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTemplatesCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.customtemplate) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/templates") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.templates.create" call. | 
 | // Exactly one of *CustomTemplate or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *CustomTemplate.ServerResponse.Header or (if a response was returned | 
 | // at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesTemplatesCreateCall) Do(opts ...googleapi.CallOption) (*CustomTemplate, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &CustomTemplate{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a GTM Custom Template.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.templates.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/templates", | 
 | 	//   "request": { | 
 | 	//     "$ref": "CustomTemplate" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "CustomTemplate" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.templates.delete": | 
 |  | 
 | type AccountsContainersWorkspacesTemplatesDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes a GTM Template. | 
 | func (r *AccountsContainersWorkspacesTemplatesService) Delete(path string) *AccountsContainersWorkspacesTemplatesDeleteCall { | 
 | 	c := &AccountsContainersWorkspacesTemplatesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTemplatesDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTemplatesDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTemplatesDeleteCall) Context(ctx context.Context) *AccountsContainersWorkspacesTemplatesDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTemplatesDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTemplatesDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.templates.delete" call. | 
 | func (c *AccountsContainersWorkspacesTemplatesDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes a GTM Template.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates/{templatesId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.templates.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Custom Template's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/templates/{template_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/templates/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.templates.get": | 
 |  | 
 | type AccountsContainersWorkspacesTemplatesGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a GTM Template. | 
 | func (r *AccountsContainersWorkspacesTemplatesService) Get(path string) *AccountsContainersWorkspacesTemplatesGetCall { | 
 | 	c := &AccountsContainersWorkspacesTemplatesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTemplatesGetCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTemplatesGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesTemplatesGetCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesTemplatesGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTemplatesGetCall) Context(ctx context.Context) *AccountsContainersWorkspacesTemplatesGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTemplatesGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTemplatesGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.templates.get" call. | 
 | // Exactly one of *CustomTemplate or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *CustomTemplate.ServerResponse.Header or (if a response was returned | 
 | // at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesTemplatesGetCall) Do(opts ...googleapi.CallOption) (*CustomTemplate, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &CustomTemplate{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a GTM Template.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates/{templatesId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.templates.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Custom Template's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/templates/{template_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/templates/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "CustomTemplate" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.templates.list": | 
 |  | 
 | type AccountsContainersWorkspacesTemplatesListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all GTM Templates of a GTM container workspace. | 
 | func (r *AccountsContainersWorkspacesTemplatesService) List(parent string) *AccountsContainersWorkspacesTemplatesListCall { | 
 | 	c := &AccountsContainersWorkspacesTemplatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersWorkspacesTemplatesListCall) PageToken(pageToken string) *AccountsContainersWorkspacesTemplatesListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTemplatesListCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTemplatesListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesTemplatesListCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesTemplatesListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTemplatesListCall) Context(ctx context.Context) *AccountsContainersWorkspacesTemplatesListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTemplatesListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTemplatesListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/templates") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.templates.list" call. | 
 | // Exactly one of *ListTemplatesResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListTemplatesResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesTemplatesListCall) Do(opts ...googleapi.CallOption) (*ListTemplatesResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListTemplatesResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all GTM Templates of a GTM container workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.templates.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/templates", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListTemplatesResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersWorkspacesTemplatesListCall) Pages(ctx context.Context, f func(*ListTemplatesResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.templates.revert": | 
 |  | 
 | type AccountsContainersWorkspacesTemplatesRevertCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Revert: Reverts changes to a GTM Template in a GTM Workspace. | 
 | func (r *AccountsContainersWorkspacesTemplatesService) Revert(path string) *AccountsContainersWorkspacesTemplatesRevertCall { | 
 | 	c := &AccountsContainersWorkspacesTemplatesRevertCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the template | 
 | // in storage. | 
 | func (c *AccountsContainersWorkspacesTemplatesRevertCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesTemplatesRevertCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTemplatesRevertCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTemplatesRevertCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTemplatesRevertCall) Context(ctx context.Context) *AccountsContainersWorkspacesTemplatesRevertCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTemplatesRevertCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTemplatesRevertCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:revert") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.templates.revert" call. | 
 | // Exactly one of *RevertTemplateResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *RevertTemplateResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesTemplatesRevertCall) Do(opts ...googleapi.CallOption) (*RevertTemplateResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &RevertTemplateResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Reverts changes to a GTM Template in a GTM Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates/{templatesId}:revert", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.templates.revert", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the template\nin storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Custom Template's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/templates/{template_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/templates/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:revert", | 
 | 	//   "response": { | 
 | 	//     "$ref": "RevertTemplateResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.templates.update": | 
 |  | 
 | type AccountsContainersWorkspacesTemplatesUpdateCall struct { | 
 | 	s              *Service | 
 | 	path           string | 
 | 	customtemplate *CustomTemplate | 
 | 	urlParams_     gensupport.URLParams | 
 | 	ctx_           context.Context | 
 | 	header_        http.Header | 
 | } | 
 |  | 
 | // Update: Updates a GTM Template. | 
 | func (r *AccountsContainersWorkspacesTemplatesService) Update(path string, customtemplate *CustomTemplate) *AccountsContainersWorkspacesTemplatesUpdateCall { | 
 | 	c := &AccountsContainersWorkspacesTemplatesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.customtemplate = customtemplate | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the templates | 
 | // in storage. | 
 | func (c *AccountsContainersWorkspacesTemplatesUpdateCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesTemplatesUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTemplatesUpdateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTemplatesUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTemplatesUpdateCall) Context(ctx context.Context) *AccountsContainersWorkspacesTemplatesUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTemplatesUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTemplatesUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.customtemplate) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.templates.update" call. | 
 | // Exactly one of *CustomTemplate or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *CustomTemplate.ServerResponse.Header or (if a response was returned | 
 | // at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesTemplatesUpdateCall) Do(opts ...googleapi.CallOption) (*CustomTemplate, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &CustomTemplate{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a GTM Template.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/templates/{templatesId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.templates.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the templates\nin storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Custom Template's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/templates/{template_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/templates/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "CustomTemplate" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "CustomTemplate" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.triggers.create": | 
 |  | 
 | type AccountsContainersWorkspacesTriggersCreateCall struct { | 
 | 	s          *Service | 
 | 	parent     string | 
 | 	trigger    *Trigger | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Create: Creates a GTM Trigger. | 
 | func (r *AccountsContainersWorkspacesTriggersService) Create(parent string, trigger *Trigger) *AccountsContainersWorkspacesTriggersCreateCall { | 
 | 	c := &AccountsContainersWorkspacesTriggersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	c.trigger = trigger | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTriggersCreateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTriggersCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTriggersCreateCall) Context(ctx context.Context) *AccountsContainersWorkspacesTriggersCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTriggersCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTriggersCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.trigger) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/triggers") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.triggers.create" call. | 
 | // Exactly one of *Trigger or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Trigger.ServerResponse.Header or (if a response was returned at all) | 
 | // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | 
 | // check whether the returned error was because http.StatusNotModified | 
 | // was returned. | 
 | func (c *AccountsContainersWorkspacesTriggersCreateCall) Do(opts ...googleapi.CallOption) (*Trigger, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Trigger{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a GTM Trigger.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.triggers.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspaces's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/triggers", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Trigger" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Trigger" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.triggers.delete": | 
 |  | 
 | type AccountsContainersWorkspacesTriggersDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes a GTM Trigger. | 
 | func (r *AccountsContainersWorkspacesTriggersService) Delete(path string) *AccountsContainersWorkspacesTriggersDeleteCall { | 
 | 	c := &AccountsContainersWorkspacesTriggersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTriggersDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTriggersDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTriggersDeleteCall) Context(ctx context.Context) *AccountsContainersWorkspacesTriggersDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTriggersDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTriggersDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.triggers.delete" call. | 
 | func (c *AccountsContainersWorkspacesTriggersDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes a GTM Trigger.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers/{triggersId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.triggers.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Trigger's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/triggers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.triggers.get": | 
 |  | 
 | type AccountsContainersWorkspacesTriggersGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a GTM Trigger. | 
 | func (r *AccountsContainersWorkspacesTriggersService) Get(path string) *AccountsContainersWorkspacesTriggersGetCall { | 
 | 	c := &AccountsContainersWorkspacesTriggersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTriggersGetCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTriggersGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesTriggersGetCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesTriggersGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTriggersGetCall) Context(ctx context.Context) *AccountsContainersWorkspacesTriggersGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTriggersGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTriggersGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.triggers.get" call. | 
 | // Exactly one of *Trigger or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Trigger.ServerResponse.Header or (if a response was returned at all) | 
 | // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | 
 | // check whether the returned error was because http.StatusNotModified | 
 | // was returned. | 
 | func (c *AccountsContainersWorkspacesTriggersGetCall) Do(opts ...googleapi.CallOption) (*Trigger, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Trigger{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a GTM Trigger.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers/{triggersId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.triggers.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Trigger's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/triggers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "Trigger" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.triggers.list": | 
 |  | 
 | type AccountsContainersWorkspacesTriggersListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all GTM Triggers of a Container. | 
 | func (r *AccountsContainersWorkspacesTriggersService) List(parent string) *AccountsContainersWorkspacesTriggersListCall { | 
 | 	c := &AccountsContainersWorkspacesTriggersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersWorkspacesTriggersListCall) PageToken(pageToken string) *AccountsContainersWorkspacesTriggersListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTriggersListCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTriggersListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesTriggersListCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesTriggersListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTriggersListCall) Context(ctx context.Context) *AccountsContainersWorkspacesTriggersListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTriggersListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTriggersListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/triggers") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.triggers.list" call. | 
 | // Exactly one of *ListTriggersResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListTriggersResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesTriggersListCall) Do(opts ...googleapi.CallOption) (*ListTriggersResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListTriggersResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all GTM Triggers of a Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.triggers.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspaces's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/triggers", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListTriggersResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersWorkspacesTriggersListCall) Pages(ctx context.Context, f func(*ListTriggersResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.triggers.revert": | 
 |  | 
 | type AccountsContainersWorkspacesTriggersRevertCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Revert: Reverts changes to a GTM Trigger in a GTM Workspace. | 
 | func (r *AccountsContainersWorkspacesTriggersService) Revert(path string) *AccountsContainersWorkspacesTriggersRevertCall { | 
 | 	c := &AccountsContainersWorkspacesTriggersRevertCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the trigger | 
 | // in storage. | 
 | func (c *AccountsContainersWorkspacesTriggersRevertCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesTriggersRevertCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTriggersRevertCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTriggersRevertCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTriggersRevertCall) Context(ctx context.Context) *AccountsContainersWorkspacesTriggersRevertCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTriggersRevertCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTriggersRevertCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:revert") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.triggers.revert" call. | 
 | // Exactly one of *RevertTriggerResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *RevertTriggerResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesTriggersRevertCall) Do(opts ...googleapi.CallOption) (*RevertTriggerResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &RevertTriggerResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Reverts changes to a GTM Trigger in a GTM Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers/{triggersId}:revert", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.triggers.revert", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the trigger\nin storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Trigger's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/triggers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:revert", | 
 | 	//   "response": { | 
 | 	//     "$ref": "RevertTriggerResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.triggers.update": | 
 |  | 
 | type AccountsContainersWorkspacesTriggersUpdateCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	trigger    *Trigger | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Update: Updates a GTM Trigger. | 
 | func (r *AccountsContainersWorkspacesTriggersService) Update(path string, trigger *Trigger) *AccountsContainersWorkspacesTriggersUpdateCall { | 
 | 	c := &AccountsContainersWorkspacesTriggersUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.trigger = trigger | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the trigger | 
 | // in storage. | 
 | func (c *AccountsContainersWorkspacesTriggersUpdateCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesTriggersUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesTriggersUpdateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesTriggersUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesTriggersUpdateCall) Context(ctx context.Context) *AccountsContainersWorkspacesTriggersUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesTriggersUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesTriggersUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.trigger) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.triggers.update" call. | 
 | // Exactly one of *Trigger or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Trigger.ServerResponse.Header or (if a response was returned at all) | 
 | // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to | 
 | // check whether the returned error was because http.StatusNotModified | 
 | // was returned. | 
 | func (c *AccountsContainersWorkspacesTriggersUpdateCall) Do(opts ...googleapi.CallOption) (*Trigger, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Trigger{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a GTM Trigger.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/triggers/{triggersId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.triggers.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the trigger\nin storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Trigger's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/triggers/{trigger_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/triggers/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Trigger" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Trigger" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.variables.create": | 
 |  | 
 | type AccountsContainersWorkspacesVariablesCreateCall struct { | 
 | 	s          *Service | 
 | 	parent     string | 
 | 	variable   *Variable | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Create: Creates a GTM Variable. | 
 | func (r *AccountsContainersWorkspacesVariablesService) Create(parent string, variable *Variable) *AccountsContainersWorkspacesVariablesCreateCall { | 
 | 	c := &AccountsContainersWorkspacesVariablesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	c.variable = variable | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesVariablesCreateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesVariablesCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesVariablesCreateCall) Context(ctx context.Context) *AccountsContainersWorkspacesVariablesCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesVariablesCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesVariablesCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.variable) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/variables") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.variables.create" call. | 
 | // Exactly one of *Variable or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Variable.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesVariablesCreateCall) Do(opts ...googleapi.CallOption) (*Variable, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Variable{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a GTM Variable.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.variables.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/variables", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Variable" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Variable" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.variables.delete": | 
 |  | 
 | type AccountsContainersWorkspacesVariablesDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes a GTM Variable. | 
 | func (r *AccountsContainersWorkspacesVariablesService) Delete(path string) *AccountsContainersWorkspacesVariablesDeleteCall { | 
 | 	c := &AccountsContainersWorkspacesVariablesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesVariablesDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesVariablesDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesVariablesDeleteCall) Context(ctx context.Context) *AccountsContainersWorkspacesVariablesDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesVariablesDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesVariablesDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.variables.delete" call. | 
 | func (c *AccountsContainersWorkspacesVariablesDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes a GTM Variable.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables/{variablesId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.variables.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Variable's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/variables/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.variables.get": | 
 |  | 
 | type AccountsContainersWorkspacesVariablesGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a GTM Variable. | 
 | func (r *AccountsContainersWorkspacesVariablesService) Get(path string) *AccountsContainersWorkspacesVariablesGetCall { | 
 | 	c := &AccountsContainersWorkspacesVariablesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesVariablesGetCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesVariablesGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesVariablesGetCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesVariablesGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesVariablesGetCall) Context(ctx context.Context) *AccountsContainersWorkspacesVariablesGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesVariablesGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesVariablesGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.variables.get" call. | 
 | // Exactly one of *Variable or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Variable.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesVariablesGetCall) Do(opts ...googleapi.CallOption) (*Variable, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Variable{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a GTM Variable.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables/{variablesId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.variables.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Variable's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/variables/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "Variable" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.variables.list": | 
 |  | 
 | type AccountsContainersWorkspacesVariablesListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all GTM Variables of a Container. | 
 | func (r *AccountsContainersWorkspacesVariablesService) List(parent string) *AccountsContainersWorkspacesVariablesListCall { | 
 | 	c := &AccountsContainersWorkspacesVariablesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersWorkspacesVariablesListCall) PageToken(pageToken string) *AccountsContainersWorkspacesVariablesListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesVariablesListCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesVariablesListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesVariablesListCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesVariablesListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesVariablesListCall) Context(ctx context.Context) *AccountsContainersWorkspacesVariablesListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesVariablesListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesVariablesListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/variables") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.variables.list" call. | 
 | // Exactly one of *ListVariablesResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListVariablesResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesVariablesListCall) Do(opts ...googleapi.CallOption) (*ListVariablesResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListVariablesResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all GTM Variables of a Container.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.variables.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/variables", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListVariablesResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersWorkspacesVariablesListCall) Pages(ctx context.Context, f func(*ListVariablesResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.variables.revert": | 
 |  | 
 | type AccountsContainersWorkspacesVariablesRevertCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Revert: Reverts changes to a GTM Variable in a GTM Workspace. | 
 | func (r *AccountsContainersWorkspacesVariablesService) Revert(path string) *AccountsContainersWorkspacesVariablesRevertCall { | 
 | 	c := &AccountsContainersWorkspacesVariablesRevertCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the variable | 
 | // in storage. | 
 | func (c *AccountsContainersWorkspacesVariablesRevertCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesVariablesRevertCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesVariablesRevertCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesVariablesRevertCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesVariablesRevertCall) Context(ctx context.Context) *AccountsContainersWorkspacesVariablesRevertCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesVariablesRevertCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesVariablesRevertCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:revert") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.variables.revert" call. | 
 | // Exactly one of *RevertVariableResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *RevertVariableResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesVariablesRevertCall) Do(opts ...googleapi.CallOption) (*RevertVariableResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &RevertVariableResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Reverts changes to a GTM Variable in a GTM Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables/{variablesId}:revert", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.variables.revert", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the variable\nin storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Variable's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/variables/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:revert", | 
 | 	//   "response": { | 
 | 	//     "$ref": "RevertVariableResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.variables.update": | 
 |  | 
 | type AccountsContainersWorkspacesVariablesUpdateCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	variable   *Variable | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Update: Updates a GTM Variable. | 
 | func (r *AccountsContainersWorkspacesVariablesService) Update(path string, variable *Variable) *AccountsContainersWorkspacesVariablesUpdateCall { | 
 | 	c := &AccountsContainersWorkspacesVariablesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.variable = variable | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the variable | 
 | // in storage. | 
 | func (c *AccountsContainersWorkspacesVariablesUpdateCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesVariablesUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesVariablesUpdateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesVariablesUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesVariablesUpdateCall) Context(ctx context.Context) *AccountsContainersWorkspacesVariablesUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesVariablesUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesVariablesUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.variable) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.variables.update" call. | 
 | // Exactly one of *Variable or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Variable.ServerResponse.Header or (if a response was returned at | 
 | // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified | 
 | // to check whether the returned error was because | 
 | // http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesVariablesUpdateCall) Do(opts ...googleapi.CallOption) (*Variable, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Variable{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a GTM Variable.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/variables/{variablesId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.variables.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the variable\nin storage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Variable's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/variables/{variable_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/variables/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Variable" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Variable" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.zones.create": | 
 |  | 
 | type AccountsContainersWorkspacesZonesCreateCall struct { | 
 | 	s          *Service | 
 | 	parent     string | 
 | 	zone       *Zone | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Create: Creates a GTM Zone. | 
 | func (r *AccountsContainersWorkspacesZonesService) Create(parent string, zone *Zone) *AccountsContainersWorkspacesZonesCreateCall { | 
 | 	c := &AccountsContainersWorkspacesZonesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	c.zone = zone | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesZonesCreateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesZonesCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesZonesCreateCall) Context(ctx context.Context) *AccountsContainersWorkspacesZonesCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesZonesCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesZonesCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.zone) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/zones") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.zones.create" call. | 
 | // Exactly one of *Zone or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Zone.ServerResponse.Header or (if a response was returned at all) in | 
 | // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | 
 | // whether the returned error was because http.StatusNotModified was | 
 | // returned. | 
 | func (c *AccountsContainersWorkspacesZonesCreateCall) Do(opts ...googleapi.CallOption) (*Zone, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Zone{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a GTM Zone.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.zones.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/zones", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Zone" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Zone" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.zones.delete": | 
 |  | 
 | type AccountsContainersWorkspacesZonesDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Deletes a GTM Zone. | 
 | func (r *AccountsContainersWorkspacesZonesService) Delete(path string) *AccountsContainersWorkspacesZonesDeleteCall { | 
 | 	c := &AccountsContainersWorkspacesZonesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesZonesDeleteCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesZonesDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesZonesDeleteCall) Context(ctx context.Context) *AccountsContainersWorkspacesZonesDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesZonesDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesZonesDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.zones.delete" call. | 
 | func (c *AccountsContainersWorkspacesZonesDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Deletes a GTM Zone.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones/{zonesId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.zones.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Zone's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/zones/{zone_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/zones/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.zones.get": | 
 |  | 
 | type AccountsContainersWorkspacesZonesGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a GTM Zone. | 
 | func (r *AccountsContainersWorkspacesZonesService) Get(path string) *AccountsContainersWorkspacesZonesGetCall { | 
 | 	c := &AccountsContainersWorkspacesZonesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesZonesGetCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesZonesGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesZonesGetCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesZonesGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesZonesGetCall) Context(ctx context.Context) *AccountsContainersWorkspacesZonesGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesZonesGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesZonesGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.zones.get" call. | 
 | // Exactly one of *Zone or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Zone.ServerResponse.Header or (if a response was returned at all) in | 
 | // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | 
 | // whether the returned error was because http.StatusNotModified was | 
 | // returned. | 
 | func (c *AccountsContainersWorkspacesZonesGetCall) Do(opts ...googleapi.CallOption) (*Zone, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Zone{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a GTM Zone.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones/{zonesId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.zones.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Zone's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/zones/{zone_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/zones/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "Zone" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.zones.list": | 
 |  | 
 | type AccountsContainersWorkspacesZonesListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: Lists all GTM Zones of a GTM container workspace. | 
 | func (r *AccountsContainersWorkspacesZonesService) List(parent string) *AccountsContainersWorkspacesZonesListCall { | 
 | 	c := &AccountsContainersWorkspacesZonesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsContainersWorkspacesZonesListCall) PageToken(pageToken string) *AccountsContainersWorkspacesZonesListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesZonesListCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesZonesListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsContainersWorkspacesZonesListCall) IfNoneMatch(entityTag string) *AccountsContainersWorkspacesZonesListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesZonesListCall) Context(ctx context.Context) *AccountsContainersWorkspacesZonesListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesZonesListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesZonesListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/zones") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.zones.list" call. | 
 | // Exactly one of *ListZonesResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *ListZonesResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesZonesListCall) Do(opts ...googleapi.CallOption) (*ListZonesResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListZonesResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Lists all GTM Zones of a GTM container workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.zones.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Workspace's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/zones", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListZonesResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers", | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.readonly" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsContainersWorkspacesZonesListCall) Pages(ctx context.Context, f func(*ListZonesResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.zones.revert": | 
 |  | 
 | type AccountsContainersWorkspacesZonesRevertCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Revert: Reverts changes to a GTM Zone in a GTM Workspace. | 
 | func (r *AccountsContainersWorkspacesZonesService) Revert(path string) *AccountsContainersWorkspacesZonesRevertCall { | 
 | 	c := &AccountsContainersWorkspacesZonesRevertCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the zone in | 
 | // storage. | 
 | func (c *AccountsContainersWorkspacesZonesRevertCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesZonesRevertCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesZonesRevertCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesZonesRevertCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesZonesRevertCall) Context(ctx context.Context) *AccountsContainersWorkspacesZonesRevertCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesZonesRevertCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesZonesRevertCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}:revert") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.zones.revert" call. | 
 | // Exactly one of *RevertZoneResponse or error will be non-nil. Any | 
 | // non-2xx status code is an error. Response headers are in either | 
 | // *RevertZoneResponse.ServerResponse.Header or (if a response was | 
 | // returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsContainersWorkspacesZonesRevertCall) Do(opts ...googleapi.CallOption) (*RevertZoneResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &RevertZoneResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Reverts changes to a GTM Zone in a GTM Workspace.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones/{zonesId}:revert", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.zones.revert", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the zone in\nstorage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Zone's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/zones/{zone_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/zones/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}:revert", | 
 | 	//   "response": { | 
 | 	//     "$ref": "RevertZoneResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.containers.workspaces.zones.update": | 
 |  | 
 | type AccountsContainersWorkspacesZonesUpdateCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	zone       *Zone | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Update: Updates a GTM Zone. | 
 | func (r *AccountsContainersWorkspacesZonesService) Update(path string, zone *Zone) *AccountsContainersWorkspacesZonesUpdateCall { | 
 | 	c := &AccountsContainersWorkspacesZonesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.zone = zone | 
 | 	return c | 
 | } | 
 |  | 
 | // Fingerprint sets the optional parameter "fingerprint": When provided, | 
 | // this fingerprint must match the fingerprint of the zone in | 
 | // storage. | 
 | func (c *AccountsContainersWorkspacesZonesUpdateCall) Fingerprint(fingerprint string) *AccountsContainersWorkspacesZonesUpdateCall { | 
 | 	c.urlParams_.Set("fingerprint", fingerprint) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsContainersWorkspacesZonesUpdateCall) Fields(s ...googleapi.Field) *AccountsContainersWorkspacesZonesUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsContainersWorkspacesZonesUpdateCall) Context(ctx context.Context) *AccountsContainersWorkspacesZonesUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsContainersWorkspacesZonesUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsContainersWorkspacesZonesUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.zone) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.containers.workspaces.zones.update" call. | 
 | // Exactly one of *Zone or error will be non-nil. Any non-2xx status | 
 | // code is an error. Response headers are in either | 
 | // *Zone.ServerResponse.Header or (if a response was returned at all) in | 
 | // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check | 
 | // whether the returned error was because http.StatusNotModified was | 
 | // returned. | 
 | func (c *AccountsContainersWorkspacesZonesUpdateCall) Do(opts ...googleapi.CallOption) (*Zone, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &Zone{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a GTM Zone.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/containers/{containersId}/workspaces/{workspacesId}/zones/{zonesId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.containers.workspaces.zones.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "fingerprint": { | 
 | 	//       "description": "When provided, this fingerprint must match the fingerprint of the zone in\nstorage.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "path": { | 
 | 	//       "description": "GTM Zone's API relative path.\nExample:\naccounts/{account_id}/containers/{container_id}/workspaces/{workspace_id}/zones/{zone_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/containers/[^/]+/workspaces/[^/]+/zones/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "Zone" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "Zone" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.edit.containers" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.user_permissions.create": | 
 |  | 
 | type AccountsUserPermissionsCreateCall struct { | 
 | 	s              *Service | 
 | 	parent         string | 
 | 	userpermission *UserPermission | 
 | 	urlParams_     gensupport.URLParams | 
 | 	ctx_           context.Context | 
 | 	header_        http.Header | 
 | } | 
 |  | 
 | // Create: Creates a user's Account & Container access. | 
 | func (r *AccountsUserPermissionsService) Create(parent string, userpermission *UserPermission) *AccountsUserPermissionsCreateCall { | 
 | 	c := &AccountsUserPermissionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	c.userpermission = userpermission | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsUserPermissionsCreateCall) Fields(s ...googleapi.Field) *AccountsUserPermissionsCreateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsUserPermissionsCreateCall) Context(ctx context.Context) *AccountsUserPermissionsCreateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsUserPermissionsCreateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsUserPermissionsCreateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userpermission) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/user_permissions") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("POST", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.user_permissions.create" call. | 
 | // Exactly one of *UserPermission or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *UserPermission.ServerResponse.Header or (if a response was returned | 
 | // at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsUserPermissionsCreateCall) Do(opts ...googleapi.CallOption) (*UserPermission, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &UserPermission{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Creates a user's Account \u0026 Container access.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/user_permissions", | 
 | 	//   "httpMethod": "POST", | 
 | 	//   "id": "tagmanager.accounts.user_permissions.create", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Account's API relative path.\nExample: accounts/{account_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/user_permissions", | 
 | 	//   "request": { | 
 | 	//     "$ref": "UserPermission" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "UserPermission" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.manage.users" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.user_permissions.delete": | 
 |  | 
 | type AccountsUserPermissionsDeleteCall struct { | 
 | 	s          *Service | 
 | 	path       string | 
 | 	urlParams_ gensupport.URLParams | 
 | 	ctx_       context.Context | 
 | 	header_    http.Header | 
 | } | 
 |  | 
 | // Delete: Removes a user from the account, revoking access to it and | 
 | // all of its | 
 | // containers. | 
 | func (r *AccountsUserPermissionsService) Delete(path string) *AccountsUserPermissionsDeleteCall { | 
 | 	c := &AccountsUserPermissionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsUserPermissionsDeleteCall) Fields(s ...googleapi.Field) *AccountsUserPermissionsDeleteCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsUserPermissionsDeleteCall) Context(ctx context.Context) *AccountsUserPermissionsDeleteCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsUserPermissionsDeleteCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsUserPermissionsDeleteCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("DELETE", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.user_permissions.delete" call. | 
 | func (c *AccountsUserPermissionsDeleteCall) Do(opts ...googleapi.CallOption) error { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if err != nil { | 
 | 		return err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return err | 
 | 	} | 
 | 	return nil | 
 | 	// { | 
 | 	//   "description": "Removes a user from the account, revoking access to it and all of its\ncontainers.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/user_permissions/{user_permissionsId}", | 
 | 	//   "httpMethod": "DELETE", | 
 | 	//   "id": "tagmanager.accounts.user_permissions.delete", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM UserPermission's API relative path.\nExample: accounts/{account_id}/user_permissions/{user_permission_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/user_permissions/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.manage.users" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.user_permissions.get": | 
 |  | 
 | type AccountsUserPermissionsGetCall struct { | 
 | 	s            *Service | 
 | 	path         string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // Get: Gets a user's Account & Container access. | 
 | func (r *AccountsUserPermissionsService) Get(path string) *AccountsUserPermissionsGetCall { | 
 | 	c := &AccountsUserPermissionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsUserPermissionsGetCall) Fields(s ...googleapi.Field) *AccountsUserPermissionsGetCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsUserPermissionsGetCall) IfNoneMatch(entityTag string) *AccountsUserPermissionsGetCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsUserPermissionsGetCall) Context(ctx context.Context) *AccountsUserPermissionsGetCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsUserPermissionsGetCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsUserPermissionsGetCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.user_permissions.get" call. | 
 | // Exactly one of *UserPermission or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *UserPermission.ServerResponse.Header or (if a response was returned | 
 | // at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsUserPermissionsGetCall) Do(opts ...googleapi.CallOption) (*UserPermission, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &UserPermission{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Gets a user's Account \u0026 Container access.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/user_permissions/{user_permissionsId}", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.user_permissions.get", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM UserPermission's API relative path.\nExample: accounts/{account_id}/user_permissions/{user_permission_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/user_permissions/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "response": { | 
 | 	//     "$ref": "UserPermission" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.manage.users" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.user_permissions.list": | 
 |  | 
 | type AccountsUserPermissionsListCall struct { | 
 | 	s            *Service | 
 | 	parent       string | 
 | 	urlParams_   gensupport.URLParams | 
 | 	ifNoneMatch_ string | 
 | 	ctx_         context.Context | 
 | 	header_      http.Header | 
 | } | 
 |  | 
 | // List: List all users that have access to the account along with | 
 | // Account and | 
 | // Container user access granted to each of them. | 
 | func (r *AccountsUserPermissionsService) List(parent string) *AccountsUserPermissionsListCall { | 
 | 	c := &AccountsUserPermissionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.parent = parent | 
 | 	return c | 
 | } | 
 |  | 
 | // PageToken sets the optional parameter "pageToken": Continuation token | 
 | // for fetching the next page of results. | 
 | func (c *AccountsUserPermissionsListCall) PageToken(pageToken string) *AccountsUserPermissionsListCall { | 
 | 	c.urlParams_.Set("pageToken", pageToken) | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsUserPermissionsListCall) Fields(s ...googleapi.Field) *AccountsUserPermissionsListCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // IfNoneMatch sets the optional parameter which makes the operation | 
 | // fail if the object's ETag matches the given value. This is useful for | 
 | // getting updates only after the object has changed since the last | 
 | // request. Use googleapi.IsNotModified to check whether the response | 
 | // error from Do is the result of In-None-Match. | 
 | func (c *AccountsUserPermissionsListCall) IfNoneMatch(entityTag string) *AccountsUserPermissionsListCall { | 
 | 	c.ifNoneMatch_ = entityTag | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsUserPermissionsListCall) Context(ctx context.Context) *AccountsUserPermissionsListCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsUserPermissionsListCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsUserPermissionsListCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	if c.ifNoneMatch_ != "" { | 
 | 		reqHeaders.Set("If-None-Match", c.ifNoneMatch_) | 
 | 	} | 
 | 	var body io.Reader = nil | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+parent}/user_permissions") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("GET", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"parent": c.parent, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.user_permissions.list" call. | 
 | // Exactly one of *ListUserPermissionsResponse or error will be non-nil. | 
 | // Any non-2xx status code is an error. Response headers are in either | 
 | // *ListUserPermissionsResponse.ServerResponse.Header or (if a response | 
 | // was returned at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsUserPermissionsListCall) Do(opts ...googleapi.CallOption) (*ListUserPermissionsResponse, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &ListUserPermissionsResponse{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "List all users that have access to the account along with Account and\nContainer user access granted to each of them.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/user_permissions", | 
 | 	//   "httpMethod": "GET", | 
 | 	//   "id": "tagmanager.accounts.user_permissions.list", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "parent" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "pageToken": { | 
 | 	//       "description": "Continuation token for fetching the next page of results.", | 
 | 	//       "location": "query", | 
 | 	//       "type": "string" | 
 | 	//     }, | 
 | 	//     "parent": { | 
 | 	//       "description": "GTM Accounts's API relative path.\nExample: accounts/{account_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+parent}/user_permissions", | 
 | 	//   "response": { | 
 | 	//     "$ref": "ListUserPermissionsResponse" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.manage.users" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } | 
 |  | 
 | // Pages invokes f for each page of results. | 
 | // A non-nil error returned from f will halt the iteration. | 
 | // The provided context supersedes any context provided to the Context method. | 
 | func (c *AccountsUserPermissionsListCall) Pages(ctx context.Context, f func(*ListUserPermissionsResponse) error) error { | 
 | 	c.ctx_ = ctx | 
 | 	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point | 
 | 	for { | 
 | 		x, err := c.Do() | 
 | 		if err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if err := f(x); err != nil { | 
 | 			return err | 
 | 		} | 
 | 		if x.NextPageToken == "" { | 
 | 			return nil | 
 | 		} | 
 | 		c.PageToken(x.NextPageToken) | 
 | 	} | 
 | } | 
 |  | 
 | // method id "tagmanager.accounts.user_permissions.update": | 
 |  | 
 | type AccountsUserPermissionsUpdateCall struct { | 
 | 	s              *Service | 
 | 	path           string | 
 | 	userpermission *UserPermission | 
 | 	urlParams_     gensupport.URLParams | 
 | 	ctx_           context.Context | 
 | 	header_        http.Header | 
 | } | 
 |  | 
 | // Update: Updates a user's Account & Container access. | 
 | func (r *AccountsUserPermissionsService) Update(path string, userpermission *UserPermission) *AccountsUserPermissionsUpdateCall { | 
 | 	c := &AccountsUserPermissionsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} | 
 | 	c.path = path | 
 | 	c.userpermission = userpermission | 
 | 	return c | 
 | } | 
 |  | 
 | // Fields allows partial responses to be retrieved. See | 
 | // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse | 
 | // for more information. | 
 | func (c *AccountsUserPermissionsUpdateCall) Fields(s ...googleapi.Field) *AccountsUserPermissionsUpdateCall { | 
 | 	c.urlParams_.Set("fields", googleapi.CombineFields(s)) | 
 | 	return c | 
 | } | 
 |  | 
 | // Context sets the context to be used in this call's Do method. Any | 
 | // pending HTTP request will be aborted if the provided context is | 
 | // canceled. | 
 | func (c *AccountsUserPermissionsUpdateCall) Context(ctx context.Context) *AccountsUserPermissionsUpdateCall { | 
 | 	c.ctx_ = ctx | 
 | 	return c | 
 | } | 
 |  | 
 | // Header returns an http.Header that can be modified by the caller to | 
 | // add HTTP headers to the request. | 
 | func (c *AccountsUserPermissionsUpdateCall) Header() http.Header { | 
 | 	if c.header_ == nil { | 
 | 		c.header_ = make(http.Header) | 
 | 	} | 
 | 	return c.header_ | 
 | } | 
 |  | 
 | func (c *AccountsUserPermissionsUpdateCall) doRequest(alt string) (*http.Response, error) { | 
 | 	reqHeaders := make(http.Header) | 
 | 	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20200617") | 
 | 	for k, v := range c.header_ { | 
 | 		reqHeaders[k] = v | 
 | 	} | 
 | 	reqHeaders.Set("User-Agent", c.s.userAgent()) | 
 | 	var body io.Reader = nil | 
 | 	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userpermission) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	reqHeaders.Set("Content-Type", "application/json") | 
 | 	c.urlParams_.Set("alt", alt) | 
 | 	c.urlParams_.Set("prettyPrint", "false") | 
 | 	urls := googleapi.ResolveRelative(c.s.BasePath, "tagmanager/v2/{+path}") | 
 | 	urls += "?" + c.urlParams_.Encode() | 
 | 	req, err := http.NewRequest("PUT", urls, body) | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	req.Header = reqHeaders | 
 | 	googleapi.Expand(req.URL, map[string]string{ | 
 | 		"path": c.path, | 
 | 	}) | 
 | 	return gensupport.SendRequest(c.ctx_, c.s.client, req) | 
 | } | 
 |  | 
 | // Do executes the "tagmanager.accounts.user_permissions.update" call. | 
 | // Exactly one of *UserPermission or error will be non-nil. Any non-2xx | 
 | // status code is an error. Response headers are in either | 
 | // *UserPermission.ServerResponse.Header or (if a response was returned | 
 | // at all) in error.(*googleapi.Error).Header. Use | 
 | // googleapi.IsNotModified to check whether the returned error was | 
 | // because http.StatusNotModified was returned. | 
 | func (c *AccountsUserPermissionsUpdateCall) Do(opts ...googleapi.CallOption) (*UserPermission, error) { | 
 | 	gensupport.SetOptions(c.urlParams_, opts...) | 
 | 	res, err := c.doRequest("json") | 
 | 	if res != nil && res.StatusCode == http.StatusNotModified { | 
 | 		if res.Body != nil { | 
 | 			res.Body.Close() | 
 | 		} | 
 | 		return nil, &googleapi.Error{ | 
 | 			Code:   res.StatusCode, | 
 | 			Header: res.Header, | 
 | 		} | 
 | 	} | 
 | 	if err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	defer googleapi.CloseBody(res) | 
 | 	if err := googleapi.CheckResponse(res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	ret := &UserPermission{ | 
 | 		ServerResponse: googleapi.ServerResponse{ | 
 | 			Header:         res.Header, | 
 | 			HTTPStatusCode: res.StatusCode, | 
 | 		}, | 
 | 	} | 
 | 	target := &ret | 
 | 	if err := gensupport.DecodeResponse(target, res); err != nil { | 
 | 		return nil, err | 
 | 	} | 
 | 	return ret, nil | 
 | 	// { | 
 | 	//   "description": "Updates a user's Account \u0026 Container access.", | 
 | 	//   "flatPath": "tagmanager/v2/accounts/{accountsId}/user_permissions/{user_permissionsId}", | 
 | 	//   "httpMethod": "PUT", | 
 | 	//   "id": "tagmanager.accounts.user_permissions.update", | 
 | 	//   "parameterOrder": [ | 
 | 	//     "path" | 
 | 	//   ], | 
 | 	//   "parameters": { | 
 | 	//     "path": { | 
 | 	//       "description": "GTM UserPermission's API relative path.\nExample: accounts/{account_id}/user_permissions/{user_permission_id}", | 
 | 	//       "location": "path", | 
 | 	//       "pattern": "^accounts/[^/]+/user_permissions/[^/]+$", | 
 | 	//       "required": true, | 
 | 	//       "type": "string" | 
 | 	//     } | 
 | 	//   }, | 
 | 	//   "path": "tagmanager/v2/{+path}", | 
 | 	//   "request": { | 
 | 	//     "$ref": "UserPermission" | 
 | 	//   }, | 
 | 	//   "response": { | 
 | 	//     "$ref": "UserPermission" | 
 | 	//   }, | 
 | 	//   "scopes": [ | 
 | 	//     "https://www.googleapis.com/auth/tagmanager.manage.users" | 
 | 	//   ] | 
 | 	// } | 
 |  | 
 | } |