...

Source file src/google.golang.org/api/dfareporting/v4/dfareporting-gen.go

Documentation: google.golang.org/api/dfareporting/v4

     1  // Copyright 2024 Google LLC.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Code generated file. DO NOT EDIT.
     6  
     7  // Package dfareporting provides access to the Campaign Manager 360 API.
     8  //
     9  // For product documentation, see: https://developers.google.com/doubleclick-advertisers/
    10  //
    11  // # Library status
    12  //
    13  // These client libraries are officially supported by Google. However, this
    14  // library is considered complete and is in maintenance mode. This means
    15  // that we will address critical bugs and security issues but will not add
    16  // any new features.
    17  //
    18  // When possible, we recommend using our newer
    19  // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go)
    20  // that are still actively being worked and iterated on.
    21  //
    22  // # Creating a client
    23  //
    24  // Usage example:
    25  //
    26  //	import "google.golang.org/api/dfareporting/v4"
    27  //	...
    28  //	ctx := context.Background()
    29  //	dfareportingService, err := dfareporting.NewService(ctx)
    30  //
    31  // In this example, Google Application Default Credentials are used for
    32  // authentication. For information on how to create and obtain Application
    33  // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
    34  //
    35  // # Other authentication options
    36  //
    37  // By default, all available scopes (see "Constants") are used to authenticate.
    38  // To restrict scopes, use [google.golang.org/api/option.WithScopes]:
    39  //
    40  //	dfareportingService, err := dfareporting.NewService(ctx, option.WithScopes(dfareporting.DfatraffickingScope))
    41  //
    42  // To use an API key for authentication (note: some APIs do not support API
    43  // keys), use [google.golang.org/api/option.WithAPIKey]:
    44  //
    45  //	dfareportingService, err := dfareporting.NewService(ctx, option.WithAPIKey("AIza..."))
    46  //
    47  // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth
    48  // flow, use [google.golang.org/api/option.WithTokenSource]:
    49  //
    50  //	config := &oauth2.Config{...}
    51  //	// ...
    52  //	token, err := config.Exchange(ctx, ...)
    53  //	dfareportingService, err := dfareporting.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    54  //
    55  // See [google.golang.org/api/option.ClientOption] for details on options.
    56  package dfareporting // import "google.golang.org/api/dfareporting/v4"
    57  
    58  import (
    59  	"bytes"
    60  	"context"
    61  	"encoding/json"
    62  	"errors"
    63  	"fmt"
    64  	"io"
    65  	"net/http"
    66  	"net/url"
    67  	"strconv"
    68  	"strings"
    69  
    70  	googleapi "google.golang.org/api/googleapi"
    71  	internal "google.golang.org/api/internal"
    72  	gensupport "google.golang.org/api/internal/gensupport"
    73  	option "google.golang.org/api/option"
    74  	internaloption "google.golang.org/api/option/internaloption"
    75  	htransport "google.golang.org/api/transport/http"
    76  )
    77  
    78  // Always reference these packages, just in case the auto-generated code
    79  // below doesn't.
    80  var _ = bytes.NewBuffer
    81  var _ = strconv.Itoa
    82  var _ = fmt.Sprintf
    83  var _ = json.NewDecoder
    84  var _ = io.Copy
    85  var _ = url.Parse
    86  var _ = gensupport.MarshalJSON
    87  var _ = googleapi.Version
    88  var _ = errors.New
    89  var _ = strings.Replace
    90  var _ = context.Canceled
    91  var _ = internaloption.WithDefaultEndpoint
    92  var _ = internal.Version
    93  
    94  const apiId = "dfareporting:v4"
    95  const apiName = "dfareporting"
    96  const apiVersion = "v4"
    97  const basePath = "https://dfareporting.googleapis.com/dfareporting/v4/"
    98  const basePathTemplate = "https://dfareporting.UNIVERSE_DOMAIN/dfareporting/v4/"
    99  const mtlsBasePath = "https://dfareporting.mtls.googleapis.com/dfareporting/v4/"
   100  
   101  // OAuth2 scopes used by this API.
   102  const (
   103  	// Manage DoubleClick Digital Marketing conversions
   104  	DdmconversionsScope = "https://www.googleapis.com/auth/ddmconversions"
   105  
   106  	// View and manage DoubleClick for Advertisers reports
   107  	DfareportingScope = "https://www.googleapis.com/auth/dfareporting"
   108  
   109  	// View and manage your DoubleClick Campaign Manager's (DCM) display ad
   110  	// campaigns
   111  	DfatraffickingScope = "https://www.googleapis.com/auth/dfatrafficking"
   112  )
   113  
   114  // NewService creates a new Service.
   115  func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
   116  	scopesOption := internaloption.WithDefaultScopes(
   117  		"https://www.googleapis.com/auth/ddmconversions",
   118  		"https://www.googleapis.com/auth/dfareporting",
   119  		"https://www.googleapis.com/auth/dfatrafficking",
   120  	)
   121  	// NOTE: prepend, so we don't override user-specified scopes.
   122  	opts = append([]option.ClientOption{scopesOption}, opts...)
   123  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
   124  	opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate))
   125  	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
   126  	opts = append(opts, internaloption.EnableNewAuthLibrary())
   127  	client, endpoint, err := htransport.NewClient(ctx, opts...)
   128  	if err != nil {
   129  		return nil, err
   130  	}
   131  	s, err := New(client)
   132  	if err != nil {
   133  		return nil, err
   134  	}
   135  	if endpoint != "" {
   136  		s.BasePath = endpoint
   137  	}
   138  	return s, nil
   139  }
   140  
   141  // New creates a new Service. It uses the provided http.Client for requests.
   142  //
   143  // Deprecated: please use NewService instead.
   144  // To provide a custom HTTP client, use option.WithHTTPClient.
   145  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   146  func New(client *http.Client) (*Service, error) {
   147  	if client == nil {
   148  		return nil, errors.New("client is nil")
   149  	}
   150  	s := &Service{client: client, BasePath: basePath}
   151  	s.AccountActiveAdSummaries = NewAccountActiveAdSummariesService(s)
   152  	s.AccountPermissionGroups = NewAccountPermissionGroupsService(s)
   153  	s.AccountPermissions = NewAccountPermissionsService(s)
   154  	s.AccountUserProfiles = NewAccountUserProfilesService(s)
   155  	s.Accounts = NewAccountsService(s)
   156  	s.Ads = NewAdsService(s)
   157  	s.AdvertiserGroups = NewAdvertiserGroupsService(s)
   158  	s.AdvertiserInvoices = NewAdvertiserInvoicesService(s)
   159  	s.AdvertiserLandingPages = NewAdvertiserLandingPagesService(s)
   160  	s.Advertisers = NewAdvertisersService(s)
   161  	s.BillingAssignments = NewBillingAssignmentsService(s)
   162  	s.BillingProfiles = NewBillingProfilesService(s)
   163  	s.BillingRates = NewBillingRatesService(s)
   164  	s.Browsers = NewBrowsersService(s)
   165  	s.CampaignCreativeAssociations = NewCampaignCreativeAssociationsService(s)
   166  	s.Campaigns = NewCampaignsService(s)
   167  	s.ChangeLogs = NewChangeLogsService(s)
   168  	s.Cities = NewCitiesService(s)
   169  	s.ConnectionTypes = NewConnectionTypesService(s)
   170  	s.ContentCategories = NewContentCategoriesService(s)
   171  	s.Conversions = NewConversionsService(s)
   172  	s.Countries = NewCountriesService(s)
   173  	s.CreativeAssets = NewCreativeAssetsService(s)
   174  	s.CreativeFieldValues = NewCreativeFieldValuesService(s)
   175  	s.CreativeFields = NewCreativeFieldsService(s)
   176  	s.CreativeGroups = NewCreativeGroupsService(s)
   177  	s.Creatives = NewCreativesService(s)
   178  	s.DimensionValues = NewDimensionValuesService(s)
   179  	s.DirectorySites = NewDirectorySitesService(s)
   180  	s.DynamicTargetingKeys = NewDynamicTargetingKeysService(s)
   181  	s.EventTags = NewEventTagsService(s)
   182  	s.Files = NewFilesService(s)
   183  	s.FloodlightActivities = NewFloodlightActivitiesService(s)
   184  	s.FloodlightActivityGroups = NewFloodlightActivityGroupsService(s)
   185  	s.FloodlightConfigurations = NewFloodlightConfigurationsService(s)
   186  	s.InventoryItems = NewInventoryItemsService(s)
   187  	s.Languages = NewLanguagesService(s)
   188  	s.Metros = NewMetrosService(s)
   189  	s.MobileApps = NewMobileAppsService(s)
   190  	s.MobileCarriers = NewMobileCarriersService(s)
   191  	s.OperatingSystemVersions = NewOperatingSystemVersionsService(s)
   192  	s.OperatingSystems = NewOperatingSystemsService(s)
   193  	s.Orders = NewOrdersService(s)
   194  	s.PlacementGroups = NewPlacementGroupsService(s)
   195  	s.PlacementStrategies = NewPlacementStrategiesService(s)
   196  	s.Placements = NewPlacementsService(s)
   197  	s.PlatformTypes = NewPlatformTypesService(s)
   198  	s.PostalCodes = NewPostalCodesService(s)
   199  	s.Projects = NewProjectsService(s)
   200  	s.Regions = NewRegionsService(s)
   201  	s.RemarketingListShares = NewRemarketingListSharesService(s)
   202  	s.RemarketingLists = NewRemarketingListsService(s)
   203  	s.Reports = NewReportsService(s)
   204  	s.Sites = NewSitesService(s)
   205  	s.Sizes = NewSizesService(s)
   206  	s.Subaccounts = NewSubaccountsService(s)
   207  	s.TargetableRemarketingLists = NewTargetableRemarketingListsService(s)
   208  	s.TargetingTemplates = NewTargetingTemplatesService(s)
   209  	s.UserProfiles = NewUserProfilesService(s)
   210  	s.UserRolePermissionGroups = NewUserRolePermissionGroupsService(s)
   211  	s.UserRolePermissions = NewUserRolePermissionsService(s)
   212  	s.UserRoles = NewUserRolesService(s)
   213  	s.VideoFormats = NewVideoFormatsService(s)
   214  	return s, nil
   215  }
   216  
   217  type Service struct {
   218  	client    *http.Client
   219  	BasePath  string // API endpoint base URL
   220  	UserAgent string // optional additional User-Agent fragment
   221  
   222  	AccountActiveAdSummaries *AccountActiveAdSummariesService
   223  
   224  	AccountPermissionGroups *AccountPermissionGroupsService
   225  
   226  	AccountPermissions *AccountPermissionsService
   227  
   228  	AccountUserProfiles *AccountUserProfilesService
   229  
   230  	Accounts *AccountsService
   231  
   232  	Ads *AdsService
   233  
   234  	AdvertiserGroups *AdvertiserGroupsService
   235  
   236  	AdvertiserInvoices *AdvertiserInvoicesService
   237  
   238  	AdvertiserLandingPages *AdvertiserLandingPagesService
   239  
   240  	Advertisers *AdvertisersService
   241  
   242  	BillingAssignments *BillingAssignmentsService
   243  
   244  	BillingProfiles *BillingProfilesService
   245  
   246  	BillingRates *BillingRatesService
   247  
   248  	Browsers *BrowsersService
   249  
   250  	CampaignCreativeAssociations *CampaignCreativeAssociationsService
   251  
   252  	Campaigns *CampaignsService
   253  
   254  	ChangeLogs *ChangeLogsService
   255  
   256  	Cities *CitiesService
   257  
   258  	ConnectionTypes *ConnectionTypesService
   259  
   260  	ContentCategories *ContentCategoriesService
   261  
   262  	Conversions *ConversionsService
   263  
   264  	Countries *CountriesService
   265  
   266  	CreativeAssets *CreativeAssetsService
   267  
   268  	CreativeFieldValues *CreativeFieldValuesService
   269  
   270  	CreativeFields *CreativeFieldsService
   271  
   272  	CreativeGroups *CreativeGroupsService
   273  
   274  	Creatives *CreativesService
   275  
   276  	DimensionValues *DimensionValuesService
   277  
   278  	DirectorySites *DirectorySitesService
   279  
   280  	DynamicTargetingKeys *DynamicTargetingKeysService
   281  
   282  	EventTags *EventTagsService
   283  
   284  	Files *FilesService
   285  
   286  	FloodlightActivities *FloodlightActivitiesService
   287  
   288  	FloodlightActivityGroups *FloodlightActivityGroupsService
   289  
   290  	FloodlightConfigurations *FloodlightConfigurationsService
   291  
   292  	InventoryItems *InventoryItemsService
   293  
   294  	Languages *LanguagesService
   295  
   296  	Metros *MetrosService
   297  
   298  	MobileApps *MobileAppsService
   299  
   300  	MobileCarriers *MobileCarriersService
   301  
   302  	OperatingSystemVersions *OperatingSystemVersionsService
   303  
   304  	OperatingSystems *OperatingSystemsService
   305  
   306  	Orders *OrdersService
   307  
   308  	PlacementGroups *PlacementGroupsService
   309  
   310  	PlacementStrategies *PlacementStrategiesService
   311  
   312  	Placements *PlacementsService
   313  
   314  	PlatformTypes *PlatformTypesService
   315  
   316  	PostalCodes *PostalCodesService
   317  
   318  	Projects *ProjectsService
   319  
   320  	Regions *RegionsService
   321  
   322  	RemarketingListShares *RemarketingListSharesService
   323  
   324  	RemarketingLists *RemarketingListsService
   325  
   326  	Reports *ReportsService
   327  
   328  	Sites *SitesService
   329  
   330  	Sizes *SizesService
   331  
   332  	Subaccounts *SubaccountsService
   333  
   334  	TargetableRemarketingLists *TargetableRemarketingListsService
   335  
   336  	TargetingTemplates *TargetingTemplatesService
   337  
   338  	UserProfiles *UserProfilesService
   339  
   340  	UserRolePermissionGroups *UserRolePermissionGroupsService
   341  
   342  	UserRolePermissions *UserRolePermissionsService
   343  
   344  	UserRoles *UserRolesService
   345  
   346  	VideoFormats *VideoFormatsService
   347  }
   348  
   349  func (s *Service) userAgent() string {
   350  	if s.UserAgent == "" {
   351  		return googleapi.UserAgent
   352  	}
   353  	return googleapi.UserAgent + " " + s.UserAgent
   354  }
   355  
   356  func NewAccountActiveAdSummariesService(s *Service) *AccountActiveAdSummariesService {
   357  	rs := &AccountActiveAdSummariesService{s: s}
   358  	return rs
   359  }
   360  
   361  type AccountActiveAdSummariesService struct {
   362  	s *Service
   363  }
   364  
   365  func NewAccountPermissionGroupsService(s *Service) *AccountPermissionGroupsService {
   366  	rs := &AccountPermissionGroupsService{s: s}
   367  	return rs
   368  }
   369  
   370  type AccountPermissionGroupsService struct {
   371  	s *Service
   372  }
   373  
   374  func NewAccountPermissionsService(s *Service) *AccountPermissionsService {
   375  	rs := &AccountPermissionsService{s: s}
   376  	return rs
   377  }
   378  
   379  type AccountPermissionsService struct {
   380  	s *Service
   381  }
   382  
   383  func NewAccountUserProfilesService(s *Service) *AccountUserProfilesService {
   384  	rs := &AccountUserProfilesService{s: s}
   385  	return rs
   386  }
   387  
   388  type AccountUserProfilesService struct {
   389  	s *Service
   390  }
   391  
   392  func NewAccountsService(s *Service) *AccountsService {
   393  	rs := &AccountsService{s: s}
   394  	return rs
   395  }
   396  
   397  type AccountsService struct {
   398  	s *Service
   399  }
   400  
   401  func NewAdsService(s *Service) *AdsService {
   402  	rs := &AdsService{s: s}
   403  	return rs
   404  }
   405  
   406  type AdsService struct {
   407  	s *Service
   408  }
   409  
   410  func NewAdvertiserGroupsService(s *Service) *AdvertiserGroupsService {
   411  	rs := &AdvertiserGroupsService{s: s}
   412  	return rs
   413  }
   414  
   415  type AdvertiserGroupsService struct {
   416  	s *Service
   417  }
   418  
   419  func NewAdvertiserInvoicesService(s *Service) *AdvertiserInvoicesService {
   420  	rs := &AdvertiserInvoicesService{s: s}
   421  	return rs
   422  }
   423  
   424  type AdvertiserInvoicesService struct {
   425  	s *Service
   426  }
   427  
   428  func NewAdvertiserLandingPagesService(s *Service) *AdvertiserLandingPagesService {
   429  	rs := &AdvertiserLandingPagesService{s: s}
   430  	return rs
   431  }
   432  
   433  type AdvertiserLandingPagesService struct {
   434  	s *Service
   435  }
   436  
   437  func NewAdvertisersService(s *Service) *AdvertisersService {
   438  	rs := &AdvertisersService{s: s}
   439  	return rs
   440  }
   441  
   442  type AdvertisersService struct {
   443  	s *Service
   444  }
   445  
   446  func NewBillingAssignmentsService(s *Service) *BillingAssignmentsService {
   447  	rs := &BillingAssignmentsService{s: s}
   448  	return rs
   449  }
   450  
   451  type BillingAssignmentsService struct {
   452  	s *Service
   453  }
   454  
   455  func NewBillingProfilesService(s *Service) *BillingProfilesService {
   456  	rs := &BillingProfilesService{s: s}
   457  	return rs
   458  }
   459  
   460  type BillingProfilesService struct {
   461  	s *Service
   462  }
   463  
   464  func NewBillingRatesService(s *Service) *BillingRatesService {
   465  	rs := &BillingRatesService{s: s}
   466  	return rs
   467  }
   468  
   469  type BillingRatesService struct {
   470  	s *Service
   471  }
   472  
   473  func NewBrowsersService(s *Service) *BrowsersService {
   474  	rs := &BrowsersService{s: s}
   475  	return rs
   476  }
   477  
   478  type BrowsersService struct {
   479  	s *Service
   480  }
   481  
   482  func NewCampaignCreativeAssociationsService(s *Service) *CampaignCreativeAssociationsService {
   483  	rs := &CampaignCreativeAssociationsService{s: s}
   484  	return rs
   485  }
   486  
   487  type CampaignCreativeAssociationsService struct {
   488  	s *Service
   489  }
   490  
   491  func NewCampaignsService(s *Service) *CampaignsService {
   492  	rs := &CampaignsService{s: s}
   493  	return rs
   494  }
   495  
   496  type CampaignsService struct {
   497  	s *Service
   498  }
   499  
   500  func NewChangeLogsService(s *Service) *ChangeLogsService {
   501  	rs := &ChangeLogsService{s: s}
   502  	return rs
   503  }
   504  
   505  type ChangeLogsService struct {
   506  	s *Service
   507  }
   508  
   509  func NewCitiesService(s *Service) *CitiesService {
   510  	rs := &CitiesService{s: s}
   511  	return rs
   512  }
   513  
   514  type CitiesService struct {
   515  	s *Service
   516  }
   517  
   518  func NewConnectionTypesService(s *Service) *ConnectionTypesService {
   519  	rs := &ConnectionTypesService{s: s}
   520  	return rs
   521  }
   522  
   523  type ConnectionTypesService struct {
   524  	s *Service
   525  }
   526  
   527  func NewContentCategoriesService(s *Service) *ContentCategoriesService {
   528  	rs := &ContentCategoriesService{s: s}
   529  	return rs
   530  }
   531  
   532  type ContentCategoriesService struct {
   533  	s *Service
   534  }
   535  
   536  func NewConversionsService(s *Service) *ConversionsService {
   537  	rs := &ConversionsService{s: s}
   538  	return rs
   539  }
   540  
   541  type ConversionsService struct {
   542  	s *Service
   543  }
   544  
   545  func NewCountriesService(s *Service) *CountriesService {
   546  	rs := &CountriesService{s: s}
   547  	return rs
   548  }
   549  
   550  type CountriesService struct {
   551  	s *Service
   552  }
   553  
   554  func NewCreativeAssetsService(s *Service) *CreativeAssetsService {
   555  	rs := &CreativeAssetsService{s: s}
   556  	return rs
   557  }
   558  
   559  type CreativeAssetsService struct {
   560  	s *Service
   561  }
   562  
   563  func NewCreativeFieldValuesService(s *Service) *CreativeFieldValuesService {
   564  	rs := &CreativeFieldValuesService{s: s}
   565  	return rs
   566  }
   567  
   568  type CreativeFieldValuesService struct {
   569  	s *Service
   570  }
   571  
   572  func NewCreativeFieldsService(s *Service) *CreativeFieldsService {
   573  	rs := &CreativeFieldsService{s: s}
   574  	return rs
   575  }
   576  
   577  type CreativeFieldsService struct {
   578  	s *Service
   579  }
   580  
   581  func NewCreativeGroupsService(s *Service) *CreativeGroupsService {
   582  	rs := &CreativeGroupsService{s: s}
   583  	return rs
   584  }
   585  
   586  type CreativeGroupsService struct {
   587  	s *Service
   588  }
   589  
   590  func NewCreativesService(s *Service) *CreativesService {
   591  	rs := &CreativesService{s: s}
   592  	return rs
   593  }
   594  
   595  type CreativesService struct {
   596  	s *Service
   597  }
   598  
   599  func NewDimensionValuesService(s *Service) *DimensionValuesService {
   600  	rs := &DimensionValuesService{s: s}
   601  	return rs
   602  }
   603  
   604  type DimensionValuesService struct {
   605  	s *Service
   606  }
   607  
   608  func NewDirectorySitesService(s *Service) *DirectorySitesService {
   609  	rs := &DirectorySitesService{s: s}
   610  	return rs
   611  }
   612  
   613  type DirectorySitesService struct {
   614  	s *Service
   615  }
   616  
   617  func NewDynamicTargetingKeysService(s *Service) *DynamicTargetingKeysService {
   618  	rs := &DynamicTargetingKeysService{s: s}
   619  	return rs
   620  }
   621  
   622  type DynamicTargetingKeysService struct {
   623  	s *Service
   624  }
   625  
   626  func NewEventTagsService(s *Service) *EventTagsService {
   627  	rs := &EventTagsService{s: s}
   628  	return rs
   629  }
   630  
   631  type EventTagsService struct {
   632  	s *Service
   633  }
   634  
   635  func NewFilesService(s *Service) *FilesService {
   636  	rs := &FilesService{s: s}
   637  	return rs
   638  }
   639  
   640  type FilesService struct {
   641  	s *Service
   642  }
   643  
   644  func NewFloodlightActivitiesService(s *Service) *FloodlightActivitiesService {
   645  	rs := &FloodlightActivitiesService{s: s}
   646  	return rs
   647  }
   648  
   649  type FloodlightActivitiesService struct {
   650  	s *Service
   651  }
   652  
   653  func NewFloodlightActivityGroupsService(s *Service) *FloodlightActivityGroupsService {
   654  	rs := &FloodlightActivityGroupsService{s: s}
   655  	return rs
   656  }
   657  
   658  type FloodlightActivityGroupsService struct {
   659  	s *Service
   660  }
   661  
   662  func NewFloodlightConfigurationsService(s *Service) *FloodlightConfigurationsService {
   663  	rs := &FloodlightConfigurationsService{s: s}
   664  	return rs
   665  }
   666  
   667  type FloodlightConfigurationsService struct {
   668  	s *Service
   669  }
   670  
   671  func NewInventoryItemsService(s *Service) *InventoryItemsService {
   672  	rs := &InventoryItemsService{s: s}
   673  	return rs
   674  }
   675  
   676  type InventoryItemsService struct {
   677  	s *Service
   678  }
   679  
   680  func NewLanguagesService(s *Service) *LanguagesService {
   681  	rs := &LanguagesService{s: s}
   682  	return rs
   683  }
   684  
   685  type LanguagesService struct {
   686  	s *Service
   687  }
   688  
   689  func NewMetrosService(s *Service) *MetrosService {
   690  	rs := &MetrosService{s: s}
   691  	return rs
   692  }
   693  
   694  type MetrosService struct {
   695  	s *Service
   696  }
   697  
   698  func NewMobileAppsService(s *Service) *MobileAppsService {
   699  	rs := &MobileAppsService{s: s}
   700  	return rs
   701  }
   702  
   703  type MobileAppsService struct {
   704  	s *Service
   705  }
   706  
   707  func NewMobileCarriersService(s *Service) *MobileCarriersService {
   708  	rs := &MobileCarriersService{s: s}
   709  	return rs
   710  }
   711  
   712  type MobileCarriersService struct {
   713  	s *Service
   714  }
   715  
   716  func NewOperatingSystemVersionsService(s *Service) *OperatingSystemVersionsService {
   717  	rs := &OperatingSystemVersionsService{s: s}
   718  	return rs
   719  }
   720  
   721  type OperatingSystemVersionsService struct {
   722  	s *Service
   723  }
   724  
   725  func NewOperatingSystemsService(s *Service) *OperatingSystemsService {
   726  	rs := &OperatingSystemsService{s: s}
   727  	return rs
   728  }
   729  
   730  type OperatingSystemsService struct {
   731  	s *Service
   732  }
   733  
   734  func NewOrdersService(s *Service) *OrdersService {
   735  	rs := &OrdersService{s: s}
   736  	return rs
   737  }
   738  
   739  type OrdersService struct {
   740  	s *Service
   741  }
   742  
   743  func NewPlacementGroupsService(s *Service) *PlacementGroupsService {
   744  	rs := &PlacementGroupsService{s: s}
   745  	return rs
   746  }
   747  
   748  type PlacementGroupsService struct {
   749  	s *Service
   750  }
   751  
   752  func NewPlacementStrategiesService(s *Service) *PlacementStrategiesService {
   753  	rs := &PlacementStrategiesService{s: s}
   754  	return rs
   755  }
   756  
   757  type PlacementStrategiesService struct {
   758  	s *Service
   759  }
   760  
   761  func NewPlacementsService(s *Service) *PlacementsService {
   762  	rs := &PlacementsService{s: s}
   763  	return rs
   764  }
   765  
   766  type PlacementsService struct {
   767  	s *Service
   768  }
   769  
   770  func NewPlatformTypesService(s *Service) *PlatformTypesService {
   771  	rs := &PlatformTypesService{s: s}
   772  	return rs
   773  }
   774  
   775  type PlatformTypesService struct {
   776  	s *Service
   777  }
   778  
   779  func NewPostalCodesService(s *Service) *PostalCodesService {
   780  	rs := &PostalCodesService{s: s}
   781  	return rs
   782  }
   783  
   784  type PostalCodesService struct {
   785  	s *Service
   786  }
   787  
   788  func NewProjectsService(s *Service) *ProjectsService {
   789  	rs := &ProjectsService{s: s}
   790  	return rs
   791  }
   792  
   793  type ProjectsService struct {
   794  	s *Service
   795  }
   796  
   797  func NewRegionsService(s *Service) *RegionsService {
   798  	rs := &RegionsService{s: s}
   799  	return rs
   800  }
   801  
   802  type RegionsService struct {
   803  	s *Service
   804  }
   805  
   806  func NewRemarketingListSharesService(s *Service) *RemarketingListSharesService {
   807  	rs := &RemarketingListSharesService{s: s}
   808  	return rs
   809  }
   810  
   811  type RemarketingListSharesService struct {
   812  	s *Service
   813  }
   814  
   815  func NewRemarketingListsService(s *Service) *RemarketingListsService {
   816  	rs := &RemarketingListsService{s: s}
   817  	return rs
   818  }
   819  
   820  type RemarketingListsService struct {
   821  	s *Service
   822  }
   823  
   824  func NewReportsService(s *Service) *ReportsService {
   825  	rs := &ReportsService{s: s}
   826  	rs.CompatibleFields = NewReportsCompatibleFieldsService(s)
   827  	rs.Files = NewReportsFilesService(s)
   828  	return rs
   829  }
   830  
   831  type ReportsService struct {
   832  	s *Service
   833  
   834  	CompatibleFields *ReportsCompatibleFieldsService
   835  
   836  	Files *ReportsFilesService
   837  }
   838  
   839  func NewReportsCompatibleFieldsService(s *Service) *ReportsCompatibleFieldsService {
   840  	rs := &ReportsCompatibleFieldsService{s: s}
   841  	return rs
   842  }
   843  
   844  type ReportsCompatibleFieldsService struct {
   845  	s *Service
   846  }
   847  
   848  func NewReportsFilesService(s *Service) *ReportsFilesService {
   849  	rs := &ReportsFilesService{s: s}
   850  	return rs
   851  }
   852  
   853  type ReportsFilesService struct {
   854  	s *Service
   855  }
   856  
   857  func NewSitesService(s *Service) *SitesService {
   858  	rs := &SitesService{s: s}
   859  	return rs
   860  }
   861  
   862  type SitesService struct {
   863  	s *Service
   864  }
   865  
   866  func NewSizesService(s *Service) *SizesService {
   867  	rs := &SizesService{s: s}
   868  	return rs
   869  }
   870  
   871  type SizesService struct {
   872  	s *Service
   873  }
   874  
   875  func NewSubaccountsService(s *Service) *SubaccountsService {
   876  	rs := &SubaccountsService{s: s}
   877  	return rs
   878  }
   879  
   880  type SubaccountsService struct {
   881  	s *Service
   882  }
   883  
   884  func NewTargetableRemarketingListsService(s *Service) *TargetableRemarketingListsService {
   885  	rs := &TargetableRemarketingListsService{s: s}
   886  	return rs
   887  }
   888  
   889  type TargetableRemarketingListsService struct {
   890  	s *Service
   891  }
   892  
   893  func NewTargetingTemplatesService(s *Service) *TargetingTemplatesService {
   894  	rs := &TargetingTemplatesService{s: s}
   895  	return rs
   896  }
   897  
   898  type TargetingTemplatesService struct {
   899  	s *Service
   900  }
   901  
   902  func NewUserProfilesService(s *Service) *UserProfilesService {
   903  	rs := &UserProfilesService{s: s}
   904  	return rs
   905  }
   906  
   907  type UserProfilesService struct {
   908  	s *Service
   909  }
   910  
   911  func NewUserRolePermissionGroupsService(s *Service) *UserRolePermissionGroupsService {
   912  	rs := &UserRolePermissionGroupsService{s: s}
   913  	return rs
   914  }
   915  
   916  type UserRolePermissionGroupsService struct {
   917  	s *Service
   918  }
   919  
   920  func NewUserRolePermissionsService(s *Service) *UserRolePermissionsService {
   921  	rs := &UserRolePermissionsService{s: s}
   922  	return rs
   923  }
   924  
   925  type UserRolePermissionsService struct {
   926  	s *Service
   927  }
   928  
   929  func NewUserRolesService(s *Service) *UserRolesService {
   930  	rs := &UserRolesService{s: s}
   931  	return rs
   932  }
   933  
   934  type UserRolesService struct {
   935  	s *Service
   936  }
   937  
   938  func NewVideoFormatsService(s *Service) *VideoFormatsService {
   939  	rs := &VideoFormatsService{s: s}
   940  	return rs
   941  }
   942  
   943  type VideoFormatsService struct {
   944  	s *Service
   945  }
   946  
   947  // Account: Contains properties of a Campaign Manager account.
   948  type Account struct {
   949  	// AccountPermissionIds: Account permissions assigned to this account.
   950  	AccountPermissionIds googleapi.Int64s `json:"accountPermissionIds,omitempty"`
   951  	// AccountProfile: Profile for this account. This is a read-only field that can
   952  	// be left blank.
   953  	//
   954  	// Possible values:
   955  	//   "ACCOUNT_PROFILE_BASIC" - Basic profile has fewer features and lower CPM.
   956  	//   "ACCOUNT_PROFILE_STANDARD" - Standard profile as a higher CPM and all the
   957  	// features.
   958  	AccountProfile string `json:"accountProfile,omitempty"`
   959  	// Active: Whether this account is active.
   960  	Active bool `json:"active,omitempty"`
   961  	// ActiveAdsLimitTier: Maximum number of active ads allowed for this account.
   962  	//
   963  	// Possible values:
   964  	//   "ACTIVE_ADS_TIER_40K"
   965  	//   "ACTIVE_ADS_TIER_75K"
   966  	//   "ACTIVE_ADS_TIER_100K"
   967  	//   "ACTIVE_ADS_TIER_200K"
   968  	//   "ACTIVE_ADS_TIER_300K"
   969  	//   "ACTIVE_ADS_TIER_500K"
   970  	//   "ACTIVE_ADS_TIER_750K"
   971  	//   "ACTIVE_ADS_TIER_1M"
   972  	ActiveAdsLimitTier string `json:"activeAdsLimitTier,omitempty"`
   973  	// ActiveViewOptOut: Whether to serve creatives with Active View tags. If
   974  	// disabled, viewability data will not be available for any impressions.
   975  	ActiveViewOptOut bool `json:"activeViewOptOut,omitempty"`
   976  	// AvailablePermissionIds: User role permissions available to the user roles of
   977  	// this account.
   978  	AvailablePermissionIds googleapi.Int64s `json:"availablePermissionIds,omitempty"`
   979  	// CountryId: ID of the country associated with this account.
   980  	CountryId int64 `json:"countryId,omitempty,string"`
   981  	// CurrencyId: ID of currency associated with this account. This is a required
   982  	// field. Acceptable values are: - "1" for USD - "2" for GBP - "3" for ESP -
   983  	// "4" for SEK - "5" for CAD - "6" for JPY - "7" for DEM - "8" for AUD - "9"
   984  	// for FRF - "10" for ITL - "11" for DKK - "12" for NOK - "13" for FIM - "14"
   985  	// for ZAR - "15" for IEP - "16" for NLG - "17" for EUR - "18" for KRW - "19"
   986  	// for TWD - "20" for SGD - "21" for CNY - "22" for HKD - "23" for NZD - "24"
   987  	// for MYR - "25" for BRL - "26" for PTE - "28" for CLP - "29" for TRY - "30"
   988  	// for ARS - "31" for PEN - "32" for ILS - "33" for CHF - "34" for VEF - "35"
   989  	// for COP - "36" for GTQ - "37" for PLN - "39" for INR - "40" for THB - "41"
   990  	// for IDR - "42" for CZK - "43" for RON - "44" for HUF - "45" for RUB - "46"
   991  	// for AED - "47" for BGN - "48" for HRK - "49" for MXN - "50" for NGN - "51"
   992  	// for EGP
   993  	CurrencyId int64 `json:"currencyId,omitempty,string"`
   994  	// DefaultCreativeSizeId: Default placement dimensions for this account.
   995  	DefaultCreativeSizeId int64 `json:"defaultCreativeSizeId,omitempty,string"`
   996  	// Description: Description of this account.
   997  	Description string `json:"description,omitempty"`
   998  	// Id: ID of this account. This is a read-only, auto-generated field.
   999  	Id int64 `json:"id,omitempty,string"`
  1000  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1001  	// "dfareporting#account".
  1002  	Kind string `json:"kind,omitempty"`
  1003  	// Locale: Locale of this account. Acceptable values are: - "cs" (Czech) - "de"
  1004  	// (German) - "en" (English) - "en-GB" (English United Kingdom) - "es"
  1005  	// (Spanish) - "fr" (French) - "it" (Italian) - "ja" (Japanese) - "ko" (Korean)
  1006  	// - "pl" (Polish) - "pt-BR" (Portuguese Brazil) - "ru" (Russian) - "sv"
  1007  	// (Swedish) - "tr" (Turkish) - "zh-CN" (Chinese Simplified) - "zh-TW" (Chinese
  1008  	// Traditional)
  1009  	Locale string `json:"locale,omitempty"`
  1010  	// MaximumImageSize: Maximum image size allowed for this account, in kilobytes.
  1011  	// Value must be greater than or equal to 1.
  1012  	MaximumImageSize int64 `json:"maximumImageSize,omitempty,string"`
  1013  	// Name: Name of this account. This is a required field, and must be less than
  1014  	// 128 characters long and be globally unique.
  1015  	Name string `json:"name,omitempty"`
  1016  	// NielsenOcrEnabled: Whether campaigns created in this account will be enabled
  1017  	// for Nielsen OCR reach ratings by default.
  1018  	NielsenOcrEnabled bool `json:"nielsenOcrEnabled,omitempty"`
  1019  	// ReportsConfiguration: Reporting configuration of this account.
  1020  	ReportsConfiguration *ReportsConfiguration `json:"reportsConfiguration,omitempty"`
  1021  	// ShareReportsWithTwitter: Share Path to Conversion reports with Twitter.
  1022  	ShareReportsWithTwitter bool `json:"shareReportsWithTwitter,omitempty"`
  1023  	// TeaserSizeLimit: File size limit in kilobytes of Rich Media teaser
  1024  	// creatives. Acceptable values are 1 to 10240, inclusive.
  1025  	TeaserSizeLimit int64 `json:"teaserSizeLimit,omitempty,string"`
  1026  
  1027  	// ServerResponse contains the HTTP response code and headers from the server.
  1028  	googleapi.ServerResponse `json:"-"`
  1029  	// ForceSendFields is a list of field names (e.g. "AccountPermissionIds") to
  1030  	// unconditionally include in API requests. By default, fields with empty or
  1031  	// default values are omitted from API requests. See
  1032  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1033  	// details.
  1034  	ForceSendFields []string `json:"-"`
  1035  	// NullFields is a list of field names (e.g. "AccountPermissionIds") to include
  1036  	// in API requests with the JSON null value. By default, fields with empty
  1037  	// values are omitted from API requests. See
  1038  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1039  	NullFields []string `json:"-"`
  1040  }
  1041  
  1042  func (s *Account) MarshalJSON() ([]byte, error) {
  1043  	type NoMethod Account
  1044  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1045  }
  1046  
  1047  // AccountActiveAdSummary: Gets a summary of active ads in an account.
  1048  type AccountActiveAdSummary struct {
  1049  	// AccountId: ID of the account.
  1050  	AccountId int64 `json:"accountId,omitempty,string"`
  1051  	// ActiveAds: Ads that have been activated for the account
  1052  	ActiveAds int64 `json:"activeAds,omitempty,string"`
  1053  	// ActiveAdsLimitTier: Maximum number of active ads allowed for the account.
  1054  	//
  1055  	// Possible values:
  1056  	//   "ACTIVE_ADS_TIER_40K"
  1057  	//   "ACTIVE_ADS_TIER_75K"
  1058  	//   "ACTIVE_ADS_TIER_100K"
  1059  	//   "ACTIVE_ADS_TIER_200K"
  1060  	//   "ACTIVE_ADS_TIER_300K"
  1061  	//   "ACTIVE_ADS_TIER_500K"
  1062  	//   "ACTIVE_ADS_TIER_750K"
  1063  	//   "ACTIVE_ADS_TIER_1M"
  1064  	ActiveAdsLimitTier string `json:"activeAdsLimitTier,omitempty"`
  1065  	// AvailableAds: Ads that can be activated for the account.
  1066  	AvailableAds int64 `json:"availableAds,omitempty,string"`
  1067  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1068  	// "dfareporting#accountActiveAdSummary".
  1069  	Kind string `json:"kind,omitempty"`
  1070  
  1071  	// ServerResponse contains the HTTP response code and headers from the server.
  1072  	googleapi.ServerResponse `json:"-"`
  1073  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  1074  	// unconditionally include in API requests. By default, fields with empty or
  1075  	// default values are omitted from API requests. See
  1076  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1077  	// details.
  1078  	ForceSendFields []string `json:"-"`
  1079  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  1080  	// requests with the JSON null value. By default, fields with empty values are
  1081  	// omitted from API requests. See
  1082  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1083  	NullFields []string `json:"-"`
  1084  }
  1085  
  1086  func (s *AccountActiveAdSummary) MarshalJSON() ([]byte, error) {
  1087  	type NoMethod AccountActiveAdSummary
  1088  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1089  }
  1090  
  1091  // AccountPermission: AccountPermissions contains information about a
  1092  // particular account permission. Some features of Campaign Manager require an
  1093  // account permission to be present in the account.
  1094  type AccountPermission struct {
  1095  	// AccountProfiles: Account profiles associated with this account permission.
  1096  	// Possible values are: - "ACCOUNT_PROFILE_BASIC" - "ACCOUNT_PROFILE_STANDARD"
  1097  	//
  1098  	// Possible values:
  1099  	//   "ACCOUNT_PROFILE_BASIC" - Basic profile has fewer features and lower CPM.
  1100  	//   "ACCOUNT_PROFILE_STANDARD" - Standard profile as a higher CPM and all the
  1101  	// features.
  1102  	AccountProfiles []string `json:"accountProfiles,omitempty"`
  1103  	// Id: ID of this account permission.
  1104  	Id int64 `json:"id,omitempty,string"`
  1105  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1106  	// "dfareporting#accountPermission".
  1107  	Kind string `json:"kind,omitempty"`
  1108  	// Level: Administrative level required to enable this account permission.
  1109  	//
  1110  	// Possible values:
  1111  	//   "USER"
  1112  	//   "ADMINISTRATOR"
  1113  	Level string `json:"level,omitempty"`
  1114  	// Name: Name of this account permission.
  1115  	Name string `json:"name,omitempty"`
  1116  	// PermissionGroupId: Permission group of this account permission.
  1117  	PermissionGroupId int64 `json:"permissionGroupId,omitempty,string"`
  1118  
  1119  	// ServerResponse contains the HTTP response code and headers from the server.
  1120  	googleapi.ServerResponse `json:"-"`
  1121  	// ForceSendFields is a list of field names (e.g. "AccountProfiles") to
  1122  	// unconditionally include in API requests. By default, fields with empty or
  1123  	// default values are omitted from API requests. See
  1124  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1125  	// details.
  1126  	ForceSendFields []string `json:"-"`
  1127  	// NullFields is a list of field names (e.g. "AccountProfiles") to include in
  1128  	// API requests with the JSON null value. By default, fields with empty values
  1129  	// are omitted from API requests. See
  1130  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1131  	NullFields []string `json:"-"`
  1132  }
  1133  
  1134  func (s *AccountPermission) MarshalJSON() ([]byte, error) {
  1135  	type NoMethod AccountPermission
  1136  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1137  }
  1138  
  1139  // AccountPermissionGroup: AccountPermissionGroups contains a mapping of
  1140  // permission group IDs to names. A permission group is a grouping of account
  1141  // permissions.
  1142  type AccountPermissionGroup struct {
  1143  	// Id: ID of this account permission group.
  1144  	Id int64 `json:"id,omitempty,string"`
  1145  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1146  	// "dfareporting#accountPermissionGroup".
  1147  	Kind string `json:"kind,omitempty"`
  1148  	// Name: Name of this account permission group.
  1149  	Name string `json:"name,omitempty"`
  1150  
  1151  	// ServerResponse contains the HTTP response code and headers from the server.
  1152  	googleapi.ServerResponse `json:"-"`
  1153  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  1154  	// include in API requests. By default, fields with empty or default values are
  1155  	// omitted from API requests. See
  1156  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1157  	// details.
  1158  	ForceSendFields []string `json:"-"`
  1159  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  1160  	// with the JSON null value. By default, fields with empty values are omitted
  1161  	// from API requests. See
  1162  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1163  	NullFields []string `json:"-"`
  1164  }
  1165  
  1166  func (s *AccountPermissionGroup) MarshalJSON() ([]byte, error) {
  1167  	type NoMethod AccountPermissionGroup
  1168  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1169  }
  1170  
  1171  // AccountPermissionGroupsListResponse: Account Permission Group List Response
  1172  type AccountPermissionGroupsListResponse struct {
  1173  	// AccountPermissionGroups: Account permission group collection.
  1174  	AccountPermissionGroups []*AccountPermissionGroup `json:"accountPermissionGroups,omitempty"`
  1175  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1176  	// "dfareporting#accountPermissionGroupGroupsListResponse".
  1177  	Kind string `json:"kind,omitempty"`
  1178  
  1179  	// ServerResponse contains the HTTP response code and headers from the server.
  1180  	googleapi.ServerResponse `json:"-"`
  1181  	// ForceSendFields is a list of field names (e.g. "AccountPermissionGroups") to
  1182  	// unconditionally include in API requests. By default, fields with empty or
  1183  	// default values are omitted from API requests. See
  1184  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1185  	// details.
  1186  	ForceSendFields []string `json:"-"`
  1187  	// NullFields is a list of field names (e.g. "AccountPermissionGroups") to
  1188  	// include in API requests with the JSON null value. By default, fields with
  1189  	// empty values are omitted from API requests. See
  1190  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1191  	NullFields []string `json:"-"`
  1192  }
  1193  
  1194  func (s *AccountPermissionGroupsListResponse) MarshalJSON() ([]byte, error) {
  1195  	type NoMethod AccountPermissionGroupsListResponse
  1196  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1197  }
  1198  
  1199  // AccountPermissionsListResponse: Account Permission List Response
  1200  type AccountPermissionsListResponse struct {
  1201  	// AccountPermissions: Account permission collection.
  1202  	AccountPermissions []*AccountPermission `json:"accountPermissions,omitempty"`
  1203  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1204  	// "dfareporting#accountPermissionsListResponse".
  1205  	Kind string `json:"kind,omitempty"`
  1206  
  1207  	// ServerResponse contains the HTTP response code and headers from the server.
  1208  	googleapi.ServerResponse `json:"-"`
  1209  	// ForceSendFields is a list of field names (e.g. "AccountPermissions") to
  1210  	// unconditionally include in API requests. By default, fields with empty or
  1211  	// default values are omitted from API requests. See
  1212  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1213  	// details.
  1214  	ForceSendFields []string `json:"-"`
  1215  	// NullFields is a list of field names (e.g. "AccountPermissions") to include
  1216  	// in API requests with the JSON null value. By default, fields with empty
  1217  	// values are omitted from API requests. See
  1218  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1219  	NullFields []string `json:"-"`
  1220  }
  1221  
  1222  func (s *AccountPermissionsListResponse) MarshalJSON() ([]byte, error) {
  1223  	type NoMethod AccountPermissionsListResponse
  1224  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1225  }
  1226  
  1227  // AccountUserProfile: AccountUserProfiles contains properties of a Campaign
  1228  // Manager user profile. This resource is specifically for managing user
  1229  // profiles, whereas UserProfiles is for accessing the API.
  1230  type AccountUserProfile struct {
  1231  	// AccountId: Account ID of the user profile. This is a read-only field that
  1232  	// can be left blank.
  1233  	AccountId int64 `json:"accountId,omitempty,string"`
  1234  	// Active: Whether this user profile is active. This defaults to false, and
  1235  	// must be set true on insert for the user profile to be usable.
  1236  	Active bool `json:"active,omitempty"`
  1237  	// AdvertiserFilter: Filter that describes which advertisers are visible to the
  1238  	// user profile.
  1239  	AdvertiserFilter *ObjectFilter `json:"advertiserFilter,omitempty"`
  1240  	// CampaignFilter: Filter that describes which campaigns are visible to the
  1241  	// user profile.
  1242  	CampaignFilter *ObjectFilter `json:"campaignFilter,omitempty"`
  1243  	// Comments: Comments for this user profile.
  1244  	Comments string `json:"comments,omitempty"`
  1245  	// Email: Email of the user profile. The email addresss must be linked to a
  1246  	// Google Account. This field is required on insertion and is read-only after
  1247  	// insertion.
  1248  	Email string `json:"email,omitempty"`
  1249  	// Id: ID of the user profile. This is a read-only, auto-generated field.
  1250  	Id int64 `json:"id,omitempty,string"`
  1251  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1252  	// "dfareporting#accountUserProfile".
  1253  	Kind string `json:"kind,omitempty"`
  1254  	// Locale: Locale of the user profile. This is a required field. Acceptable
  1255  	// values are: - "cs" (Czech) - "de" (German) - "en" (English) - "en-GB"
  1256  	// (English United Kingdom) - "es" (Spanish) - "fr" (French) - "it" (Italian) -
  1257  	// "ja" (Japanese) - "ko" (Korean) - "pl" (Polish) - "pt-BR" (Portuguese
  1258  	// Brazil) - "ru" (Russian) - "sv" (Swedish) - "tr" (Turkish) - "zh-CN"
  1259  	// (Chinese Simplified) - "zh-TW" (Chinese Traditional)
  1260  	Locale string `json:"locale,omitempty"`
  1261  	// Name: Name of the user profile. This is a required field. Must be less than
  1262  	// 64 characters long, must be globally unique, and cannot contain whitespace
  1263  	// or any of the following characters: "&;<>"#%,".
  1264  	Name string `json:"name,omitempty"`
  1265  	// SiteFilter: Filter that describes which sites are visible to the user
  1266  	// profile.
  1267  	SiteFilter *ObjectFilter `json:"siteFilter,omitempty"`
  1268  	// SubaccountId: Subaccount ID of the user profile. This is a read-only field
  1269  	// that can be left blank.
  1270  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  1271  	// TraffickerType: Trafficker type of this user profile. This is a read-only
  1272  	// field.
  1273  	//
  1274  	// Possible values:
  1275  	//   "INTERNAL_NON_TRAFFICKER" - Internal profile, but is not a trafficker.
  1276  	//   "INTERNAL_TRAFFICKER" - Internal profile who is a trafficker.
  1277  	//   "EXTERNAL_TRAFFICKER" - External profile who is a trafficker.
  1278  	TraffickerType string `json:"traffickerType,omitempty"`
  1279  	// UserAccessType: User type of the user profile. This is a read-only field
  1280  	// that can be left blank.
  1281  	//
  1282  	// Possible values:
  1283  	//   "NORMAL_USER" - Normal user managed by the customer.
  1284  	//   "SUPER_USER" - Super user managed by internal support teams.
  1285  	//   "INTERNAL_ADMINISTRATOR" - Internal administrator having super user access
  1286  	// to only a specific set of networks.
  1287  	//   "READ_ONLY_SUPER_USER" - A super-user without permission to mutate any
  1288  	// data.
  1289  	UserAccessType string `json:"userAccessType,omitempty"`
  1290  	// UserRoleFilter: Filter that describes which user roles are visible to the
  1291  	// user profile.
  1292  	UserRoleFilter *ObjectFilter `json:"userRoleFilter,omitempty"`
  1293  	// UserRoleId: User role ID of the user profile. This is a required field.
  1294  	UserRoleId int64 `json:"userRoleId,omitempty,string"`
  1295  
  1296  	// ServerResponse contains the HTTP response code and headers from the server.
  1297  	googleapi.ServerResponse `json:"-"`
  1298  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  1299  	// unconditionally include in API requests. By default, fields with empty or
  1300  	// default values are omitted from API requests. See
  1301  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1302  	// details.
  1303  	ForceSendFields []string `json:"-"`
  1304  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  1305  	// requests with the JSON null value. By default, fields with empty values are
  1306  	// omitted from API requests. See
  1307  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1308  	NullFields []string `json:"-"`
  1309  }
  1310  
  1311  func (s *AccountUserProfile) MarshalJSON() ([]byte, error) {
  1312  	type NoMethod AccountUserProfile
  1313  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1314  }
  1315  
  1316  // AccountUserProfilesListResponse: Account User Profile List Response
  1317  type AccountUserProfilesListResponse struct {
  1318  	// AccountUserProfiles: Account user profile collection.
  1319  	AccountUserProfiles []*AccountUserProfile `json:"accountUserProfiles,omitempty"`
  1320  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1321  	// "dfareporting#accountUserProfilesListResponse".
  1322  	Kind string `json:"kind,omitempty"`
  1323  	// NextPageToken: Pagination token to be used for the next list operation.
  1324  	NextPageToken string `json:"nextPageToken,omitempty"`
  1325  
  1326  	// ServerResponse contains the HTTP response code and headers from the server.
  1327  	googleapi.ServerResponse `json:"-"`
  1328  	// ForceSendFields is a list of field names (e.g. "AccountUserProfiles") to
  1329  	// unconditionally include in API requests. By default, fields with empty or
  1330  	// default values are omitted from API requests. See
  1331  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1332  	// details.
  1333  	ForceSendFields []string `json:"-"`
  1334  	// NullFields is a list of field names (e.g. "AccountUserProfiles") to include
  1335  	// in API requests with the JSON null value. By default, fields with empty
  1336  	// values are omitted from API requests. See
  1337  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1338  	NullFields []string `json:"-"`
  1339  }
  1340  
  1341  func (s *AccountUserProfilesListResponse) MarshalJSON() ([]byte, error) {
  1342  	type NoMethod AccountUserProfilesListResponse
  1343  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1344  }
  1345  
  1346  // AccountsListResponse: Account List Response
  1347  type AccountsListResponse struct {
  1348  	// Accounts: Account collection.
  1349  	Accounts []*Account `json:"accounts,omitempty"`
  1350  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1351  	// "dfareporting#accountsListResponse".
  1352  	Kind string `json:"kind,omitempty"`
  1353  	// NextPageToken: Pagination token to be used for the next list operation.
  1354  	NextPageToken string `json:"nextPageToken,omitempty"`
  1355  
  1356  	// ServerResponse contains the HTTP response code and headers from the server.
  1357  	googleapi.ServerResponse `json:"-"`
  1358  	// ForceSendFields is a list of field names (e.g. "Accounts") to
  1359  	// unconditionally include in API requests. By default, fields with empty or
  1360  	// default values are omitted from API requests. See
  1361  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1362  	// details.
  1363  	ForceSendFields []string `json:"-"`
  1364  	// NullFields is a list of field names (e.g. "Accounts") to include in API
  1365  	// requests with the JSON null value. By default, fields with empty values are
  1366  	// omitted from API requests. See
  1367  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1368  	NullFields []string `json:"-"`
  1369  }
  1370  
  1371  func (s *AccountsListResponse) MarshalJSON() ([]byte, error) {
  1372  	type NoMethod AccountsListResponse
  1373  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1374  }
  1375  
  1376  // Activities: Represents an activity group.
  1377  type Activities struct {
  1378  	// Filters: List of activity filters. The dimension values need to be all
  1379  	// either of type "dfa:activity" or "dfa:activityGroup".
  1380  	Filters []*DimensionValue `json:"filters,omitempty"`
  1381  	// Kind: The kind of resource this is, in this case dfareporting#activities.
  1382  	Kind string `json:"kind,omitempty"`
  1383  	// MetricNames: List of names of floodlight activity metrics.
  1384  	MetricNames []string `json:"metricNames,omitempty"`
  1385  	// ForceSendFields is a list of field names (e.g. "Filters") to unconditionally
  1386  	// include in API requests. By default, fields with empty or default values are
  1387  	// omitted from API requests. See
  1388  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1389  	// details.
  1390  	ForceSendFields []string `json:"-"`
  1391  	// NullFields is a list of field names (e.g. "Filters") to include in API
  1392  	// requests with the JSON null value. By default, fields with empty values are
  1393  	// omitted from API requests. See
  1394  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1395  	NullFields []string `json:"-"`
  1396  }
  1397  
  1398  func (s *Activities) MarshalJSON() ([]byte, error) {
  1399  	type NoMethod Activities
  1400  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1401  }
  1402  
  1403  // Ad: Contains properties of a Campaign Manager ad.
  1404  type Ad struct {
  1405  	// AccountId: Account ID of this ad. This is a read-only field that can be left
  1406  	// blank.
  1407  	AccountId int64 `json:"accountId,omitempty,string"`
  1408  	// Active: Whether this ad is active. When true, archived must be false.
  1409  	Active bool `json:"active,omitempty"`
  1410  	// AdvertiserId: Advertiser ID of this ad. This is a required field on
  1411  	// insertion.
  1412  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  1413  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
  1414  	// This is a read-only, auto-generated field.
  1415  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  1416  	// Archived: Whether this ad is archived. When true, active must be false.
  1417  	Archived bool `json:"archived,omitempty"`
  1418  	// AudienceSegmentId: Audience segment ID that is being targeted for this ad.
  1419  	// Applicable when type is AD_SERVING_STANDARD_AD.
  1420  	AudienceSegmentId int64 `json:"audienceSegmentId,omitempty,string"`
  1421  	// CampaignId: Campaign ID of this ad. This is a required field on insertion.
  1422  	CampaignId int64 `json:"campaignId,omitempty,string"`
  1423  	// CampaignIdDimensionValue: Dimension value for the ID of the campaign. This
  1424  	// is a read-only, auto-generated field.
  1425  	CampaignIdDimensionValue *DimensionValue `json:"campaignIdDimensionValue,omitempty"`
  1426  	// ClickThroughUrl: Click-through URL for this ad. This is a required field on
  1427  	// insertion. Applicable when type is AD_SERVING_CLICK_TRACKER.
  1428  	ClickThroughUrl *ClickThroughUrl `json:"clickThroughUrl,omitempty"`
  1429  	// ClickThroughUrlSuffixProperties: Click-through URL suffix properties for
  1430  	// this ad. Applies to the URL in the ad or (if overriding ad properties) the
  1431  	// URL in the creative.
  1432  	ClickThroughUrlSuffixProperties *ClickThroughUrlSuffixProperties `json:"clickThroughUrlSuffixProperties,omitempty"`
  1433  	// Comments: Comments for this ad.
  1434  	Comments string `json:"comments,omitempty"`
  1435  	// Compatibility: Compatibility of this ad. Applicable when type is
  1436  	// AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either
  1437  	// rendering on desktop or on mobile devices or in mobile apps for regular or
  1438  	// interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for
  1439  	// existing default ads. New mobile placements must be assigned DISPLAY or
  1440  	// DISPLAY_INTERSTITIAL and default ads created for those placements will be
  1441  	// limited to those compatibility types. IN_STREAM_VIDEO refers to rendering
  1442  	// in-stream video ads developed with the VAST standard.
  1443  	//
  1444  	// Possible values:
  1445  	//   "DISPLAY"
  1446  	//   "DISPLAY_INTERSTITIAL"
  1447  	//   "APP" - Deprecated enum value. No longer supported.
  1448  	//   "APP_INTERSTITIAL" - Deprecated enum value. No longer supported.
  1449  	//   "IN_STREAM_VIDEO"
  1450  	//   "IN_STREAM_AUDIO"
  1451  	Compatibility string `json:"compatibility,omitempty"`
  1452  	// CreateInfo: Information about the creation of this ad. This is a read-only
  1453  	// field.
  1454  	CreateInfo *LastModifiedInfo `json:"createInfo,omitempty"`
  1455  	// CreativeGroupAssignments: Creative group assignments for this ad. Applicable
  1456  	// when type is AD_SERVING_CLICK_TRACKER. Only one assignment per creative
  1457  	// group number is allowed for a maximum of two assignments.
  1458  	CreativeGroupAssignments []*CreativeGroupAssignment `json:"creativeGroupAssignments,omitempty"`
  1459  	// CreativeRotation: Creative rotation for this ad. Applicable when type is
  1460  	// AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or AD_SERVING_TRACKING. When
  1461  	// type is AD_SERVING_DEFAULT_AD, this field should have exactly one
  1462  	// creativeAssignment .
  1463  	CreativeRotation *CreativeRotation `json:"creativeRotation,omitempty"`
  1464  	// DayPartTargeting: Time and day targeting information for this ad. This field
  1465  	// must be left blank if the ad is using a targeting template. Applicable when
  1466  	// type is AD_SERVING_STANDARD_AD.
  1467  	DayPartTargeting *DayPartTargeting `json:"dayPartTargeting,omitempty"`
  1468  	// DefaultClickThroughEventTagProperties: Default click-through event tag
  1469  	// properties for this ad.
  1470  	DefaultClickThroughEventTagProperties *DefaultClickThroughEventTagProperties `json:"defaultClickThroughEventTagProperties,omitempty"`
  1471  	// DeliverySchedule: Delivery schedule information for this ad. Applicable when
  1472  	// type is AD_SERVING_STANDARD_AD or AD_SERVING_TRACKING. This field along with
  1473  	// subfields priority and impressionRatio are required on insertion when type
  1474  	// is AD_SERVING_STANDARD_AD.
  1475  	DeliverySchedule *DeliverySchedule `json:"deliverySchedule,omitempty"`
  1476  	// DynamicClickTracker: Whether this ad is a dynamic click tracker. Applicable
  1477  	// when type is AD_SERVING_CLICK_TRACKER. This is a required field on insert,
  1478  	// and is read-only after insert.
  1479  	DynamicClickTracker bool   `json:"dynamicClickTracker,omitempty"`
  1480  	EndTime             string `json:"endTime,omitempty"`
  1481  	// EventTagOverrides: Event tag overrides for this ad.
  1482  	EventTagOverrides []*EventTagOverride `json:"eventTagOverrides,omitempty"`
  1483  	// GeoTargeting: Geographical targeting information for this ad. This field
  1484  	// must be left blank if the ad is using a targeting template. Applicable when
  1485  	// type is AD_SERVING_STANDARD_AD.
  1486  	GeoTargeting *GeoTargeting `json:"geoTargeting,omitempty"`
  1487  	// Id: ID of this ad. This is a read-only, auto-generated field.
  1488  	Id int64 `json:"id,omitempty,string"`
  1489  	// IdDimensionValue: Dimension value for the ID of this ad. This is a
  1490  	// read-only, auto-generated field.
  1491  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  1492  	// KeyValueTargetingExpression: Key-value targeting information for this ad.
  1493  	// This field must be left blank if the ad is using a targeting template.
  1494  	// Applicable when type is AD_SERVING_STANDARD_AD.
  1495  	KeyValueTargetingExpression *KeyValueTargetingExpression `json:"keyValueTargetingExpression,omitempty"`
  1496  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1497  	// "dfareporting#ad".
  1498  	Kind string `json:"kind,omitempty"`
  1499  	// LanguageTargeting: Language targeting information for this ad. This field
  1500  	// must be left blank if the ad is using a targeting template. Applicable when
  1501  	// type is AD_SERVING_STANDARD_AD.
  1502  	LanguageTargeting *LanguageTargeting `json:"languageTargeting,omitempty"`
  1503  	// LastModifiedInfo: Information about the most recent modification of this ad.
  1504  	// This is a read-only field.
  1505  	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
  1506  	// Name: Name of this ad. This is a required field and must be less than 256
  1507  	// characters long.
  1508  	Name string `json:"name,omitempty"`
  1509  	// PlacementAssignments: Placement assignments for this ad.
  1510  	PlacementAssignments []*PlacementAssignment `json:"placementAssignments,omitempty"`
  1511  	// RemarketingListExpression: Remarketing list targeting expression for this
  1512  	// ad. This field must be left blank if the ad is using a targeting template.
  1513  	// Applicable when type is AD_SERVING_STANDARD_AD.
  1514  	RemarketingListExpression *ListTargetingExpression `json:"remarketingListExpression,omitempty"`
  1515  	// Size: Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD.
  1516  	Size *Size `json:"size,omitempty"`
  1517  	// SslCompliant: Whether this ad is ssl compliant. This is a read-only field
  1518  	// that is auto-generated when the ad is inserted or updated.
  1519  	SslCompliant bool `json:"sslCompliant,omitempty"`
  1520  	// SslRequired: Whether this ad requires ssl. This is a read-only field that is
  1521  	// auto-generated when the ad is inserted or updated.
  1522  	SslRequired bool   `json:"sslRequired,omitempty"`
  1523  	StartTime   string `json:"startTime,omitempty"`
  1524  	// SubaccountId: Subaccount ID of this ad. This is a read-only field that can
  1525  	// be left blank.
  1526  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  1527  	// TargetingTemplateId: Targeting template ID, used to apply preconfigured
  1528  	// targeting information to this ad. This cannot be set while any of
  1529  	// dayPartTargeting, geoTargeting, keyValueTargetingExpression,
  1530  	// languageTargeting, remarketingListExpression, or technologyTargeting are
  1531  	// set. Applicable when type is AD_SERVING_STANDARD_AD.
  1532  	TargetingTemplateId int64 `json:"targetingTemplateId,omitempty,string"`
  1533  	// TechnologyTargeting: Technology platform targeting information for this ad.
  1534  	// This field must be left blank if the ad is using a targeting template.
  1535  	// Applicable when type is AD_SERVING_STANDARD_AD.
  1536  	TechnologyTargeting *TechnologyTargeting `json:"technologyTargeting,omitempty"`
  1537  	// Type: Type of ad. This is a required field on insertion. Note that default
  1538  	// ads ( AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative
  1539  	// resource).
  1540  	//
  1541  	// Possible values:
  1542  	//   "AD_SERVING_STANDARD_AD"
  1543  	//   "AD_SERVING_DEFAULT_AD"
  1544  	//   "AD_SERVING_CLICK_TRACKER"
  1545  	//   "AD_SERVING_TRACKING"
  1546  	//   "AD_SERVING_BRAND_SAFE_AD"
  1547  	Type string `json:"type,omitempty"`
  1548  
  1549  	// ServerResponse contains the HTTP response code and headers from the server.
  1550  	googleapi.ServerResponse `json:"-"`
  1551  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  1552  	// unconditionally include in API requests. By default, fields with empty or
  1553  	// default values are omitted from API requests. See
  1554  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1555  	// details.
  1556  	ForceSendFields []string `json:"-"`
  1557  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  1558  	// requests with the JSON null value. By default, fields with empty values are
  1559  	// omitted from API requests. See
  1560  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1561  	NullFields []string `json:"-"`
  1562  }
  1563  
  1564  func (s *Ad) MarshalJSON() ([]byte, error) {
  1565  	type NoMethod Ad
  1566  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1567  }
  1568  
  1569  // AdBlockingConfiguration: Campaign ad blocking settings.
  1570  type AdBlockingConfiguration struct {
  1571  	// Enabled: Whether this campaign has enabled ad blocking. When true, ad
  1572  	// blocking is enabled for placements in the campaign, but this may be
  1573  	// overridden by site and placement settings. When false, ad blocking is
  1574  	// disabled for all placements under the campaign, regardless of site and
  1575  	// placement settings.
  1576  	Enabled bool `json:"enabled,omitempty"`
  1577  	// ForceSendFields is a list of field names (e.g. "Enabled") to unconditionally
  1578  	// include in API requests. By default, fields with empty or default values are
  1579  	// omitted from API requests. See
  1580  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1581  	// details.
  1582  	ForceSendFields []string `json:"-"`
  1583  	// NullFields is a list of field names (e.g. "Enabled") to include in API
  1584  	// requests with the JSON null value. By default, fields with empty values are
  1585  	// omitted from API requests. See
  1586  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1587  	NullFields []string `json:"-"`
  1588  }
  1589  
  1590  func (s *AdBlockingConfiguration) MarshalJSON() ([]byte, error) {
  1591  	type NoMethod AdBlockingConfiguration
  1592  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1593  }
  1594  
  1595  // AdSlot: Ad Slot
  1596  type AdSlot struct {
  1597  	// Comment: Comment for this ad slot.
  1598  	Comment string `json:"comment,omitempty"`
  1599  	// Compatibility: Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer
  1600  	// to rendering either on desktop, mobile devices or in mobile apps for regular
  1601  	// or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering
  1602  	// in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads
  1603  	// developed with the VAST standard.
  1604  	//
  1605  	// Possible values:
  1606  	//   "DISPLAY"
  1607  	//   "DISPLAY_INTERSTITIAL"
  1608  	//   "APP" - Deprecated enum value. No longer supported.
  1609  	//   "APP_INTERSTITIAL" - Deprecated enum value. No longer supported.
  1610  	//   "IN_STREAM_VIDEO"
  1611  	//   "IN_STREAM_AUDIO"
  1612  	Compatibility string `json:"compatibility,omitempty"`
  1613  	// Height: Height of this ad slot.
  1614  	Height int64 `json:"height,omitempty,string"`
  1615  	// LinkedPlacementId: ID of the placement from an external platform that is
  1616  	// linked to this ad slot.
  1617  	LinkedPlacementId int64 `json:"linkedPlacementId,omitempty,string"`
  1618  	// Name: Name of this ad slot.
  1619  	Name string `json:"name,omitempty"`
  1620  	// PaymentSourceType: Payment source type of this ad slot.
  1621  	//
  1622  	// Possible values:
  1623  	//   "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID"
  1624  	//   "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID"
  1625  	PaymentSourceType string `json:"paymentSourceType,omitempty"`
  1626  	// Primary: Primary ad slot of a roadblock inventory item.
  1627  	Primary bool `json:"primary,omitempty"`
  1628  	// Width: Width of this ad slot.
  1629  	Width int64 `json:"width,omitempty,string"`
  1630  	// ForceSendFields is a list of field names (e.g. "Comment") to unconditionally
  1631  	// include in API requests. By default, fields with empty or default values are
  1632  	// omitted from API requests. See
  1633  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1634  	// details.
  1635  	ForceSendFields []string `json:"-"`
  1636  	// NullFields is a list of field names (e.g. "Comment") to include in API
  1637  	// requests with the JSON null value. By default, fields with empty values are
  1638  	// omitted from API requests. See
  1639  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1640  	NullFields []string `json:"-"`
  1641  }
  1642  
  1643  func (s *AdSlot) MarshalJSON() ([]byte, error) {
  1644  	type NoMethod AdSlot
  1645  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1646  }
  1647  
  1648  // AdsListResponse: Ad List Response
  1649  type AdsListResponse struct {
  1650  	// Ads: Ad collection.
  1651  	Ads []*Ad `json:"ads,omitempty"`
  1652  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1653  	// "dfareporting#adsListResponse".
  1654  	Kind string `json:"kind,omitempty"`
  1655  	// NextPageToken: Pagination token to be used for the next list operation.
  1656  	NextPageToken string `json:"nextPageToken,omitempty"`
  1657  
  1658  	// ServerResponse contains the HTTP response code and headers from the server.
  1659  	googleapi.ServerResponse `json:"-"`
  1660  	// ForceSendFields is a list of field names (e.g. "Ads") to unconditionally
  1661  	// include in API requests. By default, fields with empty or default values are
  1662  	// omitted from API requests. See
  1663  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1664  	// details.
  1665  	ForceSendFields []string `json:"-"`
  1666  	// NullFields is a list of field names (e.g. "Ads") to include in API requests
  1667  	// with the JSON null value. By default, fields with empty values are omitted
  1668  	// from API requests. See
  1669  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1670  	NullFields []string `json:"-"`
  1671  }
  1672  
  1673  func (s *AdsListResponse) MarshalJSON() ([]byte, error) {
  1674  	type NoMethod AdsListResponse
  1675  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1676  }
  1677  
  1678  // Advertiser: Contains properties of a Campaign Manager advertiser.
  1679  type Advertiser struct {
  1680  	// AccountId: Account ID of this advertiser.This is a read-only field that can
  1681  	// be left blank.
  1682  	AccountId int64 `json:"accountId,omitempty,string"`
  1683  	// AdvertiserGroupId: ID of the advertiser group this advertiser belongs to.
  1684  	// You can group advertisers for reporting purposes, allowing you to see
  1685  	// aggregated information for all advertisers in each group.
  1686  	AdvertiserGroupId int64 `json:"advertiserGroupId,omitempty,string"`
  1687  	// ClickThroughUrlSuffix: Suffix added to click-through URL of ad creative
  1688  	// associations under this advertiser. Must be less than 129 characters long.
  1689  	ClickThroughUrlSuffix string `json:"clickThroughUrlSuffix,omitempty"`
  1690  	// DefaultClickThroughEventTagId: ID of the click-through event tag to apply by
  1691  	// default to the landing pages of this advertiser's campaigns.
  1692  	DefaultClickThroughEventTagId int64 `json:"defaultClickThroughEventTagId,omitempty,string"`
  1693  	// DefaultEmail: Default email address used in sender field for tag emails.
  1694  	DefaultEmail string `json:"defaultEmail,omitempty"`
  1695  	// FloodlightConfigurationId: Floodlight configuration ID of this advertiser.
  1696  	// The floodlight configuration ID will be created automatically, so on insert
  1697  	// this field should be left blank. This field can be set to another
  1698  	// advertiser's floodlight configuration ID in order to share that advertiser's
  1699  	// floodlight configuration with this advertiser, so long as: - This
  1700  	// advertiser's original floodlight configuration is not already associated
  1701  	// with floodlight activities or floodlight activity groups. - This
  1702  	// advertiser's original floodlight configuration is not already shared with
  1703  	// another advertiser.
  1704  	FloodlightConfigurationId int64 `json:"floodlightConfigurationId,omitempty,string"`
  1705  	// FloodlightConfigurationIdDimensionValue: Dimension value for the ID of the
  1706  	// floodlight configuration. This is a read-only, auto-generated field.
  1707  	FloodlightConfigurationIdDimensionValue *DimensionValue `json:"floodlightConfigurationIdDimensionValue,omitempty"`
  1708  	// Id: ID of this advertiser. This is a read-only, auto-generated field.
  1709  	Id int64 `json:"id,omitempty,string"`
  1710  	// IdDimensionValue: Dimension value for the ID of this advertiser. This is a
  1711  	// read-only, auto-generated field.
  1712  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  1713  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1714  	// "dfareporting#advertiser".
  1715  	Kind string `json:"kind,omitempty"`
  1716  	// MeasurementPartnerLink: Measurement partner advertiser link for tag
  1717  	// wrapping.
  1718  	MeasurementPartnerLink *MeasurementPartnerAdvertiserLink `json:"measurementPartnerLink,omitempty"`
  1719  	// Name: Name of this advertiser. This is a required field and must be less
  1720  	// than 256 characters long and unique among advertisers of the same account.
  1721  	Name string `json:"name,omitempty"`
  1722  	// OriginalFloodlightConfigurationId: Original floodlight configuration before
  1723  	// any sharing occurred. Set the floodlightConfigurationId of this advertiser
  1724  	// to originalFloodlightConfigurationId to unshare the advertiser's current
  1725  	// floodlight configuration. You cannot unshare an advertiser's floodlight
  1726  	// configuration if the shared configuration has activities associated with any
  1727  	// campaign or placement.
  1728  	OriginalFloodlightConfigurationId int64 `json:"originalFloodlightConfigurationId,omitempty,string"`
  1729  	// Status: Status of this advertiser.
  1730  	//
  1731  	// Possible values:
  1732  	//   "APPROVED" - Approved (ads can deliver)
  1733  	//   "ON_HOLD" - On-hold (all ads are stopped)
  1734  	Status string `json:"status,omitempty"`
  1735  	// SubaccountId: Subaccount ID of this advertiser.This is a read-only field
  1736  	// that can be left blank.
  1737  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  1738  	// Suspended: Suspension status of this advertiser.
  1739  	Suspended bool `json:"suspended,omitempty"`
  1740  
  1741  	// ServerResponse contains the HTTP response code and headers from the server.
  1742  	googleapi.ServerResponse `json:"-"`
  1743  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  1744  	// unconditionally include in API requests. By default, fields with empty or
  1745  	// default values are omitted from API requests. See
  1746  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1747  	// details.
  1748  	ForceSendFields []string `json:"-"`
  1749  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  1750  	// requests with the JSON null value. By default, fields with empty values are
  1751  	// omitted from API requests. See
  1752  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1753  	NullFields []string `json:"-"`
  1754  }
  1755  
  1756  func (s *Advertiser) MarshalJSON() ([]byte, error) {
  1757  	type NoMethod Advertiser
  1758  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1759  }
  1760  
  1761  // AdvertiserGroup: Groups advertisers together so that reports can be
  1762  // generated for the entire group at once.
  1763  type AdvertiserGroup struct {
  1764  	// AccountId: Account ID of this advertiser group. This is a read-only field
  1765  	// that can be left blank.
  1766  	AccountId int64 `json:"accountId,omitempty,string"`
  1767  	// Id: ID of this advertiser group. This is a read-only, auto-generated field.
  1768  	Id int64 `json:"id,omitempty,string"`
  1769  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1770  	// "dfareporting#advertiserGroup".
  1771  	Kind string `json:"kind,omitempty"`
  1772  	// Name: Name of this advertiser group. This is a required field and must be
  1773  	// less than 256 characters long and unique among advertiser groups of the same
  1774  	// account.
  1775  	Name string `json:"name,omitempty"`
  1776  
  1777  	// ServerResponse contains the HTTP response code and headers from the server.
  1778  	googleapi.ServerResponse `json:"-"`
  1779  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  1780  	// unconditionally include in API requests. By default, fields with empty or
  1781  	// default values are omitted from API requests. See
  1782  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1783  	// details.
  1784  	ForceSendFields []string `json:"-"`
  1785  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  1786  	// requests with the JSON null value. By default, fields with empty values are
  1787  	// omitted from API requests. See
  1788  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1789  	NullFields []string `json:"-"`
  1790  }
  1791  
  1792  func (s *AdvertiserGroup) MarshalJSON() ([]byte, error) {
  1793  	type NoMethod AdvertiserGroup
  1794  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1795  }
  1796  
  1797  // AdvertiserGroupsListResponse: Advertiser Group List Response
  1798  type AdvertiserGroupsListResponse struct {
  1799  	// AdvertiserGroups: Advertiser group collection.
  1800  	AdvertiserGroups []*AdvertiserGroup `json:"advertiserGroups,omitempty"`
  1801  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1802  	// "dfareporting#advertiserGroupsListResponse".
  1803  	Kind string `json:"kind,omitempty"`
  1804  	// NextPageToken: Pagination token to be used for the next list operation.
  1805  	NextPageToken string `json:"nextPageToken,omitempty"`
  1806  
  1807  	// ServerResponse contains the HTTP response code and headers from the server.
  1808  	googleapi.ServerResponse `json:"-"`
  1809  	// ForceSendFields is a list of field names (e.g. "AdvertiserGroups") to
  1810  	// unconditionally include in API requests. By default, fields with empty or
  1811  	// default values are omitted from API requests. See
  1812  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1813  	// details.
  1814  	ForceSendFields []string `json:"-"`
  1815  	// NullFields is a list of field names (e.g. "AdvertiserGroups") to include in
  1816  	// API requests with the JSON null value. By default, fields with empty values
  1817  	// are omitted from API requests. See
  1818  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1819  	NullFields []string `json:"-"`
  1820  }
  1821  
  1822  func (s *AdvertiserGroupsListResponse) MarshalJSON() ([]byte, error) {
  1823  	type NoMethod AdvertiserGroupsListResponse
  1824  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1825  }
  1826  
  1827  // AdvertiserInvoicesListResponse: Invoice List Response
  1828  type AdvertiserInvoicesListResponse struct {
  1829  	// Invoices: Invoice collection
  1830  	Invoices []*Invoice `json:"invoices,omitempty"`
  1831  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1832  	// "dfareporting#advertiserInvoicesListResponse".
  1833  	Kind string `json:"kind,omitempty"`
  1834  	// NextPageToken: Pagination token to be used for the next list operation.
  1835  	NextPageToken string `json:"nextPageToken,omitempty"`
  1836  
  1837  	// ServerResponse contains the HTTP response code and headers from the server.
  1838  	googleapi.ServerResponse `json:"-"`
  1839  	// ForceSendFields is a list of field names (e.g. "Invoices") to
  1840  	// unconditionally include in API requests. By default, fields with empty or
  1841  	// default values are omitted from API requests. See
  1842  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1843  	// details.
  1844  	ForceSendFields []string `json:"-"`
  1845  	// NullFields is a list of field names (e.g. "Invoices") to include in API
  1846  	// requests with the JSON null value. By default, fields with empty values are
  1847  	// omitted from API requests. See
  1848  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1849  	NullFields []string `json:"-"`
  1850  }
  1851  
  1852  func (s *AdvertiserInvoicesListResponse) MarshalJSON() ([]byte, error) {
  1853  	type NoMethod AdvertiserInvoicesListResponse
  1854  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1855  }
  1856  
  1857  // AdvertiserLandingPagesListResponse: Landing Page List Response
  1858  type AdvertiserLandingPagesListResponse struct {
  1859  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1860  	// "dfareporting#advertiserLandingPagesListResponse".
  1861  	Kind string `json:"kind,omitempty"`
  1862  	// LandingPages: Landing page collection
  1863  	LandingPages []*LandingPage `json:"landingPages,omitempty"`
  1864  	// NextPageToken: Pagination token to be used for the next list operation.
  1865  	NextPageToken string `json:"nextPageToken,omitempty"`
  1866  
  1867  	// ServerResponse contains the HTTP response code and headers from the server.
  1868  	googleapi.ServerResponse `json:"-"`
  1869  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  1870  	// include in API requests. By default, fields with empty or default values are
  1871  	// omitted from API requests. See
  1872  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1873  	// details.
  1874  	ForceSendFields []string `json:"-"`
  1875  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  1876  	// with the JSON null value. By default, fields with empty values are omitted
  1877  	// from API requests. See
  1878  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1879  	NullFields []string `json:"-"`
  1880  }
  1881  
  1882  func (s *AdvertiserLandingPagesListResponse) MarshalJSON() ([]byte, error) {
  1883  	type NoMethod AdvertiserLandingPagesListResponse
  1884  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1885  }
  1886  
  1887  // AdvertisersListResponse: Advertiser List Response
  1888  type AdvertisersListResponse struct {
  1889  	// Advertisers: Advertiser collection.
  1890  	Advertisers []*Advertiser `json:"advertisers,omitempty"`
  1891  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1892  	// "dfareporting#advertisersListResponse".
  1893  	Kind string `json:"kind,omitempty"`
  1894  	// NextPageToken: Pagination token to be used for the next list operation.
  1895  	NextPageToken string `json:"nextPageToken,omitempty"`
  1896  
  1897  	// ServerResponse contains the HTTP response code and headers from the server.
  1898  	googleapi.ServerResponse `json:"-"`
  1899  	// ForceSendFields is a list of field names (e.g. "Advertisers") to
  1900  	// unconditionally include in API requests. By default, fields with empty or
  1901  	// default values are omitted from API requests. See
  1902  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1903  	// details.
  1904  	ForceSendFields []string `json:"-"`
  1905  	// NullFields is a list of field names (e.g. "Advertisers") to include in API
  1906  	// requests with the JSON null value. By default, fields with empty values are
  1907  	// omitted from API requests. See
  1908  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1909  	NullFields []string `json:"-"`
  1910  }
  1911  
  1912  func (s *AdvertisersListResponse) MarshalJSON() ([]byte, error) {
  1913  	type NoMethod AdvertisersListResponse
  1914  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1915  }
  1916  
  1917  // AudienceSegment: Audience Segment.
  1918  type AudienceSegment struct {
  1919  	// Allocation: Weight allocated to this segment. The weight assigned will be
  1920  	// understood in proportion to the weights assigned to other segments in the
  1921  	// same segment group. Acceptable values are 1 to 1000, inclusive.
  1922  	Allocation int64 `json:"allocation,omitempty"`
  1923  	// Id: ID of this audience segment. This is a read-only, auto-generated field.
  1924  	Id int64 `json:"id,omitempty,string"`
  1925  	// Name: Name of this audience segment. This is a required field and must be
  1926  	// less than 65 characters long.
  1927  	Name string `json:"name,omitempty"`
  1928  	// ForceSendFields is a list of field names (e.g. "Allocation") to
  1929  	// unconditionally include in API requests. By default, fields with empty or
  1930  	// default values are omitted from API requests. See
  1931  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1932  	// details.
  1933  	ForceSendFields []string `json:"-"`
  1934  	// NullFields is a list of field names (e.g. "Allocation") to include in API
  1935  	// requests with the JSON null value. By default, fields with empty values are
  1936  	// omitted from API requests. See
  1937  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1938  	NullFields []string `json:"-"`
  1939  }
  1940  
  1941  func (s *AudienceSegment) MarshalJSON() ([]byte, error) {
  1942  	type NoMethod AudienceSegment
  1943  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1944  }
  1945  
  1946  // AudienceSegmentGroup: Audience Segment Group.
  1947  type AudienceSegmentGroup struct {
  1948  	// AudienceSegments: Audience segments assigned to this group. The number of
  1949  	// segments must be between 2 and 100.
  1950  	AudienceSegments []*AudienceSegment `json:"audienceSegments,omitempty"`
  1951  	// Id: ID of this audience segment group. This is a read-only, auto-generated
  1952  	// field.
  1953  	Id int64 `json:"id,omitempty,string"`
  1954  	// Name: Name of this audience segment group. This is a required field and must
  1955  	// be less than 65 characters long.
  1956  	Name string `json:"name,omitempty"`
  1957  	// ForceSendFields is a list of field names (e.g. "AudienceSegments") to
  1958  	// unconditionally include in API requests. By default, fields with empty or
  1959  	// default values are omitted from API requests. See
  1960  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1961  	// details.
  1962  	ForceSendFields []string `json:"-"`
  1963  	// NullFields is a list of field names (e.g. "AudienceSegments") to include in
  1964  	// API requests with the JSON null value. By default, fields with empty values
  1965  	// are omitted from API requests. See
  1966  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1967  	NullFields []string `json:"-"`
  1968  }
  1969  
  1970  func (s *AudienceSegmentGroup) MarshalJSON() ([]byte, error) {
  1971  	type NoMethod AudienceSegmentGroup
  1972  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1973  }
  1974  
  1975  // BillingAssignment: List account, subaccount, advertiser, and campaign
  1976  // associated with a given Billing Profile.
  1977  type BillingAssignment struct {
  1978  	// AccountId: ID of the account associated with the billing assignment.This is
  1979  	// a read-only, auto-generated field.
  1980  	AccountId string `json:"accountId,omitempty"`
  1981  	// AdvertiserId: ID of the advertiser associated with the billing
  1982  	// assignment.Wildcard (*) means this assignment is not limited to a single
  1983  	// advertiser
  1984  	AdvertiserId string `json:"advertiserId,omitempty"`
  1985  	// CampaignId: ID of the campaign associated with the billing assignment.
  1986  	// Wildcard (*) means this assignment is not limited to a single campaign
  1987  	CampaignId string `json:"campaignId,omitempty"`
  1988  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  1989  	// "dfareporting#billingAssignment".
  1990  	Kind string `json:"kind,omitempty"`
  1991  	// SubaccountId: ID of the subaccount associated with the billing
  1992  	// assignment.Wildcard (*) means this assignment is not limited to a single
  1993  	// subaccountThis is a read-only, auto-generated field.
  1994  	SubaccountId string `json:"subaccountId,omitempty"`
  1995  
  1996  	// ServerResponse contains the HTTP response code and headers from the server.
  1997  	googleapi.ServerResponse `json:"-"`
  1998  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  1999  	// unconditionally include in API requests. By default, fields with empty or
  2000  	// default values are omitted from API requests. See
  2001  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2002  	// details.
  2003  	ForceSendFields []string `json:"-"`
  2004  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  2005  	// requests with the JSON null value. By default, fields with empty values are
  2006  	// omitted from API requests. See
  2007  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2008  	NullFields []string `json:"-"`
  2009  }
  2010  
  2011  func (s *BillingAssignment) MarshalJSON() ([]byte, error) {
  2012  	type NoMethod BillingAssignment
  2013  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2014  }
  2015  
  2016  // BillingAssignmentsListResponse: Billing assignment List Response
  2017  type BillingAssignmentsListResponse struct {
  2018  	// BillingAssignments: Billing assignments collection.
  2019  	BillingAssignments []*BillingAssignment `json:"billingAssignments,omitempty"`
  2020  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2021  	// "dfareporting#billingAssignmentsListResponse".
  2022  	Kind string `json:"kind,omitempty"`
  2023  
  2024  	// ServerResponse contains the HTTP response code and headers from the server.
  2025  	googleapi.ServerResponse `json:"-"`
  2026  	// ForceSendFields is a list of field names (e.g. "BillingAssignments") to
  2027  	// unconditionally include in API requests. By default, fields with empty or
  2028  	// default values are omitted from API requests. See
  2029  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2030  	// details.
  2031  	ForceSendFields []string `json:"-"`
  2032  	// NullFields is a list of field names (e.g. "BillingAssignments") to include
  2033  	// in API requests with the JSON null value. By default, fields with empty
  2034  	// values are omitted from API requests. See
  2035  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2036  	NullFields []string `json:"-"`
  2037  }
  2038  
  2039  func (s *BillingAssignmentsListResponse) MarshalJSON() ([]byte, error) {
  2040  	type NoMethod BillingAssignmentsListResponse
  2041  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2042  }
  2043  
  2044  // BillingProfile: Contains properties of a Campaign Manager Billing Profile.
  2045  type BillingProfile struct {
  2046  	// ConsolidatedInvoice: Consolidated invoice option for this billing profile.
  2047  	// Used to get a single, consolidated invoice across the chosen invoice level.
  2048  	ConsolidatedInvoice bool `json:"consolidatedInvoice,omitempty"`
  2049  	// CountryCode: Country code of this billing profile.This is a read-only field.
  2050  	CountryCode string `json:"countryCode,omitempty"`
  2051  	// CurrencyCode: Billing currency code in ISO 4217 format.This is a read-only
  2052  	// field.
  2053  	CurrencyCode string `json:"currencyCode,omitempty"`
  2054  	// Id: ID of this billing profile. This is a read-only, auto-generated field.
  2055  	Id int64 `json:"id,omitempty,string"`
  2056  	// InvoiceLevel: Invoice level for this billing profile. Used to group fees
  2057  	// into separate invoices by account, advertiser, or campaign.
  2058  	//
  2059  	// Possible values:
  2060  	//   "ACCOUNT_LEVEL"
  2061  	//   "ADVERTISER_LEVEL"
  2062  	//   "CAMPAIGN_LEVEL"
  2063  	InvoiceLevel string `json:"invoiceLevel,omitempty"`
  2064  	// IsDefault: True if the billing profile is the account default profile. This
  2065  	// is a read-only field.
  2066  	IsDefault bool `json:"isDefault,omitempty"`
  2067  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2068  	// "dfareporting#billingProfile".
  2069  	Kind string `json:"kind,omitempty"`
  2070  	// Name: Name of this billing profile. This is a required field and must be
  2071  	// less than 256 characters long and must be unique among billing profile in
  2072  	// the same account.
  2073  	Name string `json:"name,omitempty"`
  2074  	// PaymentsAccountId: The ID of the payment account the billing profile belongs
  2075  	// to. This is a read-only field.
  2076  	PaymentsAccountId string `json:"paymentsAccountId,omitempty"`
  2077  	// PaymentsCustomerId: The ID of the payment customer the billing profile
  2078  	// belongs to. This is a read-only field.
  2079  	PaymentsCustomerId string `json:"paymentsCustomerId,omitempty"`
  2080  	// PurchaseOrder: Purchase order (PO) for this billing profile. This PO number
  2081  	// is used in the invoices for all of the advertisers in this billing profile.
  2082  	PurchaseOrder string `json:"purchaseOrder,omitempty"`
  2083  	// SecondaryPaymentsCustomerId: The ID of the secondary payment customer the
  2084  	// billing profile belongs to. This is a read-only field.
  2085  	SecondaryPaymentsCustomerId string `json:"secondaryPaymentsCustomerId,omitempty"`
  2086  	// Status: Status of this billing profile.This is a read-only field.
  2087  	//
  2088  	// Possible values:
  2089  	//   "UNDER_REVIEW"
  2090  	//   "ACTIVE"
  2091  	//   "ARCHIVED"
  2092  	Status string `json:"status,omitempty"`
  2093  
  2094  	// ServerResponse contains the HTTP response code and headers from the server.
  2095  	googleapi.ServerResponse `json:"-"`
  2096  	// ForceSendFields is a list of field names (e.g. "ConsolidatedInvoice") to
  2097  	// unconditionally include in API requests. By default, fields with empty or
  2098  	// default values are omitted from API requests. See
  2099  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2100  	// details.
  2101  	ForceSendFields []string `json:"-"`
  2102  	// NullFields is a list of field names (e.g. "ConsolidatedInvoice") to include
  2103  	// in API requests with the JSON null value. By default, fields with empty
  2104  	// values are omitted from API requests. See
  2105  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2106  	NullFields []string `json:"-"`
  2107  }
  2108  
  2109  func (s *BillingProfile) MarshalJSON() ([]byte, error) {
  2110  	type NoMethod BillingProfile
  2111  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2112  }
  2113  
  2114  // BillingProfilesListResponse: Billing profile List Response
  2115  type BillingProfilesListResponse struct {
  2116  	// BillingProfiles: Billing profiles collection.
  2117  	BillingProfiles []*BillingProfile `json:"billingProfiles,omitempty"`
  2118  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2119  	// "dfareporting#billingProfilesListResponse".
  2120  	Kind string `json:"kind,omitempty"`
  2121  	// NextPageToken: Pagination token to be used for the next list operation.
  2122  	NextPageToken string `json:"nextPageToken,omitempty"`
  2123  
  2124  	// ServerResponse contains the HTTP response code and headers from the server.
  2125  	googleapi.ServerResponse `json:"-"`
  2126  	// ForceSendFields is a list of field names (e.g. "BillingProfiles") to
  2127  	// unconditionally include in API requests. By default, fields with empty or
  2128  	// default values are omitted from API requests. See
  2129  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2130  	// details.
  2131  	ForceSendFields []string `json:"-"`
  2132  	// NullFields is a list of field names (e.g. "BillingProfiles") to include in
  2133  	// API requests with the JSON null value. By default, fields with empty values
  2134  	// are omitted from API requests. See
  2135  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2136  	NullFields []string `json:"-"`
  2137  }
  2138  
  2139  func (s *BillingProfilesListResponse) MarshalJSON() ([]byte, error) {
  2140  	type NoMethod BillingProfilesListResponse
  2141  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2142  }
  2143  
  2144  type BillingRate struct {
  2145  	// CurrencyCode: Billing currency code in ISO 4217 format.
  2146  	CurrencyCode string `json:"currencyCode,omitempty"`
  2147  	// EndDate: End date of this billing rate.
  2148  	EndDate string `json:"endDate,omitempty"`
  2149  	// Id: ID of this billing rate.
  2150  	Id int64 `json:"id,omitempty,string"`
  2151  	// Name: Name of this billing rate. This must be less than 256 characters long.
  2152  	Name string `json:"name,omitempty"`
  2153  	// RateInMicros: Flat rate in micros of this billing rate. This cannot co-exist
  2154  	// with tiered rate.
  2155  	RateInMicros int64 `json:"rateInMicros,omitempty,string"`
  2156  	// StartDate: Start date of this billing rate.
  2157  	StartDate string `json:"startDate,omitempty"`
  2158  	// TieredRates: Tiered rate of this billing rate. This cannot co-exist with
  2159  	// flat rate.
  2160  	TieredRates []*BillingRateTieredRate `json:"tieredRates,omitempty"`
  2161  	// Type: Type of this billing rate.
  2162  	//
  2163  	// Possible values:
  2164  	//   "AD_SERVING"
  2165  	//   "CLICKS"
  2166  	//   "MINIMUM_SERVICE"
  2167  	//   "PATH_TO_CONVERSION"
  2168  	//   "RICH_MEDIA_INPAGE"
  2169  	//   "RICH_MEDIA_EXPANDING"
  2170  	//   "RICH_MEDIA_FLOATING"
  2171  	//   "RICH_MEDIA_VIDEO"
  2172  	//   "RICH_MEDIA_TEASER"
  2173  	//   "RICH_MEDIA_VPAID"
  2174  	//   "INSTREAM_VIDEO"
  2175  	//   "PIXEL"
  2176  	//   "TRACKING"
  2177  	//   "TRAFFICKING_FEATURE"
  2178  	//   "CUSTOM_REPORTS"
  2179  	//   "EXPOSURE_TO_CONVERSION"
  2180  	//   "DATA_TRANSFER"
  2181  	//   "DATA_TRANSFER_SETUP"
  2182  	//   "STARTUP"
  2183  	//   "STATEMENT_OF_WORK"
  2184  	//   "PROVIDED_LIST"
  2185  	//   "PROVIDED_LIST_SETUP"
  2186  	//   "ENHANCED_FORMATS"
  2187  	//   "TRACKING_AD_IMPRESSIONS"
  2188  	//   "TRACKING_AD_CLICKS"
  2189  	//   "NIELSEN_DIGITAL_AD_RATINGS_FEE"
  2190  	//   "INSTREAM_VIDEO_REDIRECT"
  2191  	//   "INSTREAM_VIDEO_VPAID"
  2192  	//   "DISPLAY_AD_SERVING"
  2193  	//   "VIDEO_AD_SERVING"
  2194  	//   "AUDIO_AD_SERVING"
  2195  	//   "ADVANCED_DISPLAY_AD_SERVING"
  2196  	Type string `json:"type,omitempty"`
  2197  	// UnitOfMeasure: Unit of measure for this billing rate.
  2198  	//
  2199  	// Possible values:
  2200  	//   "CPM"
  2201  	//   "CPC"
  2202  	//   "EA"
  2203  	//   "P2C"
  2204  	UnitOfMeasure string `json:"unitOfMeasure,omitempty"`
  2205  	// ForceSendFields is a list of field names (e.g. "CurrencyCode") to
  2206  	// unconditionally include in API requests. By default, fields with empty or
  2207  	// default values are omitted from API requests. See
  2208  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2209  	// details.
  2210  	ForceSendFields []string `json:"-"`
  2211  	// NullFields is a list of field names (e.g. "CurrencyCode") to include in API
  2212  	// requests with the JSON null value. By default, fields with empty values are
  2213  	// omitted from API requests. See
  2214  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2215  	NullFields []string `json:"-"`
  2216  }
  2217  
  2218  func (s *BillingRate) MarshalJSON() ([]byte, error) {
  2219  	type NoMethod BillingRate
  2220  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2221  }
  2222  
  2223  type BillingRateTieredRate struct {
  2224  	// HighValue: The maximum for this tier range.
  2225  	HighValue int64 `json:"highValue,omitempty,string"`
  2226  	// LowValue: The minimum for this tier range.
  2227  	LowValue int64 `json:"lowValue,omitempty,string"`
  2228  	// RateInMicros: Rate in micros for this tier.
  2229  	RateInMicros int64 `json:"rateInMicros,omitempty,string"`
  2230  	// ForceSendFields is a list of field names (e.g. "HighValue") to
  2231  	// unconditionally include in API requests. By default, fields with empty or
  2232  	// default values are omitted from API requests. See
  2233  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2234  	// details.
  2235  	ForceSendFields []string `json:"-"`
  2236  	// NullFields is a list of field names (e.g. "HighValue") to include in API
  2237  	// requests with the JSON null value. By default, fields with empty values are
  2238  	// omitted from API requests. See
  2239  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2240  	NullFields []string `json:"-"`
  2241  }
  2242  
  2243  func (s *BillingRateTieredRate) MarshalJSON() ([]byte, error) {
  2244  	type NoMethod BillingRateTieredRate
  2245  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2246  }
  2247  
  2248  // BillingRatesListResponse: Billing Rate List Response
  2249  type BillingRatesListResponse struct {
  2250  	// BillingRates: Billing rates collection.
  2251  	BillingRates []*BillingRate `json:"billingRates,omitempty"`
  2252  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2253  	// "dfareporting#billingRatesListResponse".
  2254  	Kind string `json:"kind,omitempty"`
  2255  	// NextPageToken: Pagination token to be used for the next list operation.
  2256  	NextPageToken string `json:"nextPageToken,omitempty"`
  2257  
  2258  	// ServerResponse contains the HTTP response code and headers from the server.
  2259  	googleapi.ServerResponse `json:"-"`
  2260  	// ForceSendFields is a list of field names (e.g. "BillingRates") to
  2261  	// unconditionally include in API requests. By default, fields with empty or
  2262  	// default values are omitted from API requests. See
  2263  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2264  	// details.
  2265  	ForceSendFields []string `json:"-"`
  2266  	// NullFields is a list of field names (e.g. "BillingRates") to include in API
  2267  	// requests with the JSON null value. By default, fields with empty values are
  2268  	// omitted from API requests. See
  2269  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2270  	NullFields []string `json:"-"`
  2271  }
  2272  
  2273  func (s *BillingRatesListResponse) MarshalJSON() ([]byte, error) {
  2274  	type NoMethod BillingRatesListResponse
  2275  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2276  }
  2277  
  2278  // Browser: Contains information about a browser that can be targeted by ads.
  2279  type Browser struct {
  2280  	// BrowserVersionId: ID referring to this grouping of browser and version
  2281  	// numbers. This is the ID used for targeting.
  2282  	BrowserVersionId int64 `json:"browserVersionId,omitempty,string"`
  2283  	// DartId: DART ID of this browser. This is the ID used when generating
  2284  	// reports.
  2285  	DartId int64 `json:"dartId,omitempty,string"`
  2286  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2287  	// "dfareporting#browser".
  2288  	Kind string `json:"kind,omitempty"`
  2289  	// MajorVersion: Major version number (leftmost number) of this browser. For
  2290  	// example, for Chrome 5.0.376.86 beta, this field should be set to 5. An
  2291  	// asterisk (*) may be used to target any version number, and a question mark
  2292  	// (?) may be used to target cases where the version number cannot be
  2293  	// identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5,
  2294  	// 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.?
  2295  	// targets cases where the ad server knows the browser is Firefox but can't
  2296  	// tell which version it is.
  2297  	MajorVersion string `json:"majorVersion,omitempty"`
  2298  	// MinorVersion: Minor version number (number after first dot on left) of this
  2299  	// browser. For example, for Chrome 5.0.375.86 beta, this field should be set
  2300  	// to 0. An asterisk (*) may be used to target any version number, and a
  2301  	// question mark (?) may be used to target cases where the version number
  2302  	// cannot be identified. For example, Chrome *.* targets any version of Chrome:
  2303  	// 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0.
  2304  	// Firefox ?.? targets cases where the ad server knows the browser is Firefox
  2305  	// but can't tell which version it is.
  2306  	MinorVersion string `json:"minorVersion,omitempty"`
  2307  	// Name: Name of this browser.
  2308  	Name string `json:"name,omitempty"`
  2309  	// ForceSendFields is a list of field names (e.g. "BrowserVersionId") to
  2310  	// unconditionally include in API requests. By default, fields with empty or
  2311  	// default values are omitted from API requests. See
  2312  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2313  	// details.
  2314  	ForceSendFields []string `json:"-"`
  2315  	// NullFields is a list of field names (e.g. "BrowserVersionId") to include in
  2316  	// API requests with the JSON null value. By default, fields with empty values
  2317  	// are omitted from API requests. See
  2318  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2319  	NullFields []string `json:"-"`
  2320  }
  2321  
  2322  func (s *Browser) MarshalJSON() ([]byte, error) {
  2323  	type NoMethod Browser
  2324  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2325  }
  2326  
  2327  // BrowsersListResponse: Browser List Response
  2328  type BrowsersListResponse struct {
  2329  	// Browsers: Browser collection.
  2330  	Browsers []*Browser `json:"browsers,omitempty"`
  2331  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2332  	// "dfareporting#browsersListResponse".
  2333  	Kind string `json:"kind,omitempty"`
  2334  
  2335  	// ServerResponse contains the HTTP response code and headers from the server.
  2336  	googleapi.ServerResponse `json:"-"`
  2337  	// ForceSendFields is a list of field names (e.g. "Browsers") to
  2338  	// unconditionally include in API requests. By default, fields with empty or
  2339  	// default values are omitted from API requests. See
  2340  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2341  	// details.
  2342  	ForceSendFields []string `json:"-"`
  2343  	// NullFields is a list of field names (e.g. "Browsers") to include in API
  2344  	// requests with the JSON null value. By default, fields with empty values are
  2345  	// omitted from API requests. See
  2346  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2347  	NullFields []string `json:"-"`
  2348  }
  2349  
  2350  func (s *BrowsersListResponse) MarshalJSON() ([]byte, error) {
  2351  	type NoMethod BrowsersListResponse
  2352  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2353  }
  2354  
  2355  // Campaign: Contains properties of a Campaign Manager campaign.
  2356  type Campaign struct {
  2357  	// AccountId: Account ID of this campaign. This is a read-only field that can
  2358  	// be left blank.
  2359  	AccountId int64 `json:"accountId,omitempty,string"`
  2360  	// AdBlockingConfiguration: Ad blocking settings for this campaign.
  2361  	AdBlockingConfiguration *AdBlockingConfiguration `json:"adBlockingConfiguration,omitempty"`
  2362  	// AdditionalCreativeOptimizationConfigurations: Additional creative
  2363  	// optimization configurations for the campaign.
  2364  	AdditionalCreativeOptimizationConfigurations []*CreativeOptimizationConfiguration `json:"additionalCreativeOptimizationConfigurations,omitempty"`
  2365  	// AdvertiserGroupId: Advertiser group ID of the associated advertiser.
  2366  	AdvertiserGroupId int64 `json:"advertiserGroupId,omitempty,string"`
  2367  	// AdvertiserId: Advertiser ID of this campaign. This is a required field.
  2368  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  2369  	// AdvertiserIdDimensionValue: Dimension value for the advertiser ID of this
  2370  	// campaign. This is a read-only, auto-generated field.
  2371  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  2372  	// Archived: Whether this campaign has been archived.
  2373  	Archived bool `json:"archived,omitempty"`
  2374  	// AudienceSegmentGroups: Audience segment groups assigned to this campaign.
  2375  	// Cannot have more than 300 segment groups.
  2376  	AudienceSegmentGroups []*AudienceSegmentGroup `json:"audienceSegmentGroups,omitempty"`
  2377  	// BillingInvoiceCode: Billing invoice code included in the Campaign Manager
  2378  	// client billing invoices associated with the campaign.
  2379  	BillingInvoiceCode string `json:"billingInvoiceCode,omitempty"`
  2380  	// ClickThroughUrlSuffixProperties: Click-through URL suffix override
  2381  	// properties for this campaign.
  2382  	ClickThroughUrlSuffixProperties *ClickThroughUrlSuffixProperties `json:"clickThroughUrlSuffixProperties,omitempty"`
  2383  	// Comment: Arbitrary comments about this campaign. Must be less than 256
  2384  	// characters long.
  2385  	Comment string `json:"comment,omitempty"`
  2386  	// CreateInfo: Information about the creation of this campaign. This is a
  2387  	// read-only field.
  2388  	CreateInfo *LastModifiedInfo `json:"createInfo,omitempty"`
  2389  	// CreativeGroupIds: List of creative group IDs that are assigned to the
  2390  	// campaign.
  2391  	CreativeGroupIds googleapi.Int64s `json:"creativeGroupIds,omitempty"`
  2392  	// CreativeOptimizationConfiguration: Creative optimization configuration for
  2393  	// the campaign.
  2394  	CreativeOptimizationConfiguration *CreativeOptimizationConfiguration `json:"creativeOptimizationConfiguration,omitempty"`
  2395  	// DefaultClickThroughEventTagProperties: Click-through event tag ID override
  2396  	// properties for this campaign.
  2397  	DefaultClickThroughEventTagProperties *DefaultClickThroughEventTagProperties `json:"defaultClickThroughEventTagProperties,omitempty"`
  2398  	// DefaultLandingPageId: The default landing page ID for this campaign.
  2399  	DefaultLandingPageId int64  `json:"defaultLandingPageId,omitempty,string"`
  2400  	EndDate              string `json:"endDate,omitempty"`
  2401  	// EventTagOverrides: Overrides that can be used to activate or deactivate
  2402  	// advertiser event tags.
  2403  	EventTagOverrides []*EventTagOverride `json:"eventTagOverrides,omitempty"`
  2404  	// ExternalId: External ID for this campaign.
  2405  	ExternalId string `json:"externalId,omitempty"`
  2406  	// Id: ID of this campaign. This is a read-only auto-generated field.
  2407  	Id int64 `json:"id,omitempty,string"`
  2408  	// IdDimensionValue: Dimension value for the ID of this campaign. This is a
  2409  	// read-only, auto-generated field.
  2410  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  2411  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2412  	// "dfareporting#campaign".
  2413  	Kind string `json:"kind,omitempty"`
  2414  	// LastModifiedInfo: Information about the most recent modification of this
  2415  	// campaign. This is a read-only field.
  2416  	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
  2417  	// MeasurementPartnerLink: Measurement partner campaign link for tag wrapping.
  2418  	MeasurementPartnerLink *MeasurementPartnerCampaignLink `json:"measurementPartnerLink,omitempty"`
  2419  	// Name: Name of this campaign. This is a required field and must be less than
  2420  	// 512 characters long and unique among campaigns of the same advertiser.
  2421  	Name      string `json:"name,omitempty"`
  2422  	StartDate string `json:"startDate,omitempty"`
  2423  	// SubaccountId: Subaccount ID of this campaign. This is a read-only field that
  2424  	// can be left blank.
  2425  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  2426  
  2427  	// ServerResponse contains the HTTP response code and headers from the server.
  2428  	googleapi.ServerResponse `json:"-"`
  2429  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  2430  	// unconditionally include in API requests. By default, fields with empty or
  2431  	// default values are omitted from API requests. See
  2432  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2433  	// details.
  2434  	ForceSendFields []string `json:"-"`
  2435  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  2436  	// requests with the JSON null value. By default, fields with empty values are
  2437  	// omitted from API requests. See
  2438  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2439  	NullFields []string `json:"-"`
  2440  }
  2441  
  2442  func (s *Campaign) MarshalJSON() ([]byte, error) {
  2443  	type NoMethod Campaign
  2444  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2445  }
  2446  
  2447  // CampaignCreativeAssociation: Identifies a creative which has been associated
  2448  // with a given campaign.
  2449  type CampaignCreativeAssociation struct {
  2450  	// CreativeId: ID of the creative associated with the campaign. This is a
  2451  	// required field.
  2452  	CreativeId int64 `json:"creativeId,omitempty,string"`
  2453  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2454  	// "dfareporting#campaignCreativeAssociation".
  2455  	Kind string `json:"kind,omitempty"`
  2456  
  2457  	// ServerResponse contains the HTTP response code and headers from the server.
  2458  	googleapi.ServerResponse `json:"-"`
  2459  	// ForceSendFields is a list of field names (e.g. "CreativeId") to
  2460  	// unconditionally include in API requests. By default, fields with empty or
  2461  	// default values are omitted from API requests. See
  2462  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2463  	// details.
  2464  	ForceSendFields []string `json:"-"`
  2465  	// NullFields is a list of field names (e.g. "CreativeId") to include in API
  2466  	// requests with the JSON null value. By default, fields with empty values are
  2467  	// omitted from API requests. See
  2468  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2469  	NullFields []string `json:"-"`
  2470  }
  2471  
  2472  func (s *CampaignCreativeAssociation) MarshalJSON() ([]byte, error) {
  2473  	type NoMethod CampaignCreativeAssociation
  2474  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2475  }
  2476  
  2477  // CampaignCreativeAssociationsListResponse: Campaign Creative Association List
  2478  // Response
  2479  type CampaignCreativeAssociationsListResponse struct {
  2480  	// CampaignCreativeAssociations: Campaign creative association collection
  2481  	CampaignCreativeAssociations []*CampaignCreativeAssociation `json:"campaignCreativeAssociations,omitempty"`
  2482  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2483  	// "dfareporting#campaignCreativeAssociationsListResponse".
  2484  	Kind string `json:"kind,omitempty"`
  2485  	// NextPageToken: Pagination token to be used for the next list operation.
  2486  	NextPageToken string `json:"nextPageToken,omitempty"`
  2487  
  2488  	// ServerResponse contains the HTTP response code and headers from the server.
  2489  	googleapi.ServerResponse `json:"-"`
  2490  	// ForceSendFields is a list of field names (e.g.
  2491  	// "CampaignCreativeAssociations") to unconditionally include in API requests.
  2492  	// By default, fields with empty or default values are omitted from API
  2493  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  2494  	// for more details.
  2495  	ForceSendFields []string `json:"-"`
  2496  	// NullFields is a list of field names (e.g. "CampaignCreativeAssociations") to
  2497  	// include in API requests with the JSON null value. By default, fields with
  2498  	// empty values are omitted from API requests. See
  2499  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2500  	NullFields []string `json:"-"`
  2501  }
  2502  
  2503  func (s *CampaignCreativeAssociationsListResponse) MarshalJSON() ([]byte, error) {
  2504  	type NoMethod CampaignCreativeAssociationsListResponse
  2505  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2506  }
  2507  
  2508  // CampaignSummary: Represents a summarized campaign information associated
  2509  // with this invoice.
  2510  type CampaignSummary struct {
  2511  	// BillingInvoiceCode: Campaign billing invoice code.
  2512  	BillingInvoiceCode string `json:"billingInvoiceCode,omitempty"`
  2513  	// CampaignId: Campaign ID.
  2514  	CampaignId int64 `json:"campaignId,omitempty,string"`
  2515  	// PreTaxAmountMicros: The pre-tax amount for this campaign, in micros of the
  2516  	// invoice's currency.
  2517  	PreTaxAmountMicros int64 `json:"preTaxAmountMicros,omitempty,string"`
  2518  	// TaxAmountMicros: The tax amount for this campaign, in micros of the
  2519  	// invoice's currency.
  2520  	TaxAmountMicros int64 `json:"taxAmountMicros,omitempty,string"`
  2521  	// TotalAmountMicros: The total amount of charges for this campaign, in micros
  2522  	// of the invoice's currency.
  2523  	TotalAmountMicros int64 `json:"totalAmountMicros,omitempty,string"`
  2524  	// ForceSendFields is a list of field names (e.g. "BillingInvoiceCode") to
  2525  	// unconditionally include in API requests. By default, fields with empty or
  2526  	// default values are omitted from API requests. See
  2527  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2528  	// details.
  2529  	ForceSendFields []string `json:"-"`
  2530  	// NullFields is a list of field names (e.g. "BillingInvoiceCode") to include
  2531  	// in API requests with the JSON null value. By default, fields with empty
  2532  	// values are omitted from API requests. See
  2533  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2534  	NullFields []string `json:"-"`
  2535  }
  2536  
  2537  func (s *CampaignSummary) MarshalJSON() ([]byte, error) {
  2538  	type NoMethod CampaignSummary
  2539  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2540  }
  2541  
  2542  // CampaignsListResponse: Campaign List Response
  2543  type CampaignsListResponse struct {
  2544  	// Campaigns: Campaign collection.
  2545  	Campaigns []*Campaign `json:"campaigns,omitempty"`
  2546  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2547  	// "dfareporting#campaignsListResponse".
  2548  	Kind string `json:"kind,omitempty"`
  2549  	// NextPageToken: Pagination token to be used for the next list operation.
  2550  	NextPageToken string `json:"nextPageToken,omitempty"`
  2551  
  2552  	// ServerResponse contains the HTTP response code and headers from the server.
  2553  	googleapi.ServerResponse `json:"-"`
  2554  	// ForceSendFields is a list of field names (e.g. "Campaigns") to
  2555  	// unconditionally include in API requests. By default, fields with empty or
  2556  	// default values are omitted from API requests. See
  2557  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2558  	// details.
  2559  	ForceSendFields []string `json:"-"`
  2560  	// NullFields is a list of field names (e.g. "Campaigns") to include in API
  2561  	// requests with the JSON null value. By default, fields with empty values are
  2562  	// omitted from API requests. See
  2563  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2564  	NullFields []string `json:"-"`
  2565  }
  2566  
  2567  func (s *CampaignsListResponse) MarshalJSON() ([]byte, error) {
  2568  	type NoMethod CampaignsListResponse
  2569  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2570  }
  2571  
  2572  // ChangeLog: Describes a change that a user has made to a resource.
  2573  type ChangeLog struct {
  2574  	// AccountId: Account ID of the modified object.
  2575  	AccountId int64 `json:"accountId,omitempty,string"`
  2576  	// Action: Action which caused the change.
  2577  	Action     string `json:"action,omitempty"`
  2578  	ChangeTime string `json:"changeTime,omitempty"`
  2579  	// FieldName: Field name of the object which changed.
  2580  	FieldName string `json:"fieldName,omitempty"`
  2581  	// Id: ID of this change log.
  2582  	Id int64 `json:"id,omitempty,string"`
  2583  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2584  	// "dfareporting#changeLog".
  2585  	Kind string `json:"kind,omitempty"`
  2586  	// NewValue: New value of the object field.
  2587  	NewValue string `json:"newValue,omitempty"`
  2588  	// ObjectId: ID of the object of this change log. The object could be a
  2589  	// campaign, placement, ad, or other type.
  2590  	ObjectId int64 `json:"objectId,omitempty,string"`
  2591  	// ObjectType: Object type of the change log.
  2592  	ObjectType string `json:"objectType,omitempty"`
  2593  	// OldValue: Old value of the object field.
  2594  	OldValue string `json:"oldValue,omitempty"`
  2595  	// SubaccountId: Subaccount ID of the modified object.
  2596  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  2597  	// TransactionId: Transaction ID of this change log. When a single API call
  2598  	// results in many changes, each change will have a separate ID in the change
  2599  	// log but will share the same transactionId.
  2600  	TransactionId int64 `json:"transactionId,omitempty,string"`
  2601  	// UserProfileId: ID of the user who modified the object.
  2602  	UserProfileId int64 `json:"userProfileId,omitempty,string"`
  2603  	// UserProfileName: User profile name of the user who modified the object.
  2604  	UserProfileName string `json:"userProfileName,omitempty"`
  2605  
  2606  	// ServerResponse contains the HTTP response code and headers from the server.
  2607  	googleapi.ServerResponse `json:"-"`
  2608  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  2609  	// unconditionally include in API requests. By default, fields with empty or
  2610  	// default values are omitted from API requests. See
  2611  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2612  	// details.
  2613  	ForceSendFields []string `json:"-"`
  2614  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  2615  	// requests with the JSON null value. By default, fields with empty values are
  2616  	// omitted from API requests. See
  2617  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2618  	NullFields []string `json:"-"`
  2619  }
  2620  
  2621  func (s *ChangeLog) MarshalJSON() ([]byte, error) {
  2622  	type NoMethod ChangeLog
  2623  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2624  }
  2625  
  2626  // ChangeLogsListResponse: Change Log List Response
  2627  type ChangeLogsListResponse struct {
  2628  	// ChangeLogs: Change log collection.
  2629  	ChangeLogs []*ChangeLog `json:"changeLogs,omitempty"`
  2630  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2631  	// "dfareporting#changeLogsListResponse".
  2632  	Kind string `json:"kind,omitempty"`
  2633  	// NextPageToken: Pagination token to be used for the next list operation.
  2634  	NextPageToken string `json:"nextPageToken,omitempty"`
  2635  
  2636  	// ServerResponse contains the HTTP response code and headers from the server.
  2637  	googleapi.ServerResponse `json:"-"`
  2638  	// ForceSendFields is a list of field names (e.g. "ChangeLogs") to
  2639  	// unconditionally include in API requests. By default, fields with empty or
  2640  	// default values are omitted from API requests. See
  2641  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2642  	// details.
  2643  	ForceSendFields []string `json:"-"`
  2644  	// NullFields is a list of field names (e.g. "ChangeLogs") to include in API
  2645  	// requests with the JSON null value. By default, fields with empty values are
  2646  	// omitted from API requests. See
  2647  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2648  	NullFields []string `json:"-"`
  2649  }
  2650  
  2651  func (s *ChangeLogsListResponse) MarshalJSON() ([]byte, error) {
  2652  	type NoMethod ChangeLogsListResponse
  2653  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2654  }
  2655  
  2656  // ChannelGrouping: Represents a DfaReporting channel grouping.
  2657  type ChannelGrouping struct {
  2658  	// FallbackName: ChannelGrouping fallback name.
  2659  	FallbackName string `json:"fallbackName,omitempty"`
  2660  	// Kind: The kind of resource this is, in this case
  2661  	// dfareporting#channelGrouping.
  2662  	Kind string `json:"kind,omitempty"`
  2663  	// Name: ChannelGrouping name.
  2664  	Name string `json:"name,omitempty"`
  2665  	// Rules: The rules contained within this channel grouping.
  2666  	Rules []*ChannelGroupingRule `json:"rules,omitempty"`
  2667  	// ForceSendFields is a list of field names (e.g. "FallbackName") to
  2668  	// unconditionally include in API requests. By default, fields with empty or
  2669  	// default values are omitted from API requests. See
  2670  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2671  	// details.
  2672  	ForceSendFields []string `json:"-"`
  2673  	// NullFields is a list of field names (e.g. "FallbackName") to include in API
  2674  	// requests with the JSON null value. By default, fields with empty values are
  2675  	// omitted from API requests. See
  2676  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2677  	NullFields []string `json:"-"`
  2678  }
  2679  
  2680  func (s *ChannelGrouping) MarshalJSON() ([]byte, error) {
  2681  	type NoMethod ChannelGrouping
  2682  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2683  }
  2684  
  2685  // ChannelGroupingRule: Represents a DfaReporting channel grouping rule.
  2686  type ChannelGroupingRule struct {
  2687  	// DisjunctiveMatchStatements: The disjunctive match statements contained
  2688  	// within this rule.
  2689  	DisjunctiveMatchStatements []*DisjunctiveMatchStatement `json:"disjunctiveMatchStatements,omitempty"`
  2690  	// Kind: The kind of resource this is, in this case
  2691  	// dfareporting#channelGroupingRule.
  2692  	Kind string `json:"kind,omitempty"`
  2693  	// Name: Rule name.
  2694  	Name string `json:"name,omitempty"`
  2695  	// ForceSendFields is a list of field names (e.g. "DisjunctiveMatchStatements")
  2696  	// to unconditionally include in API requests. By default, fields with empty or
  2697  	// default values are omitted from API requests. See
  2698  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2699  	// details.
  2700  	ForceSendFields []string `json:"-"`
  2701  	// NullFields is a list of field names (e.g. "DisjunctiveMatchStatements") to
  2702  	// include in API requests with the JSON null value. By default, fields with
  2703  	// empty values are omitted from API requests. See
  2704  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2705  	NullFields []string `json:"-"`
  2706  }
  2707  
  2708  func (s *ChannelGroupingRule) MarshalJSON() ([]byte, error) {
  2709  	type NoMethod ChannelGroupingRule
  2710  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2711  }
  2712  
  2713  // CitiesListResponse: City List Response
  2714  type CitiesListResponse struct {
  2715  	// Cities: City collection.
  2716  	Cities []*City `json:"cities,omitempty"`
  2717  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2718  	// "dfareporting#citiesListResponse".
  2719  	Kind string `json:"kind,omitempty"`
  2720  
  2721  	// ServerResponse contains the HTTP response code and headers from the server.
  2722  	googleapi.ServerResponse `json:"-"`
  2723  	// ForceSendFields is a list of field names (e.g. "Cities") to unconditionally
  2724  	// include in API requests. By default, fields with empty or default values are
  2725  	// omitted from API requests. See
  2726  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2727  	// details.
  2728  	ForceSendFields []string `json:"-"`
  2729  	// NullFields is a list of field names (e.g. "Cities") to include in API
  2730  	// requests with the JSON null value. By default, fields with empty values are
  2731  	// omitted from API requests. See
  2732  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2733  	NullFields []string `json:"-"`
  2734  }
  2735  
  2736  func (s *CitiesListResponse) MarshalJSON() ([]byte, error) {
  2737  	type NoMethod CitiesListResponse
  2738  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2739  }
  2740  
  2741  // City: Contains information about a city that can be targeted by ads.
  2742  type City struct {
  2743  	// CountryCode: Country code of the country to which this city belongs.
  2744  	CountryCode string `json:"countryCode,omitempty"`
  2745  	// CountryDartId: DART ID of the country to which this city belongs.
  2746  	CountryDartId int64 `json:"countryDartId,omitempty,string"`
  2747  	// DartId: DART ID of this city. This is the ID used for targeting and
  2748  	// generating reports.
  2749  	DartId int64 `json:"dartId,omitempty,string"`
  2750  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2751  	// "dfareporting#city".
  2752  	Kind string `json:"kind,omitempty"`
  2753  	// MetroCode: Metro region code of the metro region (DMA) to which this city
  2754  	// belongs.
  2755  	MetroCode string `json:"metroCode,omitempty"`
  2756  	// MetroDmaId: ID of the metro region (DMA) to which this city belongs.
  2757  	MetroDmaId int64 `json:"metroDmaId,omitempty,string"`
  2758  	// Name: Name of this city.
  2759  	Name string `json:"name,omitempty"`
  2760  	// RegionCode: Region code of the region to which this city belongs.
  2761  	RegionCode string `json:"regionCode,omitempty"`
  2762  	// RegionDartId: DART ID of the region to which this city belongs.
  2763  	RegionDartId int64 `json:"regionDartId,omitempty,string"`
  2764  	// ForceSendFields is a list of field names (e.g. "CountryCode") to
  2765  	// unconditionally include in API requests. By default, fields with empty or
  2766  	// default values are omitted from API requests. See
  2767  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2768  	// details.
  2769  	ForceSendFields []string `json:"-"`
  2770  	// NullFields is a list of field names (e.g. "CountryCode") to include in API
  2771  	// requests with the JSON null value. By default, fields with empty values are
  2772  	// omitted from API requests. See
  2773  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2774  	NullFields []string `json:"-"`
  2775  }
  2776  
  2777  func (s *City) MarshalJSON() ([]byte, error) {
  2778  	type NoMethod City
  2779  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2780  }
  2781  
  2782  // ClickTag: Creative Click Tag.
  2783  type ClickTag struct {
  2784  	// ClickThroughUrl: Parameter value for the specified click tag. This field
  2785  	// contains a click-through url.
  2786  	ClickThroughUrl *CreativeClickThroughUrl `json:"clickThroughUrl,omitempty"`
  2787  	// EventName: Advertiser event name associated with the click tag. This field
  2788  	// is used by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives. Applicable to
  2789  	// DISPLAY when the primary asset type is not HTML_IMAGE.
  2790  	EventName string `json:"eventName,omitempty"`
  2791  	// Name: Parameter name for the specified click tag. For DISPLAY_IMAGE_GALLERY
  2792  	// creative assets, this field must match the value of the creative asset's
  2793  	// creativeAssetId.name field.
  2794  	Name string `json:"name,omitempty"`
  2795  	// ForceSendFields is a list of field names (e.g. "ClickThroughUrl") to
  2796  	// unconditionally include in API requests. By default, fields with empty or
  2797  	// default values are omitted from API requests. See
  2798  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2799  	// details.
  2800  	ForceSendFields []string `json:"-"`
  2801  	// NullFields is a list of field names (e.g. "ClickThroughUrl") to include in
  2802  	// API requests with the JSON null value. By default, fields with empty values
  2803  	// are omitted from API requests. See
  2804  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2805  	NullFields []string `json:"-"`
  2806  }
  2807  
  2808  func (s *ClickTag) MarshalJSON() ([]byte, error) {
  2809  	type NoMethod ClickTag
  2810  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2811  }
  2812  
  2813  // ClickThroughUrl: Click-through URL
  2814  type ClickThroughUrl struct {
  2815  	// ComputedClickThroughUrl: Read-only convenience field representing the actual
  2816  	// URL that will be used for this click-through. The URL is computed as
  2817  	// follows: - If defaultLandingPage is enabled then the campaign's default
  2818  	// landing page URL is assigned to this field. - If defaultLandingPage is not
  2819  	// enabled and a landingPageId is specified then that landing page's URL is
  2820  	// assigned to this field. - If neither of the above cases apply, then the
  2821  	// customClickThroughUrl is assigned to this field.
  2822  	ComputedClickThroughUrl string `json:"computedClickThroughUrl,omitempty"`
  2823  	// CustomClickThroughUrl: Custom click-through URL. Applicable if the
  2824  	// defaultLandingPage field is set to false and the landingPageId field is left
  2825  	// unset.
  2826  	CustomClickThroughUrl string `json:"customClickThroughUrl,omitempty"`
  2827  	// DefaultLandingPage: Whether the campaign default landing page is used.
  2828  	DefaultLandingPage bool `json:"defaultLandingPage,omitempty"`
  2829  	// LandingPageId: ID of the landing page for the click-through URL. Applicable
  2830  	// if the defaultLandingPage field is set to false.
  2831  	LandingPageId int64 `json:"landingPageId,omitempty,string"`
  2832  	// ForceSendFields is a list of field names (e.g. "ComputedClickThroughUrl") to
  2833  	// unconditionally include in API requests. By default, fields with empty or
  2834  	// default values are omitted from API requests. See
  2835  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2836  	// details.
  2837  	ForceSendFields []string `json:"-"`
  2838  	// NullFields is a list of field names (e.g. "ComputedClickThroughUrl") to
  2839  	// include in API requests with the JSON null value. By default, fields with
  2840  	// empty values are omitted from API requests. See
  2841  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2842  	NullFields []string `json:"-"`
  2843  }
  2844  
  2845  func (s *ClickThroughUrl) MarshalJSON() ([]byte, error) {
  2846  	type NoMethod ClickThroughUrl
  2847  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2848  }
  2849  
  2850  // ClickThroughUrlSuffixProperties: Click Through URL Suffix settings.
  2851  type ClickThroughUrlSuffixProperties struct {
  2852  	// ClickThroughUrlSuffix: Click-through URL suffix to apply to all ads in this
  2853  	// entity's scope. Must be less than 128 characters long.
  2854  	ClickThroughUrlSuffix string `json:"clickThroughUrlSuffix,omitempty"`
  2855  	// OverrideInheritedSuffix: Whether this entity should override the inherited
  2856  	// click-through URL suffix with its own defined value.
  2857  	OverrideInheritedSuffix bool `json:"overrideInheritedSuffix,omitempty"`
  2858  	// ForceSendFields is a list of field names (e.g. "ClickThroughUrlSuffix") to
  2859  	// unconditionally include in API requests. By default, fields with empty or
  2860  	// default values are omitted from API requests. See
  2861  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2862  	// details.
  2863  	ForceSendFields []string `json:"-"`
  2864  	// NullFields is a list of field names (e.g. "ClickThroughUrlSuffix") to
  2865  	// include in API requests with the JSON null value. By default, fields with
  2866  	// empty values are omitted from API requests. See
  2867  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2868  	NullFields []string `json:"-"`
  2869  }
  2870  
  2871  func (s *ClickThroughUrlSuffixProperties) MarshalJSON() ([]byte, error) {
  2872  	type NoMethod ClickThroughUrlSuffixProperties
  2873  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2874  }
  2875  
  2876  // CompanionClickThroughOverride: Companion Click-through override.
  2877  type CompanionClickThroughOverride struct {
  2878  	// ClickThroughUrl: Click-through URL of this companion click-through override.
  2879  	ClickThroughUrl *ClickThroughUrl `json:"clickThroughUrl,omitempty"`
  2880  	// CreativeId: ID of the creative for this companion click-through override.
  2881  	CreativeId int64 `json:"creativeId,omitempty,string"`
  2882  	// ForceSendFields is a list of field names (e.g. "ClickThroughUrl") to
  2883  	// unconditionally include in API requests. By default, fields with empty or
  2884  	// default values are omitted from API requests. See
  2885  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2886  	// details.
  2887  	ForceSendFields []string `json:"-"`
  2888  	// NullFields is a list of field names (e.g. "ClickThroughUrl") to include in
  2889  	// API requests with the JSON null value. By default, fields with empty values
  2890  	// are omitted from API requests. See
  2891  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2892  	NullFields []string `json:"-"`
  2893  }
  2894  
  2895  func (s *CompanionClickThroughOverride) MarshalJSON() ([]byte, error) {
  2896  	type NoMethod CompanionClickThroughOverride
  2897  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2898  }
  2899  
  2900  // CompanionSetting: Companion Settings
  2901  type CompanionSetting struct {
  2902  	// CompanionsDisabled: Whether companions are disabled for this placement.
  2903  	CompanionsDisabled bool `json:"companionsDisabled,omitempty"`
  2904  	// EnabledSizes: Allowlist of companion sizes to be served to this placement.
  2905  	// Set this list to null or empty to serve all companion sizes.
  2906  	EnabledSizes []*Size `json:"enabledSizes,omitempty"`
  2907  	// ImageOnly: Whether to serve only static images as companions.
  2908  	ImageOnly bool `json:"imageOnly,omitempty"`
  2909  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2910  	// "dfareporting#companionSetting".
  2911  	Kind string `json:"kind,omitempty"`
  2912  	// ForceSendFields is a list of field names (e.g. "CompanionsDisabled") to
  2913  	// unconditionally include in API requests. By default, fields with empty or
  2914  	// default values are omitted from API requests. See
  2915  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2916  	// details.
  2917  	ForceSendFields []string `json:"-"`
  2918  	// NullFields is a list of field names (e.g. "CompanionsDisabled") to include
  2919  	// in API requests with the JSON null value. By default, fields with empty
  2920  	// values are omitted from API requests. See
  2921  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2922  	NullFields []string `json:"-"`
  2923  }
  2924  
  2925  func (s *CompanionSetting) MarshalJSON() ([]byte, error) {
  2926  	type NoMethod CompanionSetting
  2927  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2928  }
  2929  
  2930  // CompatibleFields: Represents a response to the queryCompatibleFields method.
  2931  type CompatibleFields struct {
  2932  	// CrossDimensionReachReportCompatibleFields: Contains items that are
  2933  	// compatible to be selected for a report of type "CROSS_DIMENSION_REACH".
  2934  	CrossDimensionReachReportCompatibleFields *CrossDimensionReachReportCompatibleFields `json:"crossDimensionReachReportCompatibleFields,omitempty"`
  2935  	// FloodlightReportCompatibleFields: Contains items that are compatible to be
  2936  	// selected for a report of type "FLOODLIGHT".
  2937  	FloodlightReportCompatibleFields *FloodlightReportCompatibleFields `json:"floodlightReportCompatibleFields,omitempty"`
  2938  	// Kind: The kind of resource this is, in this case
  2939  	// dfareporting#compatibleFields.
  2940  	Kind string `json:"kind,omitempty"`
  2941  	// PathAttributionReportCompatibleFields: Contains items that are compatible to
  2942  	// be selected for a report of type "PATH_ATTRIBUTION".
  2943  	PathAttributionReportCompatibleFields *PathReportCompatibleFields `json:"pathAttributionReportCompatibleFields,omitempty"`
  2944  	// PathReportCompatibleFields: Contains items that are compatible to be
  2945  	// selected for a report of type "PATH".
  2946  	PathReportCompatibleFields *PathReportCompatibleFields `json:"pathReportCompatibleFields,omitempty"`
  2947  	// PathToConversionReportCompatibleFields: Contains items that are compatible
  2948  	// to be selected for a report of type "PATH_TO_CONVERSION".
  2949  	PathToConversionReportCompatibleFields *PathToConversionReportCompatibleFields `json:"pathToConversionReportCompatibleFields,omitempty"`
  2950  	// ReachReportCompatibleFields: Contains items that are compatible to be
  2951  	// selected for a report of type "REACH".
  2952  	ReachReportCompatibleFields *ReachReportCompatibleFields `json:"reachReportCompatibleFields,omitempty"`
  2953  	// ReportCompatibleFields: Contains items that are compatible to be selected
  2954  	// for a report of type "STANDARD".
  2955  	ReportCompatibleFields *ReportCompatibleFields `json:"reportCompatibleFields,omitempty"`
  2956  
  2957  	// ServerResponse contains the HTTP response code and headers from the server.
  2958  	googleapi.ServerResponse `json:"-"`
  2959  	// ForceSendFields is a list of field names (e.g.
  2960  	// "CrossDimensionReachReportCompatibleFields") to unconditionally include in
  2961  	// API requests. By default, fields with empty or default values are omitted
  2962  	// from API requests. See
  2963  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2964  	// details.
  2965  	ForceSendFields []string `json:"-"`
  2966  	// NullFields is a list of field names (e.g.
  2967  	// "CrossDimensionReachReportCompatibleFields") to include in API requests with
  2968  	// the JSON null value. By default, fields with empty values are omitted from
  2969  	// API requests. See https://pkg.go.dev/google.golang.org/api#hdr-NullFields
  2970  	// for more details.
  2971  	NullFields []string `json:"-"`
  2972  }
  2973  
  2974  func (s *CompatibleFields) MarshalJSON() ([]byte, error) {
  2975  	type NoMethod CompatibleFields
  2976  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2977  }
  2978  
  2979  // ConnectionType: Contains information about an internet connection type that
  2980  // can be targeted by ads. Clients can use the connection type to target mobile
  2981  // vs. broadband users.
  2982  type ConnectionType struct {
  2983  	// Id: ID of this connection type.
  2984  	Id int64 `json:"id,omitempty,string"`
  2985  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  2986  	// "dfareporting#connectionType".
  2987  	Kind string `json:"kind,omitempty"`
  2988  	// Name: Name of this connection type.
  2989  	Name string `json:"name,omitempty"`
  2990  
  2991  	// ServerResponse contains the HTTP response code and headers from the server.
  2992  	googleapi.ServerResponse `json:"-"`
  2993  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  2994  	// include in API requests. By default, fields with empty or default values are
  2995  	// omitted from API requests. See
  2996  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2997  	// details.
  2998  	ForceSendFields []string `json:"-"`
  2999  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  3000  	// with the JSON null value. By default, fields with empty values are omitted
  3001  	// from API requests. See
  3002  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3003  	NullFields []string `json:"-"`
  3004  }
  3005  
  3006  func (s *ConnectionType) MarshalJSON() ([]byte, error) {
  3007  	type NoMethod ConnectionType
  3008  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3009  }
  3010  
  3011  // ConnectionTypesListResponse: Connection Type List Response
  3012  type ConnectionTypesListResponse struct {
  3013  	// ConnectionTypes: Collection of connection types such as broadband and
  3014  	// mobile.
  3015  	ConnectionTypes []*ConnectionType `json:"connectionTypes,omitempty"`
  3016  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3017  	// "dfareporting#connectionTypesListResponse".
  3018  	Kind string `json:"kind,omitempty"`
  3019  
  3020  	// ServerResponse contains the HTTP response code and headers from the server.
  3021  	googleapi.ServerResponse `json:"-"`
  3022  	// ForceSendFields is a list of field names (e.g. "ConnectionTypes") to
  3023  	// unconditionally include in API requests. By default, fields with empty or
  3024  	// default values are omitted from API requests. See
  3025  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3026  	// details.
  3027  	ForceSendFields []string `json:"-"`
  3028  	// NullFields is a list of field names (e.g. "ConnectionTypes") to include in
  3029  	// API requests with the JSON null value. By default, fields with empty values
  3030  	// are omitted from API requests. See
  3031  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3032  	NullFields []string `json:"-"`
  3033  }
  3034  
  3035  func (s *ConnectionTypesListResponse) MarshalJSON() ([]byte, error) {
  3036  	type NoMethod ConnectionTypesListResponse
  3037  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3038  }
  3039  
  3040  // ContentCategoriesListResponse: Content Category List Response
  3041  type ContentCategoriesListResponse struct {
  3042  	// ContentCategories: Content category collection.
  3043  	ContentCategories []*ContentCategory `json:"contentCategories,omitempty"`
  3044  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3045  	// "dfareporting#contentCategoriesListResponse".
  3046  	Kind string `json:"kind,omitempty"`
  3047  	// NextPageToken: Pagination token to be used for the next list operation.
  3048  	NextPageToken string `json:"nextPageToken,omitempty"`
  3049  
  3050  	// ServerResponse contains the HTTP response code and headers from the server.
  3051  	googleapi.ServerResponse `json:"-"`
  3052  	// ForceSendFields is a list of field names (e.g. "ContentCategories") to
  3053  	// unconditionally include in API requests. By default, fields with empty or
  3054  	// default values are omitted from API requests. See
  3055  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3056  	// details.
  3057  	ForceSendFields []string `json:"-"`
  3058  	// NullFields is a list of field names (e.g. "ContentCategories") to include in
  3059  	// API requests with the JSON null value. By default, fields with empty values
  3060  	// are omitted from API requests. See
  3061  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3062  	NullFields []string `json:"-"`
  3063  }
  3064  
  3065  func (s *ContentCategoriesListResponse) MarshalJSON() ([]byte, error) {
  3066  	type NoMethod ContentCategoriesListResponse
  3067  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3068  }
  3069  
  3070  type ContentCategory struct {
  3071  	// AccountId: Account ID of this content category. This is a read-only field
  3072  	// that can be left blank.
  3073  	AccountId int64 `json:"accountId,omitempty,string"`
  3074  	// Id: ID of this content category. This is a read-only, auto-generated field.
  3075  	Id int64 `json:"id,omitempty,string"`
  3076  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3077  	// "dfareporting#contentCategory".
  3078  	Kind string `json:"kind,omitempty"`
  3079  	// Name: Name of this content category. This is a required field and must be
  3080  	// less than 256 characters long and unique among content categories of the
  3081  	// same account.
  3082  	Name string `json:"name,omitempty"`
  3083  
  3084  	// ServerResponse contains the HTTP response code and headers from the server.
  3085  	googleapi.ServerResponse `json:"-"`
  3086  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  3087  	// unconditionally include in API requests. By default, fields with empty or
  3088  	// default values are omitted from API requests. See
  3089  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3090  	// details.
  3091  	ForceSendFields []string `json:"-"`
  3092  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  3093  	// requests with the JSON null value. By default, fields with empty values are
  3094  	// omitted from API requests. See
  3095  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3096  	NullFields []string `json:"-"`
  3097  }
  3098  
  3099  func (s *ContentCategory) MarshalJSON() ([]byte, error) {
  3100  	type NoMethod ContentCategory
  3101  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3102  }
  3103  
  3104  // Conversion: A Conversion represents when a user successfully performs a
  3105  // desired action after seeing an ad.
  3106  type Conversion struct {
  3107  	// AdUserDataConsent: This represents consent for ad user data.
  3108  	//
  3109  	// Possible values:
  3110  	//   "GRANTED" - Granted.
  3111  	//   "DENIED" - Denied.
  3112  	AdUserDataConsent string `json:"adUserDataConsent,omitempty"`
  3113  	// ChildDirectedTreatment: Whether this particular request may come from a user
  3114  	// under the age of 13, under COPPA compliance.
  3115  	ChildDirectedTreatment bool `json:"childDirectedTreatment,omitempty"`
  3116  	// CustomVariables: Custom floodlight variables. This field may only be used
  3117  	// when calling batchinsert; it is not supported by batchupdate.
  3118  	CustomVariables []*CustomFloodlightVariable `json:"customVariables,omitempty"`
  3119  	// Dclid: The display click ID. This field is mutually exclusive with
  3120  	// encryptedUserId, encryptedUserIdCandidates[], matchId, mobileDeviceId,
  3121  	// gclid, and impressionId. This or encryptedUserId or
  3122  	// encryptedUserIdCandidates[] or matchId or mobileDeviceId or gclid or
  3123  	// impressionId is a required field.
  3124  	Dclid string `json:"dclid,omitempty"`
  3125  	// EncryptedUserId: The alphanumeric encrypted user ID. When set,
  3126  	// encryptionInfo should also be specified. This field is mutually exclusive
  3127  	// with encryptedUserIdCandidates[], matchId, mobileDeviceId, gclid, dclid, and
  3128  	// impressionId. This or encryptedUserIdCandidates[] or matchId or
  3129  	// mobileDeviceId or gclid or dclid or impressionId is a required field.
  3130  	EncryptedUserId string `json:"encryptedUserId,omitempty"`
  3131  	// EncryptedUserIdCandidates: A list of the alphanumeric encrypted user IDs.
  3132  	// Any user ID with exposure prior to the conversion timestamp will be used in
  3133  	// the inserted conversion. If no such user ID is found then the conversion
  3134  	// will be rejected with INVALID_ARGUMENT error. When set, encryptionInfo
  3135  	// should also be specified. This field may only be used when calling
  3136  	// batchinsert; it is not supported by batchupdate. This field is mutually
  3137  	// exclusive with encryptedUserId, matchId, mobileDeviceId, gclid dclid, and
  3138  	// impressionId. This or encryptedUserId or matchId or mobileDeviceId or gclid
  3139  	// or dclid or impressionId is a required field.
  3140  	EncryptedUserIdCandidates []string `json:"encryptedUserIdCandidates,omitempty"`
  3141  	// FloodlightActivityId: Floodlight Activity ID of this conversion. This is a
  3142  	// required field.
  3143  	FloodlightActivityId int64 `json:"floodlightActivityId,omitempty,string"`
  3144  	// FloodlightConfigurationId: Floodlight Configuration ID of this conversion.
  3145  	// This is a required field.
  3146  	FloodlightConfigurationId int64 `json:"floodlightConfigurationId,omitempty,string"`
  3147  	// Gclid: The Google click ID. This field is mutually exclusive with
  3148  	// encryptedUserId, encryptedUserIdCandidates[], matchId, mobileDeviceId,
  3149  	// dclid, and impressionId. This or encryptedUserId or
  3150  	// encryptedUserIdCandidates[] or matchId or mobileDeviceId or dclid or
  3151  	// impressionId is a required field.
  3152  	Gclid string `json:"gclid,omitempty"`
  3153  	// ImpressionId: The impression ID. This field is mutually exclusive with
  3154  	// encryptedUserId, encryptedUserIdCandidates[], matchId, mobileDeviceId, and
  3155  	// gclid. One of these identifiers must be set.
  3156  	ImpressionId string `json:"impressionId,omitempty"`
  3157  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3158  	// "dfareporting#conversion".
  3159  	Kind string `json:"kind,omitempty"`
  3160  	// LimitAdTracking: Whether Limit Ad Tracking is enabled. When set to true, the
  3161  	// conversion will be used for reporting but not targeting. This will prevent
  3162  	// remarketing.
  3163  	LimitAdTracking bool `json:"limitAdTracking,omitempty"`
  3164  	// MatchId: The match ID field. A match ID is your own first-party identifier
  3165  	// that has been synced with Google using the match ID feature in Floodlight.
  3166  	// This field is mutually exclusive with encryptedUserId,
  3167  	// encryptedUserIdCandidates[],mobileDeviceId, gclid, dclid, and impressionId.
  3168  	// This or encryptedUserId orencryptedUserIdCandidates[] or mobileDeviceId or
  3169  	// gclid or dclid or impressionIdis a required field.
  3170  	MatchId string `json:"matchId,omitempty"`
  3171  	// MobileDeviceId: The mobile device ID. This field is mutually exclusive with
  3172  	// encryptedUserId, encryptedUserIdCandidates[], matchId, gclid, dclid, and
  3173  	// impressionId. This or encryptedUserId or encryptedUserIdCandidates[] or
  3174  	// matchId or gclid or dclid or impressionId is a required field.
  3175  	MobileDeviceId string `json:"mobileDeviceId,omitempty"`
  3176  	// NonPersonalizedAd: Whether the conversion was for a non personalized ad.
  3177  	NonPersonalizedAd bool `json:"nonPersonalizedAd,omitempty"`
  3178  	// Ordinal: The ordinal of the conversion. Use this field to control how
  3179  	// conversions of the same user and day are de-duplicated. This is a required
  3180  	// field.
  3181  	Ordinal string `json:"ordinal,omitempty"`
  3182  	// Quantity: The quantity of the conversion. This is a required field.
  3183  	Quantity int64 `json:"quantity,omitempty,string"`
  3184  	// TimestampMicros: The timestamp of conversion, in Unix epoch micros. This is
  3185  	// a required field.
  3186  	TimestampMicros int64 `json:"timestampMicros,omitempty,string"`
  3187  	// TreatmentForUnderage: Whether this particular request may come from a user
  3188  	// under the age of 16 (may differ by country), under compliance with the
  3189  	// European Union's General Data Protection Regulation (GDPR).
  3190  	TreatmentForUnderage bool `json:"treatmentForUnderage,omitempty"`
  3191  	// UserIdentifiers: The user identifiers to enhance the conversion. The maximum
  3192  	// number of user identifiers for each conversion is 5.
  3193  	UserIdentifiers []*UserIdentifier `json:"userIdentifiers,omitempty"`
  3194  	// Value: The value of the conversion. This is a required field.
  3195  	Value float64 `json:"value,omitempty"`
  3196  	// ForceSendFields is a list of field names (e.g. "AdUserDataConsent") to
  3197  	// unconditionally include in API requests. By default, fields with empty or
  3198  	// default values are omitted from API requests. See
  3199  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3200  	// details.
  3201  	ForceSendFields []string `json:"-"`
  3202  	// NullFields is a list of field names (e.g. "AdUserDataConsent") to include in
  3203  	// API requests with the JSON null value. By default, fields with empty values
  3204  	// are omitted from API requests. See
  3205  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3206  	NullFields []string `json:"-"`
  3207  }
  3208  
  3209  func (s *Conversion) MarshalJSON() ([]byte, error) {
  3210  	type NoMethod Conversion
  3211  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3212  }
  3213  
  3214  func (s *Conversion) UnmarshalJSON(data []byte) error {
  3215  	type NoMethod Conversion
  3216  	var s1 struct {
  3217  		Value gensupport.JSONFloat64 `json:"value"`
  3218  		*NoMethod
  3219  	}
  3220  	s1.NoMethod = (*NoMethod)(s)
  3221  	if err := json.Unmarshal(data, &s1); err != nil {
  3222  		return err
  3223  	}
  3224  	s.Value = float64(s1.Value)
  3225  	return nil
  3226  }
  3227  
  3228  // ConversionError: The error code and description for a conversion that failed
  3229  // to insert or update.
  3230  type ConversionError struct {
  3231  	// Code: The error code.
  3232  	//
  3233  	// Possible values:
  3234  	//   "INVALID_ARGUMENT"
  3235  	//   "INTERNAL"
  3236  	//   "PERMISSION_DENIED"
  3237  	//   "NOT_FOUND"
  3238  	Code string `json:"code,omitempty"`
  3239  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3240  	// "dfareporting#conversionError".
  3241  	Kind string `json:"kind,omitempty"`
  3242  	// Message: A description of the error.
  3243  	Message string `json:"message,omitempty"`
  3244  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  3245  	// include in API requests. By default, fields with empty or default values are
  3246  	// omitted from API requests. See
  3247  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3248  	// details.
  3249  	ForceSendFields []string `json:"-"`
  3250  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  3251  	// with the JSON null value. By default, fields with empty values are omitted
  3252  	// from API requests. See
  3253  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3254  	NullFields []string `json:"-"`
  3255  }
  3256  
  3257  func (s *ConversionError) MarshalJSON() ([]byte, error) {
  3258  	type NoMethod ConversionError
  3259  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3260  }
  3261  
  3262  // ConversionStatus: The original conversion that was inserted or updated and
  3263  // whether there were any errors.
  3264  type ConversionStatus struct {
  3265  	// Conversion: The original conversion that was inserted or updated.
  3266  	Conversion *Conversion `json:"conversion,omitempty"`
  3267  	// Errors: A list of errors related to this conversion.
  3268  	Errors []*ConversionError `json:"errors,omitempty"`
  3269  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3270  	// "dfareporting#conversionStatus".
  3271  	Kind string `json:"kind,omitempty"`
  3272  	// ForceSendFields is a list of field names (e.g. "Conversion") to
  3273  	// unconditionally include in API requests. By default, fields with empty or
  3274  	// default values are omitted from API requests. See
  3275  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3276  	// details.
  3277  	ForceSendFields []string `json:"-"`
  3278  	// NullFields is a list of field names (e.g. "Conversion") to include in API
  3279  	// requests with the JSON null value. By default, fields with empty values are
  3280  	// omitted from API requests. See
  3281  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3282  	NullFields []string `json:"-"`
  3283  }
  3284  
  3285  func (s *ConversionStatus) MarshalJSON() ([]byte, error) {
  3286  	type NoMethod ConversionStatus
  3287  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3288  }
  3289  
  3290  // ConversionsBatchInsertRequest: Insert Conversions Request.
  3291  type ConversionsBatchInsertRequest struct {
  3292  	// Conversions: The set of conversions to insert.
  3293  	Conversions []*Conversion `json:"conversions,omitempty"`
  3294  	// EncryptionInfo: Describes how encryptedUserId or encryptedUserIdCandidates[]
  3295  	// is encrypted. This is a required field if encryptedUserId or
  3296  	// encryptedUserIdCandidates[] is used.
  3297  	EncryptionInfo *EncryptionInfo `json:"encryptionInfo,omitempty"`
  3298  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3299  	// "dfareporting#conversionsBatchInsertRequest".
  3300  	Kind string `json:"kind,omitempty"`
  3301  	// ForceSendFields is a list of field names (e.g. "Conversions") to
  3302  	// unconditionally include in API requests. By default, fields with empty or
  3303  	// default values are omitted from API requests. See
  3304  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3305  	// details.
  3306  	ForceSendFields []string `json:"-"`
  3307  	// NullFields is a list of field names (e.g. "Conversions") to include in API
  3308  	// requests with the JSON null value. By default, fields with empty values are
  3309  	// omitted from API requests. See
  3310  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3311  	NullFields []string `json:"-"`
  3312  }
  3313  
  3314  func (s *ConversionsBatchInsertRequest) MarshalJSON() ([]byte, error) {
  3315  	type NoMethod ConversionsBatchInsertRequest
  3316  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3317  }
  3318  
  3319  // ConversionsBatchInsertResponse: Insert Conversions Response.
  3320  type ConversionsBatchInsertResponse struct {
  3321  	// HasFailures: Indicates that some or all conversions failed to insert.
  3322  	HasFailures bool `json:"hasFailures,omitempty"`
  3323  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3324  	// "dfareporting#conversionsBatchInsertResponse".
  3325  	Kind string `json:"kind,omitempty"`
  3326  	// Status: The insert status of each conversion. Statuses are returned in the
  3327  	// same order that conversions are inserted.
  3328  	Status []*ConversionStatus `json:"status,omitempty"`
  3329  
  3330  	// ServerResponse contains the HTTP response code and headers from the server.
  3331  	googleapi.ServerResponse `json:"-"`
  3332  	// ForceSendFields is a list of field names (e.g. "HasFailures") to
  3333  	// unconditionally include in API requests. By default, fields with empty or
  3334  	// default values are omitted from API requests. See
  3335  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3336  	// details.
  3337  	ForceSendFields []string `json:"-"`
  3338  	// NullFields is a list of field names (e.g. "HasFailures") to include in API
  3339  	// requests with the JSON null value. By default, fields with empty values are
  3340  	// omitted from API requests. See
  3341  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3342  	NullFields []string `json:"-"`
  3343  }
  3344  
  3345  func (s *ConversionsBatchInsertResponse) MarshalJSON() ([]byte, error) {
  3346  	type NoMethod ConversionsBatchInsertResponse
  3347  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3348  }
  3349  
  3350  // ConversionsBatchUpdateRequest: Update Conversions Request.
  3351  type ConversionsBatchUpdateRequest struct {
  3352  	// Conversions: The set of conversions to update.
  3353  	Conversions []*Conversion `json:"conversions,omitempty"`
  3354  	// EncryptionInfo: Describes how encryptedUserId is encrypted. This is a
  3355  	// required field if encryptedUserId is used.
  3356  	EncryptionInfo *EncryptionInfo `json:"encryptionInfo,omitempty"`
  3357  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3358  	// "dfareporting#conversionsBatchUpdateRequest".
  3359  	Kind string `json:"kind,omitempty"`
  3360  	// ForceSendFields is a list of field names (e.g. "Conversions") to
  3361  	// unconditionally include in API requests. By default, fields with empty or
  3362  	// default values are omitted from API requests. See
  3363  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3364  	// details.
  3365  	ForceSendFields []string `json:"-"`
  3366  	// NullFields is a list of field names (e.g. "Conversions") to include in API
  3367  	// requests with the JSON null value. By default, fields with empty values are
  3368  	// omitted from API requests. See
  3369  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3370  	NullFields []string `json:"-"`
  3371  }
  3372  
  3373  func (s *ConversionsBatchUpdateRequest) MarshalJSON() ([]byte, error) {
  3374  	type NoMethod ConversionsBatchUpdateRequest
  3375  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3376  }
  3377  
  3378  // ConversionsBatchUpdateResponse: Update Conversions Response.
  3379  type ConversionsBatchUpdateResponse struct {
  3380  	// HasFailures: Indicates that some or all conversions failed to update.
  3381  	HasFailures bool `json:"hasFailures,omitempty"`
  3382  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3383  	// "dfareporting#conversionsBatchUpdateResponse".
  3384  	Kind string `json:"kind,omitempty"`
  3385  	// Status: The update status of each conversion. Statuses are returned in the
  3386  	// same order that conversions are updated.
  3387  	Status []*ConversionStatus `json:"status,omitempty"`
  3388  
  3389  	// ServerResponse contains the HTTP response code and headers from the server.
  3390  	googleapi.ServerResponse `json:"-"`
  3391  	// ForceSendFields is a list of field names (e.g. "HasFailures") to
  3392  	// unconditionally include in API requests. By default, fields with empty or
  3393  	// default values are omitted from API requests. See
  3394  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3395  	// details.
  3396  	ForceSendFields []string `json:"-"`
  3397  	// NullFields is a list of field names (e.g. "HasFailures") to include in API
  3398  	// requests with the JSON null value. By default, fields with empty values are
  3399  	// omitted from API requests. See
  3400  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3401  	NullFields []string `json:"-"`
  3402  }
  3403  
  3404  func (s *ConversionsBatchUpdateResponse) MarshalJSON() ([]byte, error) {
  3405  	type NoMethod ConversionsBatchUpdateResponse
  3406  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3407  }
  3408  
  3409  // CountriesListResponse: Country List Response
  3410  type CountriesListResponse struct {
  3411  	// Countries: Country collection.
  3412  	Countries []*Country `json:"countries,omitempty"`
  3413  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3414  	// "dfareporting#countriesListResponse".
  3415  	Kind string `json:"kind,omitempty"`
  3416  
  3417  	// ServerResponse contains the HTTP response code and headers from the server.
  3418  	googleapi.ServerResponse `json:"-"`
  3419  	// ForceSendFields is a list of field names (e.g. "Countries") to
  3420  	// unconditionally include in API requests. By default, fields with empty or
  3421  	// default values are omitted from API requests. See
  3422  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3423  	// details.
  3424  	ForceSendFields []string `json:"-"`
  3425  	// NullFields is a list of field names (e.g. "Countries") to include in API
  3426  	// requests with the JSON null value. By default, fields with empty values are
  3427  	// omitted from API requests. See
  3428  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3429  	NullFields []string `json:"-"`
  3430  }
  3431  
  3432  func (s *CountriesListResponse) MarshalJSON() ([]byte, error) {
  3433  	type NoMethod CountriesListResponse
  3434  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3435  }
  3436  
  3437  // Country: Contains information about a country that can be targeted by ads.
  3438  type Country struct {
  3439  	// CountryCode: Country code.
  3440  	CountryCode string `json:"countryCode,omitempty"`
  3441  	// DartId: DART ID of this country. This is the ID used for targeting and
  3442  	// generating reports.
  3443  	DartId int64 `json:"dartId,omitempty,string"`
  3444  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3445  	// "dfareporting#country".
  3446  	Kind string `json:"kind,omitempty"`
  3447  	// Name: Name of this country.
  3448  	Name string `json:"name,omitempty"`
  3449  	// SslEnabled: Whether ad serving supports secure servers in this country.
  3450  	SslEnabled bool `json:"sslEnabled,omitempty"`
  3451  
  3452  	// ServerResponse contains the HTTP response code and headers from the server.
  3453  	googleapi.ServerResponse `json:"-"`
  3454  	// ForceSendFields is a list of field names (e.g. "CountryCode") to
  3455  	// unconditionally include in API requests. By default, fields with empty or
  3456  	// default values are omitted from API requests. See
  3457  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3458  	// details.
  3459  	ForceSendFields []string `json:"-"`
  3460  	// NullFields is a list of field names (e.g. "CountryCode") to include in API
  3461  	// requests with the JSON null value. By default, fields with empty values are
  3462  	// omitted from API requests. See
  3463  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3464  	NullFields []string `json:"-"`
  3465  }
  3466  
  3467  func (s *Country) MarshalJSON() ([]byte, error) {
  3468  	type NoMethod Country
  3469  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3470  }
  3471  
  3472  // Creative: Contains properties of a Creative.
  3473  type Creative struct {
  3474  	// AccountId: Account ID of this creative. This field, if left unset, will be
  3475  	// auto-generated for both insert and update operations. Applicable to all
  3476  	// creative types.
  3477  	AccountId int64 `json:"accountId,omitempty,string"`
  3478  	// Active: Whether the creative is active. Applicable to all creative types.
  3479  	Active bool `json:"active,omitempty"`
  3480  	// AdParameters: Ad parameters user for VPAID creative. This is a read-only
  3481  	// field. Applicable to the following creative types: all VPAID.
  3482  	AdParameters string `json:"adParameters,omitempty"`
  3483  	// AdTagKeys: Keywords for a Rich Media creative. Keywords let you customize
  3484  	// the creative settings of a Rich Media ad running on your site without having
  3485  	// to contact the advertiser. You can use keywords to dynamically change the
  3486  	// look or functionality of a creative. Applicable to the following creative
  3487  	// types: all RICH_MEDIA, and all VPAID.
  3488  	AdTagKeys []string `json:"adTagKeys,omitempty"`
  3489  	// AdditionalSizes: Additional sizes associated with a responsive creative.
  3490  	// When inserting or updating a creative either the size ID field or size width
  3491  	// and height fields can be used. Applicable to DISPLAY creatives when the
  3492  	// primary asset type is HTML_IMAGE.
  3493  	AdditionalSizes []*Size `json:"additionalSizes,omitempty"`
  3494  	// AdvertiserId: Required. Advertiser ID of this creative. This is a required
  3495  	// field. Applicable to all creative types.
  3496  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  3497  	// AllowScriptAccess: Whether script access is allowed for this creative. This
  3498  	// is a read-only and deprecated field which will automatically be set to true
  3499  	// on update. Applicable to the following creative types: FLASH_INPAGE.
  3500  	AllowScriptAccess bool `json:"allowScriptAccess,omitempty"`
  3501  	// Archived: Whether the creative is archived. Applicable to all creative
  3502  	// types.
  3503  	Archived bool `json:"archived,omitempty"`
  3504  	// ArtworkType: Type of artwork used for the creative. This is a read-only
  3505  	// field. Applicable to the following creative types: all RICH_MEDIA, and all
  3506  	// VPAID.
  3507  	//
  3508  	// Possible values:
  3509  	//   "ARTWORK_TYPE_FLASH" - The creative is a Flash creative.
  3510  	//   "ARTWORK_TYPE_HTML5" - The creative is HTML5.
  3511  	//   "ARTWORK_TYPE_MIXED" - The creative is HTML5 if available, Flash
  3512  	// otherwise.
  3513  	//   "ARTWORK_TYPE_IMAGE" - The creative is Image.
  3514  	ArtworkType string `json:"artworkType,omitempty"`
  3515  	// AuthoringSource: Source application where creative was authored. Presently,
  3516  	// only DBM authored creatives will have this field set. Applicable to all
  3517  	// creative types.
  3518  	//
  3519  	// Possible values:
  3520  	//   "CREATIVE_AUTHORING_SOURCE_DCM" - DCM-UI or external API used to author
  3521  	// the creative.
  3522  	//   "CREATIVE_AUTHORING_SOURCE_DBM" - DBM-UI used to author the creative.
  3523  	//   "CREATIVE_AUTHORING_SOURCE_STUDIO" - Studio-UI used to author the
  3524  	// creative.
  3525  	//   "CREATIVE_AUTHORING_SOURCE_GWD" - Google Web Designer used to author the
  3526  	// creative.
  3527  	//   "CREATIVE_AUTHORING_SOURCE_ACS" - ACS-UI used to author the creative.
  3528  	AuthoringSource string `json:"authoringSource,omitempty"`
  3529  	// AuthoringTool: Authoring tool for HTML5 banner creatives. This is a
  3530  	// read-only field. Applicable to the following creative types: HTML5_BANNER.
  3531  	//
  3532  	// Possible values:
  3533  	//   "NINJA"
  3534  	//   "SWIFFY"
  3535  	AuthoringTool string `json:"authoringTool,omitempty"`
  3536  	// AutoAdvanceImages: Whether images are automatically advanced for image
  3537  	// gallery creatives. Applicable to the following creative types:
  3538  	// DISPLAY_IMAGE_GALLERY.
  3539  	AutoAdvanceImages bool `json:"autoAdvanceImages,omitempty"`
  3540  	// BackgroundColor: The 6-character HTML color code, beginning with #, for the
  3541  	// background of the window area where the Flash file is displayed. Default is
  3542  	// white. Applicable to the following creative types: FLASH_INPAGE.
  3543  	BackgroundColor string `json:"backgroundColor,omitempty"`
  3544  	// BackupImageClickThroughUrl: Click-through URL for backup image. Applicable
  3545  	// to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.
  3546  	BackupImageClickThroughUrl *CreativeClickThroughUrl `json:"backupImageClickThroughUrl,omitempty"`
  3547  	// BackupImageFeatures: List of feature dependencies that will cause a backup
  3548  	// image to be served if the browser that serves the ad does not support them.
  3549  	// Feature dependencies are features that a browser must be able to support in
  3550  	// order to render your HTML5 creative asset correctly. This field is initially
  3551  	// auto-generated to contain all features detected by Campaign Manager for all
  3552  	// the assets of this creative and can then be modified by the client. To reset
  3553  	// this field, copy over all the creativeAssets' detected features. Applicable
  3554  	// to the following creative types: HTML5_BANNER. Applicable to DISPLAY when
  3555  	// the primary asset type is not HTML_IMAGE.
  3556  	//
  3557  	// Possible values:
  3558  	//   "CSS_FONT_FACE"
  3559  	//   "CSS_BACKGROUND_SIZE"
  3560  	//   "CSS_BORDER_IMAGE"
  3561  	//   "CSS_BORDER_RADIUS"
  3562  	//   "CSS_BOX_SHADOW"
  3563  	//   "CSS_FLEX_BOX"
  3564  	//   "CSS_HSLA"
  3565  	//   "CSS_MULTIPLE_BGS"
  3566  	//   "CSS_OPACITY"
  3567  	//   "CSS_RGBA"
  3568  	//   "CSS_TEXT_SHADOW"
  3569  	//   "CSS_ANIMATIONS"
  3570  	//   "CSS_COLUMNS"
  3571  	//   "CSS_GENERATED_CONTENT"
  3572  	//   "CSS_GRADIENTS"
  3573  	//   "CSS_REFLECTIONS"
  3574  	//   "CSS_TRANSFORMS"
  3575  	//   "CSS_TRANSFORMS3D"
  3576  	//   "CSS_TRANSITIONS"
  3577  	//   "APPLICATION_CACHE"
  3578  	//   "CANVAS"
  3579  	//   "CANVAS_TEXT"
  3580  	//   "DRAG_AND_DROP"
  3581  	//   "HASH_CHANGE"
  3582  	//   "HISTORY"
  3583  	//   "AUDIO"
  3584  	//   "VIDEO"
  3585  	//   "INDEXED_DB"
  3586  	//   "INPUT_ATTR_AUTOCOMPLETE"
  3587  	//   "INPUT_ATTR_AUTOFOCUS"
  3588  	//   "INPUT_ATTR_LIST"
  3589  	//   "INPUT_ATTR_PLACEHOLDER"
  3590  	//   "INPUT_ATTR_MAX"
  3591  	//   "INPUT_ATTR_MIN"
  3592  	//   "INPUT_ATTR_MULTIPLE"
  3593  	//   "INPUT_ATTR_PATTERN"
  3594  	//   "INPUT_ATTR_REQUIRED"
  3595  	//   "INPUT_ATTR_STEP"
  3596  	//   "INPUT_TYPE_SEARCH"
  3597  	//   "INPUT_TYPE_TEL"
  3598  	//   "INPUT_TYPE_URL"
  3599  	//   "INPUT_TYPE_EMAIL"
  3600  	//   "INPUT_TYPE_DATETIME"
  3601  	//   "INPUT_TYPE_DATE"
  3602  	//   "INPUT_TYPE_MONTH"
  3603  	//   "INPUT_TYPE_WEEK"
  3604  	//   "INPUT_TYPE_TIME"
  3605  	//   "INPUT_TYPE_DATETIME_LOCAL"
  3606  	//   "INPUT_TYPE_NUMBER"
  3607  	//   "INPUT_TYPE_RANGE"
  3608  	//   "INPUT_TYPE_COLOR"
  3609  	//   "LOCAL_STORAGE"
  3610  	//   "POST_MESSAGE" - POST_MESSAGE always required due to html5 implementation.
  3611  	//   "SESSION_STORAGE"
  3612  	//   "WEB_SOCKETS"
  3613  	//   "WEB_SQL_DATABASE"
  3614  	//   "WEB_WORKERS"
  3615  	//   "GEO_LOCATION"
  3616  	//   "INLINE_SVG"
  3617  	//   "SMIL"
  3618  	//   "SVG_HREF"
  3619  	//   "SVG_CLIP_PATHS"
  3620  	//   "TOUCH"
  3621  	//   "WEBGL"
  3622  	//   "SVG_FILTERS"
  3623  	//   "SVG_FE_IMAGE"
  3624  	BackupImageFeatures []string `json:"backupImageFeatures,omitempty"`
  3625  	// BackupImageReportingLabel: Reporting label used for HTML5 banner backup
  3626  	// image. Applicable to the following creative types: DISPLAY when the primary
  3627  	// asset type is not HTML_IMAGE.
  3628  	BackupImageReportingLabel string `json:"backupImageReportingLabel,omitempty"`
  3629  	// BackupImageTargetWindow: Target window for backup image. Applicable to the
  3630  	// following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to
  3631  	// DISPLAY when the primary asset type is not HTML_IMAGE.
  3632  	BackupImageTargetWindow *TargetWindow `json:"backupImageTargetWindow,omitempty"`
  3633  	// ClickTags: Click tags of the creative. For DISPLAY, FLASH_INPAGE, and
  3634  	// HTML5_BANNER creatives, this is a subset of detected click tags for the
  3635  	// assets associated with this creative. After creating a flash asset, detected
  3636  	// click tags will be returned in the creativeAssetMetadata. When inserting the
  3637  	// creative, populate the creative clickTags field using the
  3638  	// creativeAssetMetadata.clickTags field. For DISPLAY_IMAGE_GALLERY creatives,
  3639  	// there should be exactly one entry in this list for each image creative
  3640  	// asset. A click tag is matched with a corresponding creative asset by
  3641  	// matching the clickTag.name field with the creativeAsset.assetIdentifier.name
  3642  	// field. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY,
  3643  	// FLASH_INPAGE, HTML5_BANNER. Applicable to DISPLAY when the primary asset
  3644  	// type is not HTML_IMAGE.
  3645  	ClickTags []*ClickTag `json:"clickTags,omitempty"`
  3646  	// CommercialId: Industry standard ID assigned to creative for reach and
  3647  	// frequency. Applicable to INSTREAM_VIDEO_REDIRECT creatives.
  3648  	CommercialId string `json:"commercialId,omitempty"`
  3649  	// CompanionCreatives: List of companion creatives assigned to an in-Stream
  3650  	// video creative. Acceptable values include IDs of existing flash and image
  3651  	// creatives. Applicable to the following creative types: all VPAID, all
  3652  	// INSTREAM_AUDIO and all INSTREAM_VIDEO with dynamicAssetSelection set to
  3653  	// false.
  3654  	CompanionCreatives googleapi.Int64s `json:"companionCreatives,omitempty"`
  3655  	// Compatibility: Compatibilities associated with this creative. This is a
  3656  	// read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either
  3657  	// on desktop or on mobile devices or in mobile apps for regular or
  3658  	// interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering
  3659  	// in mobile apps. Only pre-existing creatives may have these compatibilities
  3660  	// since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL
  3661  	// instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads
  3662  	// developed with the VAST standard. IN_STREAM_AUDIO refers to rendering in
  3663  	// in-stream audio ads developed with the VAST standard. Applicable to all
  3664  	// creative types. Acceptable values are: - "APP" - "APP_INTERSTITIAL" -
  3665  	// "IN_STREAM_VIDEO" - "IN_STREAM_AUDIO" - "DISPLAY" - "DISPLAY_INTERSTITIAL"
  3666  	//
  3667  	// Possible values:
  3668  	//   "DISPLAY"
  3669  	//   "DISPLAY_INTERSTITIAL"
  3670  	//   "APP" - Deprecated enum value. No longer supported.
  3671  	//   "APP_INTERSTITIAL" - Deprecated enum value. No longer supported.
  3672  	//   "IN_STREAM_VIDEO"
  3673  	//   "IN_STREAM_AUDIO"
  3674  	Compatibility []string `json:"compatibility,omitempty"`
  3675  	// ConvertFlashToHtml5: Whether Flash assets associated with the creative need
  3676  	// to be automatically converted to HTML5. This flag is enabled by default and
  3677  	// users can choose to disable it if they don't want the system to generate and
  3678  	// use HTML5 asset for this creative. Applicable to the following creative
  3679  	// type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not
  3680  	// HTML_IMAGE.
  3681  	ConvertFlashToHtml5 bool `json:"convertFlashToHtml5,omitempty"`
  3682  	// CounterCustomEvents: List of counter events configured for the creative. For
  3683  	// DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from
  3684  	// clickTags. Applicable to the following creative types:
  3685  	// DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.
  3686  	CounterCustomEvents []*CreativeCustomEvent `json:"counterCustomEvents,omitempty"`
  3687  	// CreativeAssetSelection: Required if dynamicAssetSelection is true.
  3688  	CreativeAssetSelection *CreativeAssetSelection `json:"creativeAssetSelection,omitempty"`
  3689  	// CreativeAssets: Assets associated with a creative. Applicable to all but the
  3690  	// following creative types: INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT,
  3691  	// and REDIRECT
  3692  	CreativeAssets []*CreativeAsset `json:"creativeAssets,omitempty"`
  3693  	// CreativeFieldAssignments: Creative field assignments for this creative.
  3694  	// Applicable to all creative types.
  3695  	CreativeFieldAssignments []*CreativeFieldAssignment `json:"creativeFieldAssignments,omitempty"`
  3696  	// CustomKeyValues: Custom key-values for a Rich Media creative. Key-values let
  3697  	// you customize the creative settings of a Rich Media ad running on your site
  3698  	// without having to contact the advertiser. You can use key-values to
  3699  	// dynamically change the look or functionality of a creative. Applicable to
  3700  	// the following creative types: all RICH_MEDIA, and all VPAID.
  3701  	CustomKeyValues []string `json:"customKeyValues,omitempty"`
  3702  	// DynamicAssetSelection: Set this to true to enable the use of rules to target
  3703  	// individual assets in this creative. When set to true creativeAssetSelection
  3704  	// must be set. This also controls asset-level companions. When this is true,
  3705  	// companion creatives should be assigned to creative assets. Learn more.
  3706  	// Applicable to INSTREAM_VIDEO creatives.
  3707  	DynamicAssetSelection bool `json:"dynamicAssetSelection,omitempty"`
  3708  	// ExitCustomEvents: List of exit events configured for the creative. For
  3709  	// DISPLAY and DISPLAY_IMAGE_GALLERY creatives, these are read-only and
  3710  	// auto-generated from clickTags, For DISPLAY, an event is also created from
  3711  	// the backupImageReportingLabel. Applicable to the following creative types:
  3712  	// DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY
  3713  	// when the primary asset type is not HTML_IMAGE.
  3714  	ExitCustomEvents []*CreativeCustomEvent `json:"exitCustomEvents,omitempty"`
  3715  	// FsCommand: OpenWindow FSCommand of this creative. This lets the SWF file
  3716  	// communicate with either Flash Player or the program hosting Flash Player,
  3717  	// such as a web browser. This is only triggered if allowScriptAccess field is
  3718  	// true. Applicable to the following creative types: FLASH_INPAGE.
  3719  	FsCommand *FsCommand `json:"fsCommand,omitempty"`
  3720  	// HtmlCode: HTML code for the creative. This is a required field when
  3721  	// applicable. This field is ignored if htmlCodeLocked is true. Applicable to
  3722  	// the following creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER,
  3723  	// and all RICH_MEDIA.
  3724  	HtmlCode string `json:"htmlCode,omitempty"`
  3725  	// HtmlCodeLocked: Whether HTML code is generated by Campaign Manager or
  3726  	// manually entered. Set to true to ignore changes to htmlCode. Applicable to
  3727  	// the following creative types: FLASH_INPAGE and HTML5_BANNER.
  3728  	HtmlCodeLocked bool `json:"htmlCodeLocked,omitempty"`
  3729  	// Id: ID of this creative. This is a read-only, auto-generated field.
  3730  	// Applicable to all creative types.
  3731  	Id int64 `json:"id,omitempty,string"`
  3732  	// IdDimensionValue: Dimension value for the ID of this creative. This is a
  3733  	// read-only field. Applicable to all creative types.
  3734  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  3735  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  3736  	// "dfareporting#creative".
  3737  	Kind string `json:"kind,omitempty"`
  3738  	// LastModifiedInfo: Creative last modification information. This is a
  3739  	// read-only field. Applicable to all creative types.
  3740  	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
  3741  	// LatestTraffickedCreativeId: Latest Studio trafficked creative ID associated
  3742  	// with rich media and VPAID creatives. This is a read-only field. Applicable
  3743  	// to the following creative types: all RICH_MEDIA, and all VPAID.
  3744  	LatestTraffickedCreativeId int64 `json:"latestTraffickedCreativeId,omitempty,string"`
  3745  	// MediaDescription: Description of the audio or video ad. Applicable to the
  3746  	// following creative types: all INSTREAM_VIDEO, INSTREAM_AUDIO, and all VPAID.
  3747  	MediaDescription string `json:"mediaDescription,omitempty"`
  3748  	// MediaDuration: Creative audio or video duration in seconds. This is a
  3749  	// read-only field. Applicable to the following creative types: INSTREAM_VIDEO,
  3750  	// INSTREAM_AUDIO, all RICH_MEDIA, and all VPAID.
  3751  	MediaDuration float64 `json:"mediaDuration,omitempty"`
  3752  	// Name: Required. Name of the creative. This must be less than 256 characters
  3753  	// long. Applicable to all creative types.
  3754  	Name string `json:"name,omitempty"`
  3755  	// ObaIcon: Online behavioral advertising icon to be added to the creative.
  3756  	// Applicable to the following creative types: all INSTREAM_VIDEO.
  3757  	ObaIcon *ObaIcon `json:"obaIcon,omitempty"`
  3758  	// OverrideCss: Override CSS value for rich media creatives. Applicable to the
  3759  	// following creative types: all RICH_MEDIA.
  3760  	OverrideCss string `json:"overrideCss,omitempty"`
  3761  	// ProgressOffset: Amount of time to play the video before counting a view.
  3762  	// Applicable to the following creative types: all INSTREAM_VIDEO.
  3763  	ProgressOffset *VideoOffset `json:"progressOffset,omitempty"`
  3764  	// RedirectUrl: URL of hosted image or hosted video or another ad tag. For
  3765  	// INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video redirect URL.
  3766  	// The standard for a VAST (Video Ad Serving Template) ad response allows for a
  3767  	// redirect link to another VAST 2.0 or 3.0 call. This is a required field when
  3768  	// applicable. Applicable to the following creative types: DISPLAY_REDIRECT,
  3769  	// INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and
  3770  	// INSTREAM_VIDEO_REDIRECT
  3771  	RedirectUrl string `json:"redirectUrl,omitempty"`
  3772  	// RenderingId: ID of current rendering version. This is a read-only field.
  3773  	// Applicable to all creative types.
  3774  	RenderingId int64 `json:"renderingId,omitempty,string"`
  3775  	// RenderingIdDimensionValue: Dimension value for the rendering ID of this
  3776  	// creative. This is a read-only field. Applicable to all creative types.
  3777  	RenderingIdDimensionValue *DimensionValue `json:"renderingIdDimensionValue,omitempty"`
  3778  	// RequiredFlashPluginVersion: The minimum required Flash plugin version for
  3779  	// this creative. For example, 11.2.202.235. This is a read-only field.
  3780  	// Applicable to the following creative types: all RICH_MEDIA, and all VPAID.
  3781  	RequiredFlashPluginVersion string `json:"requiredFlashPluginVersion,omitempty"`
  3782  	// RequiredFlashVersion: The internal Flash version for this creative as
  3783  	// calculated by Studio. This is a read-only field. Applicable to the following
  3784  	// creative types: FLASH_INPAGE all RICH_MEDIA, and all VPAID. Applicable to
  3785  	// DISPLAY when the primary asset type is not HTML_IMAGE.
  3786  	RequiredFlashVersion int64 `json:"requiredFlashVersion,omitempty"`
  3787  	// Size: Size associated with this creative. When inserting or updating a
  3788  	// creative either the size ID field or size width and height fields can be
  3789  	// used. This is a required field when applicable; however for IMAGE,
  3790  	// FLASH_INPAGE creatives, and for DISPLAY creatives with a primary asset of
  3791  	// type HTML_IMAGE, if left blank, this field will be automatically set using
  3792  	// the actual size of the associated image assets. Applicable to the following
  3793  	// creative types: DISPLAY, DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER,
  3794  	// IMAGE, and all RICH_MEDIA.
  3795  	Size *Size `json:"size,omitempty"`
  3796  	// SkipOffset: Amount of time to play the video before the skip button appears.
  3797  	// Applicable to the following creative types: all INSTREAM_VIDEO.
  3798  	SkipOffset *VideoOffset `json:"skipOffset,omitempty"`
  3799  	// Skippable: Whether the user can choose to skip the creative. Applicable to
  3800  	// the following creative types: all INSTREAM_VIDEO and all VPAID.
  3801  	Skippable bool `json:"skippable,omitempty"`
  3802  	// SslCompliant: Whether the creative is SSL-compliant. This is a read-only
  3803  	// field. Applicable to all creative types.
  3804  	SslCompliant bool `json:"sslCompliant,omitempty"`
  3805  	// SslOverride: Whether creative should be treated as SSL compliant even if the
  3806  	// system scan shows it's not. Applicable to all creative types.
  3807  	SslOverride bool `json:"sslOverride,omitempty"`
  3808  	// StudioAdvertiserId: Studio advertiser ID associated with rich media and
  3809  	// VPAID creatives. This is a read-only field. Applicable to the following
  3810  	// creative types: all RICH_MEDIA, and all VPAID.
  3811  	StudioAdvertiserId int64 `json:"studioAdvertiserId,omitempty,string"`
  3812  	// StudioCreativeId: Studio creative ID associated with rich media and VPAID
  3813  	// creatives. This is a read-only field. Applicable to the following creative
  3814  	// types: all RICH_MEDIA, and all VPAID.
  3815  	StudioCreativeId int64 `json:"studioCreativeId,omitempty,string"`
  3816  	// StudioTraffickedCreativeId: Studio trafficked creative ID associated with
  3817  	// rich media and VPAID creatives. This is a read-only field. Applicable to the
  3818  	// following creative types: all RICH_MEDIA, and all VPAID.
  3819  	StudioTraffickedCreativeId int64 `json:"studioTraffickedCreativeId,omitempty,string"`
  3820  	// SubaccountId: Subaccount ID of this creative. This field, if left unset,
  3821  	// will be auto-generated for both insert and update operations. Applicable to
  3822  	// all creative types.
  3823  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  3824  	// ThirdPartyBackupImageImpressionsUrl: Third-party URL used to record backup
  3825  	// image impressions. Applicable to the following creative types: all
  3826  	// RICH_MEDIA.
  3827  	ThirdPartyBackupImageImpressionsUrl string `json:"thirdPartyBackupImageImpressionsUrl,omitempty"`
  3828  	// ThirdPartyRichMediaImpressionsUrl: Third-party URL used to record rich media
  3829  	// impressions. Applicable to the following creative types: all RICH_MEDIA.
  3830  	ThirdPartyRichMediaImpressionsUrl string `json:"thirdPartyRichMediaImpressionsUrl,omitempty"`
  3831  	// ThirdPartyUrls: Third-party URLs for tracking in-stream creative events.
  3832  	// Applicable to the following creative types: all INSTREAM_VIDEO, all
  3833  	// INSTREAM_AUDIO, and all VPAID.
  3834  	ThirdPartyUrls []*ThirdPartyTrackingUrl `json:"thirdPartyUrls,omitempty"`
  3835  	// TimerCustomEvents: List of timer events configured for the creative. For
  3836  	// DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from
  3837  	// clickTags. Applicable to the following creative types:
  3838  	// DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY
  3839  	// when the primary asset is not HTML_IMAGE.
  3840  	TimerCustomEvents []*CreativeCustomEvent `json:"timerCustomEvents,omitempty"`
  3841  	// TotalFileSize: Combined size of all creative assets. This is a read-only
  3842  	// field. Applicable to the following creative types: all RICH_MEDIA, and all
  3843  	// VPAID.
  3844  	TotalFileSize int64 `json:"totalFileSize,omitempty,string"`
  3845  	// Type: Required. Type of this creative. Applicable to all creative types.
  3846  	// *Note:* FLASH_INPAGE, HTML5_BANNER, and IMAGE are only used for existing
  3847  	// creatives. New creatives should use DISPLAY as a replacement for these
  3848  	// types.
  3849  	//
  3850  	// Possible values:
  3851  	//   "IMAGE"
  3852  	//   "DISPLAY_REDIRECT"
  3853  	//   "CUSTOM_DISPLAY"
  3854  	//   "INTERNAL_REDIRECT"
  3855  	//   "CUSTOM_DISPLAY_INTERSTITIAL"
  3856  	//   "INTERSTITIAL_INTERNAL_REDIRECT"
  3857  	//   "TRACKING_TEXT"
  3858  	//   "RICH_MEDIA_DISPLAY_BANNER"
  3859  	//   "RICH_MEDIA_INPAGE_FLOATING"
  3860  	//   "RICH_MEDIA_IM_EXPAND"
  3861  	//   "RICH_MEDIA_DISPLAY_EXPANDING"
  3862  	//   "RICH_MEDIA_DISPLAY_INTERSTITIAL"
  3863  	//   "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL"
  3864  	//   "RICH_MEDIA_MOBILE_IN_APP"
  3865  	//   "FLASH_INPAGE"
  3866  	//   "INSTREAM_VIDEO"
  3867  	//   "VPAID_LINEAR_VIDEO"
  3868  	//   "VPAID_NON_LINEAR_VIDEO"
  3869  	//   "INSTREAM_VIDEO_REDIRECT"
  3870  	//   "RICH_MEDIA_PEEL_DOWN"
  3871  	//   "HTML5_BANNER"
  3872  	//   "DISPLAY"
  3873  	//   "DISPLAY_IMAGE_GALLERY"
  3874  	//   "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
  3875  	//   "INSTREAM_AUDIO"
  3876  	Type string `json:"type,omitempty"`
  3877  	// UniversalAdId: A Universal Ad ID as per the VAST 4.0 spec. Applicable to the
  3878  	// following creative types: INSTREAM_AUDIO and INSTREAM_VIDEO and VPAID.
  3879  	UniversalAdId *UniversalAdId `json:"universalAdId,omitempty"`
  3880  	// Version: The version number helps you keep track of multiple versions of
  3881  	// your creative in your reports. The version number will always be
  3882  	// auto-generated during insert operations to start at 1. For tracking
  3883  	// creatives the version cannot be incremented and will always remain at 1. For
  3884  	// all other creative types the version can be incremented only by 1 during
  3885  	// update operations. In addition, the version will be automatically
  3886  	// incremented by 1 when undergoing Rich Media creative merging. Applicable to
  3887  	// all creative types.
  3888  	Version int64 `json:"version,omitempty"`
  3889  
  3890  	// ServerResponse contains the HTTP response code and headers from the server.
  3891  	googleapi.ServerResponse `json:"-"`
  3892  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  3893  	// unconditionally include in API requests. By default, fields with empty or
  3894  	// default values are omitted from API requests. See
  3895  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3896  	// details.
  3897  	ForceSendFields []string `json:"-"`
  3898  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  3899  	// requests with the JSON null value. By default, fields with empty values are
  3900  	// omitted from API requests. See
  3901  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3902  	NullFields []string `json:"-"`
  3903  }
  3904  
  3905  func (s *Creative) MarshalJSON() ([]byte, error) {
  3906  	type NoMethod Creative
  3907  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3908  }
  3909  
  3910  func (s *Creative) UnmarshalJSON(data []byte) error {
  3911  	type NoMethod Creative
  3912  	var s1 struct {
  3913  		MediaDuration gensupport.JSONFloat64 `json:"mediaDuration"`
  3914  		*NoMethod
  3915  	}
  3916  	s1.NoMethod = (*NoMethod)(s)
  3917  	if err := json.Unmarshal(data, &s1); err != nil {
  3918  		return err
  3919  	}
  3920  	s.MediaDuration = float64(s1.MediaDuration)
  3921  	return nil
  3922  }
  3923  
  3924  // CreativeAsset: Creative Asset.
  3925  type CreativeAsset struct {
  3926  	// ActionScript3: Whether ActionScript3 is enabled for the flash asset. This is
  3927  	// a read-only field. Applicable to the following creative type: FLASH_INPAGE.
  3928  	// Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.
  3929  	ActionScript3 bool `json:"actionScript3,omitempty"`
  3930  	// Active: Whether the video or audio asset is active. This is a read-only
  3931  	// field for VPAID_NON_LINEAR_VIDEO assets. Applicable to the following
  3932  	// creative types: INSTREAM_AUDIO, INSTREAM_VIDEO and all VPAID.
  3933  	Active bool `json:"active,omitempty"`
  3934  	// AdditionalSizes: Additional sizes associated with this creative asset. HTML5
  3935  	// asset generated by compatible software such as GWD will be able to support
  3936  	// more sizes this creative asset can render.
  3937  	AdditionalSizes []*Size `json:"additionalSizes,omitempty"`
  3938  	// Alignment: Possible alignments for an asset. This is a read-only field.
  3939  	// Applicable to the following creative types:
  3940  	// RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL .
  3941  	//
  3942  	// Possible values:
  3943  	//   "ALIGNMENT_TOP"
  3944  	//   "ALIGNMENT_RIGHT"
  3945  	//   "ALIGNMENT_BOTTOM"
  3946  	//   "ALIGNMENT_LEFT"
  3947  	Alignment string `json:"alignment,omitempty"`
  3948  	// ArtworkType: Artwork type of rich media creative. This is a read-only field.
  3949  	// Applicable to the following creative types: all RICH_MEDIA.
  3950  	//
  3951  	// Possible values:
  3952  	//   "ARTWORK_TYPE_FLASH" - The creative is a Flash creative.
  3953  	//   "ARTWORK_TYPE_HTML5" - The creative is HTML5.
  3954  	//   "ARTWORK_TYPE_MIXED" - The creative is HTML5 if available, Flash
  3955  	// otherwise.
  3956  	//   "ARTWORK_TYPE_IMAGE" - The creative is Image.
  3957  	ArtworkType string `json:"artworkType,omitempty"`
  3958  	// AssetIdentifier: Identifier of this asset. This is the same identifier
  3959  	// returned during creative asset insert operation. This is a required field.
  3960  	// Applicable to all but the following creative types: all REDIRECT and
  3961  	// TRACKING_TEXT.
  3962  	AssetIdentifier *CreativeAssetId `json:"assetIdentifier,omitempty"`
  3963  	// AudioBitRate: Audio stream bit rate in kbps. This is a read-only field.
  3964  	// Applicable to the following creative types: INSTREAM_AUDIO, INSTREAM_VIDEO
  3965  	// and all VPAID.
  3966  	AudioBitRate int64 `json:"audioBitRate,omitempty"`
  3967  	// AudioSampleRate: Audio sample bit rate in hertz. This is a read-only field.
  3968  	// Applicable to the following creative types: INSTREAM_AUDIO, INSTREAM_VIDEO
  3969  	// and all VPAID.
  3970  	AudioSampleRate int64 `json:"audioSampleRate,omitempty"`
  3971  	// BackupImageExit: Exit event configured for the backup image. Applicable to
  3972  	// the following creative types: all RICH_MEDIA.
  3973  	BackupImageExit *CreativeCustomEvent `json:"backupImageExit,omitempty"`
  3974  	// BitRate: Detected bit-rate for audio or video asset. This is a read-only
  3975  	// field. Applicable to the following creative types: INSTREAM_AUDIO,
  3976  	// INSTREAM_VIDEO and all VPAID.
  3977  	BitRate int64 `json:"bitRate,omitempty"`
  3978  	// ChildAssetType: Rich media child asset type. This is a read-only field.
  3979  	// Applicable to the following creative types: all VPAID.
  3980  	//
  3981  	// Possible values:
  3982  	//   "CHILD_ASSET_TYPE_FLASH" - swf files
  3983  	//   "CHILD_ASSET_TYPE_VIDEO" - flv and any other video files types
  3984  	//   "CHILD_ASSET_TYPE_IMAGE" - image files
  3985  	//   "CHILD_ASSET_TYPE_DATA" - rest of the supported file types .txt, .xml etc.
  3986  	ChildAssetType string `json:"childAssetType,omitempty"`
  3987  	// CollapsedSize: Size of an asset when collapsed. This is a read-only field.
  3988  	// Applicable to the following creative types: all RICH_MEDIA and all VPAID.
  3989  	// Additionally, applicable to assets whose displayType is
  3990  	// ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN.
  3991  	CollapsedSize *Size `json:"collapsedSize,omitempty"`
  3992  	// CompanionCreativeIds: List of companion creatives assigned to an in-stream
  3993  	// video creative asset. Acceptable values include IDs of existing flash and
  3994  	// image creatives. Applicable to INSTREAM_VIDEO creative type with
  3995  	// dynamicAssetSelection set to true.
  3996  	CompanionCreativeIds googleapi.Int64s `json:"companionCreativeIds,omitempty"`
  3997  	// CustomStartTimeValue: Custom start time in seconds for making the asset
  3998  	// visible. Applicable to the following creative types: all RICH_MEDIA. Value
  3999  	// must be greater than or equal to 0.
  4000  	CustomStartTimeValue int64 `json:"customStartTimeValue,omitempty"`
  4001  	// DetectedFeatures: List of feature dependencies for the creative asset that
  4002  	// are detected by Campaign Manager. Feature dependencies are features that a
  4003  	// browser must be able to support in order to render your HTML5 creative
  4004  	// correctly. This is a read-only, auto-generated field. Applicable to the
  4005  	// following creative types: HTML5_BANNER. Applicable to DISPLAY when the
  4006  	// primary asset type is not HTML_IMAGE.
  4007  	//
  4008  	// Possible values:
  4009  	//   "CSS_FONT_FACE"
  4010  	//   "CSS_BACKGROUND_SIZE"
  4011  	//   "CSS_BORDER_IMAGE"
  4012  	//   "CSS_BORDER_RADIUS"
  4013  	//   "CSS_BOX_SHADOW"
  4014  	//   "CSS_FLEX_BOX"
  4015  	//   "CSS_HSLA"
  4016  	//   "CSS_MULTIPLE_BGS"
  4017  	//   "CSS_OPACITY"
  4018  	//   "CSS_RGBA"
  4019  	//   "CSS_TEXT_SHADOW"
  4020  	//   "CSS_ANIMATIONS"
  4021  	//   "CSS_COLUMNS"
  4022  	//   "CSS_GENERATED_CONTENT"
  4023  	//   "CSS_GRADIENTS"
  4024  	//   "CSS_REFLECTIONS"
  4025  	//   "CSS_TRANSFORMS"
  4026  	//   "CSS_TRANSFORMS3D"
  4027  	//   "CSS_TRANSITIONS"
  4028  	//   "APPLICATION_CACHE"
  4029  	//   "CANVAS"
  4030  	//   "CANVAS_TEXT"
  4031  	//   "DRAG_AND_DROP"
  4032  	//   "HASH_CHANGE"
  4033  	//   "HISTORY"
  4034  	//   "AUDIO"
  4035  	//   "VIDEO"
  4036  	//   "INDEXED_DB"
  4037  	//   "INPUT_ATTR_AUTOCOMPLETE"
  4038  	//   "INPUT_ATTR_AUTOFOCUS"
  4039  	//   "INPUT_ATTR_LIST"
  4040  	//   "INPUT_ATTR_PLACEHOLDER"
  4041  	//   "INPUT_ATTR_MAX"
  4042  	//   "INPUT_ATTR_MIN"
  4043  	//   "INPUT_ATTR_MULTIPLE"
  4044  	//   "INPUT_ATTR_PATTERN"
  4045  	//   "INPUT_ATTR_REQUIRED"
  4046  	//   "INPUT_ATTR_STEP"
  4047  	//   "INPUT_TYPE_SEARCH"
  4048  	//   "INPUT_TYPE_TEL"
  4049  	//   "INPUT_TYPE_URL"
  4050  	//   "INPUT_TYPE_EMAIL"
  4051  	//   "INPUT_TYPE_DATETIME"
  4052  	//   "INPUT_TYPE_DATE"
  4053  	//   "INPUT_TYPE_MONTH"
  4054  	//   "INPUT_TYPE_WEEK"
  4055  	//   "INPUT_TYPE_TIME"
  4056  	//   "INPUT_TYPE_DATETIME_LOCAL"
  4057  	//   "INPUT_TYPE_NUMBER"
  4058  	//   "INPUT_TYPE_RANGE"
  4059  	//   "INPUT_TYPE_COLOR"
  4060  	//   "LOCAL_STORAGE"
  4061  	//   "POST_MESSAGE" - POST_MESSAGE always required due to html5 implementation.
  4062  	//   "SESSION_STORAGE"
  4063  	//   "WEB_SOCKETS"
  4064  	//   "WEB_SQL_DATABASE"
  4065  	//   "WEB_WORKERS"
  4066  	//   "GEO_LOCATION"
  4067  	//   "INLINE_SVG"
  4068  	//   "SMIL"
  4069  	//   "SVG_HREF"
  4070  	//   "SVG_CLIP_PATHS"
  4071  	//   "TOUCH"
  4072  	//   "WEBGL"
  4073  	//   "SVG_FILTERS"
  4074  	//   "SVG_FE_IMAGE"
  4075  	DetectedFeatures []string `json:"detectedFeatures,omitempty"`
  4076  	// DisplayType: Type of rich media asset. This is a read-only field. Applicable
  4077  	// to the following creative types: all RICH_MEDIA.
  4078  	//
  4079  	// Possible values:
  4080  	//   "ASSET_DISPLAY_TYPE_INPAGE" - Asset exists in a box and stays within the
  4081  	// box.
  4082  	//   "ASSET_DISPLAY_TYPE_FLOATING" - Asset exists at a self described location
  4083  	// on the page.
  4084  	//   "ASSET_DISPLAY_TYPE_OVERLAY" - Special display type for IM clients.
  4085  	//   "ASSET_DISPLAY_TYPE_EXPANDING" - Asset changes size.
  4086  	//   "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH" - Not applicable for HTML5.
  4087  	//   "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING" - Not applicable for HTML5.
  4088  	//   "ASSET_DISPLAY_TYPE_PEEL_DOWN" - Asset sits on the top right and expands.
  4089  	//   "ASSET_DISPLAY_TYPE_VPAID_LINEAR" - VPAID linear asset.
  4090  	//   "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR" - VPAID non linear asset.
  4091  	//   "ASSET_DISPLAY_TYPE_BACKDROP" - Backdrop (skin) asset.
  4092  	DisplayType string `json:"displayType,omitempty"`
  4093  	// Duration: Duration in seconds for which an asset will be displayed.
  4094  	// Applicable to the following creative types: INSTREAM_AUDIO, INSTREAM_VIDEO
  4095  	// and VPAID_LINEAR_VIDEO. Value must be greater than or equal to 1.
  4096  	Duration int64 `json:"duration,omitempty"`
  4097  	// DurationType: Duration type for which an asset will be displayed. Applicable
  4098  	// to the following creative types: all RICH_MEDIA.
  4099  	//
  4100  	// Possible values:
  4101  	//   "ASSET_DURATION_TYPE_AUTO" - Asset is displayed for the single run of the
  4102  	// time line.
  4103  	//   "ASSET_DURATION_TYPE_NONE" - Asset is displayed indefinitely and it loops
  4104  	// on the timeline.
  4105  	//   "ASSET_DURATION_TYPE_CUSTOM" - User entered duration value in seconds.
  4106  	DurationType string `json:"durationType,omitempty"`
  4107  	// ExpandedDimension: Detected expanded dimension for video asset. This is a
  4108  	// read-only field. Applicable to the following creative types: INSTREAM_VIDEO
  4109  	// and all VPAID.
  4110  	ExpandedDimension *Size `json:"expandedDimension,omitempty"`
  4111  	// FileSize: File size associated with this creative asset. This is a read-only
  4112  	// field. Applicable to all but the following creative types: all REDIRECT and
  4113  	// TRACKING_TEXT.
  4114  	FileSize int64 `json:"fileSize,omitempty,string"`
  4115  	// FlashVersion: Flash version of the asset. This is a read-only field.
  4116  	// Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA,
  4117  	// and all VPAID. Applicable to DISPLAY when the primary asset type is not
  4118  	// HTML_IMAGE.
  4119  	FlashVersion int64 `json:"flashVersion,omitempty"`
  4120  	// FrameRate: Video frame rate for video asset in frames per second. This is a
  4121  	// read-only field. Applicable to the following creative types: INSTREAM_VIDEO
  4122  	// and all VPAID.
  4123  	FrameRate float64 `json:"frameRate,omitempty"`
  4124  	// HideFlashObjects: Whether to hide Flash objects flag for an asset.
  4125  	// Applicable to the following creative types: all RICH_MEDIA.
  4126  	HideFlashObjects bool `json:"hideFlashObjects,omitempty"`
  4127  	// HideSelectionBoxes: Whether to hide selection boxes flag for an asset.
  4128  	// Applicable to the following creative types: all RICH_MEDIA.
  4129  	HideSelectionBoxes bool `json:"hideSelectionBoxes,omitempty"`
  4130  	// HorizontallyLocked: Whether the asset is horizontally locked. This is a
  4131  	// read-only field. Applicable to the following creative types: all RICH_MEDIA.
  4132  	HorizontallyLocked bool `json:"horizontallyLocked,omitempty"`
  4133  	// Id: Numeric ID of this creative asset. This is a required field and should
  4134  	// not be modified. Applicable to all but the following creative types: all
  4135  	// REDIRECT and TRACKING_TEXT.
  4136  	Id int64 `json:"id,omitempty,string"`
  4137  	// IdDimensionValue: Dimension value for the ID of the asset. This is a
  4138  	// read-only, auto-generated field.
  4139  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  4140  	// MediaDuration: Detected duration for audio or video asset. This is a
  4141  	// read-only field. Applicable to the following creative types: INSTREAM_AUDIO,
  4142  	// INSTREAM_VIDEO and all VPAID.
  4143  	MediaDuration float64 `json:"mediaDuration,omitempty"`
  4144  	// MimeType: Detected MIME type for audio or video asset. This is a read-only
  4145  	// field. Applicable to the following creative types: INSTREAM_AUDIO,
  4146  	// INSTREAM_VIDEO and all VPAID.
  4147  	MimeType string `json:"mimeType,omitempty"`
  4148  	// Offset: Offset position for an asset in collapsed mode. This is a read-only
  4149  	// field. Applicable to the following creative types: all RICH_MEDIA and all
  4150  	// VPAID. Additionally, only applicable to assets whose displayType is
  4151  	// ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN.
  4152  	Offset *OffsetPosition `json:"offset,omitempty"`
  4153  	// Orientation: Orientation of video asset. This is a read-only, auto-generated
  4154  	// field.
  4155  	//
  4156  	// Possible values:
  4157  	//   "LANDSCAPE"
  4158  	//   "PORTRAIT"
  4159  	//   "SQUARE"
  4160  	Orientation string `json:"orientation,omitempty"`
  4161  	// OriginalBackup: Whether the backup asset is original or changed by the user
  4162  	// in Campaign Manager. Applicable to the following creative types: all
  4163  	// RICH_MEDIA.
  4164  	OriginalBackup bool `json:"originalBackup,omitempty"`
  4165  	// PoliteLoad: Whether this asset is used as a polite load asset.
  4166  	PoliteLoad bool `json:"politeLoad,omitempty"`
  4167  	// Position: Offset position for an asset. Applicable to the following creative
  4168  	// types: all RICH_MEDIA.
  4169  	Position *OffsetPosition `json:"position,omitempty"`
  4170  	// PositionLeftUnit: Offset left unit for an asset. This is a read-only field.
  4171  	// Applicable to the following creative types: all RICH_MEDIA.
  4172  	//
  4173  	// Possible values:
  4174  	//   "OFFSET_UNIT_PIXEL" - Pixels on a screen.
  4175  	//   "OFFSET_UNIT_PERCENT" - Percent offset for center asset (rather than top
  4176  	// and left).
  4177  	//   "OFFSET_UNIT_PIXEL_FROM_CENTER" - Pixel offset for center of asset from
  4178  	// center of browser window.
  4179  	PositionLeftUnit string `json:"positionLeftUnit,omitempty"`
  4180  	// PositionTopUnit: Offset top unit for an asset. This is a read-only field if
  4181  	// the asset displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the
  4182  	// following creative types: all RICH_MEDIA.
  4183  	//
  4184  	// Possible values:
  4185  	//   "OFFSET_UNIT_PIXEL" - Pixels on a screen.
  4186  	//   "OFFSET_UNIT_PERCENT" - Percent offset for center asset (rather than top
  4187  	// and left).
  4188  	//   "OFFSET_UNIT_PIXEL_FROM_CENTER" - Pixel offset for center of asset from
  4189  	// center of browser window.
  4190  	PositionTopUnit string `json:"positionTopUnit,omitempty"`
  4191  	// ProgressiveServingUrl: Progressive URL for video asset. This is a read-only
  4192  	// field. Applicable to the following creative types: INSTREAM_VIDEO and all
  4193  	// VPAID.
  4194  	ProgressiveServingUrl string `json:"progressiveServingUrl,omitempty"`
  4195  	// Pushdown: Whether the asset pushes down other content. Applicable to the
  4196  	// following creative types: all RICH_MEDIA. Additionally, only applicable when
  4197  	// the asset offsets are 0, the collapsedSize.width matches size.width, and the
  4198  	// collapsedSize.height is less than size.height.
  4199  	Pushdown bool `json:"pushdown,omitempty"`
  4200  	// PushdownDuration: Pushdown duration in seconds for an asset. Applicable to
  4201  	// the following creative types: all RICH_MEDIA.Additionally, only applicable
  4202  	// when the asset pushdown field is true, the offsets are 0, the
  4203  	// collapsedSize.width matches size.width, and the collapsedSize.height is less
  4204  	// than size.height. Acceptable values are 0 to 9.99, inclusive.
  4205  	PushdownDuration float64 `json:"pushdownDuration,omitempty"`
  4206  	// Role: Role of the asset in relation to creative. Applicable to all but the
  4207  	// following creative types: all REDIRECT and TRACKING_TEXT. This is a required
  4208  	// field. PRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER, IMAGE,
  4209  	// DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary
  4210  	// assets), and all VPAID creatives. BACKUP_IMAGE applies to FLASH_INPAGE,
  4211  	// HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives. Applicable to DISPLAY
  4212  	// when the primary asset type is not HTML_IMAGE. ADDITIONAL_IMAGE and
  4213  	// ADDITIONAL_FLASH apply to FLASH_INPAGE creatives. OTHER refers to assets
  4214  	// from sources other than Campaign Manager, such as Studio uploaded assets,
  4215  	// applicable to all RICH_MEDIA and all VPAID creatives. PARENT_VIDEO refers to
  4216  	// videos uploaded by the user in Campaign Manager and is applicable to
  4217  	// INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives. TRANSCODED_VIDEO refers to
  4218  	// videos transcoded by Campaign Manager from PARENT_VIDEO assets and is
  4219  	// applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.
  4220  	// ALTERNATE_VIDEO refers to the Campaign Manager representation of child asset
  4221  	// videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These
  4222  	// cannot be added or removed within Campaign Manager. For VPAID_LINEAR_VIDEO
  4223  	// creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that
  4224  	// are marked active serve as backup in case the VPAID creative cannot be
  4225  	// served. Only PARENT_VIDEO assets can be added or removed for an
  4226  	// INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative. PARENT_AUDIO refers to audios
  4227  	// uploaded by the user in Campaign Manager and is applicable to INSTREAM_AUDIO
  4228  	// creatives. TRANSCODED_AUDIO refers to audios transcoded by Campaign Manager
  4229  	// from PARENT_AUDIO assets and is applicable to INSTREAM_AUDIO creatives.
  4230  	//
  4231  	// Possible values:
  4232  	//   "PRIMARY"
  4233  	//   "BACKUP_IMAGE"
  4234  	//   "ADDITIONAL_IMAGE"
  4235  	//   "ADDITIONAL_FLASH"
  4236  	//   "PARENT_VIDEO"
  4237  	//   "TRANSCODED_VIDEO"
  4238  	//   "OTHER"
  4239  	//   "ALTERNATE_VIDEO"
  4240  	//   "PARENT_AUDIO"
  4241  	//   "TRANSCODED_AUDIO"
  4242  	Role string `json:"role,omitempty"`
  4243  	// Size: Size associated with this creative asset. This is a required field
  4244  	// when applicable; however for IMAGE and FLASH_INPAGE, creatives if left
  4245  	// blank, this field will be automatically set using the actual size of the
  4246  	// associated image asset. Applicable to the following creative types:
  4247  	// DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all
  4248  	// RICH_MEDIA. Applicable to DISPLAY when the primary asset type is not
  4249  	// HTML_IMAGE.
  4250  	Size *Size `json:"size,omitempty"`
  4251  	// SslCompliant: Whether the asset is SSL-compliant. This is a read-only field.
  4252  	// Applicable to all but the following creative types: all REDIRECT and
  4253  	// TRACKING_TEXT.
  4254  	SslCompliant bool `json:"sslCompliant,omitempty"`
  4255  	// StartTimeType: Initial wait time type before making the asset visible.
  4256  	// Applicable to the following creative types: all RICH_MEDIA.
  4257  	//
  4258  	// Possible values:
  4259  	//   "ASSET_START_TIME_TYPE_NONE" - Asset is not automatically displayed.
  4260  	//   "ASSET_START_TIME_TYPE_CUSTOM" - Asset is automatically displayed after a
  4261  	// fixed period of time.
  4262  	StartTimeType string `json:"startTimeType,omitempty"`
  4263  	// StreamingServingUrl: Streaming URL for video asset. This is a read-only
  4264  	// field. Applicable to the following creative types: INSTREAM_VIDEO and all
  4265  	// VPAID.
  4266  	StreamingServingUrl string `json:"streamingServingUrl,omitempty"`
  4267  	// Transparency: Whether the asset is transparent. Applicable to the following
  4268  	// creative types: all RICH_MEDIA. Additionally, only applicable to HTML5
  4269  	// assets.
  4270  	Transparency bool `json:"transparency,omitempty"`
  4271  	// VerticallyLocked: Whether the asset is vertically locked. This is a
  4272  	// read-only field. Applicable to the following creative types: all RICH_MEDIA.
  4273  	VerticallyLocked bool `json:"verticallyLocked,omitempty"`
  4274  	// WindowMode: Window mode options for flash assets. Applicable to the
  4275  	// following creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING,
  4276  	// RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and
  4277  	// RICH_MEDIA_INPAGE_FLOATING.
  4278  	//
  4279  	// Possible values:
  4280  	//   "OPAQUE" - Allows overlapping of Html and SWF content.
  4281  	//   "WINDOW" - Default
  4282  	//   "TRANSPARENT" - Used for non-square borders. Allows overlapping of Html
  4283  	// and SWF content.
  4284  	WindowMode string `json:"windowMode,omitempty"`
  4285  	// ZIndex: zIndex value of an asset. Applicable to the following creative
  4286  	// types: all RICH_MEDIA.Additionally, only applicable to assets whose
  4287  	// displayType is NOT one of the following types: ASSET_DISPLAY_TYPE_INPAGE or
  4288  	// ASSET_DISPLAY_TYPE_OVERLAY. Acceptable values are -999999999 to 999999999,
  4289  	// inclusive.
  4290  	ZIndex int64 `json:"zIndex,omitempty"`
  4291  	// ZipFilename: File name of zip file. This is a read-only field. Applicable to
  4292  	// the following creative types: HTML5_BANNER.
  4293  	ZipFilename string `json:"zipFilename,omitempty"`
  4294  	// ZipFilesize: Size of zip file. This is a read-only field. Applicable to the
  4295  	// following creative types: HTML5_BANNER.
  4296  	ZipFilesize string `json:"zipFilesize,omitempty"`
  4297  	// ForceSendFields is a list of field names (e.g. "ActionScript3") to
  4298  	// unconditionally include in API requests. By default, fields with empty or
  4299  	// default values are omitted from API requests. See
  4300  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4301  	// details.
  4302  	ForceSendFields []string `json:"-"`
  4303  	// NullFields is a list of field names (e.g. "ActionScript3") to include in API
  4304  	// requests with the JSON null value. By default, fields with empty values are
  4305  	// omitted from API requests. See
  4306  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4307  	NullFields []string `json:"-"`
  4308  }
  4309  
  4310  func (s *CreativeAsset) MarshalJSON() ([]byte, error) {
  4311  	type NoMethod CreativeAsset
  4312  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4313  }
  4314  
  4315  func (s *CreativeAsset) UnmarshalJSON(data []byte) error {
  4316  	type NoMethod CreativeAsset
  4317  	var s1 struct {
  4318  		FrameRate        gensupport.JSONFloat64 `json:"frameRate"`
  4319  		MediaDuration    gensupport.JSONFloat64 `json:"mediaDuration"`
  4320  		PushdownDuration gensupport.JSONFloat64 `json:"pushdownDuration"`
  4321  		*NoMethod
  4322  	}
  4323  	s1.NoMethod = (*NoMethod)(s)
  4324  	if err := json.Unmarshal(data, &s1); err != nil {
  4325  		return err
  4326  	}
  4327  	s.FrameRate = float64(s1.FrameRate)
  4328  	s.MediaDuration = float64(s1.MediaDuration)
  4329  	s.PushdownDuration = float64(s1.PushdownDuration)
  4330  	return nil
  4331  }
  4332  
  4333  // CreativeAssetId: Creative Asset ID.
  4334  type CreativeAssetId struct {
  4335  	// Name: Name of the creative asset. This is a required field while inserting
  4336  	// an asset. After insertion, this assetIdentifier is used to identify the
  4337  	// uploaded asset. Characters in the name must be alphanumeric or one of the
  4338  	// following: ".-_ ". Spaces are allowed.
  4339  	Name string `json:"name,omitempty"`
  4340  	// Type: Type of asset to upload. This is a required field. FLASH and IMAGE are
  4341  	// no longer supported for new uploads. All image assets should use HTML_IMAGE.
  4342  	//
  4343  	// Possible values:
  4344  	//   "IMAGE"
  4345  	//   "FLASH"
  4346  	//   "VIDEO"
  4347  	//   "HTML"
  4348  	//   "HTML_IMAGE"
  4349  	//   "AUDIO"
  4350  	Type string `json:"type,omitempty"`
  4351  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  4352  	// include in API requests. By default, fields with empty or default values are
  4353  	// omitted from API requests. See
  4354  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4355  	// details.
  4356  	ForceSendFields []string `json:"-"`
  4357  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  4358  	// with the JSON null value. By default, fields with empty values are omitted
  4359  	// from API requests. See
  4360  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4361  	NullFields []string `json:"-"`
  4362  }
  4363  
  4364  func (s *CreativeAssetId) MarshalJSON() ([]byte, error) {
  4365  	type NoMethod CreativeAssetId
  4366  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4367  }
  4368  
  4369  // CreativeAssetMetadata: CreativeAssets contains properties of a creative
  4370  // asset file which will be uploaded or has already been uploaded. Refer to the
  4371  // creative sample code for how to upload assets and insert a creative.
  4372  type CreativeAssetMetadata struct {
  4373  	// AssetIdentifier: ID of the creative asset. This is a required field.
  4374  	AssetIdentifier *CreativeAssetId `json:"assetIdentifier,omitempty"`
  4375  	// ClickTags: List of detected click tags for assets. This is a read-only,
  4376  	// auto-generated field. This field is empty for a rich media asset.
  4377  	ClickTags []*ClickTag `json:"clickTags,omitempty"`
  4378  	// CounterCustomEvents: List of counter events configured for the asset. This
  4379  	// is a read-only, auto-generated field and only applicable to a rich media
  4380  	// asset.
  4381  	CounterCustomEvents []*CreativeCustomEvent `json:"counterCustomEvents,omitempty"`
  4382  	// DetectedFeatures: List of feature dependencies for the creative asset that
  4383  	// are detected by Campaign Manager. Feature dependencies are features that a
  4384  	// browser must be able to support in order to render your HTML5 creative
  4385  	// correctly. This is a read-only, auto-generated field.
  4386  	//
  4387  	// Possible values:
  4388  	//   "CSS_FONT_FACE"
  4389  	//   "CSS_BACKGROUND_SIZE"
  4390  	//   "CSS_BORDER_IMAGE"
  4391  	//   "CSS_BORDER_RADIUS"
  4392  	//   "CSS_BOX_SHADOW"
  4393  	//   "CSS_FLEX_BOX"
  4394  	//   "CSS_HSLA"
  4395  	//   "CSS_MULTIPLE_BGS"
  4396  	//   "CSS_OPACITY"
  4397  	//   "CSS_RGBA"
  4398  	//   "CSS_TEXT_SHADOW"
  4399  	//   "CSS_ANIMATIONS"
  4400  	//   "CSS_COLUMNS"
  4401  	//   "CSS_GENERATED_CONTENT"
  4402  	//   "CSS_GRADIENTS"
  4403  	//   "CSS_REFLECTIONS"
  4404  	//   "CSS_TRANSFORMS"
  4405  	//   "CSS_TRANSFORMS3D"
  4406  	//   "CSS_TRANSITIONS"
  4407  	//   "APPLICATION_CACHE"
  4408  	//   "CANVAS"
  4409  	//   "CANVAS_TEXT"
  4410  	//   "DRAG_AND_DROP"
  4411  	//   "HASH_CHANGE"
  4412  	//   "HISTORY"
  4413  	//   "AUDIO"
  4414  	//   "VIDEO"
  4415  	//   "INDEXED_DB"
  4416  	//   "INPUT_ATTR_AUTOCOMPLETE"
  4417  	//   "INPUT_ATTR_AUTOFOCUS"
  4418  	//   "INPUT_ATTR_LIST"
  4419  	//   "INPUT_ATTR_PLACEHOLDER"
  4420  	//   "INPUT_ATTR_MAX"
  4421  	//   "INPUT_ATTR_MIN"
  4422  	//   "INPUT_ATTR_MULTIPLE"
  4423  	//   "INPUT_ATTR_PATTERN"
  4424  	//   "INPUT_ATTR_REQUIRED"
  4425  	//   "INPUT_ATTR_STEP"
  4426  	//   "INPUT_TYPE_SEARCH"
  4427  	//   "INPUT_TYPE_TEL"
  4428  	//   "INPUT_TYPE_URL"
  4429  	//   "INPUT_TYPE_EMAIL"
  4430  	//   "INPUT_TYPE_DATETIME"
  4431  	//   "INPUT_TYPE_DATE"
  4432  	//   "INPUT_TYPE_MONTH"
  4433  	//   "INPUT_TYPE_WEEK"
  4434  	//   "INPUT_TYPE_TIME"
  4435  	//   "INPUT_TYPE_DATETIME_LOCAL"
  4436  	//   "INPUT_TYPE_NUMBER"
  4437  	//   "INPUT_TYPE_RANGE"
  4438  	//   "INPUT_TYPE_COLOR"
  4439  	//   "LOCAL_STORAGE"
  4440  	//   "POST_MESSAGE" - POST_MESSAGE always required due to html5 implementation.
  4441  	//   "SESSION_STORAGE"
  4442  	//   "WEB_SOCKETS"
  4443  	//   "WEB_SQL_DATABASE"
  4444  	//   "WEB_WORKERS"
  4445  	//   "GEO_LOCATION"
  4446  	//   "INLINE_SVG"
  4447  	//   "SMIL"
  4448  	//   "SVG_HREF"
  4449  	//   "SVG_CLIP_PATHS"
  4450  	//   "TOUCH"
  4451  	//   "WEBGL"
  4452  	//   "SVG_FILTERS"
  4453  	//   "SVG_FE_IMAGE"
  4454  	DetectedFeatures []string `json:"detectedFeatures,omitempty"`
  4455  	// ExitCustomEvents: List of exit events configured for the asset. This is a
  4456  	// read-only, auto-generated field and only applicable to a rich media asset.
  4457  	ExitCustomEvents []*CreativeCustomEvent `json:"exitCustomEvents,omitempty"`
  4458  	// Id: Numeric ID of the asset. This is a read-only, auto-generated field.
  4459  	Id int64 `json:"id,omitempty,string"`
  4460  	// IdDimensionValue: Dimension value for the numeric ID of the asset. This is a
  4461  	// read-only, auto-generated field.
  4462  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  4463  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  4464  	// "dfareporting#creativeAssetMetadata".
  4465  	Kind string `json:"kind,omitempty"`
  4466  	// RichMedia: True if the uploaded asset is a rich media asset. This is a
  4467  	// read-only, auto-generated field.
  4468  	RichMedia bool `json:"richMedia,omitempty"`
  4469  	// TimerCustomEvents: List of timer events configured for the asset. This is a
  4470  	// read-only, auto-generated field and only applicable to a rich media asset.
  4471  	TimerCustomEvents []*CreativeCustomEvent `json:"timerCustomEvents,omitempty"`
  4472  	// WarnedValidationRules: Rules validated during code generation that generated
  4473  	// a warning. This is a read-only, auto-generated field. Possible values are: -
  4474  	// "ADMOB_REFERENCED" - "ASSET_FORMAT_UNSUPPORTED_DCM" - "ASSET_INVALID" -
  4475  	// "CLICK_TAG_HARD_CODED" - "CLICK_TAG_INVALID" - "CLICK_TAG_IN_GWD" -
  4476  	// "CLICK_TAG_MISSING" - "CLICK_TAG_MORE_THAN_ONE" - "CLICK_TAG_NON_TOP_LEVEL"
  4477  	// - "COMPONENT_UNSUPPORTED_DCM" - "ENABLER_UNSUPPORTED_METHOD_DCM" -
  4478  	// "EXTERNAL_FILE_REFERENCED" - "FILE_DETAIL_EMPTY" - "FILE_TYPE_INVALID" -
  4479  	// "GWD_PROPERTIES_INVALID" - "HTML5_FEATURE_UNSUPPORTED" -
  4480  	// "LINKED_FILE_NOT_FOUND" - "MAX_FLASH_VERSION_11" - "MRAID_REFERENCED" -
  4481  	// "NOT_SSL_COMPLIANT" - "ORPHANED_ASSET" - "PRIMARY_HTML_MISSING" -
  4482  	// "SVG_INVALID" - "ZIP_INVALID"
  4483  	//
  4484  	// Possible values:
  4485  	//   "CLICK_TAG_NON_TOP_LEVEL" - Click tag initialization detected but not at
  4486  	// the top level of the primary html file.
  4487  	//   "CLICK_TAG_MISSING" - No click tag detected.
  4488  	//   "CLICK_TAG_MORE_THAN_ONE" - More than one click tag detected.
  4489  	//   "CLICK_TAG_INVALID" - Click tag invalid (failed url validation).
  4490  	//   "ORPHANED_ASSET" - Orphaned asset not referenced.
  4491  	//   "PRIMARY_HTML_MISSING" - Primary html file missing.
  4492  	//   "EXTERNAL_FILE_REFERENCED" - Reference to a third-party resource.
  4493  	// Problematic because the volume of ad serving could bring down unprepared web
  4494  	// servers due to high load. e.g. http://www.zibble.net/smiles.gif
  4495  	//   "MRAID_REFERENCED" - Reference to INAPP MRAID feature.
  4496  	//   "ADMOB_REFERENCED" - Reference to INAPP ADMOB feature.
  4497  	//   "FILE_TYPE_INVALID" - Invalid file type referenced.
  4498  	//   "ZIP_INVALID" - Invalid zip passed in (could not extract from zip
  4499  	//   "LINKED_FILE_NOT_FOUND" - A relative file was linked to that wasn't
  4500  	// included in zip. e.g. images/missing_file.gif
  4501  	//   "MAX_FLASH_VERSION_11" - Max flash version at 11.
  4502  	//   "NOT_SSL_COMPLIANT" - Whether the asset uses secure urls or not.
  4503  	//   "FILE_DETAIL_EMPTY" - File detail empty.
  4504  	//   "ASSET_INVALID" - Asset is not valid and could not be processed.
  4505  	//   "GWD_PROPERTIES_INVALID" - GWD properties are invalid.
  4506  	//   "ENABLER_UNSUPPORTED_METHOD_DCM" - Unsupported Enabler methods in DCM.
  4507  	//   "ASSET_FORMAT_UNSUPPORTED_DCM" - Asset ad format is unsupported in DCM.
  4508  	//   "COMPONENT_UNSUPPORTED_DCM" - Component is unsupported in DCM.
  4509  	//   "HTML5_FEATURE_UNSUPPORTED" - Html5 feature is unsupported.
  4510  	//   "CLICK_TAG_IN_GWD" - Click tag defined in GWD asset. GWD-published
  4511  	// creatives should use exit events instead of defining var clickTag. Defined
  4512  	// var clickTags are a symptom of an unsupported workflow, and an error should
  4513  	// be thrown.
  4514  	//   "CLICK_TAG_HARD_CODED" - Whether the asset has hard coded click tag
  4515  	// url(s).
  4516  	//   "SVG_INVALID" - Whether an SVG block could not be parsed.
  4517  	//   "CLICK_TAG_IN_RICH_MEDIA" - Click tag defined in rich media asset. Rich
  4518  	// media creatives should use exit events instead of defining var clickTag.
  4519  	// Defined var clickTags are a symptom of an unsupported workflow, and an error
  4520  	// should be thrown.
  4521  	//   "MISSING_ENABLER_REFERENCE" - Rich media primary asset is missing the
  4522  	// Enabler reference.
  4523  	WarnedValidationRules []string `json:"warnedValidationRules,omitempty"`
  4524  
  4525  	// ServerResponse contains the HTTP response code and headers from the server.
  4526  	googleapi.ServerResponse `json:"-"`
  4527  	// ForceSendFields is a list of field names (e.g. "AssetIdentifier") to
  4528  	// unconditionally include in API requests. By default, fields with empty or
  4529  	// default values are omitted from API requests. See
  4530  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4531  	// details.
  4532  	ForceSendFields []string `json:"-"`
  4533  	// NullFields is a list of field names (e.g. "AssetIdentifier") to include in
  4534  	// API requests with the JSON null value. By default, fields with empty values
  4535  	// are omitted from API requests. See
  4536  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4537  	NullFields []string `json:"-"`
  4538  }
  4539  
  4540  func (s *CreativeAssetMetadata) MarshalJSON() ([]byte, error) {
  4541  	type NoMethod CreativeAssetMetadata
  4542  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4543  }
  4544  
  4545  // CreativeAssetSelection: Encapsulates the list of rules for asset selection
  4546  // and a default asset in case none of the rules match. Applicable to
  4547  // INSTREAM_VIDEO creatives.
  4548  type CreativeAssetSelection struct {
  4549  	// DefaultAssetId: A creativeAssets[].id. This should refer to one of the
  4550  	// parent assets in this creative, and will be served if none of the rules
  4551  	// match. This is a required field.
  4552  	DefaultAssetId int64 `json:"defaultAssetId,omitempty,string"`
  4553  	// Rules: Rules determine which asset will be served to a viewer. Rules will be
  4554  	// evaluated in the order in which they are stored in this list. This list must
  4555  	// contain at least one rule. Applicable to INSTREAM_VIDEO creatives.
  4556  	Rules []*Rule `json:"rules,omitempty"`
  4557  	// ForceSendFields is a list of field names (e.g. "DefaultAssetId") to
  4558  	// unconditionally include in API requests. By default, fields with empty or
  4559  	// default values are omitted from API requests. See
  4560  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4561  	// details.
  4562  	ForceSendFields []string `json:"-"`
  4563  	// NullFields is a list of field names (e.g. "DefaultAssetId") to include in
  4564  	// API requests with the JSON null value. By default, fields with empty values
  4565  	// are omitted from API requests. See
  4566  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4567  	NullFields []string `json:"-"`
  4568  }
  4569  
  4570  func (s *CreativeAssetSelection) MarshalJSON() ([]byte, error) {
  4571  	type NoMethod CreativeAssetSelection
  4572  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4573  }
  4574  
  4575  // CreativeAssignment: Creative Assignment.
  4576  type CreativeAssignment struct {
  4577  	// Active: Whether this creative assignment is active. When true, the creative
  4578  	// will be included in the ad's rotation.
  4579  	Active bool `json:"active,omitempty"`
  4580  	// ApplyEventTags: Whether applicable event tags should fire when this creative
  4581  	// assignment is rendered. If this value is unset when the ad is inserted or
  4582  	// updated, it will default to true for all creative types EXCEPT for
  4583  	// INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO.
  4584  	ApplyEventTags bool `json:"applyEventTags,omitempty"`
  4585  	// ClickThroughUrl: Click-through URL of the creative assignment.
  4586  	ClickThroughUrl *ClickThroughUrl `json:"clickThroughUrl,omitempty"`
  4587  	// CompanionCreativeOverrides: Companion creative overrides for this creative
  4588  	// assignment. Applicable to video ads.
  4589  	CompanionCreativeOverrides []*CompanionClickThroughOverride `json:"companionCreativeOverrides,omitempty"`
  4590  	// CreativeGroupAssignments: Creative group assignments for this creative
  4591  	// assignment. Only one assignment per creative group number is allowed for a
  4592  	// maximum of two assignments.
  4593  	CreativeGroupAssignments []*CreativeGroupAssignment `json:"creativeGroupAssignments,omitempty"`
  4594  	// CreativeId: ID of the creative to be assigned. This is a required field.
  4595  	CreativeId int64 `json:"creativeId,omitempty,string"`
  4596  	// CreativeIdDimensionValue: Dimension value for the ID of the creative. This
  4597  	// is a read-only, auto-generated field.
  4598  	CreativeIdDimensionValue *DimensionValue `json:"creativeIdDimensionValue,omitempty"`
  4599  	EndTime                  string          `json:"endTime,omitempty"`
  4600  	// RichMediaExitOverrides: Rich media exit overrides for this creative
  4601  	// assignment. Applicable when the creative type is any of the following: -
  4602  	// DISPLAY - RICH_MEDIA_INPAGE - RICH_MEDIA_INPAGE_FLOATING -
  4603  	// RICH_MEDIA_IM_EXPAND - RICH_MEDIA_EXPANDING - RICH_MEDIA_INTERSTITIAL_FLOAT
  4604  	// - RICH_MEDIA_MOBILE_IN_APP - RICH_MEDIA_MULTI_FLOATING -
  4605  	// RICH_MEDIA_PEEL_DOWN - VPAID_LINEAR - VPAID_NON_LINEAR
  4606  	RichMediaExitOverrides []*RichMediaExitOverride `json:"richMediaExitOverrides,omitempty"`
  4607  	// Sequence: Sequence number of the creative assignment, applicable when the
  4608  	// rotation type is CREATIVE_ROTATION_TYPE_SEQUENTIAL. Acceptable values are 1
  4609  	// to 65535, inclusive.
  4610  	Sequence int64 `json:"sequence,omitempty"`
  4611  	// SslCompliant: Whether the creative to be assigned is SSL-compliant. This is
  4612  	// a read-only field that is auto-generated when the ad is inserted or updated.
  4613  	SslCompliant bool   `json:"sslCompliant,omitempty"`
  4614  	StartTime    string `json:"startTime,omitempty"`
  4615  	// Weight: Weight of the creative assignment, applicable when the rotation type
  4616  	// is CREATIVE_ROTATION_TYPE_RANDOM. Value must be greater than or equal to 1.
  4617  	Weight int64 `json:"weight,omitempty"`
  4618  	// ForceSendFields is a list of field names (e.g. "Active") to unconditionally
  4619  	// include in API requests. By default, fields with empty or default values are
  4620  	// omitted from API requests. See
  4621  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4622  	// details.
  4623  	ForceSendFields []string `json:"-"`
  4624  	// NullFields is a list of field names (e.g. "Active") to include in API
  4625  	// requests with the JSON null value. By default, fields with empty values are
  4626  	// omitted from API requests. See
  4627  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4628  	NullFields []string `json:"-"`
  4629  }
  4630  
  4631  func (s *CreativeAssignment) MarshalJSON() ([]byte, error) {
  4632  	type NoMethod CreativeAssignment
  4633  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4634  }
  4635  
  4636  // CreativeClickThroughUrl: Click-through URL
  4637  type CreativeClickThroughUrl struct {
  4638  	// ComputedClickThroughUrl: Read-only convenience field representing the actual
  4639  	// URL that will be used for this click-through. The URL is computed as
  4640  	// follows: - If landingPageId is specified then that landing page's URL is
  4641  	// assigned to this field. - Otherwise, the customClickThroughUrl is assigned
  4642  	// to this field.
  4643  	ComputedClickThroughUrl string `json:"computedClickThroughUrl,omitempty"`
  4644  	// CustomClickThroughUrl: Custom click-through URL. Applicable if the
  4645  	// landingPageId field is left unset.
  4646  	CustomClickThroughUrl string `json:"customClickThroughUrl,omitempty"`
  4647  	// LandingPageId: ID of the landing page for the click-through URL.
  4648  	LandingPageId int64 `json:"landingPageId,omitempty,string"`
  4649  	// ForceSendFields is a list of field names (e.g. "ComputedClickThroughUrl") to
  4650  	// unconditionally include in API requests. By default, fields with empty or
  4651  	// default values are omitted from API requests. See
  4652  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4653  	// details.
  4654  	ForceSendFields []string `json:"-"`
  4655  	// NullFields is a list of field names (e.g. "ComputedClickThroughUrl") to
  4656  	// include in API requests with the JSON null value. By default, fields with
  4657  	// empty values are omitted from API requests. See
  4658  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4659  	NullFields []string `json:"-"`
  4660  }
  4661  
  4662  func (s *CreativeClickThroughUrl) MarshalJSON() ([]byte, error) {
  4663  	type NoMethod CreativeClickThroughUrl
  4664  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4665  }
  4666  
  4667  // CreativeCustomEvent: Creative Custom Event.
  4668  type CreativeCustomEvent struct {
  4669  	// AdvertiserCustomEventId: Unique ID of this event used by Reporting and Data
  4670  	// Transfer. This is a read-only field.
  4671  	AdvertiserCustomEventId int64 `json:"advertiserCustomEventId,omitempty,string"`
  4672  	// AdvertiserCustomEventName: User-entered name for the event.
  4673  	AdvertiserCustomEventName string `json:"advertiserCustomEventName,omitempty"`
  4674  	// AdvertiserCustomEventType: Type of the event. This is a read-only field.
  4675  	//
  4676  	// Possible values:
  4677  	//   "ADVERTISER_EVENT_TIMER"
  4678  	//   "ADVERTISER_EVENT_EXIT"
  4679  	//   "ADVERTISER_EVENT_COUNTER"
  4680  	AdvertiserCustomEventType string `json:"advertiserCustomEventType,omitempty"`
  4681  	// ArtworkLabel: Artwork label column, used to link events in Campaign Manager
  4682  	// back to events in Studio. This is a required field and should not be
  4683  	// modified after insertion.
  4684  	ArtworkLabel string `json:"artworkLabel,omitempty"`
  4685  	// ArtworkType: Artwork type used by the creative.This is a read-only field.
  4686  	//
  4687  	// Possible values:
  4688  	//   "ARTWORK_TYPE_FLASH" - The creative is a Flash creative.
  4689  	//   "ARTWORK_TYPE_HTML5" - The creative is HTML5.
  4690  	//   "ARTWORK_TYPE_MIXED" - The creative is HTML5 if available, Flash
  4691  	// otherwise.
  4692  	//   "ARTWORK_TYPE_IMAGE" - The creative is Image.
  4693  	ArtworkType string `json:"artworkType,omitempty"`
  4694  	// ExitClickThroughUrl: Exit click-through URL for the event. This field is
  4695  	// used only for exit events.
  4696  	ExitClickThroughUrl *CreativeClickThroughUrl `json:"exitClickThroughUrl,omitempty"`
  4697  	// Id: ID of this event. This is a required field and should not be modified
  4698  	// after insertion.
  4699  	Id int64 `json:"id,omitempty,string"`
  4700  	// PopupWindowProperties: Properties for rich media popup windows. This field
  4701  	// is used only for exit events.
  4702  	PopupWindowProperties *PopupWindowProperties `json:"popupWindowProperties,omitempty"`
  4703  	// TargetType: Target type used by the event.
  4704  	//
  4705  	// Possible values:
  4706  	//   "TARGET_BLANK" - New tab
  4707  	//   "TARGET_TOP" - Current tab
  4708  	//   "TARGET_SELF" - Same frame
  4709  	//   "TARGET_PARENT" - Parent frame
  4710  	//   "TARGET_POPUP" - New window with properties specified in window_properties
  4711  	TargetType string `json:"targetType,omitempty"`
  4712  	// VideoReportingId: Video reporting ID, used to differentiate multiple videos
  4713  	// in a single creative. This is a read-only field.
  4714  	VideoReportingId string `json:"videoReportingId,omitempty"`
  4715  	// ForceSendFields is a list of field names (e.g. "AdvertiserCustomEventId") to
  4716  	// unconditionally include in API requests. By default, fields with empty or
  4717  	// default values are omitted from API requests. See
  4718  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4719  	// details.
  4720  	ForceSendFields []string `json:"-"`
  4721  	// NullFields is a list of field names (e.g. "AdvertiserCustomEventId") to
  4722  	// include in API requests with the JSON null value. By default, fields with
  4723  	// empty values are omitted from API requests. See
  4724  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4725  	NullFields []string `json:"-"`
  4726  }
  4727  
  4728  func (s *CreativeCustomEvent) MarshalJSON() ([]byte, error) {
  4729  	type NoMethod CreativeCustomEvent
  4730  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4731  }
  4732  
  4733  // CreativeField: Contains properties of a creative field.
  4734  type CreativeField struct {
  4735  	// AccountId: Account ID of this creative field. This is a read-only field that
  4736  	// can be left blank.
  4737  	AccountId int64 `json:"accountId,omitempty,string"`
  4738  	// AdvertiserId: Advertiser ID of this creative field. This is a required field
  4739  	// on insertion.
  4740  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  4741  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
  4742  	// This is a read-only, auto-generated field.
  4743  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  4744  	// Id: ID of this creative field. This is a read-only, auto-generated field.
  4745  	Id int64 `json:"id,omitempty,string"`
  4746  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  4747  	// "dfareporting#creativeField".
  4748  	Kind string `json:"kind,omitempty"`
  4749  	// Name: Name of this creative field. This is a required field and must be less
  4750  	// than 256 characters long and unique among creative fields of the same
  4751  	// advertiser.
  4752  	Name string `json:"name,omitempty"`
  4753  	// SubaccountId: Subaccount ID of this creative field. This is a read-only
  4754  	// field that can be left blank.
  4755  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  4756  
  4757  	// ServerResponse contains the HTTP response code and headers from the server.
  4758  	googleapi.ServerResponse `json:"-"`
  4759  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  4760  	// unconditionally include in API requests. By default, fields with empty or
  4761  	// default values are omitted from API requests. See
  4762  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4763  	// details.
  4764  	ForceSendFields []string `json:"-"`
  4765  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  4766  	// requests with the JSON null value. By default, fields with empty values are
  4767  	// omitted from API requests. See
  4768  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4769  	NullFields []string `json:"-"`
  4770  }
  4771  
  4772  func (s *CreativeField) MarshalJSON() ([]byte, error) {
  4773  	type NoMethod CreativeField
  4774  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4775  }
  4776  
  4777  // CreativeFieldAssignment: Creative Field Assignment.
  4778  type CreativeFieldAssignment struct {
  4779  	// CreativeFieldId: ID of the creative field.
  4780  	CreativeFieldId int64 `json:"creativeFieldId,omitempty,string"`
  4781  	// CreativeFieldValueId: ID of the creative field value.
  4782  	CreativeFieldValueId int64 `json:"creativeFieldValueId,omitempty,string"`
  4783  	// ForceSendFields is a list of field names (e.g. "CreativeFieldId") to
  4784  	// unconditionally include in API requests. By default, fields with empty or
  4785  	// default values are omitted from API requests. See
  4786  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4787  	// details.
  4788  	ForceSendFields []string `json:"-"`
  4789  	// NullFields is a list of field names (e.g. "CreativeFieldId") to include in
  4790  	// API requests with the JSON null value. By default, fields with empty values
  4791  	// are omitted from API requests. See
  4792  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4793  	NullFields []string `json:"-"`
  4794  }
  4795  
  4796  func (s *CreativeFieldAssignment) MarshalJSON() ([]byte, error) {
  4797  	type NoMethod CreativeFieldAssignment
  4798  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4799  }
  4800  
  4801  // CreativeFieldValue: Contains properties of a creative field value.
  4802  type CreativeFieldValue struct {
  4803  	// Id: ID of this creative field value. This is a read-only, auto-generated
  4804  	// field.
  4805  	Id int64 `json:"id,omitempty,string"`
  4806  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  4807  	// "dfareporting#creativeFieldValue".
  4808  	Kind string `json:"kind,omitempty"`
  4809  	// Value: Value of this creative field value. It needs to be less than 256
  4810  	// characters in length and unique per creative field.
  4811  	Value string `json:"value,omitempty"`
  4812  
  4813  	// ServerResponse contains the HTTP response code and headers from the server.
  4814  	googleapi.ServerResponse `json:"-"`
  4815  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  4816  	// include in API requests. By default, fields with empty or default values are
  4817  	// omitted from API requests. See
  4818  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4819  	// details.
  4820  	ForceSendFields []string `json:"-"`
  4821  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  4822  	// with the JSON null value. By default, fields with empty values are omitted
  4823  	// from API requests. See
  4824  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4825  	NullFields []string `json:"-"`
  4826  }
  4827  
  4828  func (s *CreativeFieldValue) MarshalJSON() ([]byte, error) {
  4829  	type NoMethod CreativeFieldValue
  4830  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4831  }
  4832  
  4833  // CreativeFieldValuesListResponse: Creative Field Value List Response
  4834  type CreativeFieldValuesListResponse struct {
  4835  	// CreativeFieldValues: Creative field value collection.
  4836  	CreativeFieldValues []*CreativeFieldValue `json:"creativeFieldValues,omitempty"`
  4837  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  4838  	// "dfareporting#creativeFieldValuesListResponse".
  4839  	Kind string `json:"kind,omitempty"`
  4840  	// NextPageToken: Pagination token to be used for the next list operation.
  4841  	NextPageToken string `json:"nextPageToken,omitempty"`
  4842  
  4843  	// ServerResponse contains the HTTP response code and headers from the server.
  4844  	googleapi.ServerResponse `json:"-"`
  4845  	// ForceSendFields is a list of field names (e.g. "CreativeFieldValues") to
  4846  	// unconditionally include in API requests. By default, fields with empty or
  4847  	// default values are omitted from API requests. See
  4848  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4849  	// details.
  4850  	ForceSendFields []string `json:"-"`
  4851  	// NullFields is a list of field names (e.g. "CreativeFieldValues") to include
  4852  	// in API requests with the JSON null value. By default, fields with empty
  4853  	// values are omitted from API requests. See
  4854  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4855  	NullFields []string `json:"-"`
  4856  }
  4857  
  4858  func (s *CreativeFieldValuesListResponse) MarshalJSON() ([]byte, error) {
  4859  	type NoMethod CreativeFieldValuesListResponse
  4860  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4861  }
  4862  
  4863  // CreativeFieldsListResponse: Creative Field List Response
  4864  type CreativeFieldsListResponse struct {
  4865  	// CreativeFields: Creative field collection.
  4866  	CreativeFields []*CreativeField `json:"creativeFields,omitempty"`
  4867  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  4868  	// "dfareporting#creativeFieldsListResponse".
  4869  	Kind string `json:"kind,omitempty"`
  4870  	// NextPageToken: Pagination token to be used for the next list operation.
  4871  	NextPageToken string `json:"nextPageToken,omitempty"`
  4872  
  4873  	// ServerResponse contains the HTTP response code and headers from the server.
  4874  	googleapi.ServerResponse `json:"-"`
  4875  	// ForceSendFields is a list of field names (e.g. "CreativeFields") to
  4876  	// unconditionally include in API requests. By default, fields with empty or
  4877  	// default values are omitted from API requests. See
  4878  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4879  	// details.
  4880  	ForceSendFields []string `json:"-"`
  4881  	// NullFields is a list of field names (e.g. "CreativeFields") to include in
  4882  	// API requests with the JSON null value. By default, fields with empty values
  4883  	// are omitted from API requests. See
  4884  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4885  	NullFields []string `json:"-"`
  4886  }
  4887  
  4888  func (s *CreativeFieldsListResponse) MarshalJSON() ([]byte, error) {
  4889  	type NoMethod CreativeFieldsListResponse
  4890  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4891  }
  4892  
  4893  // CreativeGroup: Contains properties of a creative group.
  4894  type CreativeGroup struct {
  4895  	// AccountId: Account ID of this creative group. This is a read-only field that
  4896  	// can be left blank.
  4897  	AccountId int64 `json:"accountId,omitempty,string"`
  4898  	// AdvertiserId: Advertiser ID of this creative group. This is a required field
  4899  	// on insertion.
  4900  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  4901  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
  4902  	// This is a read-only, auto-generated field.
  4903  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  4904  	// GroupNumber: Subgroup of the creative group. Assign your creative groups to
  4905  	// a subgroup in order to filter or manage them more easily. This field is
  4906  	// required on insertion and is read-only after insertion. Acceptable values
  4907  	// are 1 to 2, inclusive.
  4908  	GroupNumber int64 `json:"groupNumber,omitempty"`
  4909  	// Id: ID of this creative group. This is a read-only, auto-generated field.
  4910  	Id int64 `json:"id,omitempty,string"`
  4911  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  4912  	// "dfareporting#creativeGroup".
  4913  	Kind string `json:"kind,omitempty"`
  4914  	// Name: Name of this creative group. This is a required field and must be less
  4915  	// than 256 characters long and unique among creative groups of the same
  4916  	// advertiser.
  4917  	Name string `json:"name,omitempty"`
  4918  	// SubaccountId: Subaccount ID of this creative group. This is a read-only
  4919  	// field that can be left blank.
  4920  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  4921  
  4922  	// ServerResponse contains the HTTP response code and headers from the server.
  4923  	googleapi.ServerResponse `json:"-"`
  4924  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  4925  	// unconditionally include in API requests. By default, fields with empty or
  4926  	// default values are omitted from API requests. See
  4927  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4928  	// details.
  4929  	ForceSendFields []string `json:"-"`
  4930  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  4931  	// requests with the JSON null value. By default, fields with empty values are
  4932  	// omitted from API requests. See
  4933  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4934  	NullFields []string `json:"-"`
  4935  }
  4936  
  4937  func (s *CreativeGroup) MarshalJSON() ([]byte, error) {
  4938  	type NoMethod CreativeGroup
  4939  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4940  }
  4941  
  4942  // CreativeGroupAssignment: Creative Group Assignment.
  4943  type CreativeGroupAssignment struct {
  4944  	// CreativeGroupId: ID of the creative group to be assigned.
  4945  	CreativeGroupId int64 `json:"creativeGroupId,omitempty,string"`
  4946  	// CreativeGroupNumber: Creative group number of the creative group assignment.
  4947  	//
  4948  	// Possible values:
  4949  	//   "CREATIVE_GROUP_ONE"
  4950  	//   "CREATIVE_GROUP_TWO"
  4951  	CreativeGroupNumber string `json:"creativeGroupNumber,omitempty"`
  4952  	// ForceSendFields is a list of field names (e.g. "CreativeGroupId") to
  4953  	// unconditionally include in API requests. By default, fields with empty or
  4954  	// default values are omitted from API requests. See
  4955  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4956  	// details.
  4957  	ForceSendFields []string `json:"-"`
  4958  	// NullFields is a list of field names (e.g. "CreativeGroupId") to include in
  4959  	// API requests with the JSON null value. By default, fields with empty values
  4960  	// are omitted from API requests. See
  4961  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4962  	NullFields []string `json:"-"`
  4963  }
  4964  
  4965  func (s *CreativeGroupAssignment) MarshalJSON() ([]byte, error) {
  4966  	type NoMethod CreativeGroupAssignment
  4967  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4968  }
  4969  
  4970  // CreativeGroupsListResponse: Creative Group List Response
  4971  type CreativeGroupsListResponse struct {
  4972  	// CreativeGroups: Creative group collection.
  4973  	CreativeGroups []*CreativeGroup `json:"creativeGroups,omitempty"`
  4974  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  4975  	// "dfareporting#creativeGroupsListResponse".
  4976  	Kind string `json:"kind,omitempty"`
  4977  	// NextPageToken: Pagination token to be used for the next list operation.
  4978  	NextPageToken string `json:"nextPageToken,omitempty"`
  4979  
  4980  	// ServerResponse contains the HTTP response code and headers from the server.
  4981  	googleapi.ServerResponse `json:"-"`
  4982  	// ForceSendFields is a list of field names (e.g. "CreativeGroups") to
  4983  	// unconditionally include in API requests. By default, fields with empty or
  4984  	// default values are omitted from API requests. See
  4985  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4986  	// details.
  4987  	ForceSendFields []string `json:"-"`
  4988  	// NullFields is a list of field names (e.g. "CreativeGroups") to include in
  4989  	// API requests with the JSON null value. By default, fields with empty values
  4990  	// are omitted from API requests. See
  4991  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4992  	NullFields []string `json:"-"`
  4993  }
  4994  
  4995  func (s *CreativeGroupsListResponse) MarshalJSON() ([]byte, error) {
  4996  	type NoMethod CreativeGroupsListResponse
  4997  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4998  }
  4999  
  5000  // CreativeOptimizationConfiguration: Creative optimization settings.
  5001  type CreativeOptimizationConfiguration struct {
  5002  	// Id: ID of this creative optimization config. This field is auto-generated
  5003  	// when the campaign is inserted or updated. It can be null for existing
  5004  	// campaigns.
  5005  	Id int64 `json:"id,omitempty,string"`
  5006  	// Name: Name of this creative optimization config. This is a required field
  5007  	// and must be less than 129 characters long.
  5008  	Name string `json:"name,omitempty"`
  5009  	// OptimizationActivitys: List of optimization activities associated with this
  5010  	// configuration.
  5011  	OptimizationActivitys []*OptimizationActivity `json:"optimizationActivitys,omitempty"`
  5012  	// OptimizationModel: Optimization model for this configuration.
  5013  	//
  5014  	// Possible values:
  5015  	//   "CLICK"
  5016  	//   "POST_CLICK"
  5017  	//   "POST_IMPRESSION"
  5018  	//   "POST_CLICK_AND_IMPRESSION"
  5019  	//   "VIDEO_COMPLETION"
  5020  	OptimizationModel string `json:"optimizationModel,omitempty"`
  5021  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  5022  	// include in API requests. By default, fields with empty or default values are
  5023  	// omitted from API requests. See
  5024  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5025  	// details.
  5026  	ForceSendFields []string `json:"-"`
  5027  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  5028  	// with the JSON null value. By default, fields with empty values are omitted
  5029  	// from API requests. See
  5030  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5031  	NullFields []string `json:"-"`
  5032  }
  5033  
  5034  func (s *CreativeOptimizationConfiguration) MarshalJSON() ([]byte, error) {
  5035  	type NoMethod CreativeOptimizationConfiguration
  5036  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5037  }
  5038  
  5039  // CreativeRotation: Creative Rotation.
  5040  type CreativeRotation struct {
  5041  	// CreativeAssignments: Creative assignments in this creative rotation.
  5042  	CreativeAssignments []*CreativeAssignment `json:"creativeAssignments,omitempty"`
  5043  	// CreativeOptimizationConfigurationId: Creative optimization configuration
  5044  	// that is used by this ad. It should refer to one of the existing optimization
  5045  	// configurations in the ad's campaign. If it is unset or set to 0, then the
  5046  	// campaign's default optimization configuration will be used for this ad.
  5047  	CreativeOptimizationConfigurationId int64 `json:"creativeOptimizationConfigurationId,omitempty,string"`
  5048  	// Type: Type of creative rotation. Can be used to specify whether to use
  5049  	// sequential or random rotation.
  5050  	//
  5051  	// Possible values:
  5052  	//   "CREATIVE_ROTATION_TYPE_SEQUENTIAL" - The weights of each creative in the
  5053  	// rotation should be sequential starting at 1. The user may adjust the order.
  5054  	//   "CREATIVE_ROTATION_TYPE_RANDOM" - The weights are calculated according to
  5055  	// the ad's CreativeRoationWeightStrategy.
  5056  	Type string `json:"type,omitempty"`
  5057  	// WeightCalculationStrategy: Strategy for calculating weights. Used with
  5058  	// CREATIVE_ROTATION_TYPE_RANDOM.
  5059  	//
  5060  	// Possible values:
  5061  	//   "WEIGHT_STRATEGY_EQUAL" - The creative weights should all be equal to 1.
  5062  	// This is the default value for all ads with a rotation type of Random.
  5063  	//   "WEIGHT_STRATEGY_CUSTOM" - The creative weights can be any user provided
  5064  	// positive integer.
  5065  	//   "WEIGHT_STRATEGY_HIGHEST_CTR" - The weights will be automatically
  5066  	// calculated giving preference to the creative that has the highest CTR. The
  5067  	// CTR for campaigns that are optimized for clicks = clicks/impressions. The
  5068  	// CTR for campaigns that are optimized for view-through or click through is
  5069  	// sum(activities + floodlight weight)/impressions.
  5070  	//   "WEIGHT_STRATEGY_OPTIMIZED" - The creative weights will be automatically
  5071  	// calculated using a formula that could not possibly be explained in these
  5072  	// comments. The value will be within some predetermined range (probably 0 -
  5073  	// 1,000,000).
  5074  	WeightCalculationStrategy string `json:"weightCalculationStrategy,omitempty"`
  5075  	// ForceSendFields is a list of field names (e.g. "CreativeAssignments") to
  5076  	// unconditionally include in API requests. By default, fields with empty or
  5077  	// default values are omitted from API requests. See
  5078  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5079  	// details.
  5080  	ForceSendFields []string `json:"-"`
  5081  	// NullFields is a list of field names (e.g. "CreativeAssignments") to include
  5082  	// in API requests with the JSON null value. By default, fields with empty
  5083  	// values are omitted from API requests. See
  5084  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5085  	NullFields []string `json:"-"`
  5086  }
  5087  
  5088  func (s *CreativeRotation) MarshalJSON() ([]byte, error) {
  5089  	type NoMethod CreativeRotation
  5090  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5091  }
  5092  
  5093  // CreativesListResponse: Creative List Response
  5094  type CreativesListResponse struct {
  5095  	// Creatives: Creative collection.
  5096  	Creatives []*Creative `json:"creatives,omitempty"`
  5097  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  5098  	// "dfareporting#creativesListResponse".
  5099  	Kind string `json:"kind,omitempty"`
  5100  	// NextPageToken: Pagination token to be used for the next list operation.
  5101  	NextPageToken string `json:"nextPageToken,omitempty"`
  5102  
  5103  	// ServerResponse contains the HTTP response code and headers from the server.
  5104  	googleapi.ServerResponse `json:"-"`
  5105  	// ForceSendFields is a list of field names (e.g. "Creatives") to
  5106  	// unconditionally include in API requests. By default, fields with empty or
  5107  	// default values are omitted from API requests. See
  5108  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5109  	// details.
  5110  	ForceSendFields []string `json:"-"`
  5111  	// NullFields is a list of field names (e.g. "Creatives") to include in API
  5112  	// requests with the JSON null value. By default, fields with empty values are
  5113  	// omitted from API requests. See
  5114  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5115  	NullFields []string `json:"-"`
  5116  }
  5117  
  5118  func (s *CreativesListResponse) MarshalJSON() ([]byte, error) {
  5119  	type NoMethod CreativesListResponse
  5120  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5121  }
  5122  
  5123  // CrossDimensionReachReportCompatibleFields: Represents fields that are
  5124  // compatible to be selected for a report of type "CROSS_DIMENSION_REACH".
  5125  type CrossDimensionReachReportCompatibleFields struct {
  5126  	// Breakdown: Dimensions which are compatible to be selected in the "breakdown"
  5127  	// section of the report.
  5128  	Breakdown []*Dimension `json:"breakdown,omitempty"`
  5129  	// DimensionFilters: Dimensions which are compatible to be selected in the
  5130  	// "dimensionFilters" section of the report.
  5131  	DimensionFilters []*Dimension `json:"dimensionFilters,omitempty"`
  5132  	// Kind: The kind of resource this is, in this case
  5133  	// dfareporting#crossDimensionReachReportCompatibleFields.
  5134  	Kind string `json:"kind,omitempty"`
  5135  	// Metrics: Metrics which are compatible to be selected in the "metricNames"
  5136  	// section of the report.
  5137  	Metrics []*Metric `json:"metrics,omitempty"`
  5138  	// OverlapMetrics: Metrics which are compatible to be selected in the
  5139  	// "overlapMetricNames" section of the report.
  5140  	OverlapMetrics []*Metric `json:"overlapMetrics,omitempty"`
  5141  	// ForceSendFields is a list of field names (e.g. "Breakdown") to
  5142  	// unconditionally include in API requests. By default, fields with empty or
  5143  	// default values are omitted from API requests. See
  5144  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5145  	// details.
  5146  	ForceSendFields []string `json:"-"`
  5147  	// NullFields is a list of field names (e.g. "Breakdown") to include in API
  5148  	// requests with the JSON null value. By default, fields with empty values are
  5149  	// omitted from API requests. See
  5150  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5151  	NullFields []string `json:"-"`
  5152  }
  5153  
  5154  func (s *CrossDimensionReachReportCompatibleFields) MarshalJSON() ([]byte, error) {
  5155  	type NoMethod CrossDimensionReachReportCompatibleFields
  5156  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5157  }
  5158  
  5159  // CustomFloodlightVariable: A custom floodlight variable. This field may only
  5160  // be used when calling batchinsert; it is not supported by batchupdate.
  5161  type CustomFloodlightVariable struct {
  5162  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  5163  	// "dfareporting#customFloodlightVariable".
  5164  	Kind string `json:"kind,omitempty"`
  5165  	// Type: The type of custom floodlight variable to supply a value for. These
  5166  	// map to the "u[1-20]=" in the tags.
  5167  	//
  5168  	// Possible values:
  5169  	//   "U1"
  5170  	//   "U2"
  5171  	//   "U3"
  5172  	//   "U4"
  5173  	//   "U5"
  5174  	//   "U6"
  5175  	//   "U7"
  5176  	//   "U8"
  5177  	//   "U9"
  5178  	//   "U10"
  5179  	//   "U11"
  5180  	//   "U12"
  5181  	//   "U13"
  5182  	//   "U14"
  5183  	//   "U15"
  5184  	//   "U16"
  5185  	//   "U17"
  5186  	//   "U18"
  5187  	//   "U19"
  5188  	//   "U20"
  5189  	//   "U21"
  5190  	//   "U22"
  5191  	//   "U23"
  5192  	//   "U24"
  5193  	//   "U25"
  5194  	//   "U26"
  5195  	//   "U27"
  5196  	//   "U28"
  5197  	//   "U29"
  5198  	//   "U30"
  5199  	//   "U31"
  5200  	//   "U32"
  5201  	//   "U33"
  5202  	//   "U34"
  5203  	//   "U35"
  5204  	//   "U36"
  5205  	//   "U37"
  5206  	//   "U38"
  5207  	//   "U39"
  5208  	//   "U40"
  5209  	//   "U41"
  5210  	//   "U42"
  5211  	//   "U43"
  5212  	//   "U44"
  5213  	//   "U45"
  5214  	//   "U46"
  5215  	//   "U47"
  5216  	//   "U48"
  5217  	//   "U49"
  5218  	//   "U50"
  5219  	//   "U51"
  5220  	//   "U52"
  5221  	//   "U53"
  5222  	//   "U54"
  5223  	//   "U55"
  5224  	//   "U56"
  5225  	//   "U57"
  5226  	//   "U58"
  5227  	//   "U59"
  5228  	//   "U60"
  5229  	//   "U61"
  5230  	//   "U62"
  5231  	//   "U63"
  5232  	//   "U64"
  5233  	//   "U65"
  5234  	//   "U66"
  5235  	//   "U67"
  5236  	//   "U68"
  5237  	//   "U69"
  5238  	//   "U70"
  5239  	//   "U71"
  5240  	//   "U72"
  5241  	//   "U73"
  5242  	//   "U74"
  5243  	//   "U75"
  5244  	//   "U76"
  5245  	//   "U77"
  5246  	//   "U78"
  5247  	//   "U79"
  5248  	//   "U80"
  5249  	//   "U81"
  5250  	//   "U82"
  5251  	//   "U83"
  5252  	//   "U84"
  5253  	//   "U85"
  5254  	//   "U86"
  5255  	//   "U87"
  5256  	//   "U88"
  5257  	//   "U89"
  5258  	//   "U90"
  5259  	//   "U91"
  5260  	//   "U92"
  5261  	//   "U93"
  5262  	//   "U94"
  5263  	//   "U95"
  5264  	//   "U96"
  5265  	//   "U97"
  5266  	//   "U98"
  5267  	//   "U99"
  5268  	//   "U100"
  5269  	Type string `json:"type,omitempty"`
  5270  	// Value: The value of the custom floodlight variable. The length of string
  5271  	// must not exceed 100 characters.
  5272  	Value string `json:"value,omitempty"`
  5273  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  5274  	// include in API requests. By default, fields with empty or default values are
  5275  	// omitted from API requests. See
  5276  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5277  	// details.
  5278  	ForceSendFields []string `json:"-"`
  5279  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  5280  	// with the JSON null value. By default, fields with empty values are omitted
  5281  	// from API requests. See
  5282  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5283  	NullFields []string `json:"-"`
  5284  }
  5285  
  5286  func (s *CustomFloodlightVariable) MarshalJSON() ([]byte, error) {
  5287  	type NoMethod CustomFloodlightVariable
  5288  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5289  }
  5290  
  5291  // CustomRichMediaEvents: Represents a Custom Rich Media Events group.
  5292  type CustomRichMediaEvents struct {
  5293  	// FilteredEventIds: List of custom rich media event IDs. Dimension values must
  5294  	// be all of type dfa:richMediaEventTypeIdAndName.
  5295  	FilteredEventIds []*DimensionValue `json:"filteredEventIds,omitempty"`
  5296  	// Kind: The kind of resource this is, in this case
  5297  	// dfareporting#customRichMediaEvents.
  5298  	Kind string `json:"kind,omitempty"`
  5299  	// ForceSendFields is a list of field names (e.g. "FilteredEventIds") to
  5300  	// unconditionally include in API requests. By default, fields with empty or
  5301  	// default values are omitted from API requests. See
  5302  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5303  	// details.
  5304  	ForceSendFields []string `json:"-"`
  5305  	// NullFields is a list of field names (e.g. "FilteredEventIds") to include in
  5306  	// API requests with the JSON null value. By default, fields with empty values
  5307  	// are omitted from API requests. See
  5308  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5309  	NullFields []string `json:"-"`
  5310  }
  5311  
  5312  func (s *CustomRichMediaEvents) MarshalJSON() ([]byte, error) {
  5313  	type NoMethod CustomRichMediaEvents
  5314  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5315  }
  5316  
  5317  // CustomViewabilityMetric: Custom Viewability Metric
  5318  type CustomViewabilityMetric struct {
  5319  	// Configuration: Configuration of the custom viewability metric.
  5320  	Configuration *CustomViewabilityMetricConfiguration `json:"configuration,omitempty"`
  5321  	// Id: ID of the custom viewability metric.
  5322  	Id int64 `json:"id,omitempty,string"`
  5323  	// Name: Name of the custom viewability metric.
  5324  	Name string `json:"name,omitempty"`
  5325  	// ForceSendFields is a list of field names (e.g. "Configuration") to
  5326  	// unconditionally include in API requests. By default, fields with empty or
  5327  	// default values are omitted from API requests. See
  5328  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5329  	// details.
  5330  	ForceSendFields []string `json:"-"`
  5331  	// NullFields is a list of field names (e.g. "Configuration") to include in API
  5332  	// requests with the JSON null value. By default, fields with empty values are
  5333  	// omitted from API requests. See
  5334  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5335  	NullFields []string `json:"-"`
  5336  }
  5337  
  5338  func (s *CustomViewabilityMetric) MarshalJSON() ([]byte, error) {
  5339  	type NoMethod CustomViewabilityMetric
  5340  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5341  }
  5342  
  5343  // CustomViewabilityMetricConfiguration: The attributes, like playtime and
  5344  // percent onscreen, that define the Custom Viewability Metric.
  5345  type CustomViewabilityMetricConfiguration struct {
  5346  	// Audible: Whether the video must be audible to count an impression.
  5347  	Audible bool `json:"audible,omitempty"`
  5348  	// TimeMillis: The time in milliseconds the video must play for the Custom
  5349  	// Viewability Metric to count an impression. If both this and timePercent are
  5350  	// specified, the earlier of the two will be used.
  5351  	TimeMillis int64 `json:"timeMillis,omitempty"`
  5352  	// TimePercent: The percentage of video that must play for the Custom
  5353  	// Viewability Metric to count an impression. If both this and timeMillis are
  5354  	// specified, the earlier of the two will be used.
  5355  	TimePercent int64 `json:"timePercent,omitempty"`
  5356  	// ViewabilityPercent: The percentage of video that must be on screen for the
  5357  	// Custom Viewability Metric to count an impression.
  5358  	ViewabilityPercent int64 `json:"viewabilityPercent,omitempty"`
  5359  	// ForceSendFields is a list of field names (e.g. "Audible") to unconditionally
  5360  	// include in API requests. By default, fields with empty or default values are
  5361  	// omitted from API requests. See
  5362  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5363  	// details.
  5364  	ForceSendFields []string `json:"-"`
  5365  	// NullFields is a list of field names (e.g. "Audible") to include in API
  5366  	// requests with the JSON null value. By default, fields with empty values are
  5367  	// omitted from API requests. See
  5368  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5369  	NullFields []string `json:"-"`
  5370  }
  5371  
  5372  func (s *CustomViewabilityMetricConfiguration) MarshalJSON() ([]byte, error) {
  5373  	type NoMethod CustomViewabilityMetricConfiguration
  5374  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5375  }
  5376  
  5377  // DateRange: Represents a date range.
  5378  type DateRange struct {
  5379  	EndDate string `json:"endDate,omitempty"`
  5380  	// Kind: The kind of resource this is, in this case dfareporting#dateRange.
  5381  	Kind string `json:"kind,omitempty"`
  5382  	// RelativeDateRange: The date range relative to the date of when the report is
  5383  	// run.
  5384  	//
  5385  	// Possible values:
  5386  	//   "TODAY"
  5387  	//   "YESTERDAY"
  5388  	//   "WEEK_TO_DATE"
  5389  	//   "MONTH_TO_DATE"
  5390  	//   "QUARTER_TO_DATE"
  5391  	//   "YEAR_TO_DATE"
  5392  	//   "PREVIOUS_WEEK"
  5393  	//   "PREVIOUS_MONTH"
  5394  	//   "PREVIOUS_QUARTER"
  5395  	//   "PREVIOUS_YEAR"
  5396  	//   "LAST_7_DAYS"
  5397  	//   "LAST_30_DAYS"
  5398  	//   "LAST_90_DAYS"
  5399  	//   "LAST_365_DAYS"
  5400  	//   "LAST_24_MONTHS"
  5401  	//   "LAST_14_DAYS"
  5402  	//   "LAST_60_DAYS"
  5403  	RelativeDateRange string `json:"relativeDateRange,omitempty"`
  5404  	StartDate         string `json:"startDate,omitempty"`
  5405  	// ForceSendFields is a list of field names (e.g. "EndDate") to unconditionally
  5406  	// include in API requests. By default, fields with empty or default values are
  5407  	// omitted from API requests. See
  5408  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5409  	// details.
  5410  	ForceSendFields []string `json:"-"`
  5411  	// NullFields is a list of field names (e.g. "EndDate") to include in API
  5412  	// requests with the JSON null value. By default, fields with empty values are
  5413  	// omitted from API requests. See
  5414  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5415  	NullFields []string `json:"-"`
  5416  }
  5417  
  5418  func (s *DateRange) MarshalJSON() ([]byte, error) {
  5419  	type NoMethod DateRange
  5420  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5421  }
  5422  
  5423  // DayPartTargeting: Day Part Targeting.
  5424  type DayPartTargeting struct {
  5425  	// DaysOfWeek: Days of the week when the ad will serve. Acceptable values are:
  5426  	// - "SUNDAY" - "MONDAY" - "TUESDAY" - "WEDNESDAY" - "THURSDAY" - "FRIDAY" -
  5427  	// "SATURDAY"
  5428  	//
  5429  	// Possible values:
  5430  	//   "SUNDAY"
  5431  	//   "MONDAY"
  5432  	//   "TUESDAY"
  5433  	//   "WEDNESDAY"
  5434  	//   "THURSDAY"
  5435  	//   "FRIDAY"
  5436  	//   "SATURDAY"
  5437  	DaysOfWeek []string `json:"daysOfWeek,omitempty"`
  5438  	// HoursOfDay: Hours of the day when the ad will serve, where 0 is midnight to
  5439  	// 1 AM and 23 is 11 PM to midnight. Can be specified with days of week, in
  5440  	// which case the ad would serve during these hours on the specified days. For
  5441  	// example if Monday, Wednesday, Friday are the days of week specified and
  5442  	// 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve Monday,
  5443  	// Wednesdays, and Fridays at 9-10am and 3-5pm. Acceptable values are 0 to 23,
  5444  	// inclusive.
  5445  	HoursOfDay []int64 `json:"hoursOfDay,omitempty"`
  5446  	// UserLocalTime: Whether or not to use the user's local time. If false, the
  5447  	// America/New York time zone applies.
  5448  	UserLocalTime bool `json:"userLocalTime,omitempty"`
  5449  	// ForceSendFields is a list of field names (e.g. "DaysOfWeek") to
  5450  	// unconditionally include in API requests. By default, fields with empty or
  5451  	// default values are omitted from API requests. See
  5452  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5453  	// details.
  5454  	ForceSendFields []string `json:"-"`
  5455  	// NullFields is a list of field names (e.g. "DaysOfWeek") to include in API
  5456  	// requests with the JSON null value. By default, fields with empty values are
  5457  	// omitted from API requests. See
  5458  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5459  	NullFields []string `json:"-"`
  5460  }
  5461  
  5462  func (s *DayPartTargeting) MarshalJSON() ([]byte, error) {
  5463  	type NoMethod DayPartTargeting
  5464  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5465  }
  5466  
  5467  // DeepLink: Contains information about a landing page deep link.
  5468  type DeepLink struct {
  5469  	// AppUrl: The URL of the mobile app being linked to.
  5470  	AppUrl string `json:"appUrl,omitempty"`
  5471  	// FallbackUrl: The fallback URL. This URL will be served to users who do not
  5472  	// have the mobile app installed.
  5473  	FallbackUrl string `json:"fallbackUrl,omitempty"`
  5474  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  5475  	// "dfareporting#deepLink".
  5476  	Kind string `json:"kind,omitempty"`
  5477  	// MobileApp: The mobile app targeted by this deep link.
  5478  	MobileApp *MobileApp `json:"mobileApp,omitempty"`
  5479  	// RemarketingListIds: Ads served to users on these remarketing lists will use
  5480  	// this deep link. Applicable when mobileApp.directory is APPLE_APP_STORE.
  5481  	RemarketingListIds googleapi.Int64s `json:"remarketingListIds,omitempty"`
  5482  	// ForceSendFields is a list of field names (e.g. "AppUrl") to unconditionally
  5483  	// include in API requests. By default, fields with empty or default values are
  5484  	// omitted from API requests. See
  5485  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5486  	// details.
  5487  	ForceSendFields []string `json:"-"`
  5488  	// NullFields is a list of field names (e.g. "AppUrl") to include in API
  5489  	// requests with the JSON null value. By default, fields with empty values are
  5490  	// omitted from API requests. See
  5491  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5492  	NullFields []string `json:"-"`
  5493  }
  5494  
  5495  func (s *DeepLink) MarshalJSON() ([]byte, error) {
  5496  	type NoMethod DeepLink
  5497  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5498  }
  5499  
  5500  // DefaultClickThroughEventTagProperties: Properties of inheriting and
  5501  // overriding the default click-through event tag. A campaign may override the
  5502  // event tag defined at the advertiser level, and an ad may also override the
  5503  // campaign's setting further.
  5504  type DefaultClickThroughEventTagProperties struct {
  5505  	// DefaultClickThroughEventTagId: ID of the click-through event tag to apply to
  5506  	// all ads in this entity's scope.
  5507  	DefaultClickThroughEventTagId int64 `json:"defaultClickThroughEventTagId,omitempty,string"`
  5508  	// OverrideInheritedEventTag: Whether this entity should override the inherited
  5509  	// default click-through event tag with its own defined value.
  5510  	OverrideInheritedEventTag bool `json:"overrideInheritedEventTag,omitempty"`
  5511  	// ForceSendFields is a list of field names (e.g.
  5512  	// "DefaultClickThroughEventTagId") to unconditionally include in API requests.
  5513  	// By default, fields with empty or default values are omitted from API
  5514  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  5515  	// for more details.
  5516  	ForceSendFields []string `json:"-"`
  5517  	// NullFields is a list of field names (e.g. "DefaultClickThroughEventTagId")
  5518  	// to include in API requests with the JSON null value. By default, fields with
  5519  	// empty values are omitted from API requests. See
  5520  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5521  	NullFields []string `json:"-"`
  5522  }
  5523  
  5524  func (s *DefaultClickThroughEventTagProperties) MarshalJSON() ([]byte, error) {
  5525  	type NoMethod DefaultClickThroughEventTagProperties
  5526  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5527  }
  5528  
  5529  // DeliverySchedule: Delivery Schedule.
  5530  type DeliverySchedule struct {
  5531  	// FrequencyCap: Limit on the number of times an individual user can be served
  5532  	// the ad within a specified period of time.
  5533  	FrequencyCap *FrequencyCap `json:"frequencyCap,omitempty"`
  5534  	// HardCutoff: Whether or not hard cutoff is enabled. If true, the ad will not
  5535  	// serve after the end date and time. Otherwise the ad will continue to be
  5536  	// served until it has reached its delivery goals.
  5537  	HardCutoff bool `json:"hardCutoff,omitempty"`
  5538  	// ImpressionRatio: Impression ratio for this ad. This ratio determines how
  5539  	// often each ad is served relative to the others. For example, if ad A has an
  5540  	// impression ratio of 1 and ad B has an impression ratio of 3, then Campaign
  5541  	// Manager will serve ad B three times as often as ad A. Acceptable values are
  5542  	// 1 to 10, inclusive.
  5543  	ImpressionRatio int64 `json:"impressionRatio,omitempty,string"`
  5544  	// Priority: Serving priority of an ad, with respect to other ads. The lower
  5545  	// the priority number, the greater the priority with which it is served.
  5546  	//
  5547  	// Possible values:
  5548  	//   "AD_PRIORITY_01"
  5549  	//   "AD_PRIORITY_02"
  5550  	//   "AD_PRIORITY_03"
  5551  	//   "AD_PRIORITY_04"
  5552  	//   "AD_PRIORITY_05"
  5553  	//   "AD_PRIORITY_06"
  5554  	//   "AD_PRIORITY_07"
  5555  	//   "AD_PRIORITY_08"
  5556  	//   "AD_PRIORITY_09"
  5557  	//   "AD_PRIORITY_10"
  5558  	//   "AD_PRIORITY_11"
  5559  	//   "AD_PRIORITY_12"
  5560  	//   "AD_PRIORITY_13"
  5561  	//   "AD_PRIORITY_14"
  5562  	//   "AD_PRIORITY_15"
  5563  	//   "AD_PRIORITY_16"
  5564  	Priority string `json:"priority,omitempty"`
  5565  	// ForceSendFields is a list of field names (e.g. "FrequencyCap") to
  5566  	// unconditionally include in API requests. By default, fields with empty or
  5567  	// default values are omitted from API requests. See
  5568  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5569  	// details.
  5570  	ForceSendFields []string `json:"-"`
  5571  	// NullFields is a list of field names (e.g. "FrequencyCap") to include in API
  5572  	// requests with the JSON null value. By default, fields with empty values are
  5573  	// omitted from API requests. See
  5574  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5575  	NullFields []string `json:"-"`
  5576  }
  5577  
  5578  func (s *DeliverySchedule) MarshalJSON() ([]byte, error) {
  5579  	type NoMethod DeliverySchedule
  5580  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5581  }
  5582  
  5583  // DfpSettings: Google Ad Manager Settings
  5584  type DfpSettings struct {
  5585  	// DfpNetworkCode: Ad Manager network code for this directory site.
  5586  	DfpNetworkCode string `json:"dfpNetworkCode,omitempty"`
  5587  	// DfpNetworkName: Ad Manager network name for this directory site.
  5588  	DfpNetworkName string `json:"dfpNetworkName,omitempty"`
  5589  	// ProgrammaticPlacementAccepted: Whether this directory site accepts
  5590  	// programmatic placements.
  5591  	ProgrammaticPlacementAccepted bool `json:"programmaticPlacementAccepted,omitempty"`
  5592  	// PubPaidPlacementAccepted: Whether this directory site accepts publisher-paid
  5593  	// tags.
  5594  	PubPaidPlacementAccepted bool `json:"pubPaidPlacementAccepted,omitempty"`
  5595  	// PublisherPortalOnly: Whether this directory site is available only via
  5596  	// Publisher Portal.
  5597  	PublisherPortalOnly bool `json:"publisherPortalOnly,omitempty"`
  5598  	// ForceSendFields is a list of field names (e.g. "DfpNetworkCode") to
  5599  	// unconditionally include in API requests. By default, fields with empty or
  5600  	// default values are omitted from API requests. See
  5601  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5602  	// details.
  5603  	ForceSendFields []string `json:"-"`
  5604  	// NullFields is a list of field names (e.g. "DfpNetworkCode") to include in
  5605  	// API requests with the JSON null value. By default, fields with empty values
  5606  	// are omitted from API requests. See
  5607  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5608  	NullFields []string `json:"-"`
  5609  }
  5610  
  5611  func (s *DfpSettings) MarshalJSON() ([]byte, error) {
  5612  	type NoMethod DfpSettings
  5613  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5614  }
  5615  
  5616  // Dimension: Represents a dimension.
  5617  type Dimension struct {
  5618  	// Kind: The kind of resource this is, in this case dfareporting#dimension.
  5619  	Kind string `json:"kind,omitempty"`
  5620  	// Name: The dimension name, e.g. advertiser
  5621  	Name string `json:"name,omitempty"`
  5622  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  5623  	// include in API requests. By default, fields with empty or default values are
  5624  	// omitted from API requests. See
  5625  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5626  	// details.
  5627  	ForceSendFields []string `json:"-"`
  5628  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  5629  	// with the JSON null value. By default, fields with empty values are omitted
  5630  	// from API requests. See
  5631  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5632  	NullFields []string `json:"-"`
  5633  }
  5634  
  5635  func (s *Dimension) MarshalJSON() ([]byte, error) {
  5636  	type NoMethod Dimension
  5637  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5638  }
  5639  
  5640  // DimensionFilter: Represents a dimension filter.
  5641  type DimensionFilter struct {
  5642  	// DimensionName: The name of the dimension to filter.
  5643  	DimensionName string `json:"dimensionName,omitempty"`
  5644  	// Kind: The kind of resource this is, in this case
  5645  	// dfareporting#dimensionFilter.
  5646  	Kind string `json:"kind,omitempty"`
  5647  	// Value: The value of the dimension to filter.
  5648  	Value string `json:"value,omitempty"`
  5649  	// ForceSendFields is a list of field names (e.g. "DimensionName") to
  5650  	// unconditionally include in API requests. By default, fields with empty or
  5651  	// default values are omitted from API requests. See
  5652  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5653  	// details.
  5654  	ForceSendFields []string `json:"-"`
  5655  	// NullFields is a list of field names (e.g. "DimensionName") to include in API
  5656  	// requests with the JSON null value. By default, fields with empty values are
  5657  	// omitted from API requests. See
  5658  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5659  	NullFields []string `json:"-"`
  5660  }
  5661  
  5662  func (s *DimensionFilter) MarshalJSON() ([]byte, error) {
  5663  	type NoMethod DimensionFilter
  5664  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5665  }
  5666  
  5667  // DimensionValue: Represents a DimensionValue resource.
  5668  type DimensionValue struct {
  5669  	// DimensionName: The name of the dimension.
  5670  	DimensionName string `json:"dimensionName,omitempty"`
  5671  	// Etag: The eTag of this response for caching purposes.
  5672  	Etag string `json:"etag,omitempty"`
  5673  	// Id: The ID associated with the value if available.
  5674  	Id string `json:"id,omitempty"`
  5675  	// Kind: The kind of resource this is, in this case
  5676  	// dfareporting#dimensionValue.
  5677  	Kind string `json:"kind,omitempty"`
  5678  	// MatchType: Determines how the 'value' field is matched when filtering. If
  5679  	// not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, '*' is
  5680  	// allowed as a placeholder for variable length character sequences, and it can
  5681  	// be escaped with a backslash. Note, only paid search dimensions
  5682  	// ('dfa:paidSearch*') allow a matchType other than EXACT.
  5683  	//
  5684  	// Possible values:
  5685  	//   "EXACT"
  5686  	//   "BEGINS_WITH"
  5687  	//   "CONTAINS"
  5688  	//   "WILDCARD_EXPRESSION"
  5689  	MatchType string `json:"matchType,omitempty"`
  5690  	// Value: The value of the dimension.
  5691  	Value string `json:"value,omitempty"`
  5692  	// ForceSendFields is a list of field names (e.g. "DimensionName") to
  5693  	// unconditionally include in API requests. By default, fields with empty or
  5694  	// default values are omitted from API requests. See
  5695  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5696  	// details.
  5697  	ForceSendFields []string `json:"-"`
  5698  	// NullFields is a list of field names (e.g. "DimensionName") to include in API
  5699  	// requests with the JSON null value. By default, fields with empty values are
  5700  	// omitted from API requests. See
  5701  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5702  	NullFields []string `json:"-"`
  5703  }
  5704  
  5705  func (s *DimensionValue) MarshalJSON() ([]byte, error) {
  5706  	type NoMethod DimensionValue
  5707  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5708  }
  5709  
  5710  // DimensionValueList: Represents the list of DimensionValue resources.
  5711  type DimensionValueList struct {
  5712  	// Etag: The eTag of this response for caching purposes.
  5713  	Etag string `json:"etag,omitempty"`
  5714  	// Items: The dimension values returned in this response.
  5715  	Items []*DimensionValue `json:"items,omitempty"`
  5716  	// Kind: The kind of list this is, in this case
  5717  	// dfareporting#dimensionValueList.
  5718  	Kind string `json:"kind,omitempty"`
  5719  	// NextPageToken: Continuation token used to page through dimension values. To
  5720  	// retrieve the next page of results, set the next request's "pageToken" to the
  5721  	// value of this field. The page token is only valid for a limited amount of
  5722  	// time and should not be persisted.
  5723  	NextPageToken string `json:"nextPageToken,omitempty"`
  5724  
  5725  	// ServerResponse contains the HTTP response code and headers from the server.
  5726  	googleapi.ServerResponse `json:"-"`
  5727  	// ForceSendFields is a list of field names (e.g. "Etag") to unconditionally
  5728  	// include in API requests. By default, fields with empty or default values are
  5729  	// omitted from API requests. See
  5730  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5731  	// details.
  5732  	ForceSendFields []string `json:"-"`
  5733  	// NullFields is a list of field names (e.g. "Etag") to include in API requests
  5734  	// with the JSON null value. By default, fields with empty values are omitted
  5735  	// from API requests. See
  5736  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5737  	NullFields []string `json:"-"`
  5738  }
  5739  
  5740  func (s *DimensionValueList) MarshalJSON() ([]byte, error) {
  5741  	type NoMethod DimensionValueList
  5742  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5743  }
  5744  
  5745  // DimensionValueRequest: Represents a DimensionValuesRequest.
  5746  type DimensionValueRequest struct {
  5747  	// DimensionName: The name of the dimension for which values should be
  5748  	// requested.
  5749  	DimensionName string `json:"dimensionName,omitempty"`
  5750  	EndDate       string `json:"endDate,omitempty"`
  5751  	// Filters: The list of filters by which to filter values. The filters are
  5752  	// ANDed.
  5753  	Filters []*DimensionFilter `json:"filters,omitempty"`
  5754  	// Kind: The kind of request this is, in this case
  5755  	// dfareporting#dimensionValueRequest .
  5756  	Kind      string `json:"kind,omitempty"`
  5757  	StartDate string `json:"startDate,omitempty"`
  5758  	// ForceSendFields is a list of field names (e.g. "DimensionName") to
  5759  	// unconditionally include in API requests. By default, fields with empty or
  5760  	// default values are omitted from API requests. See
  5761  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5762  	// details.
  5763  	ForceSendFields []string `json:"-"`
  5764  	// NullFields is a list of field names (e.g. "DimensionName") to include in API
  5765  	// requests with the JSON null value. By default, fields with empty values are
  5766  	// omitted from API requests. See
  5767  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5768  	NullFields []string `json:"-"`
  5769  }
  5770  
  5771  func (s *DimensionValueRequest) MarshalJSON() ([]byte, error) {
  5772  	type NoMethod DimensionValueRequest
  5773  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5774  }
  5775  
  5776  // DirectorySite: DirectorySites contains properties of a website from the Site
  5777  // Directory. Sites need to be added to an account via the Sites resource
  5778  // before they can be assigned to a placement.
  5779  type DirectorySite struct {
  5780  	// Id: ID of this directory site. This is a read-only, auto-generated field.
  5781  	Id int64 `json:"id,omitempty,string"`
  5782  	// IdDimensionValue: Dimension value for the ID of this directory site. This is
  5783  	// a read-only, auto-generated field.
  5784  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  5785  	// InpageTagFormats: Tag types for regular placements. Acceptable values are: -
  5786  	// "STANDARD" - "IFRAME_JAVASCRIPT_INPAGE" - "INTERNAL_REDIRECT_INPAGE" -
  5787  	// "JAVASCRIPT_INPAGE"
  5788  	//
  5789  	// Possible values:
  5790  	//   "STANDARD"
  5791  	//   "IFRAME_JAVASCRIPT_INPAGE"
  5792  	//   "INTERNAL_REDIRECT_INPAGE"
  5793  	//   "JAVASCRIPT_INPAGE"
  5794  	InpageTagFormats []string `json:"inpageTagFormats,omitempty"`
  5795  	// InterstitialTagFormats: Tag types for interstitial placements. Acceptable
  5796  	// values are: - "IFRAME_JAVASCRIPT_INTERSTITIAL" -
  5797  	// "INTERNAL_REDIRECT_INTERSTITIAL" - "JAVASCRIPT_INTERSTITIAL"
  5798  	//
  5799  	// Possible values:
  5800  	//   "IFRAME_JAVASCRIPT_INTERSTITIAL"
  5801  	//   "INTERNAL_REDIRECT_INTERSTITIAL"
  5802  	//   "JAVASCRIPT_INTERSTITIAL"
  5803  	InterstitialTagFormats []string `json:"interstitialTagFormats,omitempty"`
  5804  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  5805  	// "dfareporting#directorySite".
  5806  	Kind string `json:"kind,omitempty"`
  5807  	// Name: Name of this directory site.
  5808  	Name string `json:"name,omitempty"`
  5809  	// Settings: Directory site settings.
  5810  	Settings *DirectorySiteSettings `json:"settings,omitempty"`
  5811  	// Url: URL of this directory site.
  5812  	Url string `json:"url,omitempty"`
  5813  
  5814  	// ServerResponse contains the HTTP response code and headers from the server.
  5815  	googleapi.ServerResponse `json:"-"`
  5816  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  5817  	// include in API requests. By default, fields with empty or default values are
  5818  	// omitted from API requests. See
  5819  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5820  	// details.
  5821  	ForceSendFields []string `json:"-"`
  5822  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  5823  	// with the JSON null value. By default, fields with empty values are omitted
  5824  	// from API requests. See
  5825  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5826  	NullFields []string `json:"-"`
  5827  }
  5828  
  5829  func (s *DirectorySite) MarshalJSON() ([]byte, error) {
  5830  	type NoMethod DirectorySite
  5831  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5832  }
  5833  
  5834  // DirectorySiteSettings: Directory Site Settings
  5835  type DirectorySiteSettings struct {
  5836  	// ActiveViewOptOut: Whether this directory site has disabled active view
  5837  	// creatives.
  5838  	ActiveViewOptOut bool `json:"activeViewOptOut,omitempty"`
  5839  	// DfpSettings: Directory site Ad Manager settings.
  5840  	DfpSettings *DfpSettings `json:"dfpSettings,omitempty"`
  5841  	// InstreamVideoPlacementAccepted: Whether this site accepts in-stream video
  5842  	// ads.
  5843  	InstreamVideoPlacementAccepted bool `json:"instreamVideoPlacementAccepted,omitempty"`
  5844  	// InterstitialPlacementAccepted: Whether this site accepts interstitial ads.
  5845  	InterstitialPlacementAccepted bool `json:"interstitialPlacementAccepted,omitempty"`
  5846  	// ForceSendFields is a list of field names (e.g. "ActiveViewOptOut") to
  5847  	// unconditionally include in API requests. By default, fields with empty or
  5848  	// default values are omitted from API requests. See
  5849  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5850  	// details.
  5851  	ForceSendFields []string `json:"-"`
  5852  	// NullFields is a list of field names (e.g. "ActiveViewOptOut") to include in
  5853  	// API requests with the JSON null value. By default, fields with empty values
  5854  	// are omitted from API requests. See
  5855  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5856  	NullFields []string `json:"-"`
  5857  }
  5858  
  5859  func (s *DirectorySiteSettings) MarshalJSON() ([]byte, error) {
  5860  	type NoMethod DirectorySiteSettings
  5861  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5862  }
  5863  
  5864  // DirectorySitesListResponse: Directory Site List Response
  5865  type DirectorySitesListResponse struct {
  5866  	// DirectorySites: Directory site collection.
  5867  	DirectorySites []*DirectorySite `json:"directorySites,omitempty"`
  5868  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  5869  	// "dfareporting#directorySitesListResponse".
  5870  	Kind string `json:"kind,omitempty"`
  5871  	// NextPageToken: Pagination token to be used for the next list operation.
  5872  	NextPageToken string `json:"nextPageToken,omitempty"`
  5873  
  5874  	// ServerResponse contains the HTTP response code and headers from the server.
  5875  	googleapi.ServerResponse `json:"-"`
  5876  	// ForceSendFields is a list of field names (e.g. "DirectorySites") to
  5877  	// unconditionally include in API requests. By default, fields with empty or
  5878  	// default values are omitted from API requests. See
  5879  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5880  	// details.
  5881  	ForceSendFields []string `json:"-"`
  5882  	// NullFields is a list of field names (e.g. "DirectorySites") to include in
  5883  	// API requests with the JSON null value. By default, fields with empty values
  5884  	// are omitted from API requests. See
  5885  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5886  	NullFields []string `json:"-"`
  5887  }
  5888  
  5889  func (s *DirectorySitesListResponse) MarshalJSON() ([]byte, error) {
  5890  	type NoMethod DirectorySitesListResponse
  5891  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5892  }
  5893  
  5894  // DisjunctiveMatchStatement: Represents a Disjunctive Match Statement
  5895  // resource, which is a conjunction (and) of disjunctive (or) boolean
  5896  // statements.
  5897  type DisjunctiveMatchStatement struct {
  5898  	// EventFilters: The event filters contained within this disjunctive match
  5899  	// statement.
  5900  	EventFilters []*EventFilter `json:"eventFilters,omitempty"`
  5901  	// Kind: The kind of resource this is, in this case
  5902  	// dfareporting#disjunctiveMatchStatement.
  5903  	Kind string `json:"kind,omitempty"`
  5904  	// ForceSendFields is a list of field names (e.g. "EventFilters") to
  5905  	// unconditionally include in API requests. By default, fields with empty or
  5906  	// default values are omitted from API requests. See
  5907  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5908  	// details.
  5909  	ForceSendFields []string `json:"-"`
  5910  	// NullFields is a list of field names (e.g. "EventFilters") to include in API
  5911  	// requests with the JSON null value. By default, fields with empty values are
  5912  	// omitted from API requests. See
  5913  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5914  	NullFields []string `json:"-"`
  5915  }
  5916  
  5917  func (s *DisjunctiveMatchStatement) MarshalJSON() ([]byte, error) {
  5918  	type NoMethod DisjunctiveMatchStatement
  5919  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5920  }
  5921  
  5922  // DynamicTargetingKey: Contains properties of a dynamic targeting key. Dynamic
  5923  // targeting keys are unique, user-friendly labels, created at the advertiser
  5924  // level in DCM, that can be assigned to ads, creatives, and placements and
  5925  // used for targeting with Studio dynamic creatives. Use these labels instead
  5926  // of numeric Campaign Manager IDs (such as placement IDs) to save time and
  5927  // avoid errors in your dynamic feeds.
  5928  type DynamicTargetingKey struct {
  5929  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  5930  	// "dfareporting#dynamicTargetingKey".
  5931  	Kind string `json:"kind,omitempty"`
  5932  	// Name: Name of this dynamic targeting key. This is a required field. Must be
  5933  	// less than 256 characters long and cannot contain commas. All characters are
  5934  	// converted to lowercase.
  5935  	Name string `json:"name,omitempty"`
  5936  	// ObjectId: ID of the object of this dynamic targeting key. This is a required
  5937  	// field.
  5938  	ObjectId int64 `json:"objectId,omitempty,string"`
  5939  	// ObjectType: Type of the object of this dynamic targeting key. This is a
  5940  	// required field.
  5941  	//
  5942  	// Possible values:
  5943  	//   "OBJECT_ADVERTISER"
  5944  	//   "OBJECT_AD"
  5945  	//   "OBJECT_CREATIVE"
  5946  	//   "OBJECT_PLACEMENT"
  5947  	ObjectType string `json:"objectType,omitempty"`
  5948  
  5949  	// ServerResponse contains the HTTP response code and headers from the server.
  5950  	googleapi.ServerResponse `json:"-"`
  5951  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  5952  	// include in API requests. By default, fields with empty or default values are
  5953  	// omitted from API requests. See
  5954  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5955  	// details.
  5956  	ForceSendFields []string `json:"-"`
  5957  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  5958  	// with the JSON null value. By default, fields with empty values are omitted
  5959  	// from API requests. See
  5960  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5961  	NullFields []string `json:"-"`
  5962  }
  5963  
  5964  func (s *DynamicTargetingKey) MarshalJSON() ([]byte, error) {
  5965  	type NoMethod DynamicTargetingKey
  5966  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5967  }
  5968  
  5969  // DynamicTargetingKeysListResponse: Dynamic Targeting Key List Response
  5970  type DynamicTargetingKeysListResponse struct {
  5971  	// DynamicTargetingKeys: Dynamic targeting key collection.
  5972  	DynamicTargetingKeys []*DynamicTargetingKey `json:"dynamicTargetingKeys,omitempty"`
  5973  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  5974  	// "dfareporting#dynamicTargetingKeysListResponse".
  5975  	Kind string `json:"kind,omitempty"`
  5976  
  5977  	// ServerResponse contains the HTTP response code and headers from the server.
  5978  	googleapi.ServerResponse `json:"-"`
  5979  	// ForceSendFields is a list of field names (e.g. "DynamicTargetingKeys") to
  5980  	// unconditionally include in API requests. By default, fields with empty or
  5981  	// default values are omitted from API requests. See
  5982  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5983  	// details.
  5984  	ForceSendFields []string `json:"-"`
  5985  	// NullFields is a list of field names (e.g. "DynamicTargetingKeys") to include
  5986  	// in API requests with the JSON null value. By default, fields with empty
  5987  	// values are omitted from API requests. See
  5988  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5989  	NullFields []string `json:"-"`
  5990  }
  5991  
  5992  func (s *DynamicTargetingKeysListResponse) MarshalJSON() ([]byte, error) {
  5993  	type NoMethod DynamicTargetingKeysListResponse
  5994  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5995  }
  5996  
  5997  // EncryptionInfo: A description of how user IDs are encrypted.
  5998  type EncryptionInfo struct {
  5999  	// EncryptionEntityId: The encryption entity ID. This should match the
  6000  	// encryption configuration for ad serving or Data Transfer.
  6001  	EncryptionEntityId int64 `json:"encryptionEntityId,omitempty,string"`
  6002  	// EncryptionEntityType: The encryption entity type. This should match the
  6003  	// encryption configuration for ad serving or Data Transfer.
  6004  	//
  6005  	// Possible values:
  6006  	//   "ENCRYPTION_ENTITY_TYPE_UNKNOWN"
  6007  	//   "DCM_ACCOUNT"
  6008  	//   "DCM_ADVERTISER"
  6009  	//   "DBM_PARTNER"
  6010  	//   "DBM_ADVERTISER"
  6011  	//   "ADWORDS_CUSTOMER"
  6012  	//   "DFP_NETWORK_CODE"
  6013  	EncryptionEntityType string `json:"encryptionEntityType,omitempty"`
  6014  	// EncryptionSource: Describes whether the encrypted cookie was received from
  6015  	// ad serving (the %m macro) or from Data Transfer.
  6016  	//
  6017  	// Possible values:
  6018  	//   "ENCRYPTION_SCOPE_UNKNOWN"
  6019  	//   "AD_SERVING"
  6020  	//   "DATA_TRANSFER"
  6021  	EncryptionSource string `json:"encryptionSource,omitempty"`
  6022  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6023  	// "dfareporting#encryptionInfo".
  6024  	Kind string `json:"kind,omitempty"`
  6025  	// ForceSendFields is a list of field names (e.g. "EncryptionEntityId") to
  6026  	// unconditionally include in API requests. By default, fields with empty or
  6027  	// default values are omitted from API requests. See
  6028  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6029  	// details.
  6030  	ForceSendFields []string `json:"-"`
  6031  	// NullFields is a list of field names (e.g. "EncryptionEntityId") to include
  6032  	// in API requests with the JSON null value. By default, fields with empty
  6033  	// values are omitted from API requests. See
  6034  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6035  	NullFields []string `json:"-"`
  6036  }
  6037  
  6038  func (s *EncryptionInfo) MarshalJSON() ([]byte, error) {
  6039  	type NoMethod EncryptionInfo
  6040  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6041  }
  6042  
  6043  // EventFilter: Represents a DfaReporting event filter.
  6044  type EventFilter struct {
  6045  	// DimensionFilter: The dimension filter contained within this EventFilter.
  6046  	DimensionFilter *PathReportDimensionValue `json:"dimensionFilter,omitempty"`
  6047  	// Kind: The kind of resource this is, in this case dfareporting#eventFilter.
  6048  	Kind string `json:"kind,omitempty"`
  6049  	// UvarFilter: Filter on a custom variable.
  6050  	UvarFilter *UvarFilter `json:"uvarFilter,omitempty"`
  6051  	// ForceSendFields is a list of field names (e.g. "DimensionFilter") to
  6052  	// unconditionally include in API requests. By default, fields with empty or
  6053  	// default values are omitted from API requests. See
  6054  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6055  	// details.
  6056  	ForceSendFields []string `json:"-"`
  6057  	// NullFields is a list of field names (e.g. "DimensionFilter") to include in
  6058  	// API requests with the JSON null value. By default, fields with empty values
  6059  	// are omitted from API requests. See
  6060  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6061  	NullFields []string `json:"-"`
  6062  }
  6063  
  6064  func (s *EventFilter) MarshalJSON() ([]byte, error) {
  6065  	type NoMethod EventFilter
  6066  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6067  }
  6068  
  6069  // EventTag: Contains properties of an event tag.
  6070  type EventTag struct {
  6071  	// AccountId: Account ID of this event tag. This is a read-only field that can
  6072  	// be left blank.
  6073  	AccountId int64 `json:"accountId,omitempty,string"`
  6074  	// AdvertiserId: Advertiser ID of this event tag. This field or the campaignId
  6075  	// field is required on insertion.
  6076  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  6077  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
  6078  	// This is a read-only, auto-generated field.
  6079  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  6080  	// CampaignId: Campaign ID of this event tag. This field or the advertiserId
  6081  	// field is required on insertion.
  6082  	CampaignId int64 `json:"campaignId,omitempty,string"`
  6083  	// CampaignIdDimensionValue: Dimension value for the ID of the campaign. This
  6084  	// is a read-only, auto-generated field.
  6085  	CampaignIdDimensionValue *DimensionValue `json:"campaignIdDimensionValue,omitempty"`
  6086  	// EnabledByDefault: Whether this event tag should be automatically enabled for
  6087  	// all of the advertiser's campaigns and ads.
  6088  	EnabledByDefault bool `json:"enabledByDefault,omitempty"`
  6089  	// ExcludeFromAdxRequests: Whether to remove this event tag from ads that are
  6090  	// trafficked through Display & Video 360 to Ad Exchange. This may be useful if
  6091  	// the event tag uses a pixel that is unapproved for Ad Exchange bids on one or
  6092  	// more networks, such as the Google Display Network.
  6093  	ExcludeFromAdxRequests bool `json:"excludeFromAdxRequests,omitempty"`
  6094  	// Id: ID of this event tag. This is a read-only, auto-generated field.
  6095  	Id int64 `json:"id,omitempty,string"`
  6096  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6097  	// "dfareporting#eventTag".
  6098  	Kind string `json:"kind,omitempty"`
  6099  	// Name: Name of this event tag. This is a required field and must be less than
  6100  	// 256 characters long.
  6101  	Name string `json:"name,omitempty"`
  6102  	// SiteFilterType: Site filter type for this event tag. If no type is specified
  6103  	// then the event tag will be applied to all sites.
  6104  	//
  6105  	// Possible values:
  6106  	//   "ALLOWLIST" - The event tag should only ever fire on specified sites.
  6107  	//   "BLOCKLIST" - The event tag should fire on all sites EXCEPT the specified
  6108  	// sites.
  6109  	SiteFilterType string `json:"siteFilterType,omitempty"`
  6110  	// SiteIds: Filter list of site IDs associated with this event tag. The
  6111  	// siteFilterType determines whether this is a allowlist or blocklist filter.
  6112  	SiteIds googleapi.Int64s `json:"siteIds,omitempty"`
  6113  	// SslCompliant: Whether this tag is SSL-compliant or not. This is a read-only
  6114  	// field.
  6115  	SslCompliant bool `json:"sslCompliant,omitempty"`
  6116  	// Status: Status of this event tag. Must be ENABLED for this event tag to
  6117  	// fire. This is a required field.
  6118  	//
  6119  	// Possible values:
  6120  	//   "ENABLED"
  6121  	//   "DISABLED"
  6122  	Status string `json:"status,omitempty"`
  6123  	// SubaccountId: Subaccount ID of this event tag. This is a read-only field
  6124  	// that can be left blank.
  6125  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  6126  	// Type: Event tag type. Can be used to specify whether to use a third-party
  6127  	// pixel, a third-party JavaScript URL, or a third-party click-through URL for
  6128  	// either impression or click tracking. This is a required field.
  6129  	//
  6130  	// Possible values:
  6131  	//   "IMPRESSION_IMAGE_EVENT_TAG" - A third-party pixel for impression
  6132  	// tracking.
  6133  	//   "IMPRESSION_JAVASCRIPT_EVENT_TAG" - A third-party JavaScript URL for
  6134  	// impression tracking.
  6135  	//   "CLICK_THROUGH_EVENT_TAG" - A third-party URL for click tracking that
  6136  	// redirects to the landing page.
  6137  	Type string `json:"type,omitempty"`
  6138  	// Url: Payload URL for this event tag. The URL on a click-through event tag
  6139  	// should have a landing page URL appended to the end of it. This field is
  6140  	// required on insertion.
  6141  	Url string `json:"url,omitempty"`
  6142  	// UrlEscapeLevels: Number of times the landing page URL should be URL-escaped
  6143  	// before being appended to the click-through event tag URL. Only applies to
  6144  	// click-through event tags as specified by the event tag type.
  6145  	UrlEscapeLevels int64 `json:"urlEscapeLevels,omitempty"`
  6146  
  6147  	// ServerResponse contains the HTTP response code and headers from the server.
  6148  	googleapi.ServerResponse `json:"-"`
  6149  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  6150  	// unconditionally include in API requests. By default, fields with empty or
  6151  	// default values are omitted from API requests. See
  6152  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6153  	// details.
  6154  	ForceSendFields []string `json:"-"`
  6155  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  6156  	// requests with the JSON null value. By default, fields with empty values are
  6157  	// omitted from API requests. See
  6158  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6159  	NullFields []string `json:"-"`
  6160  }
  6161  
  6162  func (s *EventTag) MarshalJSON() ([]byte, error) {
  6163  	type NoMethod EventTag
  6164  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6165  }
  6166  
  6167  // EventTagOverride: Event tag override information.
  6168  type EventTagOverride struct {
  6169  	// Enabled: Whether this override is enabled.
  6170  	Enabled bool `json:"enabled,omitempty"`
  6171  	// Id: ID of this event tag override. This is a read-only, auto-generated
  6172  	// field.
  6173  	Id int64 `json:"id,omitempty,string"`
  6174  	// ForceSendFields is a list of field names (e.g. "Enabled") to unconditionally
  6175  	// include in API requests. By default, fields with empty or default values are
  6176  	// omitted from API requests. See
  6177  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6178  	// details.
  6179  	ForceSendFields []string `json:"-"`
  6180  	// NullFields is a list of field names (e.g. "Enabled") to include in API
  6181  	// requests with the JSON null value. By default, fields with empty values are
  6182  	// omitted from API requests. See
  6183  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6184  	NullFields []string `json:"-"`
  6185  }
  6186  
  6187  func (s *EventTagOverride) MarshalJSON() ([]byte, error) {
  6188  	type NoMethod EventTagOverride
  6189  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6190  }
  6191  
  6192  // EventTagsListResponse: Event Tag List Response
  6193  type EventTagsListResponse struct {
  6194  	// EventTags: Event tag collection.
  6195  	EventTags []*EventTag `json:"eventTags,omitempty"`
  6196  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6197  	// "dfareporting#eventTagsListResponse".
  6198  	Kind string `json:"kind,omitempty"`
  6199  
  6200  	// ServerResponse contains the HTTP response code and headers from the server.
  6201  	googleapi.ServerResponse `json:"-"`
  6202  	// ForceSendFields is a list of field names (e.g. "EventTags") to
  6203  	// unconditionally include in API requests. By default, fields with empty or
  6204  	// default values are omitted from API requests. See
  6205  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6206  	// details.
  6207  	ForceSendFields []string `json:"-"`
  6208  	// NullFields is a list of field names (e.g. "EventTags") to include in API
  6209  	// requests with the JSON null value. By default, fields with empty values are
  6210  	// omitted from API requests. See
  6211  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6212  	NullFields []string `json:"-"`
  6213  }
  6214  
  6215  func (s *EventTagsListResponse) MarshalJSON() ([]byte, error) {
  6216  	type NoMethod EventTagsListResponse
  6217  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6218  }
  6219  
  6220  // File: Represents a File resource. A file contains the metadata for a report
  6221  // run. It shows the status of the run and holds the URLs to the generated
  6222  // report data if the run is finished and the status is "REPORT_AVAILABLE".
  6223  type File struct {
  6224  	// DateRange: The date range for which the file has report data. The date range
  6225  	// will always be the absolute date range for which the report is run.
  6226  	DateRange *DateRange `json:"dateRange,omitempty"`
  6227  	// Etag: Etag of this resource.
  6228  	Etag string `json:"etag,omitempty"`
  6229  	// FileName: The filename of the file.
  6230  	FileName string `json:"fileName,omitempty"`
  6231  	// Format: The output format of the report. Only available once the file is
  6232  	// available.
  6233  	//
  6234  	// Possible values:
  6235  	//   "CSV"
  6236  	//   "EXCEL"
  6237  	Format string `json:"format,omitempty"`
  6238  	// Id: The unique ID of this report file.
  6239  	Id int64 `json:"id,omitempty,string"`
  6240  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6241  	// "dfareporting#file".
  6242  	Kind string `json:"kind,omitempty"`
  6243  	// LastModifiedTime: The timestamp in milliseconds since epoch when this file
  6244  	// was last modified.
  6245  	LastModifiedTime int64 `json:"lastModifiedTime,omitempty,string"`
  6246  	// ReportId: The ID of the report this file was generated from.
  6247  	ReportId int64 `json:"reportId,omitempty,string"`
  6248  	// Status: The status of the report file.
  6249  	//
  6250  	// Possible values:
  6251  	//   "PROCESSING"
  6252  	//   "REPORT_AVAILABLE"
  6253  	//   "FAILED"
  6254  	//   "CANCELLED"
  6255  	//   "QUEUED"
  6256  	Status string `json:"status,omitempty"`
  6257  	// Urls: The URLs where the completed report file can be downloaded.
  6258  	Urls *FileUrls `json:"urls,omitempty"`
  6259  
  6260  	// ServerResponse contains the HTTP response code and headers from the server.
  6261  	googleapi.ServerResponse `json:"-"`
  6262  	// ForceSendFields is a list of field names (e.g. "DateRange") to
  6263  	// unconditionally include in API requests. By default, fields with empty or
  6264  	// default values are omitted from API requests. See
  6265  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6266  	// details.
  6267  	ForceSendFields []string `json:"-"`
  6268  	// NullFields is a list of field names (e.g. "DateRange") to include in API
  6269  	// requests with the JSON null value. By default, fields with empty values are
  6270  	// omitted from API requests. See
  6271  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6272  	NullFields []string `json:"-"`
  6273  }
  6274  
  6275  func (s *File) MarshalJSON() ([]byte, error) {
  6276  	type NoMethod File
  6277  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6278  }
  6279  
  6280  // FileUrls: The URLs where the completed report file can be downloaded.
  6281  type FileUrls struct {
  6282  	// ApiUrl: The URL for downloading the report data through the API.
  6283  	ApiUrl string `json:"apiUrl,omitempty"`
  6284  	// BrowserUrl: The URL for downloading the report data through a browser.
  6285  	BrowserUrl string `json:"browserUrl,omitempty"`
  6286  	// ForceSendFields is a list of field names (e.g. "ApiUrl") to unconditionally
  6287  	// include in API requests. By default, fields with empty or default values are
  6288  	// omitted from API requests. See
  6289  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6290  	// details.
  6291  	ForceSendFields []string `json:"-"`
  6292  	// NullFields is a list of field names (e.g. "ApiUrl") to include in API
  6293  	// requests with the JSON null value. By default, fields with empty values are
  6294  	// omitted from API requests. See
  6295  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6296  	NullFields []string `json:"-"`
  6297  }
  6298  
  6299  func (s *FileUrls) MarshalJSON() ([]byte, error) {
  6300  	type NoMethod FileUrls
  6301  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6302  }
  6303  
  6304  // FileList: List of files for a report.
  6305  type FileList struct {
  6306  	// Etag: Etag of this resource.
  6307  	Etag string `json:"etag,omitempty"`
  6308  	// Items: The files returned in this response.
  6309  	Items []*File `json:"items,omitempty"`
  6310  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6311  	// "dfareporting#fileList".
  6312  	Kind string `json:"kind,omitempty"`
  6313  	// NextPageToken: Continuation token used to page through files. To retrieve
  6314  	// the next page of results, set the next request's "pageToken" to the value of
  6315  	// this field. The page token is only valid for a limited amount of time and
  6316  	// should not be persisted.
  6317  	NextPageToken string `json:"nextPageToken,omitempty"`
  6318  
  6319  	// ServerResponse contains the HTTP response code and headers from the server.
  6320  	googleapi.ServerResponse `json:"-"`
  6321  	// ForceSendFields is a list of field names (e.g. "Etag") to unconditionally
  6322  	// include in API requests. By default, fields with empty or default values are
  6323  	// omitted from API requests. See
  6324  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6325  	// details.
  6326  	ForceSendFields []string `json:"-"`
  6327  	// NullFields is a list of field names (e.g. "Etag") to include in API requests
  6328  	// with the JSON null value. By default, fields with empty values are omitted
  6329  	// from API requests. See
  6330  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6331  	NullFields []string `json:"-"`
  6332  }
  6333  
  6334  func (s *FileList) MarshalJSON() ([]byte, error) {
  6335  	type NoMethod FileList
  6336  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6337  }
  6338  
  6339  // Flight: Flight
  6340  type Flight struct {
  6341  	EndDate string `json:"endDate,omitempty"`
  6342  	// RateOrCost: Rate or cost of this flight.
  6343  	RateOrCost int64  `json:"rateOrCost,omitempty,string"`
  6344  	StartDate  string `json:"startDate,omitempty"`
  6345  	// Units: Units of this flight.
  6346  	Units int64 `json:"units,omitempty,string"`
  6347  	// ForceSendFields is a list of field names (e.g. "EndDate") to unconditionally
  6348  	// include in API requests. By default, fields with empty or default values are
  6349  	// omitted from API requests. See
  6350  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6351  	// details.
  6352  	ForceSendFields []string `json:"-"`
  6353  	// NullFields is a list of field names (e.g. "EndDate") to include in API
  6354  	// requests with the JSON null value. By default, fields with empty values are
  6355  	// omitted from API requests. See
  6356  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6357  	NullFields []string `json:"-"`
  6358  }
  6359  
  6360  func (s *Flight) MarshalJSON() ([]byte, error) {
  6361  	type NoMethod Flight
  6362  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6363  }
  6364  
  6365  // FloodlightActivitiesGenerateTagResponse: Floodlight Activity GenerateTag
  6366  // Response
  6367  type FloodlightActivitiesGenerateTagResponse struct {
  6368  	// FloodlightActivityTag: Generated tag for this Floodlight activity. For
  6369  	// global site tags, this is the event snippet.
  6370  	FloodlightActivityTag string `json:"floodlightActivityTag,omitempty"`
  6371  	// GlobalSiteTagGlobalSnippet: The global snippet section of a global site tag.
  6372  	// The global site tag sets new cookies on your domain, which will store a
  6373  	// unique identifier for a user or the ad click that brought the user to your
  6374  	// site. Learn more.
  6375  	GlobalSiteTagGlobalSnippet string `json:"globalSiteTagGlobalSnippet,omitempty"`
  6376  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6377  	// "dfareporting#floodlightActivitiesGenerateTagResponse".
  6378  	Kind string `json:"kind,omitempty"`
  6379  
  6380  	// ServerResponse contains the HTTP response code and headers from the server.
  6381  	googleapi.ServerResponse `json:"-"`
  6382  	// ForceSendFields is a list of field names (e.g. "FloodlightActivityTag") to
  6383  	// unconditionally include in API requests. By default, fields with empty or
  6384  	// default values are omitted from API requests. See
  6385  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6386  	// details.
  6387  	ForceSendFields []string `json:"-"`
  6388  	// NullFields is a list of field names (e.g. "FloodlightActivityTag") to
  6389  	// include in API requests with the JSON null value. By default, fields with
  6390  	// empty values are omitted from API requests. See
  6391  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6392  	NullFields []string `json:"-"`
  6393  }
  6394  
  6395  func (s *FloodlightActivitiesGenerateTagResponse) MarshalJSON() ([]byte, error) {
  6396  	type NoMethod FloodlightActivitiesGenerateTagResponse
  6397  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6398  }
  6399  
  6400  // FloodlightActivitiesListResponse: Floodlight Activity List Response
  6401  type FloodlightActivitiesListResponse struct {
  6402  	// FloodlightActivities: Floodlight activity collection.
  6403  	FloodlightActivities []*FloodlightActivity `json:"floodlightActivities,omitempty"`
  6404  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6405  	// "dfareporting#floodlightActivitiesListResponse".
  6406  	Kind string `json:"kind,omitempty"`
  6407  	// NextPageToken: Pagination token to be used for the next list operation.
  6408  	NextPageToken string `json:"nextPageToken,omitempty"`
  6409  
  6410  	// ServerResponse contains the HTTP response code and headers from the server.
  6411  	googleapi.ServerResponse `json:"-"`
  6412  	// ForceSendFields is a list of field names (e.g. "FloodlightActivities") to
  6413  	// unconditionally include in API requests. By default, fields with empty or
  6414  	// default values are omitted from API requests. See
  6415  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6416  	// details.
  6417  	ForceSendFields []string `json:"-"`
  6418  	// NullFields is a list of field names (e.g. "FloodlightActivities") to include
  6419  	// in API requests with the JSON null value. By default, fields with empty
  6420  	// values are omitted from API requests. See
  6421  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6422  	NullFields []string `json:"-"`
  6423  }
  6424  
  6425  func (s *FloodlightActivitiesListResponse) MarshalJSON() ([]byte, error) {
  6426  	type NoMethod FloodlightActivitiesListResponse
  6427  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6428  }
  6429  
  6430  // FloodlightActivity: Contains properties of a Floodlight activity.
  6431  type FloodlightActivity struct {
  6432  	// AccountId: Account ID of this floodlight activity. This is a read-only field
  6433  	// that can be left blank.
  6434  	AccountId int64 `json:"accountId,omitempty,string"`
  6435  	// AdvertiserId: Advertiser ID of this floodlight activity. If this field is
  6436  	// left blank, the value will be copied over either from the activity group's
  6437  	// advertiser or the existing activity's advertiser.
  6438  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  6439  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
  6440  	// This is a read-only, auto-generated field.
  6441  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  6442  	// AttributionEnabled: Whether the activity is enabled for attribution.
  6443  	AttributionEnabled bool `json:"attributionEnabled,omitempty"`
  6444  	// CacheBustingType: Code type used for cache busting in the generated tag.
  6445  	// Applicable only when floodlightActivityGroupType is COUNTER and
  6446  	// countingMethod is STANDARD_COUNTING or UNIQUE_COUNTING.
  6447  	//
  6448  	// Possible values:
  6449  	//   "JAVASCRIPT"
  6450  	//   "ACTIVE_SERVER_PAGE"
  6451  	//   "JSP"
  6452  	//   "PHP"
  6453  	//   "COLD_FUSION"
  6454  	CacheBustingType string `json:"cacheBustingType,omitempty"`
  6455  	// CountingMethod: Counting method for conversions for this floodlight
  6456  	// activity. This is a required field.
  6457  	//
  6458  	// Possible values:
  6459  	//   "STANDARD_COUNTING" - Count every conversion.
  6460  	//   "UNIQUE_COUNTING" - Count the first conversion for each unique user during
  6461  	// each 24-hour day, from midnight to midnight, Eastern Time.
  6462  	//   "SESSION_COUNTING" - Count one conversion per user per session. Session
  6463  	// length is set by the site where the Spotlight tag is deployed.
  6464  	//   "TRANSACTIONS_COUNTING" - Count all conversions, plus the total number of
  6465  	// sales that take place and the total revenue for these transactions.
  6466  	//   "ITEMS_SOLD_COUNTING" - Count each conversion, plus the total number of
  6467  	// items sold and the total revenue for these sales.
  6468  	CountingMethod string `json:"countingMethod,omitempty"`
  6469  	// DefaultTags: Dynamic floodlight tags.
  6470  	DefaultTags []*FloodlightActivityDynamicTag `json:"defaultTags,omitempty"`
  6471  	// ExpectedUrl: URL where this tag will be deployed. If specified, must be less
  6472  	// than 256 characters long.
  6473  	ExpectedUrl string `json:"expectedUrl,omitempty"`
  6474  	// FloodlightActivityGroupId: Floodlight activity group ID of this floodlight
  6475  	// activity. This is a required field.
  6476  	FloodlightActivityGroupId int64 `json:"floodlightActivityGroupId,omitempty,string"`
  6477  	// FloodlightActivityGroupName: Name of the associated floodlight activity
  6478  	// group. This is a read-only field.
  6479  	FloodlightActivityGroupName string `json:"floodlightActivityGroupName,omitempty"`
  6480  	// FloodlightActivityGroupTagString: Tag string of the associated floodlight
  6481  	// activity group. This is a read-only field.
  6482  	FloodlightActivityGroupTagString string `json:"floodlightActivityGroupTagString,omitempty"`
  6483  	// FloodlightActivityGroupType: Type of the associated floodlight activity
  6484  	// group. This is a read-only field.
  6485  	//
  6486  	// Possible values:
  6487  	//   "COUNTER"
  6488  	//   "SALE"
  6489  	FloodlightActivityGroupType string `json:"floodlightActivityGroupType,omitempty"`
  6490  	// FloodlightConfigurationId: Floodlight configuration ID of this floodlight
  6491  	// activity. If this field is left blank, the value will be copied over either
  6492  	// from the activity group's floodlight configuration or from the existing
  6493  	// activity's floodlight configuration.
  6494  	FloodlightConfigurationId int64 `json:"floodlightConfigurationId,omitempty,string"`
  6495  	// FloodlightConfigurationIdDimensionValue: Dimension value for the ID of the
  6496  	// floodlight configuration. This is a read-only, auto-generated field.
  6497  	FloodlightConfigurationIdDimensionValue *DimensionValue `json:"floodlightConfigurationIdDimensionValue,omitempty"`
  6498  	// FloodlightTagType: The type of Floodlight tag this activity will generate.
  6499  	// This is a required field.
  6500  	//
  6501  	// Possible values:
  6502  	//   "IFRAME"
  6503  	//   "IMAGE"
  6504  	//   "GLOBAL_SITE_TAG"
  6505  	FloodlightTagType string `json:"floodlightTagType,omitempty"`
  6506  	// Id: ID of this floodlight activity. This is a read-only, auto-generated
  6507  	// field.
  6508  	Id int64 `json:"id,omitempty,string"`
  6509  	// IdDimensionValue: Dimension value for the ID of this floodlight activity.
  6510  	// This is a read-only, auto-generated field.
  6511  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  6512  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6513  	// "dfareporting#floodlightActivity".
  6514  	Kind string `json:"kind,omitempty"`
  6515  	// Name: Name of this floodlight activity. This is a required field. Must be
  6516  	// less than 129 characters long and cannot contain quotes.
  6517  	Name string `json:"name,omitempty"`
  6518  	// Notes: General notes or implementation instructions for the tag.
  6519  	Notes string `json:"notes,omitempty"`
  6520  	// PublisherTags: Publisher dynamic floodlight tags.
  6521  	PublisherTags []*FloodlightActivityPublisherDynamicTag `json:"publisherTags,omitempty"`
  6522  	// Secure: Whether this tag should use SSL.
  6523  	Secure bool `json:"secure,omitempty"`
  6524  	// SslCompliant: Whether the floodlight activity is SSL-compliant. This is a
  6525  	// read-only field, its value detected by the system from the floodlight tags.
  6526  	SslCompliant bool `json:"sslCompliant,omitempty"`
  6527  	// SslRequired: Whether this floodlight activity must be SSL-compliant.
  6528  	SslRequired bool `json:"sslRequired,omitempty"`
  6529  	// Status: The status of the activity. This can only be set to ACTIVE or
  6530  	// ARCHIVED_AND_DISABLED. The ARCHIVED status is no longer supported and cannot
  6531  	// be set for Floodlight activities. The DISABLED_POLICY status indicates that
  6532  	// a Floodlight activity is violating Google policy. Contact your account
  6533  	// manager for more information.
  6534  	//
  6535  	// Possible values:
  6536  	//   "ACTIVE"
  6537  	//   "ARCHIVED_AND_DISABLED"
  6538  	//   "ARCHIVED"
  6539  	//   "DISABLED_POLICY"
  6540  	Status string `json:"status,omitempty"`
  6541  	// SubaccountId: Subaccount ID of this floodlight activity. This is a read-only
  6542  	// field that can be left blank.
  6543  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  6544  	// TagFormat: Tag format type for the floodlight activity. If left blank, the
  6545  	// tag format will default to HTML.
  6546  	//
  6547  	// Possible values:
  6548  	//   "HTML"
  6549  	//   "XHTML"
  6550  	TagFormat string `json:"tagFormat,omitempty"`
  6551  	// TagString: Value of the cat= parameter in the floodlight tag, which the ad
  6552  	// servers use to identify the activity. This is optional: if empty, a new tag
  6553  	// string will be generated for you. This string must be 1 to 8 characters
  6554  	// long, with valid characters being a-z0-9[ _ ]. This tag string must also be
  6555  	// unique among activities of the same activity group. This field is read-only
  6556  	// after insertion.
  6557  	TagString string `json:"tagString,omitempty"`
  6558  	// UserDefinedVariableTypes: List of the user-defined variables used by this
  6559  	// conversion tag. These map to the "u[1-100]=" in the tags. Each of these can
  6560  	// have a user defined type. Acceptable values are U1 to U100, inclusive.
  6561  	//
  6562  	// Possible values:
  6563  	//   "U1"
  6564  	//   "U2"
  6565  	//   "U3"
  6566  	//   "U4"
  6567  	//   "U5"
  6568  	//   "U6"
  6569  	//   "U7"
  6570  	//   "U8"
  6571  	//   "U9"
  6572  	//   "U10"
  6573  	//   "U11"
  6574  	//   "U12"
  6575  	//   "U13"
  6576  	//   "U14"
  6577  	//   "U15"
  6578  	//   "U16"
  6579  	//   "U17"
  6580  	//   "U18"
  6581  	//   "U19"
  6582  	//   "U20"
  6583  	//   "U21"
  6584  	//   "U22"
  6585  	//   "U23"
  6586  	//   "U24"
  6587  	//   "U25"
  6588  	//   "U26"
  6589  	//   "U27"
  6590  	//   "U28"
  6591  	//   "U29"
  6592  	//   "U30"
  6593  	//   "U31"
  6594  	//   "U32"
  6595  	//   "U33"
  6596  	//   "U34"
  6597  	//   "U35"
  6598  	//   "U36"
  6599  	//   "U37"
  6600  	//   "U38"
  6601  	//   "U39"
  6602  	//   "U40"
  6603  	//   "U41"
  6604  	//   "U42"
  6605  	//   "U43"
  6606  	//   "U44"
  6607  	//   "U45"
  6608  	//   "U46"
  6609  	//   "U47"
  6610  	//   "U48"
  6611  	//   "U49"
  6612  	//   "U50"
  6613  	//   "U51"
  6614  	//   "U52"
  6615  	//   "U53"
  6616  	//   "U54"
  6617  	//   "U55"
  6618  	//   "U56"
  6619  	//   "U57"
  6620  	//   "U58"
  6621  	//   "U59"
  6622  	//   "U60"
  6623  	//   "U61"
  6624  	//   "U62"
  6625  	//   "U63"
  6626  	//   "U64"
  6627  	//   "U65"
  6628  	//   "U66"
  6629  	//   "U67"
  6630  	//   "U68"
  6631  	//   "U69"
  6632  	//   "U70"
  6633  	//   "U71"
  6634  	//   "U72"
  6635  	//   "U73"
  6636  	//   "U74"
  6637  	//   "U75"
  6638  	//   "U76"
  6639  	//   "U77"
  6640  	//   "U78"
  6641  	//   "U79"
  6642  	//   "U80"
  6643  	//   "U81"
  6644  	//   "U82"
  6645  	//   "U83"
  6646  	//   "U84"
  6647  	//   "U85"
  6648  	//   "U86"
  6649  	//   "U87"
  6650  	//   "U88"
  6651  	//   "U89"
  6652  	//   "U90"
  6653  	//   "U91"
  6654  	//   "U92"
  6655  	//   "U93"
  6656  	//   "U94"
  6657  	//   "U95"
  6658  	//   "U96"
  6659  	//   "U97"
  6660  	//   "U98"
  6661  	//   "U99"
  6662  	//   "U100"
  6663  	UserDefinedVariableTypes []string `json:"userDefinedVariableTypes,omitempty"`
  6664  
  6665  	// ServerResponse contains the HTTP response code and headers from the server.
  6666  	googleapi.ServerResponse `json:"-"`
  6667  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  6668  	// unconditionally include in API requests. By default, fields with empty or
  6669  	// default values are omitted from API requests. See
  6670  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6671  	// details.
  6672  	ForceSendFields []string `json:"-"`
  6673  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  6674  	// requests with the JSON null value. By default, fields with empty values are
  6675  	// omitted from API requests. See
  6676  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6677  	NullFields []string `json:"-"`
  6678  }
  6679  
  6680  func (s *FloodlightActivity) MarshalJSON() ([]byte, error) {
  6681  	type NoMethod FloodlightActivity
  6682  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6683  }
  6684  
  6685  // FloodlightActivityDynamicTag: Dynamic Tag
  6686  type FloodlightActivityDynamicTag struct {
  6687  	// Id: ID of this dynamic tag. This is a read-only, auto-generated field.
  6688  	Id int64 `json:"id,omitempty,string"`
  6689  	// Name: Name of this tag.
  6690  	Name string `json:"name,omitempty"`
  6691  	// Tag: Tag code.
  6692  	Tag string `json:"tag,omitempty"`
  6693  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  6694  	// include in API requests. By default, fields with empty or default values are
  6695  	// omitted from API requests. See
  6696  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6697  	// details.
  6698  	ForceSendFields []string `json:"-"`
  6699  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  6700  	// with the JSON null value. By default, fields with empty values are omitted
  6701  	// from API requests. See
  6702  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6703  	NullFields []string `json:"-"`
  6704  }
  6705  
  6706  func (s *FloodlightActivityDynamicTag) MarshalJSON() ([]byte, error) {
  6707  	type NoMethod FloodlightActivityDynamicTag
  6708  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6709  }
  6710  
  6711  // FloodlightActivityGroup: Contains properties of a Floodlight activity group.
  6712  type FloodlightActivityGroup struct {
  6713  	// AccountId: Account ID of this floodlight activity group. This is a read-only
  6714  	// field that can be left blank.
  6715  	AccountId int64 `json:"accountId,omitempty,string"`
  6716  	// AdvertiserId: Advertiser ID of this floodlight activity group. If this field
  6717  	// is left blank, the value will be copied over either from the floodlight
  6718  	// configuration's advertiser or from the existing activity group's advertiser.
  6719  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  6720  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
  6721  	// This is a read-only, auto-generated field.
  6722  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  6723  	// FloodlightConfigurationId: Floodlight configuration ID of this floodlight
  6724  	// activity group. This is a required field.
  6725  	FloodlightConfigurationId int64 `json:"floodlightConfigurationId,omitempty,string"`
  6726  	// FloodlightConfigurationIdDimensionValue: Dimension value for the ID of the
  6727  	// floodlight configuration. This is a read-only, auto-generated field.
  6728  	FloodlightConfigurationIdDimensionValue *DimensionValue `json:"floodlightConfigurationIdDimensionValue,omitempty"`
  6729  	// Id: ID of this floodlight activity group. This is a read-only,
  6730  	// auto-generated field.
  6731  	Id int64 `json:"id,omitempty,string"`
  6732  	// IdDimensionValue: Dimension value for the ID of this floodlight activity
  6733  	// group. This is a read-only, auto-generated field.
  6734  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  6735  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6736  	// "dfareporting#floodlightActivityGroup".
  6737  	Kind string `json:"kind,omitempty"`
  6738  	// Name: Name of this floodlight activity group. This is a required field. Must
  6739  	// be less than 65 characters long and cannot contain quotes.
  6740  	Name string `json:"name,omitempty"`
  6741  	// SubaccountId: Subaccount ID of this floodlight activity group. This is a
  6742  	// read-only field that can be left blank.
  6743  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  6744  	// TagString: Value of the type= parameter in the floodlight tag, which the ad
  6745  	// servers use to identify the activity group that the activity belongs to.
  6746  	// This is optional: if empty, a new tag string will be generated for you. This
  6747  	// string must be 1 to 8 characters long, with valid characters being a-z0-9[ _
  6748  	// ]. This tag string must also be unique among activity groups of the same
  6749  	// floodlight configuration. This field is read-only after insertion.
  6750  	TagString string `json:"tagString,omitempty"`
  6751  	// Type: Type of the floodlight activity group. This is a required field that
  6752  	// is read-only after insertion.
  6753  	//
  6754  	// Possible values:
  6755  	//   "COUNTER"
  6756  	//   "SALE"
  6757  	Type string `json:"type,omitempty"`
  6758  
  6759  	// ServerResponse contains the HTTP response code and headers from the server.
  6760  	googleapi.ServerResponse `json:"-"`
  6761  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  6762  	// unconditionally include in API requests. By default, fields with empty or
  6763  	// default values are omitted from API requests. See
  6764  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6765  	// details.
  6766  	ForceSendFields []string `json:"-"`
  6767  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  6768  	// requests with the JSON null value. By default, fields with empty values are
  6769  	// omitted from API requests. See
  6770  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6771  	NullFields []string `json:"-"`
  6772  }
  6773  
  6774  func (s *FloodlightActivityGroup) MarshalJSON() ([]byte, error) {
  6775  	type NoMethod FloodlightActivityGroup
  6776  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6777  }
  6778  
  6779  // FloodlightActivityGroupsListResponse: Floodlight Activity Group List
  6780  // Response
  6781  type FloodlightActivityGroupsListResponse struct {
  6782  	// FloodlightActivityGroups: Floodlight activity group collection.
  6783  	FloodlightActivityGroups []*FloodlightActivityGroup `json:"floodlightActivityGroups,omitempty"`
  6784  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6785  	// "dfareporting#floodlightActivityGroupsListResponse".
  6786  	Kind string `json:"kind,omitempty"`
  6787  	// NextPageToken: Pagination token to be used for the next list operation.
  6788  	NextPageToken string `json:"nextPageToken,omitempty"`
  6789  
  6790  	// ServerResponse contains the HTTP response code and headers from the server.
  6791  	googleapi.ServerResponse `json:"-"`
  6792  	// ForceSendFields is a list of field names (e.g. "FloodlightActivityGroups")
  6793  	// to unconditionally include in API requests. By default, fields with empty or
  6794  	// default values are omitted from API requests. See
  6795  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6796  	// details.
  6797  	ForceSendFields []string `json:"-"`
  6798  	// NullFields is a list of field names (e.g. "FloodlightActivityGroups") to
  6799  	// include in API requests with the JSON null value. By default, fields with
  6800  	// empty values are omitted from API requests. See
  6801  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6802  	NullFields []string `json:"-"`
  6803  }
  6804  
  6805  func (s *FloodlightActivityGroupsListResponse) MarshalJSON() ([]byte, error) {
  6806  	type NoMethod FloodlightActivityGroupsListResponse
  6807  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6808  }
  6809  
  6810  // FloodlightActivityPublisherDynamicTag: Publisher Dynamic Tag
  6811  type FloodlightActivityPublisherDynamicTag struct {
  6812  	// ClickThrough: Whether this tag is applicable only for click-throughs.
  6813  	ClickThrough bool `json:"clickThrough,omitempty"`
  6814  	// DirectorySiteId: Directory site ID of this dynamic tag. This is a write-only
  6815  	// field that can be used as an alternative to the siteId field. When this
  6816  	// resource is retrieved, only the siteId field will be populated.
  6817  	DirectorySiteId int64 `json:"directorySiteId,omitempty,string"`
  6818  	// DynamicTag: Dynamic floodlight tag.
  6819  	DynamicTag *FloodlightActivityDynamicTag `json:"dynamicTag,omitempty"`
  6820  	// SiteId: Site ID of this dynamic tag.
  6821  	SiteId int64 `json:"siteId,omitempty,string"`
  6822  	// SiteIdDimensionValue: Dimension value for the ID of the site. This is a
  6823  	// read-only, auto-generated field.
  6824  	SiteIdDimensionValue *DimensionValue `json:"siteIdDimensionValue,omitempty"`
  6825  	// ViewThrough: Whether this tag is applicable only for view-throughs.
  6826  	ViewThrough bool `json:"viewThrough,omitempty"`
  6827  	// ForceSendFields is a list of field names (e.g. "ClickThrough") to
  6828  	// unconditionally include in API requests. By default, fields with empty or
  6829  	// default values are omitted from API requests. See
  6830  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6831  	// details.
  6832  	ForceSendFields []string `json:"-"`
  6833  	// NullFields is a list of field names (e.g. "ClickThrough") to include in API
  6834  	// requests with the JSON null value. By default, fields with empty values are
  6835  	// omitted from API requests. See
  6836  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6837  	NullFields []string `json:"-"`
  6838  }
  6839  
  6840  func (s *FloodlightActivityPublisherDynamicTag) MarshalJSON() ([]byte, error) {
  6841  	type NoMethod FloodlightActivityPublisherDynamicTag
  6842  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6843  }
  6844  
  6845  // FloodlightConfiguration: Contains properties of a Floodlight configuration.
  6846  type FloodlightConfiguration struct {
  6847  	// AccountId: Account ID of this floodlight configuration. This is a read-only
  6848  	// field that can be left blank.
  6849  	AccountId int64 `json:"accountId,omitempty,string"`
  6850  	// AdvertiserId: Advertiser ID of the parent advertiser of this floodlight
  6851  	// configuration.
  6852  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  6853  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
  6854  	// This is a read-only, auto-generated field.
  6855  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  6856  	// AnalyticsDataSharingEnabled: Whether advertiser data is shared with Google
  6857  	// Analytics.
  6858  	AnalyticsDataSharingEnabled bool `json:"analyticsDataSharingEnabled,omitempty"`
  6859  	// CustomViewabilityMetric: Custom Viewability metric for the floodlight
  6860  	// configuration.
  6861  	CustomViewabilityMetric *CustomViewabilityMetric `json:"customViewabilityMetric,omitempty"`
  6862  	// ExposureToConversionEnabled: Whether the exposure-to-conversion report is
  6863  	// enabled. This report shows detailed pathway information on up to 10 of the
  6864  	// most recent ad exposures seen by a user before converting.
  6865  	ExposureToConversionEnabled bool `json:"exposureToConversionEnabled,omitempty"`
  6866  	// Possible values:
  6867  	//   "SUNDAY"
  6868  	//   "MONDAY"
  6869  	FirstDayOfWeek string `json:"firstDayOfWeek,omitempty"`
  6870  	// Id: ID of this floodlight configuration. This is a read-only, auto-generated
  6871  	// field.
  6872  	Id int64 `json:"id,omitempty,string"`
  6873  	// IdDimensionValue: Dimension value for the ID of this floodlight
  6874  	// configuration. This is a read-only, auto-generated field.
  6875  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  6876  	// InAppAttributionTrackingEnabled: Whether in-app attribution tracking is
  6877  	// enabled.
  6878  	InAppAttributionTrackingEnabled bool `json:"inAppAttributionTrackingEnabled,omitempty"`
  6879  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6880  	// "dfareporting#floodlightConfiguration".
  6881  	Kind string `json:"kind,omitempty"`
  6882  	// LookbackConfiguration: Lookback window settings for this floodlight
  6883  	// configuration.
  6884  	LookbackConfiguration *LookbackConfiguration `json:"lookbackConfiguration,omitempty"`
  6885  	// NaturalSearchConversionAttributionOption: Types of attribution options for
  6886  	// natural search conversions.
  6887  	//
  6888  	// Possible values:
  6889  	//   "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION"
  6890  	//   "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION"
  6891  	//   "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION"
  6892  	NaturalSearchConversionAttributionOption string `json:"naturalSearchConversionAttributionOption,omitempty"`
  6893  	// OmnitureSettings: Settings for Campaign Manager Omniture integration.
  6894  	OmnitureSettings *OmnitureSettings `json:"omnitureSettings,omitempty"`
  6895  	// SubaccountId: Subaccount ID of this floodlight configuration. This is a
  6896  	// read-only field that can be left blank.
  6897  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  6898  	// TagSettings: Configuration settings for dynamic and image floodlight tags.
  6899  	TagSettings *TagSettings `json:"tagSettings,omitempty"`
  6900  	// ThirdPartyAuthenticationTokens: List of third-party authentication tokens
  6901  	// enabled for this configuration.
  6902  	ThirdPartyAuthenticationTokens []*ThirdPartyAuthenticationToken `json:"thirdPartyAuthenticationTokens,omitempty"`
  6903  	// UserDefinedVariableConfigurations: List of user defined variables enabled
  6904  	// for this configuration.
  6905  	UserDefinedVariableConfigurations []*UserDefinedVariableConfiguration `json:"userDefinedVariableConfigurations,omitempty"`
  6906  
  6907  	// ServerResponse contains the HTTP response code and headers from the server.
  6908  	googleapi.ServerResponse `json:"-"`
  6909  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  6910  	// unconditionally include in API requests. By default, fields with empty or
  6911  	// default values are omitted from API requests. See
  6912  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6913  	// details.
  6914  	ForceSendFields []string `json:"-"`
  6915  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  6916  	// requests with the JSON null value. By default, fields with empty values are
  6917  	// omitted from API requests. See
  6918  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6919  	NullFields []string `json:"-"`
  6920  }
  6921  
  6922  func (s *FloodlightConfiguration) MarshalJSON() ([]byte, error) {
  6923  	type NoMethod FloodlightConfiguration
  6924  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6925  }
  6926  
  6927  // FloodlightConfigurationsListResponse: Floodlight Configuration List Response
  6928  type FloodlightConfigurationsListResponse struct {
  6929  	// FloodlightConfigurations: Floodlight configuration collection.
  6930  	FloodlightConfigurations []*FloodlightConfiguration `json:"floodlightConfigurations,omitempty"`
  6931  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  6932  	// "dfareporting#floodlightConfigurationsListResponse".
  6933  	Kind string `json:"kind,omitempty"`
  6934  
  6935  	// ServerResponse contains the HTTP response code and headers from the server.
  6936  	googleapi.ServerResponse `json:"-"`
  6937  	// ForceSendFields is a list of field names (e.g. "FloodlightConfigurations")
  6938  	// to unconditionally include in API requests. By default, fields with empty or
  6939  	// default values are omitted from API requests. See
  6940  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6941  	// details.
  6942  	ForceSendFields []string `json:"-"`
  6943  	// NullFields is a list of field names (e.g. "FloodlightConfigurations") to
  6944  	// include in API requests with the JSON null value. By default, fields with
  6945  	// empty values are omitted from API requests. See
  6946  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6947  	NullFields []string `json:"-"`
  6948  }
  6949  
  6950  func (s *FloodlightConfigurationsListResponse) MarshalJSON() ([]byte, error) {
  6951  	type NoMethod FloodlightConfigurationsListResponse
  6952  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6953  }
  6954  
  6955  // FloodlightReportCompatibleFields: Represents fields that are compatible to
  6956  // be selected for a report of type "FlOODLIGHT".
  6957  type FloodlightReportCompatibleFields struct {
  6958  	// DimensionFilters: Dimensions which are compatible to be selected in the
  6959  	// "dimensionFilters" section of the report.
  6960  	DimensionFilters []*Dimension `json:"dimensionFilters,omitempty"`
  6961  	// Dimensions: Dimensions which are compatible to be selected in the
  6962  	// "dimensions" section of the report.
  6963  	Dimensions []*Dimension `json:"dimensions,omitempty"`
  6964  	// Kind: The kind of resource this is, in this case
  6965  	// dfareporting#floodlightReportCompatibleFields.
  6966  	Kind string `json:"kind,omitempty"`
  6967  	// Metrics: Metrics which are compatible to be selected in the "metricNames"
  6968  	// section of the report.
  6969  	Metrics []*Metric `json:"metrics,omitempty"`
  6970  	// ForceSendFields is a list of field names (e.g. "DimensionFilters") to
  6971  	// unconditionally include in API requests. By default, fields with empty or
  6972  	// default values are omitted from API requests. See
  6973  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  6974  	// details.
  6975  	ForceSendFields []string `json:"-"`
  6976  	// NullFields is a list of field names (e.g. "DimensionFilters") to include in
  6977  	// API requests with the JSON null value. By default, fields with empty values
  6978  	// are omitted from API requests. See
  6979  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  6980  	NullFields []string `json:"-"`
  6981  }
  6982  
  6983  func (s *FloodlightReportCompatibleFields) MarshalJSON() ([]byte, error) {
  6984  	type NoMethod FloodlightReportCompatibleFields
  6985  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  6986  }
  6987  
  6988  // FrequencyCap: Frequency Cap.
  6989  type FrequencyCap struct {
  6990  	// Duration: Duration of time, in seconds, for this frequency cap. The maximum
  6991  	// duration is 90 days. Acceptable values are 1 to 7776000, inclusive.
  6992  	Duration int64 `json:"duration,omitempty,string"`
  6993  	// Impressions: Number of times an individual user can be served the ad within
  6994  	// the specified duration. Acceptable values are 1 to 15, inclusive.
  6995  	Impressions int64 `json:"impressions,omitempty,string"`
  6996  	// ForceSendFields is a list of field names (e.g. "Duration") to
  6997  	// unconditionally include in API requests. By default, fields with empty or
  6998  	// default values are omitted from API requests. See
  6999  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7000  	// details.
  7001  	ForceSendFields []string `json:"-"`
  7002  	// NullFields is a list of field names (e.g. "Duration") to include in API
  7003  	// requests with the JSON null value. By default, fields with empty values are
  7004  	// omitted from API requests. See
  7005  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7006  	NullFields []string `json:"-"`
  7007  }
  7008  
  7009  func (s *FrequencyCap) MarshalJSON() ([]byte, error) {
  7010  	type NoMethod FrequencyCap
  7011  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7012  }
  7013  
  7014  // FsCommand: FsCommand.
  7015  type FsCommand struct {
  7016  	// Left: Distance from the left of the browser.Applicable when positionOption
  7017  	// is DISTANCE_FROM_TOP_LEFT_CORNER.
  7018  	Left int64 `json:"left,omitempty"`
  7019  	// PositionOption: Position in the browser where the window will open.
  7020  	//
  7021  	// Possible values:
  7022  	//   "CENTERED" - Center of the window Corresponds to "center" in UI
  7023  	//   "DISTANCE_FROM_TOP_LEFT_CORNER" - user-defined distance from top left-hand
  7024  	// corner of the window Corresponds to "top-left" in UI
  7025  	PositionOption string `json:"positionOption,omitempty"`
  7026  	// Top: Distance from the top of the browser. Applicable when positionOption is
  7027  	// DISTANCE_FROM_TOP_LEFT_CORNER.
  7028  	Top int64 `json:"top,omitempty"`
  7029  	// WindowHeight: Height of the window.
  7030  	WindowHeight int64 `json:"windowHeight,omitempty"`
  7031  	// WindowWidth: Width of the window.
  7032  	WindowWidth int64 `json:"windowWidth,omitempty"`
  7033  	// ForceSendFields is a list of field names (e.g. "Left") to unconditionally
  7034  	// include in API requests. By default, fields with empty or default values are
  7035  	// omitted from API requests. See
  7036  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7037  	// details.
  7038  	ForceSendFields []string `json:"-"`
  7039  	// NullFields is a list of field names (e.g. "Left") to include in API requests
  7040  	// with the JSON null value. By default, fields with empty values are omitted
  7041  	// from API requests. See
  7042  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7043  	NullFields []string `json:"-"`
  7044  }
  7045  
  7046  func (s *FsCommand) MarshalJSON() ([]byte, error) {
  7047  	type NoMethod FsCommand
  7048  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7049  }
  7050  
  7051  // GeoTargeting: Geographical Targeting.
  7052  type GeoTargeting struct {
  7053  	// Cities: Cities to be targeted. For each city only dartId is required. The
  7054  	// other fields are populated automatically when the ad is inserted or updated.
  7055  	// If targeting a city, do not target or exclude the country of the city, and
  7056  	// do not target the metro or region of the city.
  7057  	Cities []*City `json:"cities,omitempty"`
  7058  	// Countries: Countries to be targeted or excluded from targeting, depending on
  7059  	// the setting of the excludeCountries field. For each country only dartId is
  7060  	// required. The other fields are populated automatically when the ad is
  7061  	// inserted or updated. If targeting or excluding a country, do not target
  7062  	// regions, cities, metros, or postal codes in the same country.
  7063  	Countries []*Country `json:"countries,omitempty"`
  7064  	// ExcludeCountries: Whether or not to exclude the countries in the countries
  7065  	// field from targeting. If false, the countries field refers to countries
  7066  	// which will be targeted by the ad.
  7067  	ExcludeCountries bool `json:"excludeCountries,omitempty"`
  7068  	// Metros: Metros to be targeted. For each metro only dmaId is required. The
  7069  	// other fields are populated automatically when the ad is inserted or updated.
  7070  	// If targeting a metro, do not target or exclude the country of the metro.
  7071  	Metros []*Metro `json:"metros,omitempty"`
  7072  	// PostalCodes: Postal codes to be targeted. For each postal code only id is
  7073  	// required. The other fields are populated automatically when the ad is
  7074  	// inserted or updated. If targeting a postal code, do not target or exclude
  7075  	// the country of the postal code.
  7076  	PostalCodes []*PostalCode `json:"postalCodes,omitempty"`
  7077  	// Regions: Regions to be targeted. For each region only dartId is required.
  7078  	// The other fields are populated automatically when the ad is inserted or
  7079  	// updated. If targeting a region, do not target or exclude the country of the
  7080  	// region.
  7081  	Regions []*Region `json:"regions,omitempty"`
  7082  	// ForceSendFields is a list of field names (e.g. "Cities") to unconditionally
  7083  	// include in API requests. By default, fields with empty or default values are
  7084  	// omitted from API requests. See
  7085  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7086  	// details.
  7087  	ForceSendFields []string `json:"-"`
  7088  	// NullFields is a list of field names (e.g. "Cities") to include in API
  7089  	// requests with the JSON null value. By default, fields with empty values are
  7090  	// omitted from API requests. See
  7091  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7092  	NullFields []string `json:"-"`
  7093  }
  7094  
  7095  func (s *GeoTargeting) MarshalJSON() ([]byte, error) {
  7096  	type NoMethod GeoTargeting
  7097  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7098  }
  7099  
  7100  // InventoryItem: Represents a buy from the Planning inventory store.
  7101  type InventoryItem struct {
  7102  	// AccountId: Account ID of this inventory item.
  7103  	AccountId int64 `json:"accountId,omitempty,string"`
  7104  	// AdSlots: Ad slots of this inventory item. If this inventory item represents
  7105  	// a standalone placement, there will be exactly one ad slot. If this inventory
  7106  	// item represents a placement group, there will be more than one ad slot, each
  7107  	// representing one child placement in that placement group.
  7108  	AdSlots []*AdSlot `json:"adSlots,omitempty"`
  7109  	// AdvertiserId: Advertiser ID of this inventory item.
  7110  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  7111  	// ContentCategoryId: Content category ID of this inventory item.
  7112  	ContentCategoryId int64 `json:"contentCategoryId,omitempty,string"`
  7113  	// EstimatedClickThroughRate: Estimated click-through rate of this inventory
  7114  	// item.
  7115  	EstimatedClickThroughRate int64 `json:"estimatedClickThroughRate,omitempty,string"`
  7116  	// EstimatedConversionRate: Estimated conversion rate of this inventory item.
  7117  	EstimatedConversionRate int64 `json:"estimatedConversionRate,omitempty,string"`
  7118  	// Id: ID of this inventory item.
  7119  	Id int64 `json:"id,omitempty,string"`
  7120  	// InPlan: Whether this inventory item is in plan.
  7121  	InPlan bool `json:"inPlan,omitempty"`
  7122  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7123  	// "dfareporting#inventoryItem".
  7124  	Kind string `json:"kind,omitempty"`
  7125  	// LastModifiedInfo: Information about the most recent modification of this
  7126  	// inventory item.
  7127  	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
  7128  	// Name: Name of this inventory item. For standalone inventory items, this is
  7129  	// the same name as that of its only ad slot. For group inventory items, this
  7130  	// can differ from the name of any of its ad slots.
  7131  	Name string `json:"name,omitempty"`
  7132  	// NegotiationChannelId: Negotiation channel ID of this inventory item.
  7133  	NegotiationChannelId int64 `json:"negotiationChannelId,omitempty,string"`
  7134  	// OrderId: Order ID of this inventory item.
  7135  	OrderId int64 `json:"orderId,omitempty,string"`
  7136  	// PlacementStrategyId: Placement strategy ID of this inventory item.
  7137  	PlacementStrategyId int64 `json:"placementStrategyId,omitempty,string"`
  7138  	// Pricing: Pricing of this inventory item.
  7139  	Pricing *Pricing `json:"pricing,omitempty"`
  7140  	// ProjectId: Project ID of this inventory item.
  7141  	ProjectId int64 `json:"projectId,omitempty,string"`
  7142  	// RfpId: RFP ID of this inventory item.
  7143  	RfpId int64 `json:"rfpId,omitempty,string"`
  7144  	// SiteId: ID of the site this inventory item is associated with.
  7145  	SiteId int64 `json:"siteId,omitempty,string"`
  7146  	// SubaccountId: Subaccount ID of this inventory item.
  7147  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  7148  	// Type: Type of inventory item.
  7149  	//
  7150  	// Possible values:
  7151  	//   "PLANNING_PLACEMENT_TYPE_REGULAR"
  7152  	//   "PLANNING_PLACEMENT_TYPE_CREDIT"
  7153  	Type string `json:"type,omitempty"`
  7154  
  7155  	// ServerResponse contains the HTTP response code and headers from the server.
  7156  	googleapi.ServerResponse `json:"-"`
  7157  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  7158  	// unconditionally include in API requests. By default, fields with empty or
  7159  	// default values are omitted from API requests. See
  7160  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7161  	// details.
  7162  	ForceSendFields []string `json:"-"`
  7163  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  7164  	// requests with the JSON null value. By default, fields with empty values are
  7165  	// omitted from API requests. See
  7166  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7167  	NullFields []string `json:"-"`
  7168  }
  7169  
  7170  func (s *InventoryItem) MarshalJSON() ([]byte, error) {
  7171  	type NoMethod InventoryItem
  7172  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7173  }
  7174  
  7175  // InventoryItemsListResponse: Inventory item List Response
  7176  type InventoryItemsListResponse struct {
  7177  	// InventoryItems: Inventory item collection
  7178  	InventoryItems []*InventoryItem `json:"inventoryItems,omitempty"`
  7179  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7180  	// "dfareporting#inventoryItemsListResponse".
  7181  	Kind string `json:"kind,omitempty"`
  7182  	// NextPageToken: Pagination token to be used for the next list operation.
  7183  	NextPageToken string `json:"nextPageToken,omitempty"`
  7184  
  7185  	// ServerResponse contains the HTTP response code and headers from the server.
  7186  	googleapi.ServerResponse `json:"-"`
  7187  	// ForceSendFields is a list of field names (e.g. "InventoryItems") to
  7188  	// unconditionally include in API requests. By default, fields with empty or
  7189  	// default values are omitted from API requests. See
  7190  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7191  	// details.
  7192  	ForceSendFields []string `json:"-"`
  7193  	// NullFields is a list of field names (e.g. "InventoryItems") to include in
  7194  	// API requests with the JSON null value. By default, fields with empty values
  7195  	// are omitted from API requests. See
  7196  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7197  	NullFields []string `json:"-"`
  7198  }
  7199  
  7200  func (s *InventoryItemsListResponse) MarshalJSON() ([]byte, error) {
  7201  	type NoMethod InventoryItemsListResponse
  7202  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7203  }
  7204  
  7205  // Invoice: Contains information about a single invoice
  7206  type Invoice struct {
  7207  	// CampaignSummaries: The list of summarized campaign information associated
  7208  	// with this invoice.
  7209  	CampaignSummaries []*CampaignSummary `json:"campaign_summaries,omitempty"`
  7210  	// CorrectedInvoiceId: The originally issued invoice that is being adjusted by
  7211  	// this invoice, if applicable. May appear on invoice PDF as *Reference invoice
  7212  	// number*.
  7213  	CorrectedInvoiceId string `json:"correctedInvoiceId,omitempty"`
  7214  	// CurrencyCode: Invoice currency code in ISO 4217 format.
  7215  	CurrencyCode string `json:"currencyCode,omitempty"`
  7216  	// DueDate: The invoice due date.
  7217  	DueDate string `json:"dueDate,omitempty"`
  7218  	// Id: ID of this invoice.
  7219  	Id string `json:"id,omitempty"`
  7220  	// InvoiceType: The type of invoice document.
  7221  	//
  7222  	// Possible values:
  7223  	//   "INVOICE_TYPE_UNSPECIFIED"
  7224  	//   "INVOICE_TYPE_CREDIT"
  7225  	//   "INVOICE_TYPE_INVOICE"
  7226  	InvoiceType string `json:"invoiceType,omitempty"`
  7227  	// IssueDate: The date when the invoice was issued.
  7228  	IssueDate string `json:"issueDate,omitempty"`
  7229  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7230  	// "dfareporting#invoice".
  7231  	Kind string `json:"kind,omitempty"`
  7232  	// PaymentsAccountId: The ID of the payments account the invoice belongs to.
  7233  	// Appears on the invoice PDF as *Billing Account Number*.
  7234  	PaymentsAccountId string `json:"paymentsAccountId,omitempty"`
  7235  	// PaymentsProfileId: The ID of the payments profile the invoice belongs to.
  7236  	// Appears on the invoice PDF as *Billing ID*.
  7237  	PaymentsProfileId string `json:"paymentsProfileId,omitempty"`
  7238  	// PdfUrl: The URL to download a PDF copy of the invoice. Note that this URL is
  7239  	// user specific and requires a valid OAuth 2.0 access token to access. The
  7240  	// access token must be provided in an *Authorization: Bearer* HTTP header. The
  7241  	// URL will only be usable for 7 days from when the api is called.
  7242  	PdfUrl string `json:"pdfUrl,omitempty"`
  7243  	// PurchaseOrderNumber: Purchase order number associated with the invoice.
  7244  	PurchaseOrderNumber string `json:"purchaseOrderNumber,omitempty"`
  7245  	// ReplacedInvoiceIds: The originally issued invoice(s) that is being cancelled
  7246  	// by this invoice, if applicable. May appear on invoice PDF as *Replaced
  7247  	// invoice numbers*. Note: There may be multiple replaced invoices due to
  7248  	// consolidation of multiple invoices into a single invoice.
  7249  	ReplacedInvoiceIds []string `json:"replacedInvoiceIds,omitempty"`
  7250  	// ServiceEndDate: The invoice service end date.
  7251  	ServiceEndDate string `json:"serviceEndDate,omitempty"`
  7252  	// ServiceStartDate: The invoice service start date.
  7253  	ServiceStartDate string `json:"serviceStartDate,omitempty"`
  7254  	// SubtotalAmountMicros: The pre-tax subtotal amount, in micros of the
  7255  	// invoice's currency.
  7256  	SubtotalAmountMicros int64 `json:"subtotalAmountMicros,omitempty,string"`
  7257  	// TotalAmountMicros: The invoice total amount, in micros of the invoice's
  7258  	// currency.
  7259  	TotalAmountMicros int64 `json:"totalAmountMicros,omitempty,string"`
  7260  	// TotalTaxAmountMicros: The sum of all taxes in invoice, in micros of the
  7261  	// invoice's currency.
  7262  	TotalTaxAmountMicros int64 `json:"totalTaxAmountMicros,omitempty,string"`
  7263  	// ForceSendFields is a list of field names (e.g. "CampaignSummaries") to
  7264  	// unconditionally include in API requests. By default, fields with empty or
  7265  	// default values are omitted from API requests. See
  7266  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7267  	// details.
  7268  	ForceSendFields []string `json:"-"`
  7269  	// NullFields is a list of field names (e.g. "CampaignSummaries") to include in
  7270  	// API requests with the JSON null value. By default, fields with empty values
  7271  	// are omitted from API requests. See
  7272  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7273  	NullFields []string `json:"-"`
  7274  }
  7275  
  7276  func (s *Invoice) MarshalJSON() ([]byte, error) {
  7277  	type NoMethod Invoice
  7278  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7279  }
  7280  
  7281  // KeyValueTargetingExpression: Key Value Targeting Expression.
  7282  type KeyValueTargetingExpression struct {
  7283  	// Expression: Keyword expression being targeted by the ad.
  7284  	Expression string `json:"expression,omitempty"`
  7285  	// ForceSendFields is a list of field names (e.g. "Expression") to
  7286  	// unconditionally include in API requests. By default, fields with empty or
  7287  	// default values are omitted from API requests. See
  7288  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7289  	// details.
  7290  	ForceSendFields []string `json:"-"`
  7291  	// NullFields is a list of field names (e.g. "Expression") to include in API
  7292  	// requests with the JSON null value. By default, fields with empty values are
  7293  	// omitted from API requests. See
  7294  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7295  	NullFields []string `json:"-"`
  7296  }
  7297  
  7298  func (s *KeyValueTargetingExpression) MarshalJSON() ([]byte, error) {
  7299  	type NoMethod KeyValueTargetingExpression
  7300  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7301  }
  7302  
  7303  // LandingPage: Contains information about where a user's browser is taken
  7304  // after the user clicks an ad.
  7305  type LandingPage struct {
  7306  	// AdvertiserId: Advertiser ID of this landing page. This is a required field.
  7307  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  7308  	// Archived: Whether this landing page has been archived.
  7309  	Archived bool `json:"archived,omitempty"`
  7310  	// DeepLinks: Links that will direct the user to a mobile app, if installed.
  7311  	DeepLinks []*DeepLink `json:"deepLinks,omitempty"`
  7312  	// Id: ID of this landing page. This is a read-only, auto-generated field.
  7313  	Id int64 `json:"id,omitempty,string"`
  7314  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7315  	// "dfareporting#landingPage".
  7316  	Kind string `json:"kind,omitempty"`
  7317  	// Name: Name of this landing page. This is a required field. It must be less
  7318  	// than 256 characters long.
  7319  	Name string `json:"name,omitempty"`
  7320  	// Url: URL of this landing page. This is a required field.
  7321  	Url string `json:"url,omitempty"`
  7322  
  7323  	// ServerResponse contains the HTTP response code and headers from the server.
  7324  	googleapi.ServerResponse `json:"-"`
  7325  	// ForceSendFields is a list of field names (e.g. "AdvertiserId") to
  7326  	// unconditionally include in API requests. By default, fields with empty or
  7327  	// default values are omitted from API requests. See
  7328  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7329  	// details.
  7330  	ForceSendFields []string `json:"-"`
  7331  	// NullFields is a list of field names (e.g. "AdvertiserId") to include in API
  7332  	// requests with the JSON null value. By default, fields with empty values are
  7333  	// omitted from API requests. See
  7334  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7335  	NullFields []string `json:"-"`
  7336  }
  7337  
  7338  func (s *LandingPage) MarshalJSON() ([]byte, error) {
  7339  	type NoMethod LandingPage
  7340  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7341  }
  7342  
  7343  // Language: Contains information about a language that can be targeted by ads.
  7344  type Language struct {
  7345  	// Id: Language ID of this language. This is the ID used for targeting and
  7346  	// generating reports.
  7347  	Id int64 `json:"id,omitempty,string"`
  7348  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7349  	// "dfareporting#language".
  7350  	Kind string `json:"kind,omitempty"`
  7351  	// LanguageCode: Format of language code is an ISO 639 two-letter language code
  7352  	// optionally followed by an underscore followed by an ISO 3166 code. Examples
  7353  	// are "en" for English or "zh_CN" for Simplified Chinese.
  7354  	LanguageCode string `json:"languageCode,omitempty"`
  7355  	// Name: Name of this language.
  7356  	Name string `json:"name,omitempty"`
  7357  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  7358  	// include in API requests. By default, fields with empty or default values are
  7359  	// omitted from API requests. See
  7360  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7361  	// details.
  7362  	ForceSendFields []string `json:"-"`
  7363  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  7364  	// with the JSON null value. By default, fields with empty values are omitted
  7365  	// from API requests. See
  7366  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7367  	NullFields []string `json:"-"`
  7368  }
  7369  
  7370  func (s *Language) MarshalJSON() ([]byte, error) {
  7371  	type NoMethod Language
  7372  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7373  }
  7374  
  7375  // LanguageTargeting: Language Targeting.
  7376  type LanguageTargeting struct {
  7377  	// Languages: Languages that this ad targets. For each language only languageId
  7378  	// is required. The other fields are populated automatically when the ad is
  7379  	// inserted or updated.
  7380  	Languages []*Language `json:"languages,omitempty"`
  7381  	// ForceSendFields is a list of field names (e.g. "Languages") to
  7382  	// unconditionally include in API requests. By default, fields with empty or
  7383  	// default values are omitted from API requests. See
  7384  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7385  	// details.
  7386  	ForceSendFields []string `json:"-"`
  7387  	// NullFields is a list of field names (e.g. "Languages") to include in API
  7388  	// requests with the JSON null value. By default, fields with empty values are
  7389  	// omitted from API requests. See
  7390  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7391  	NullFields []string `json:"-"`
  7392  }
  7393  
  7394  func (s *LanguageTargeting) MarshalJSON() ([]byte, error) {
  7395  	type NoMethod LanguageTargeting
  7396  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7397  }
  7398  
  7399  // LanguagesListResponse: Language List Response
  7400  type LanguagesListResponse struct {
  7401  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7402  	// "dfareporting#languagesListResponse".
  7403  	Kind string `json:"kind,omitempty"`
  7404  	// Languages: Language collection.
  7405  	Languages []*Language `json:"languages,omitempty"`
  7406  
  7407  	// ServerResponse contains the HTTP response code and headers from the server.
  7408  	googleapi.ServerResponse `json:"-"`
  7409  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  7410  	// include in API requests. By default, fields with empty or default values are
  7411  	// omitted from API requests. See
  7412  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7413  	// details.
  7414  	ForceSendFields []string `json:"-"`
  7415  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  7416  	// with the JSON null value. By default, fields with empty values are omitted
  7417  	// from API requests. See
  7418  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7419  	NullFields []string `json:"-"`
  7420  }
  7421  
  7422  func (s *LanguagesListResponse) MarshalJSON() ([]byte, error) {
  7423  	type NoMethod LanguagesListResponse
  7424  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7425  }
  7426  
  7427  // LastModifiedInfo: Modification timestamp.
  7428  type LastModifiedInfo struct {
  7429  	// Time: Timestamp of the last change in milliseconds since epoch.
  7430  	Time int64 `json:"time,omitempty,string"`
  7431  	// ForceSendFields is a list of field names (e.g. "Time") to unconditionally
  7432  	// include in API requests. By default, fields with empty or default values are
  7433  	// omitted from API requests. See
  7434  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7435  	// details.
  7436  	ForceSendFields []string `json:"-"`
  7437  	// NullFields is a list of field names (e.g. "Time") to include in API requests
  7438  	// with the JSON null value. By default, fields with empty values are omitted
  7439  	// from API requests. See
  7440  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7441  	NullFields []string `json:"-"`
  7442  }
  7443  
  7444  func (s *LastModifiedInfo) MarshalJSON() ([]byte, error) {
  7445  	type NoMethod LastModifiedInfo
  7446  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7447  }
  7448  
  7449  // ListPopulationClause: A group clause made up of list population terms
  7450  // representing constraints joined by ORs.
  7451  type ListPopulationClause struct {
  7452  	// Terms: Terms of this list population clause. Each clause is made up of list
  7453  	// population terms representing constraints and are joined by ORs.
  7454  	Terms []*ListPopulationTerm `json:"terms,omitempty"`
  7455  	// ForceSendFields is a list of field names (e.g. "Terms") to unconditionally
  7456  	// include in API requests. By default, fields with empty or default values are
  7457  	// omitted from API requests. See
  7458  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7459  	// details.
  7460  	ForceSendFields []string `json:"-"`
  7461  	// NullFields is a list of field names (e.g. "Terms") to include in API
  7462  	// requests with the JSON null value. By default, fields with empty values are
  7463  	// omitted from API requests. See
  7464  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7465  	NullFields []string `json:"-"`
  7466  }
  7467  
  7468  func (s *ListPopulationClause) MarshalJSON() ([]byte, error) {
  7469  	type NoMethod ListPopulationClause
  7470  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7471  }
  7472  
  7473  // ListPopulationRule: Remarketing List Population Rule.
  7474  type ListPopulationRule struct {
  7475  	// FloodlightActivityId: Floodlight activity ID associated with this rule. This
  7476  	// field can be left blank.
  7477  	FloodlightActivityId int64 `json:"floodlightActivityId,omitempty,string"`
  7478  	// FloodlightActivityName: Name of floodlight activity associated with this
  7479  	// rule. This is a read-only, auto-generated field.
  7480  	FloodlightActivityName string `json:"floodlightActivityName,omitempty"`
  7481  	// ListPopulationClauses: Clauses that make up this list population rule.
  7482  	// Clauses are joined by ANDs, and the clauses themselves are made up of list
  7483  	// population terms which are joined by ORs.
  7484  	ListPopulationClauses []*ListPopulationClause `json:"listPopulationClauses,omitempty"`
  7485  	// ForceSendFields is a list of field names (e.g. "FloodlightActivityId") to
  7486  	// unconditionally include in API requests. By default, fields with empty or
  7487  	// default values are omitted from API requests. See
  7488  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7489  	// details.
  7490  	ForceSendFields []string `json:"-"`
  7491  	// NullFields is a list of field names (e.g. "FloodlightActivityId") to include
  7492  	// in API requests with the JSON null value. By default, fields with empty
  7493  	// values are omitted from API requests. See
  7494  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7495  	NullFields []string `json:"-"`
  7496  }
  7497  
  7498  func (s *ListPopulationRule) MarshalJSON() ([]byte, error) {
  7499  	type NoMethod ListPopulationRule
  7500  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7501  }
  7502  
  7503  // ListPopulationTerm: Remarketing List Population Rule Term.
  7504  type ListPopulationTerm struct {
  7505  	// Contains: Will be true if the term should check if the user is in the list
  7506  	// and false if the term should check if the user is not in the list. This
  7507  	// field is only relevant when type is set to LIST_MEMBERSHIP_TERM. False by
  7508  	// default.
  7509  	Contains bool `json:"contains,omitempty"`
  7510  	// Negation: Whether to negate the comparison result of this term during rule
  7511  	// evaluation. This field is only relevant when type is left unset or set to
  7512  	// CUSTOM_VARIABLE_TERM or REFERRER_TERM.
  7513  	Negation bool `json:"negation,omitempty"`
  7514  	// Operator: Comparison operator of this term. This field is only relevant when
  7515  	// type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
  7516  	//
  7517  	// Possible values:
  7518  	//   "NUM_EQUALS"
  7519  	//   "NUM_LESS_THAN"
  7520  	//   "NUM_LESS_THAN_EQUAL"
  7521  	//   "NUM_GREATER_THAN"
  7522  	//   "NUM_GREATER_THAN_EQUAL"
  7523  	//   "STRING_EQUALS"
  7524  	//   "STRING_CONTAINS"
  7525  	Operator string `json:"operator,omitempty"`
  7526  	// RemarketingListId: ID of the list in question. This field is only relevant
  7527  	// when type is set to LIST_MEMBERSHIP_TERM.
  7528  	RemarketingListId int64 `json:"remarketingListId,omitempty,string"`
  7529  	// Type: List population term type determines the applicable fields in this
  7530  	// object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName,
  7531  	// variableFriendlyName, operator, value, and negation are applicable. If set
  7532  	// to LIST_MEMBERSHIP_TERM then remarketingListId and contains are applicable.
  7533  	// If set to REFERRER_TERM then operator, value, and negation are applicable.
  7534  	//
  7535  	// Possible values:
  7536  	//   "CUSTOM_VARIABLE_TERM"
  7537  	//   "LIST_MEMBERSHIP_TERM"
  7538  	//   "REFERRER_TERM"
  7539  	Type string `json:"type,omitempty"`
  7540  	// Value: Literal to compare the variable to. This field is only relevant when
  7541  	// type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.
  7542  	Value string `json:"value,omitempty"`
  7543  	// VariableFriendlyName: Friendly name of this term's variable. This is a
  7544  	// read-only, auto-generated field. This field is only relevant when type is
  7545  	// left unset or set to CUSTOM_VARIABLE_TERM.
  7546  	VariableFriendlyName string `json:"variableFriendlyName,omitempty"`
  7547  	// VariableName: Name of the variable (U1, U2, etc.) being compared in this
  7548  	// term. This field is only relevant when type is set to null,
  7549  	// CUSTOM_VARIABLE_TERM or REFERRER_TERM.
  7550  	VariableName string `json:"variableName,omitempty"`
  7551  	// ForceSendFields is a list of field names (e.g. "Contains") to
  7552  	// unconditionally include in API requests. By default, fields with empty or
  7553  	// default values are omitted from API requests. See
  7554  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7555  	// details.
  7556  	ForceSendFields []string `json:"-"`
  7557  	// NullFields is a list of field names (e.g. "Contains") to include in API
  7558  	// requests with the JSON null value. By default, fields with empty values are
  7559  	// omitted from API requests. See
  7560  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7561  	NullFields []string `json:"-"`
  7562  }
  7563  
  7564  func (s *ListPopulationTerm) MarshalJSON() ([]byte, error) {
  7565  	type NoMethod ListPopulationTerm
  7566  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7567  }
  7568  
  7569  // ListTargetingExpression: Remarketing List Targeting Expression.
  7570  type ListTargetingExpression struct {
  7571  	// Expression: Expression describing which lists are being targeted by the ad.
  7572  	Expression string `json:"expression,omitempty"`
  7573  	// ForceSendFields is a list of field names (e.g. "Expression") to
  7574  	// unconditionally include in API requests. By default, fields with empty or
  7575  	// default values are omitted from API requests. See
  7576  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7577  	// details.
  7578  	ForceSendFields []string `json:"-"`
  7579  	// NullFields is a list of field names (e.g. "Expression") to include in API
  7580  	// requests with the JSON null value. By default, fields with empty values are
  7581  	// omitted from API requests. See
  7582  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7583  	NullFields []string `json:"-"`
  7584  }
  7585  
  7586  func (s *ListTargetingExpression) MarshalJSON() ([]byte, error) {
  7587  	type NoMethod ListTargetingExpression
  7588  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7589  }
  7590  
  7591  // LookbackConfiguration: Lookback configuration settings.
  7592  type LookbackConfiguration struct {
  7593  	// ClickDuration: Lookback window, in days, from the last time a given user
  7594  	// clicked on one of your ads. If you enter 0, clicks will not be considered as
  7595  	// triggering events for floodlight tracking. If you leave this field blank,
  7596  	// the default value for your account will be used. Acceptable values are 0 to
  7597  	// 90, inclusive.
  7598  	ClickDuration int64 `json:"clickDuration,omitempty"`
  7599  	// PostImpressionActivitiesDuration: Lookback window, in days, from the last
  7600  	// time a given user viewed one of your ads. If you enter 0, impressions will
  7601  	// not be considered as triggering events for floodlight tracking. If you leave
  7602  	// this field blank, the default value for your account will be used.
  7603  	// Acceptable values are 0 to 90, inclusive.
  7604  	PostImpressionActivitiesDuration int64 `json:"postImpressionActivitiesDuration,omitempty"`
  7605  	// ForceSendFields is a list of field names (e.g. "ClickDuration") to
  7606  	// unconditionally include in API requests. By default, fields with empty or
  7607  	// default values are omitted from API requests. See
  7608  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7609  	// details.
  7610  	ForceSendFields []string `json:"-"`
  7611  	// NullFields is a list of field names (e.g. "ClickDuration") to include in API
  7612  	// requests with the JSON null value. By default, fields with empty values are
  7613  	// omitted from API requests. See
  7614  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7615  	NullFields []string `json:"-"`
  7616  }
  7617  
  7618  func (s *LookbackConfiguration) MarshalJSON() ([]byte, error) {
  7619  	type NoMethod LookbackConfiguration
  7620  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7621  }
  7622  
  7623  type MeasurementPartnerAdvertiserLink struct {
  7624  	// LinkStatus: Status of the partner link.
  7625  	//
  7626  	// Possible values:
  7627  	//   "MEASUREMENT_PARTNER_UNLINKED" - Unlinked.
  7628  	//   "MEASUREMENT_PARTNER_LINKED" - Linked successfully
  7629  	//   "MEASUREMENT_PARTNER_LINK_PENDING" - Link pending for wrapping.
  7630  	//   "MEASUREMENT_PARTNER_LINK_FAILURE" - Linking failure.
  7631  	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT" - Link opt-out by user.
  7632  	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT_PENDING" - Link opt-out pending sync.
  7633  	//   "MEASUREMENT_PARTNER_LINK_WRAPPING_PENDING" - Link wrap answer pending.
  7634  	//   "MEASUREMENT_PARTNER_MODE_CHANGE_PENDING" - Mode change pending.
  7635  	LinkStatus string `json:"linkStatus,omitempty"`
  7636  	// MeasurementPartner: Measurement partner used for tag wrapping.
  7637  	//
  7638  	// Possible values:
  7639  	//   "NONE"
  7640  	//   "INTEGRAL_AD_SCIENCE"
  7641  	//   "DOUBLE_VERIFY"
  7642  	MeasurementPartner string `json:"measurementPartner,omitempty"`
  7643  	// PartnerAdvertiserId: partner Advertiser Id.
  7644  	PartnerAdvertiserId string `json:"partnerAdvertiserId,omitempty"`
  7645  	// ForceSendFields is a list of field names (e.g. "LinkStatus") to
  7646  	// unconditionally include in API requests. By default, fields with empty or
  7647  	// default values are omitted from API requests. See
  7648  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7649  	// details.
  7650  	ForceSendFields []string `json:"-"`
  7651  	// NullFields is a list of field names (e.g. "LinkStatus") to include in API
  7652  	// requests with the JSON null value. By default, fields with empty values are
  7653  	// omitted from API requests. See
  7654  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7655  	NullFields []string `json:"-"`
  7656  }
  7657  
  7658  func (s *MeasurementPartnerAdvertiserLink) MarshalJSON() ([]byte, error) {
  7659  	type NoMethod MeasurementPartnerAdvertiserLink
  7660  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7661  }
  7662  
  7663  type MeasurementPartnerCampaignLink struct {
  7664  	// LinkStatus: .
  7665  	//
  7666  	// Possible values:
  7667  	//   "MEASUREMENT_PARTNER_UNLINKED" - Unlinked.
  7668  	//   "MEASUREMENT_PARTNER_LINKED" - Linked successfully
  7669  	//   "MEASUREMENT_PARTNER_LINK_PENDING" - Link pending for wrapping.
  7670  	//   "MEASUREMENT_PARTNER_LINK_FAILURE" - Linking failure.
  7671  	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT" - Link opt-out by user.
  7672  	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT_PENDING" - Link opt-out pending sync.
  7673  	//   "MEASUREMENT_PARTNER_LINK_WRAPPING_PENDING" - Link wrap answer pending.
  7674  	//   "MEASUREMENT_PARTNER_MODE_CHANGE_PENDING" - Mode change pending.
  7675  	LinkStatus string `json:"linkStatus,omitempty"`
  7676  	// MeasurementPartner: Measurement partner used for tag wrapping.
  7677  	//
  7678  	// Possible values:
  7679  	//   "NONE"
  7680  	//   "INTEGRAL_AD_SCIENCE"
  7681  	//   "DOUBLE_VERIFY"
  7682  	MeasurementPartner string `json:"measurementPartner,omitempty"`
  7683  	// PartnerCampaignId: Partner campaign ID needed for establishing linking with
  7684  	// Measurement partner.
  7685  	PartnerCampaignId string `json:"partnerCampaignId,omitempty"`
  7686  	// ForceSendFields is a list of field names (e.g. "LinkStatus") to
  7687  	// unconditionally include in API requests. By default, fields with empty or
  7688  	// default values are omitted from API requests. See
  7689  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7690  	// details.
  7691  	ForceSendFields []string `json:"-"`
  7692  	// NullFields is a list of field names (e.g. "LinkStatus") to include in API
  7693  	// requests with the JSON null value. By default, fields with empty values are
  7694  	// omitted from API requests. See
  7695  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7696  	NullFields []string `json:"-"`
  7697  }
  7698  
  7699  func (s *MeasurementPartnerCampaignLink) MarshalJSON() ([]byte, error) {
  7700  	type NoMethod MeasurementPartnerCampaignLink
  7701  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7702  }
  7703  
  7704  // MeasurementPartnerWrappingData: Placement tag wrapping
  7705  type MeasurementPartnerWrappingData struct {
  7706  	// LinkStatus: Placement wrapping status.
  7707  	//
  7708  	// Possible values:
  7709  	//   "MEASUREMENT_PARTNER_UNLINKED" - Unlinked.
  7710  	//   "MEASUREMENT_PARTNER_LINKED" - Linked successfully
  7711  	//   "MEASUREMENT_PARTNER_LINK_PENDING" - Link pending for wrapping.
  7712  	//   "MEASUREMENT_PARTNER_LINK_FAILURE" - Linking failure.
  7713  	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT" - Link opt-out by user.
  7714  	//   "MEASUREMENT_PARTNER_LINK_OPT_OUT_PENDING" - Link opt-out pending sync.
  7715  	//   "MEASUREMENT_PARTNER_LINK_WRAPPING_PENDING" - Link wrap answer pending.
  7716  	//   "MEASUREMENT_PARTNER_MODE_CHANGE_PENDING" - Mode change pending.
  7717  	LinkStatus string `json:"linkStatus,omitempty"`
  7718  	// MeasurementPartner: Measurement partner used for wrapping the placement.
  7719  	//
  7720  	// Possible values:
  7721  	//   "NONE"
  7722  	//   "INTEGRAL_AD_SCIENCE"
  7723  	//   "DOUBLE_VERIFY"
  7724  	MeasurementPartner string `json:"measurementPartner,omitempty"`
  7725  	// TagWrappingMode: Measurement mode for the wrapped placement.
  7726  	//
  7727  	// Possible values:
  7728  	//   "NONE"
  7729  	//   "BLOCKING"
  7730  	//   "MONITORING"
  7731  	//   "MONITORING_READ_ONLY"
  7732  	//   "VIDEO_PIXEL_MONITORING"
  7733  	//   "TRACKING"
  7734  	//   "VPAID_MONITORING"
  7735  	//   "VPAID_BLOCKING"
  7736  	//   "NON_VPAID_MONITORING"
  7737  	//   "VPAID_ONLY_MONITORING"
  7738  	//   "VPAID_ONLY_BLOCKING"
  7739  	//   "VPAID_ONLY_FILTERING"
  7740  	//   "VPAID_FILTERING"
  7741  	//   "NON_VPAID_FILTERING"
  7742  	TagWrappingMode string `json:"tagWrappingMode,omitempty"`
  7743  	// WrappedTag: Tag provided by the measurement partner during wrapping.
  7744  	WrappedTag string `json:"wrappedTag,omitempty"`
  7745  	// ForceSendFields is a list of field names (e.g. "LinkStatus") to
  7746  	// unconditionally include in API requests. By default, fields with empty or
  7747  	// default values are omitted from API requests. See
  7748  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7749  	// details.
  7750  	ForceSendFields []string `json:"-"`
  7751  	// NullFields is a list of field names (e.g. "LinkStatus") to include in API
  7752  	// requests with the JSON null value. By default, fields with empty values are
  7753  	// omitted from API requests. See
  7754  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7755  	NullFields []string `json:"-"`
  7756  }
  7757  
  7758  func (s *MeasurementPartnerWrappingData) MarshalJSON() ([]byte, error) {
  7759  	type NoMethod MeasurementPartnerWrappingData
  7760  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7761  }
  7762  
  7763  // Metric: Represents a metric.
  7764  type Metric struct {
  7765  	// Kind: The kind of resource this is, in this case dfareporting#metric.
  7766  	Kind string `json:"kind,omitempty"`
  7767  	// Name: The metric name, e.g. impressions
  7768  	Name string `json:"name,omitempty"`
  7769  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  7770  	// include in API requests. By default, fields with empty or default values are
  7771  	// omitted from API requests. See
  7772  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7773  	// details.
  7774  	ForceSendFields []string `json:"-"`
  7775  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  7776  	// with the JSON null value. By default, fields with empty values are omitted
  7777  	// from API requests. See
  7778  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7779  	NullFields []string `json:"-"`
  7780  }
  7781  
  7782  func (s *Metric) MarshalJSON() ([]byte, error) {
  7783  	type NoMethod Metric
  7784  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7785  }
  7786  
  7787  // Metro: Contains information about a metro region that can be targeted by
  7788  // ads.
  7789  type Metro struct {
  7790  	// CountryCode: Country code of the country to which this metro region belongs.
  7791  	CountryCode string `json:"countryCode,omitempty"`
  7792  	// CountryDartId: DART ID of the country to which this metro region belongs.
  7793  	CountryDartId int64 `json:"countryDartId,omitempty,string"`
  7794  	// DartId: DART ID of this metro region.
  7795  	DartId int64 `json:"dartId,omitempty,string"`
  7796  	// DmaId: DMA ID of this metro region. This is the ID used for targeting and
  7797  	// generating reports, and is equivalent to metro_code.
  7798  	DmaId int64 `json:"dmaId,omitempty,string"`
  7799  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7800  	// "dfareporting#metro".
  7801  	Kind string `json:"kind,omitempty"`
  7802  	// MetroCode: Metro code of this metro region. This is equivalent to dma_id.
  7803  	MetroCode string `json:"metroCode,omitempty"`
  7804  	// Name: Name of this metro region.
  7805  	Name string `json:"name,omitempty"`
  7806  	// ForceSendFields is a list of field names (e.g. "CountryCode") to
  7807  	// unconditionally include in API requests. By default, fields with empty or
  7808  	// default values are omitted from API requests. See
  7809  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7810  	// details.
  7811  	ForceSendFields []string `json:"-"`
  7812  	// NullFields is a list of field names (e.g. "CountryCode") to include in API
  7813  	// requests with the JSON null value. By default, fields with empty values are
  7814  	// omitted from API requests. See
  7815  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7816  	NullFields []string `json:"-"`
  7817  }
  7818  
  7819  func (s *Metro) MarshalJSON() ([]byte, error) {
  7820  	type NoMethod Metro
  7821  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7822  }
  7823  
  7824  // MetrosListResponse: Metro List Response
  7825  type MetrosListResponse struct {
  7826  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7827  	// "dfareporting#metrosListResponse".
  7828  	Kind string `json:"kind,omitempty"`
  7829  	// Metros: Metro collection.
  7830  	Metros []*Metro `json:"metros,omitempty"`
  7831  
  7832  	// ServerResponse contains the HTTP response code and headers from the server.
  7833  	googleapi.ServerResponse `json:"-"`
  7834  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  7835  	// include in API requests. By default, fields with empty or default values are
  7836  	// omitted from API requests. See
  7837  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7838  	// details.
  7839  	ForceSendFields []string `json:"-"`
  7840  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  7841  	// with the JSON null value. By default, fields with empty values are omitted
  7842  	// from API requests. See
  7843  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7844  	NullFields []string `json:"-"`
  7845  }
  7846  
  7847  func (s *MetrosListResponse) MarshalJSON() ([]byte, error) {
  7848  	type NoMethod MetrosListResponse
  7849  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7850  }
  7851  
  7852  // MobileApp: Contains information about a mobile app. Used as a landing page
  7853  // deep link.
  7854  type MobileApp struct {
  7855  	// Directory: Mobile app directory.
  7856  	//
  7857  	// Possible values:
  7858  	//   "UNKNOWN"
  7859  	//   "APPLE_APP_STORE"
  7860  	//   "GOOGLE_PLAY_STORE"
  7861  	//   "ROKU_APP_STORE"
  7862  	//   "AMAZON_FIRETV_APP_STORE"
  7863  	//   "PLAYSTATION_APP_STORE"
  7864  	//   "APPLE_TV_APP_STORE"
  7865  	//   "XBOX_APP_STORE"
  7866  	//   "SAMSUNG_TV_APP_STORE"
  7867  	//   "ANDROID_TV_APP_STORE"
  7868  	//   "GENERIC_CTV_APP_STORE"
  7869  	Directory string `json:"directory,omitempty"`
  7870  	// Id: ID of this mobile app.
  7871  	Id string `json:"id,omitempty"`
  7872  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7873  	// "dfareporting#mobileApp".
  7874  	Kind string `json:"kind,omitempty"`
  7875  	// PublisherName: Publisher name.
  7876  	PublisherName string `json:"publisherName,omitempty"`
  7877  	// Title: Title of this mobile app.
  7878  	Title string `json:"title,omitempty"`
  7879  
  7880  	// ServerResponse contains the HTTP response code and headers from the server.
  7881  	googleapi.ServerResponse `json:"-"`
  7882  	// ForceSendFields is a list of field names (e.g. "Directory") to
  7883  	// unconditionally include in API requests. By default, fields with empty or
  7884  	// default values are omitted from API requests. See
  7885  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7886  	// details.
  7887  	ForceSendFields []string `json:"-"`
  7888  	// NullFields is a list of field names (e.g. "Directory") to include in API
  7889  	// requests with the JSON null value. By default, fields with empty values are
  7890  	// omitted from API requests. See
  7891  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7892  	NullFields []string `json:"-"`
  7893  }
  7894  
  7895  func (s *MobileApp) MarshalJSON() ([]byte, error) {
  7896  	type NoMethod MobileApp
  7897  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7898  }
  7899  
  7900  // MobileAppsListResponse: Mobile app List Response
  7901  type MobileAppsListResponse struct {
  7902  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7903  	// "dfareporting#mobileAppsListResponse".
  7904  	Kind string `json:"kind,omitempty"`
  7905  	// MobileApps: Mobile apps collection.
  7906  	MobileApps []*MobileApp `json:"mobileApps,omitempty"`
  7907  	// NextPageToken: Pagination token to be used for the next list operation.
  7908  	NextPageToken string `json:"nextPageToken,omitempty"`
  7909  
  7910  	// ServerResponse contains the HTTP response code and headers from the server.
  7911  	googleapi.ServerResponse `json:"-"`
  7912  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  7913  	// include in API requests. By default, fields with empty or default values are
  7914  	// omitted from API requests. See
  7915  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7916  	// details.
  7917  	ForceSendFields []string `json:"-"`
  7918  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  7919  	// with the JSON null value. By default, fields with empty values are omitted
  7920  	// from API requests. See
  7921  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7922  	NullFields []string `json:"-"`
  7923  }
  7924  
  7925  func (s *MobileAppsListResponse) MarshalJSON() ([]byte, error) {
  7926  	type NoMethod MobileAppsListResponse
  7927  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7928  }
  7929  
  7930  // MobileCarrier: Contains information about a mobile carrier that can be
  7931  // targeted by ads.
  7932  type MobileCarrier struct {
  7933  	// CountryCode: Country code of the country to which this mobile carrier
  7934  	// belongs.
  7935  	CountryCode string `json:"countryCode,omitempty"`
  7936  	// CountryDartId: DART ID of the country to which this mobile carrier belongs.
  7937  	CountryDartId int64 `json:"countryDartId,omitempty,string"`
  7938  	// Id: ID of this mobile carrier.
  7939  	Id int64 `json:"id,omitempty,string"`
  7940  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7941  	// "dfareporting#mobileCarrier".
  7942  	Kind string `json:"kind,omitempty"`
  7943  	// Name: Name of this mobile carrier.
  7944  	Name string `json:"name,omitempty"`
  7945  
  7946  	// ServerResponse contains the HTTP response code and headers from the server.
  7947  	googleapi.ServerResponse `json:"-"`
  7948  	// ForceSendFields is a list of field names (e.g. "CountryCode") to
  7949  	// unconditionally include in API requests. By default, fields with empty or
  7950  	// default values are omitted from API requests. See
  7951  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7952  	// details.
  7953  	ForceSendFields []string `json:"-"`
  7954  	// NullFields is a list of field names (e.g. "CountryCode") to include in API
  7955  	// requests with the JSON null value. By default, fields with empty values are
  7956  	// omitted from API requests. See
  7957  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7958  	NullFields []string `json:"-"`
  7959  }
  7960  
  7961  func (s *MobileCarrier) MarshalJSON() ([]byte, error) {
  7962  	type NoMethod MobileCarrier
  7963  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7964  }
  7965  
  7966  // MobileCarriersListResponse: Mobile Carrier List Response
  7967  type MobileCarriersListResponse struct {
  7968  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  7969  	// "dfareporting#mobileCarriersListResponse".
  7970  	Kind string `json:"kind,omitempty"`
  7971  	// MobileCarriers: Mobile carrier collection.
  7972  	MobileCarriers []*MobileCarrier `json:"mobileCarriers,omitempty"`
  7973  
  7974  	// ServerResponse contains the HTTP response code and headers from the server.
  7975  	googleapi.ServerResponse `json:"-"`
  7976  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  7977  	// include in API requests. By default, fields with empty or default values are
  7978  	// omitted from API requests. See
  7979  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  7980  	// details.
  7981  	ForceSendFields []string `json:"-"`
  7982  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  7983  	// with the JSON null value. By default, fields with empty values are omitted
  7984  	// from API requests. See
  7985  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  7986  	NullFields []string `json:"-"`
  7987  }
  7988  
  7989  func (s *MobileCarriersListResponse) MarshalJSON() ([]byte, error) {
  7990  	type NoMethod MobileCarriersListResponse
  7991  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  7992  }
  7993  
  7994  // ObaIcon: Online Behavioral Advertiser icon.
  7995  type ObaIcon struct {
  7996  	// IconClickThroughUrl: URL to redirect to when an OBA icon is clicked.
  7997  	IconClickThroughUrl string `json:"iconClickThroughUrl,omitempty"`
  7998  	// IconClickTrackingUrl: URL to track click when an OBA icon is clicked.
  7999  	IconClickTrackingUrl string `json:"iconClickTrackingUrl,omitempty"`
  8000  	// IconViewTrackingUrl: URL to track view when an OBA icon is clicked.
  8001  	IconViewTrackingUrl string `json:"iconViewTrackingUrl,omitempty"`
  8002  	// Program: Identifies the industry initiative that the icon supports. For
  8003  	// example, AdChoices.
  8004  	Program string `json:"program,omitempty"`
  8005  	// ResourceUrl: OBA icon resource URL. Campaign Manager only supports image and
  8006  	// JavaScript icons. Learn more
  8007  	ResourceUrl string `json:"resourceUrl,omitempty"`
  8008  	// Size: OBA icon size.
  8009  	Size *Size `json:"size,omitempty"`
  8010  	// XPosition: OBA icon x coordinate position. Accepted values are left or
  8011  	// right.
  8012  	XPosition string `json:"xPosition,omitempty"`
  8013  	// YPosition: OBA icon y coordinate position. Accepted values are top or
  8014  	// bottom.
  8015  	YPosition string `json:"yPosition,omitempty"`
  8016  	// ForceSendFields is a list of field names (e.g. "IconClickThroughUrl") to
  8017  	// unconditionally include in API requests. By default, fields with empty or
  8018  	// default values are omitted from API requests. See
  8019  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8020  	// details.
  8021  	ForceSendFields []string `json:"-"`
  8022  	// NullFields is a list of field names (e.g. "IconClickThroughUrl") to include
  8023  	// in API requests with the JSON null value. By default, fields with empty
  8024  	// values are omitted from API requests. See
  8025  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8026  	NullFields []string `json:"-"`
  8027  }
  8028  
  8029  func (s *ObaIcon) MarshalJSON() ([]byte, error) {
  8030  	type NoMethod ObaIcon
  8031  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8032  }
  8033  
  8034  // ObjectFilter: Object Filter.
  8035  type ObjectFilter struct {
  8036  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  8037  	// "dfareporting#objectFilter".
  8038  	Kind string `json:"kind,omitempty"`
  8039  	// ObjectIds: Applicable when status is ASSIGNED. The user has access to
  8040  	// objects with these object IDs.
  8041  	ObjectIds googleapi.Int64s `json:"objectIds,omitempty"`
  8042  	// Status: Status of the filter. NONE means the user has access to none of the
  8043  	// objects. ALL means the user has access to all objects. ASSIGNED means the
  8044  	// user has access to the objects with IDs in the objectIds list.
  8045  	//
  8046  	// Possible values:
  8047  	//   "NONE" - Profile has access to none of the objects.
  8048  	//   "ASSIGNED" - Profile has access to only specific objects.
  8049  	//   "ALL" - Profile has access to all objects.
  8050  	Status string `json:"status,omitempty"`
  8051  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  8052  	// include in API requests. By default, fields with empty or default values are
  8053  	// omitted from API requests. See
  8054  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8055  	// details.
  8056  	ForceSendFields []string `json:"-"`
  8057  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  8058  	// with the JSON null value. By default, fields with empty values are omitted
  8059  	// from API requests. See
  8060  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8061  	NullFields []string `json:"-"`
  8062  }
  8063  
  8064  func (s *ObjectFilter) MarshalJSON() ([]byte, error) {
  8065  	type NoMethod ObjectFilter
  8066  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8067  }
  8068  
  8069  // OfflineUserAddressInfo: Identify a user by name and address.
  8070  type OfflineUserAddressInfo struct {
  8071  	// City: City of the address.
  8072  	City string `json:"city,omitempty"`
  8073  	// CountryCode: 2-letter country code in ISO-3166-1 alpha-2 of the user's
  8074  	// address.
  8075  	CountryCode string `json:"countryCode,omitempty"`
  8076  	// HashedFirstName: First name of the user, which is hashed as SHA-256 after
  8077  	// normalized (Lowercase all characters; Remove any extra spaces before, after,
  8078  	// and in between).
  8079  	HashedFirstName string `json:"hashedFirstName,omitempty"`
  8080  	// HashedLastName: Last name of the user, which is hashed as SHA-256 after
  8081  	// normalized (lower case only and no punctuation).
  8082  	HashedLastName string `json:"hashedLastName,omitempty"`
  8083  	// HashedStreetAddress: The street address of the user hashed using SHA-256
  8084  	// hash function after normalization (lower case only).
  8085  	HashedStreetAddress string `json:"hashedStreetAddress,omitempty"`
  8086  	// PostalCode: Postal code of the user's address.
  8087  	PostalCode string `json:"postalCode,omitempty"`
  8088  	// State: State code of the address.
  8089  	State string `json:"state,omitempty"`
  8090  	// ForceSendFields is a list of field names (e.g. "City") to unconditionally
  8091  	// include in API requests. By default, fields with empty or default values are
  8092  	// omitted from API requests. See
  8093  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8094  	// details.
  8095  	ForceSendFields []string `json:"-"`
  8096  	// NullFields is a list of field names (e.g. "City") to include in API requests
  8097  	// with the JSON null value. By default, fields with empty values are omitted
  8098  	// from API requests. See
  8099  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8100  	NullFields []string `json:"-"`
  8101  }
  8102  
  8103  func (s *OfflineUserAddressInfo) MarshalJSON() ([]byte, error) {
  8104  	type NoMethod OfflineUserAddressInfo
  8105  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8106  }
  8107  
  8108  // OffsetPosition: Offset Position.
  8109  type OffsetPosition struct {
  8110  	// Left: Offset distance from left side of an asset or a window.
  8111  	Left int64 `json:"left,omitempty"`
  8112  	// Top: Offset distance from top side of an asset or a window.
  8113  	Top int64 `json:"top,omitempty"`
  8114  	// ForceSendFields is a list of field names (e.g. "Left") to unconditionally
  8115  	// include in API requests. By default, fields with empty or default values are
  8116  	// omitted from API requests. See
  8117  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8118  	// details.
  8119  	ForceSendFields []string `json:"-"`
  8120  	// NullFields is a list of field names (e.g. "Left") to include in API requests
  8121  	// with the JSON null value. By default, fields with empty values are omitted
  8122  	// from API requests. See
  8123  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8124  	NullFields []string `json:"-"`
  8125  }
  8126  
  8127  func (s *OffsetPosition) MarshalJSON() ([]byte, error) {
  8128  	type NoMethod OffsetPosition
  8129  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8130  }
  8131  
  8132  // OmnitureSettings: Omniture Integration Settings.
  8133  type OmnitureSettings struct {
  8134  	// OmnitureCostDataEnabled: Whether placement cost data will be sent to
  8135  	// Omniture. This property can be enabled only if omnitureIntegrationEnabled is
  8136  	// true.
  8137  	OmnitureCostDataEnabled bool `json:"omnitureCostDataEnabled,omitempty"`
  8138  	// OmnitureIntegrationEnabled: Whether Omniture integration is enabled. This
  8139  	// property can be enabled only when the "Advanced Ad Serving" account setting
  8140  	// is enabled.
  8141  	OmnitureIntegrationEnabled bool `json:"omnitureIntegrationEnabled,omitempty"`
  8142  	// ForceSendFields is a list of field names (e.g. "OmnitureCostDataEnabled") to
  8143  	// unconditionally include in API requests. By default, fields with empty or
  8144  	// default values are omitted from API requests. See
  8145  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8146  	// details.
  8147  	ForceSendFields []string `json:"-"`
  8148  	// NullFields is a list of field names (e.g. "OmnitureCostDataEnabled") to
  8149  	// include in API requests with the JSON null value. By default, fields with
  8150  	// empty values are omitted from API requests. See
  8151  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8152  	NullFields []string `json:"-"`
  8153  }
  8154  
  8155  func (s *OmnitureSettings) MarshalJSON() ([]byte, error) {
  8156  	type NoMethod OmnitureSettings
  8157  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8158  }
  8159  
  8160  // OperatingSystem: Contains information about an operating system that can be
  8161  // targeted by ads.
  8162  type OperatingSystem struct {
  8163  	// DartId: DART ID of this operating system. This is the ID used for targeting.
  8164  	DartId int64 `json:"dartId,omitempty,string"`
  8165  	// Desktop: Whether this operating system is for desktop.
  8166  	Desktop bool `json:"desktop,omitempty"`
  8167  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  8168  	// "dfareporting#operatingSystem".
  8169  	Kind string `json:"kind,omitempty"`
  8170  	// Mobile: Whether this operating system is for mobile.
  8171  	Mobile bool `json:"mobile,omitempty"`
  8172  	// Name: Name of this operating system.
  8173  	Name string `json:"name,omitempty"`
  8174  
  8175  	// ServerResponse contains the HTTP response code and headers from the server.
  8176  	googleapi.ServerResponse `json:"-"`
  8177  	// ForceSendFields is a list of field names (e.g. "DartId") to unconditionally
  8178  	// include in API requests. By default, fields with empty or default values are
  8179  	// omitted from API requests. See
  8180  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8181  	// details.
  8182  	ForceSendFields []string `json:"-"`
  8183  	// NullFields is a list of field names (e.g. "DartId") to include in API
  8184  	// requests with the JSON null value. By default, fields with empty values are
  8185  	// omitted from API requests. See
  8186  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8187  	NullFields []string `json:"-"`
  8188  }
  8189  
  8190  func (s *OperatingSystem) MarshalJSON() ([]byte, error) {
  8191  	type NoMethod OperatingSystem
  8192  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8193  }
  8194  
  8195  // OperatingSystemVersion: Contains information about a particular version of
  8196  // an operating system that can be targeted by ads.
  8197  type OperatingSystemVersion struct {
  8198  	// Id: ID of this operating system version.
  8199  	Id int64 `json:"id,omitempty,string"`
  8200  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  8201  	// "dfareporting#operatingSystemVersion".
  8202  	Kind string `json:"kind,omitempty"`
  8203  	// MajorVersion: Major version (leftmost number) of this operating system
  8204  	// version.
  8205  	MajorVersion string `json:"majorVersion,omitempty"`
  8206  	// MinorVersion: Minor version (number after the first dot) of this operating
  8207  	// system version.
  8208  	MinorVersion string `json:"minorVersion,omitempty"`
  8209  	// Name: Name of this operating system version.
  8210  	Name string `json:"name,omitempty"`
  8211  	// OperatingSystem: Operating system of this operating system version.
  8212  	OperatingSystem *OperatingSystem `json:"operatingSystem,omitempty"`
  8213  
  8214  	// ServerResponse contains the HTTP response code and headers from the server.
  8215  	googleapi.ServerResponse `json:"-"`
  8216  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  8217  	// include in API requests. By default, fields with empty or default values are
  8218  	// omitted from API requests. See
  8219  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8220  	// details.
  8221  	ForceSendFields []string `json:"-"`
  8222  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  8223  	// with the JSON null value. By default, fields with empty values are omitted
  8224  	// from API requests. See
  8225  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8226  	NullFields []string `json:"-"`
  8227  }
  8228  
  8229  func (s *OperatingSystemVersion) MarshalJSON() ([]byte, error) {
  8230  	type NoMethod OperatingSystemVersion
  8231  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8232  }
  8233  
  8234  // OperatingSystemVersionsListResponse: Operating System Version List Response
  8235  type OperatingSystemVersionsListResponse struct {
  8236  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  8237  	// "dfareporting#operatingSystemVersionsListResponse".
  8238  	Kind string `json:"kind,omitempty"`
  8239  	// OperatingSystemVersions: Operating system version collection.
  8240  	OperatingSystemVersions []*OperatingSystemVersion `json:"operatingSystemVersions,omitempty"`
  8241  
  8242  	// ServerResponse contains the HTTP response code and headers from the server.
  8243  	googleapi.ServerResponse `json:"-"`
  8244  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  8245  	// include in API requests. By default, fields with empty or default values are
  8246  	// omitted from API requests. See
  8247  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8248  	// details.
  8249  	ForceSendFields []string `json:"-"`
  8250  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  8251  	// with the JSON null value. By default, fields with empty values are omitted
  8252  	// from API requests. See
  8253  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8254  	NullFields []string `json:"-"`
  8255  }
  8256  
  8257  func (s *OperatingSystemVersionsListResponse) MarshalJSON() ([]byte, error) {
  8258  	type NoMethod OperatingSystemVersionsListResponse
  8259  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8260  }
  8261  
  8262  // OperatingSystemsListResponse: Operating System List Response
  8263  type OperatingSystemsListResponse struct {
  8264  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  8265  	// "dfareporting#operatingSystemsListResponse".
  8266  	Kind string `json:"kind,omitempty"`
  8267  	// OperatingSystems: Operating system collection.
  8268  	OperatingSystems []*OperatingSystem `json:"operatingSystems,omitempty"`
  8269  
  8270  	// ServerResponse contains the HTTP response code and headers from the server.
  8271  	googleapi.ServerResponse `json:"-"`
  8272  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  8273  	// include in API requests. By default, fields with empty or default values are
  8274  	// omitted from API requests. See
  8275  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8276  	// details.
  8277  	ForceSendFields []string `json:"-"`
  8278  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  8279  	// with the JSON null value. By default, fields with empty values are omitted
  8280  	// from API requests. See
  8281  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8282  	NullFields []string `json:"-"`
  8283  }
  8284  
  8285  func (s *OperatingSystemsListResponse) MarshalJSON() ([]byte, error) {
  8286  	type NoMethod OperatingSystemsListResponse
  8287  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8288  }
  8289  
  8290  // OptimizationActivity: Creative optimization activity.
  8291  type OptimizationActivity struct {
  8292  	// FloodlightActivityId: Floodlight activity ID of this optimization activity.
  8293  	// This is a required field.
  8294  	FloodlightActivityId int64 `json:"floodlightActivityId,omitempty,string"`
  8295  	// FloodlightActivityIdDimensionValue: Dimension value for the ID of the
  8296  	// floodlight activity. This is a read-only, auto-generated field.
  8297  	FloodlightActivityIdDimensionValue *DimensionValue `json:"floodlightActivityIdDimensionValue,omitempty"`
  8298  	// Weight: Weight associated with this optimization. The weight assigned will
  8299  	// be understood in proportion to the weights assigned to the other
  8300  	// optimization activities. Value must be greater than or equal to 1.
  8301  	Weight int64 `json:"weight,omitempty"`
  8302  	// ForceSendFields is a list of field names (e.g. "FloodlightActivityId") to
  8303  	// unconditionally include in API requests. By default, fields with empty or
  8304  	// default values are omitted from API requests. See
  8305  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8306  	// details.
  8307  	ForceSendFields []string `json:"-"`
  8308  	// NullFields is a list of field names (e.g. "FloodlightActivityId") to include
  8309  	// in API requests with the JSON null value. By default, fields with empty
  8310  	// values are omitted from API requests. See
  8311  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8312  	NullFields []string `json:"-"`
  8313  }
  8314  
  8315  func (s *OptimizationActivity) MarshalJSON() ([]byte, error) {
  8316  	type NoMethod OptimizationActivity
  8317  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8318  }
  8319  
  8320  // Order: Describes properties of a Planning order.
  8321  type Order struct {
  8322  	// AccountId: Account ID of this order.
  8323  	AccountId int64 `json:"accountId,omitempty,string"`
  8324  	// AdvertiserId: Advertiser ID of this order.
  8325  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  8326  	// ApproverUserProfileIds: IDs for users that have to approve documents created
  8327  	// for this order.
  8328  	ApproverUserProfileIds googleapi.Int64s `json:"approverUserProfileIds,omitempty"`
  8329  	// BuyerInvoiceId: Buyer invoice ID associated with this order.
  8330  	BuyerInvoiceId string `json:"buyerInvoiceId,omitempty"`
  8331  	// BuyerOrganizationName: Name of the buyer organization.
  8332  	BuyerOrganizationName string `json:"buyerOrganizationName,omitempty"`
  8333  	// Comments: Comments in this order.
  8334  	Comments string `json:"comments,omitempty"`
  8335  	// Contacts: Contacts for this order.
  8336  	Contacts []*OrderContact `json:"contacts,omitempty"`
  8337  	// Id: ID of this order. This is a read-only, auto-generated field.
  8338  	Id int64 `json:"id,omitempty,string"`
  8339  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  8340  	// "dfareporting#order".
  8341  	Kind string `json:"kind,omitempty"`
  8342  	// LastModifiedInfo: Information about the most recent modification of this
  8343  	// order.
  8344  	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
  8345  	// Name: Name of this order.
  8346  	Name string `json:"name,omitempty"`
  8347  	// Notes: Notes of this order.
  8348  	Notes string `json:"notes,omitempty"`
  8349  	// PlanningTermId: ID of the terms and conditions template used in this order.
  8350  	PlanningTermId int64 `json:"planningTermId,omitempty,string"`
  8351  	// ProjectId: Project ID of this order.
  8352  	ProjectId int64 `json:"projectId,omitempty,string"`
  8353  	// SellerOrderId: Seller order ID associated with this order.
  8354  	SellerOrderId string `json:"sellerOrderId,omitempty"`
  8355  	// SellerOrganizationName: Name of the seller organization.
  8356  	SellerOrganizationName string `json:"sellerOrganizationName,omitempty"`
  8357  	// SiteId: Site IDs this order is associated with.
  8358  	SiteId googleapi.Int64s `json:"siteId,omitempty"`
  8359  	// SiteNames: Free-form site names this order is associated with.
  8360  	SiteNames []string `json:"siteNames,omitempty"`
  8361  	// SubaccountId: Subaccount ID of this order.
  8362  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  8363  	// TermsAndConditions: Terms and conditions of this order.
  8364  	TermsAndConditions string `json:"termsAndConditions,omitempty"`
  8365  
  8366  	// ServerResponse contains the HTTP response code and headers from the server.
  8367  	googleapi.ServerResponse `json:"-"`
  8368  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  8369  	// unconditionally include in API requests. By default, fields with empty or
  8370  	// default values are omitted from API requests. See
  8371  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8372  	// details.
  8373  	ForceSendFields []string `json:"-"`
  8374  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  8375  	// requests with the JSON null value. By default, fields with empty values are
  8376  	// omitted from API requests. See
  8377  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8378  	NullFields []string `json:"-"`
  8379  }
  8380  
  8381  func (s *Order) MarshalJSON() ([]byte, error) {
  8382  	type NoMethod Order
  8383  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8384  }
  8385  
  8386  // OrderContact: Contact of an order.
  8387  type OrderContact struct {
  8388  	// ContactInfo: Free-form information about this contact. It could be any
  8389  	// information related to this contact in addition to type, title, name, and
  8390  	// signature user profile ID.
  8391  	ContactInfo string `json:"contactInfo,omitempty"`
  8392  	// ContactName: Name of this contact.
  8393  	ContactName string `json:"contactName,omitempty"`
  8394  	// ContactTitle: Title of this contact.
  8395  	ContactTitle string `json:"contactTitle,omitempty"`
  8396  	// ContactType: Type of this contact.
  8397  	//
  8398  	// Possible values:
  8399  	//   "PLANNING_ORDER_CONTACT_BUYER_CONTACT"
  8400  	//   "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT"
  8401  	//   "PLANNING_ORDER_CONTACT_SELLER_CONTACT"
  8402  	ContactType string `json:"contactType,omitempty"`
  8403  	// SignatureUserProfileId: ID of the user profile containing the signature that
  8404  	// will be embedded into order documents.
  8405  	SignatureUserProfileId int64 `json:"signatureUserProfileId,omitempty,string"`
  8406  	// ForceSendFields is a list of field names (e.g. "ContactInfo") to
  8407  	// unconditionally include in API requests. By default, fields with empty or
  8408  	// default values are omitted from API requests. See
  8409  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8410  	// details.
  8411  	ForceSendFields []string `json:"-"`
  8412  	// NullFields is a list of field names (e.g. "ContactInfo") to include in API
  8413  	// requests with the JSON null value. By default, fields with empty values are
  8414  	// omitted from API requests. See
  8415  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8416  	NullFields []string `json:"-"`
  8417  }
  8418  
  8419  func (s *OrderContact) MarshalJSON() ([]byte, error) {
  8420  	type NoMethod OrderContact
  8421  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8422  }
  8423  
  8424  // OrdersListResponse: Order List Response
  8425  type OrdersListResponse struct {
  8426  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  8427  	// "dfareporting#ordersListResponse".
  8428  	Kind string `json:"kind,omitempty"`
  8429  	// NextPageToken: Pagination token to be used for the next list operation.
  8430  	NextPageToken string `json:"nextPageToken,omitempty"`
  8431  	// Orders: Order collection.
  8432  	Orders []*Order `json:"orders,omitempty"`
  8433  
  8434  	// ServerResponse contains the HTTP response code and headers from the server.
  8435  	googleapi.ServerResponse `json:"-"`
  8436  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  8437  	// include in API requests. By default, fields with empty or default values are
  8438  	// omitted from API requests. See
  8439  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8440  	// details.
  8441  	ForceSendFields []string `json:"-"`
  8442  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  8443  	// with the JSON null value. By default, fields with empty values are omitted
  8444  	// from API requests. See
  8445  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8446  	NullFields []string `json:"-"`
  8447  }
  8448  
  8449  func (s *OrdersListResponse) MarshalJSON() ([]byte, error) {
  8450  	type NoMethod OrdersListResponse
  8451  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8452  }
  8453  
  8454  // PathFilter: Represents a DfaReporting path filter.
  8455  type PathFilter struct {
  8456  	// EventFilters: Event filters in path report.
  8457  	EventFilters []*EventFilter `json:"eventFilters,omitempty"`
  8458  	// Kind: The kind of resource this is, in this case dfareporting#pathFilter.
  8459  	Kind string `json:"kind,omitempty"`
  8460  	// PathMatchPosition: Determines how the 'value' field is matched when
  8461  	// filtering. If not specified, defaults to EXACT. If set to
  8462  	// WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable length
  8463  	// character sequences, and it can be escaped with a backslash. Note, only paid
  8464  	// search dimensions ('dfa:paidSearch*') allow a matchType other than EXACT.
  8465  	//
  8466  	// Possible values:
  8467  	//   "PATH_MATCH_POSITION_UNSPECIFIED"
  8468  	//   "ANY"
  8469  	//   "FIRST"
  8470  	//   "LAST"
  8471  	PathMatchPosition string `json:"pathMatchPosition,omitempty"`
  8472  	// ForceSendFields is a list of field names (e.g. "EventFilters") to
  8473  	// unconditionally include in API requests. By default, fields with empty or
  8474  	// default values are omitted from API requests. See
  8475  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8476  	// details.
  8477  	ForceSendFields []string `json:"-"`
  8478  	// NullFields is a list of field names (e.g. "EventFilters") to include in API
  8479  	// requests with the JSON null value. By default, fields with empty values are
  8480  	// omitted from API requests. See
  8481  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8482  	NullFields []string `json:"-"`
  8483  }
  8484  
  8485  func (s *PathFilter) MarshalJSON() ([]byte, error) {
  8486  	type NoMethod PathFilter
  8487  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8488  }
  8489  
  8490  // PathReportCompatibleFields: Represents fields that are compatible to be
  8491  // selected for a report of type "PATH".
  8492  type PathReportCompatibleFields struct {
  8493  	// ChannelGroupings: Dimensions which are compatible to be selected in the
  8494  	// "channelGroupings" section of the report.
  8495  	ChannelGroupings []*Dimension `json:"channelGroupings,omitempty"`
  8496  	// Dimensions: Dimensions which are compatible to be selected in the
  8497  	// "dimensions" section of the report.
  8498  	Dimensions []*Dimension `json:"dimensions,omitempty"`
  8499  	// Kind: The kind of resource this is, in this case
  8500  	// dfareporting#pathReportCompatibleFields.
  8501  	Kind string `json:"kind,omitempty"`
  8502  	// Metrics: Metrics which are compatible to be selected in the "metricNames"
  8503  	// section of the report.
  8504  	Metrics []*Metric `json:"metrics,omitempty"`
  8505  	// PathFilters: Dimensions which are compatible to be selected in the
  8506  	// "pathFilters" section of the report.
  8507  	PathFilters []*Dimension `json:"pathFilters,omitempty"`
  8508  	// ForceSendFields is a list of field names (e.g. "ChannelGroupings") to
  8509  	// unconditionally include in API requests. By default, fields with empty or
  8510  	// default values are omitted from API requests. See
  8511  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8512  	// details.
  8513  	ForceSendFields []string `json:"-"`
  8514  	// NullFields is a list of field names (e.g. "ChannelGroupings") to include in
  8515  	// API requests with the JSON null value. By default, fields with empty values
  8516  	// are omitted from API requests. See
  8517  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8518  	NullFields []string `json:"-"`
  8519  }
  8520  
  8521  func (s *PathReportCompatibleFields) MarshalJSON() ([]byte, error) {
  8522  	type NoMethod PathReportCompatibleFields
  8523  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8524  }
  8525  
  8526  // PathReportDimensionValue: Represents a PathReportDimensionValue resource.
  8527  type PathReportDimensionValue struct {
  8528  	// DimensionName: The name of the dimension.
  8529  	DimensionName string `json:"dimensionName,omitempty"`
  8530  	// Ids: The possible ID's associated with the value if available.
  8531  	Ids []string `json:"ids,omitempty"`
  8532  	// Kind: The kind of resource this is, in this case
  8533  	// dfareporting#pathReportDimensionValue.
  8534  	Kind string `json:"kind,omitempty"`
  8535  	// MatchType: Determines how the 'value' field is matched when filtering. If
  8536  	// not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, '*' is
  8537  	// allowed as a placeholder for variable length character sequences, and it can
  8538  	// be escaped with a backslash. Note, only paid search dimensions
  8539  	// ('dfa:paidSearch*') allow a matchType other than EXACT.
  8540  	//
  8541  	// Possible values:
  8542  	//   "EXACT"
  8543  	//   "BEGINS_WITH"
  8544  	//   "CONTAINS"
  8545  	//   "WILDCARD_EXPRESSION"
  8546  	MatchType string `json:"matchType,omitempty"`
  8547  	// Values: The possible values of the dimension.
  8548  	Values []string `json:"values,omitempty"`
  8549  	// ForceSendFields is a list of field names (e.g. "DimensionName") to
  8550  	// unconditionally include in API requests. By default, fields with empty or
  8551  	// default values are omitted from API requests. See
  8552  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8553  	// details.
  8554  	ForceSendFields []string `json:"-"`
  8555  	// NullFields is a list of field names (e.g. "DimensionName") to include in API
  8556  	// requests with the JSON null value. By default, fields with empty values are
  8557  	// omitted from API requests. See
  8558  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8559  	NullFields []string `json:"-"`
  8560  }
  8561  
  8562  func (s *PathReportDimensionValue) MarshalJSON() ([]byte, error) {
  8563  	type NoMethod PathReportDimensionValue
  8564  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8565  }
  8566  
  8567  // PathToConversionReportCompatibleFields: Represents fields that are
  8568  // compatible to be selected for a report of type "PATH_TO_CONVERSION".
  8569  type PathToConversionReportCompatibleFields struct {
  8570  	// ConversionDimensions: Conversion dimensions which are compatible to be
  8571  	// selected in the "conversionDimensions" section of the report.
  8572  	ConversionDimensions []*Dimension `json:"conversionDimensions,omitempty"`
  8573  	// CustomFloodlightVariables: Custom floodlight variables which are compatible
  8574  	// to be selected in the "customFloodlightVariables" section of the report.
  8575  	CustomFloodlightVariables []*Dimension `json:"customFloodlightVariables,omitempty"`
  8576  	// Kind: The kind of resource this is, in this case
  8577  	// dfareporting#pathToConversionReportCompatibleFields.
  8578  	Kind string `json:"kind,omitempty"`
  8579  	// Metrics: Metrics which are compatible to be selected in the "metricNames"
  8580  	// section of the report.
  8581  	Metrics []*Metric `json:"metrics,omitempty"`
  8582  	// PerInteractionDimensions: Per-interaction dimensions which are compatible to
  8583  	// be selected in the "perInteractionDimensions" section of the report.
  8584  	PerInteractionDimensions []*Dimension `json:"perInteractionDimensions,omitempty"`
  8585  	// ForceSendFields is a list of field names (e.g. "ConversionDimensions") to
  8586  	// unconditionally include in API requests. By default, fields with empty or
  8587  	// default values are omitted from API requests. See
  8588  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8589  	// details.
  8590  	ForceSendFields []string `json:"-"`
  8591  	// NullFields is a list of field names (e.g. "ConversionDimensions") to include
  8592  	// in API requests with the JSON null value. By default, fields with empty
  8593  	// values are omitted from API requests. See
  8594  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8595  	NullFields []string `json:"-"`
  8596  }
  8597  
  8598  func (s *PathToConversionReportCompatibleFields) MarshalJSON() ([]byte, error) {
  8599  	type NoMethod PathToConversionReportCompatibleFields
  8600  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8601  }
  8602  
  8603  // Placement: Contains properties of a placement.
  8604  type Placement struct {
  8605  	// AccountId: Account ID of this placement. This field can be left blank.
  8606  	AccountId int64 `json:"accountId,omitempty,string"`
  8607  	// ActiveStatus: Whether this placement is active, inactive, archived or
  8608  	// permanently archived.
  8609  	//
  8610  	// Possible values:
  8611  	//   "PLACEMENT_STATUS_UNKNOWN"
  8612  	//   "PLACEMENT_STATUS_ACTIVE"
  8613  	//   "PLACEMENT_STATUS_INACTIVE"
  8614  	//   "PLACEMENT_STATUS_ARCHIVED"
  8615  	//   "PLACEMENT_STATUS_PERMANENTLY_ARCHIVED"
  8616  	ActiveStatus string `json:"activeStatus,omitempty"`
  8617  	// AdBlockingOptOut: Whether this placement opts out of ad blocking. When true,
  8618  	// ad blocking is disabled for this placement. When false, the campaign and
  8619  	// site settings take effect.
  8620  	AdBlockingOptOut bool `json:"adBlockingOptOut,omitempty"`
  8621  	// AdditionalSizes: Additional sizes associated with this placement. When
  8622  	// inserting or updating a placement, only the size ID field is used.
  8623  	AdditionalSizes []*Size `json:"additionalSizes,omitempty"`
  8624  	// AdvertiserId: Advertiser ID of this placement. This field can be left blank.
  8625  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  8626  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
  8627  	// This is a read-only, auto-generated field.
  8628  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  8629  	// CampaignId: Campaign ID of this placement. This field is a required field on
  8630  	// insertion.
  8631  	CampaignId int64 `json:"campaignId,omitempty,string"`
  8632  	// CampaignIdDimensionValue: Dimension value for the ID of the campaign. This
  8633  	// is a read-only, auto-generated field.
  8634  	CampaignIdDimensionValue *DimensionValue `json:"campaignIdDimensionValue,omitempty"`
  8635  	// Comment: Comments for this placement.
  8636  	Comment string `json:"comment,omitempty"`
  8637  	// Compatibility: Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL
  8638  	// refer to rendering on desktop, on mobile devices or in mobile apps for
  8639  	// regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no
  8640  	// longer allowed for new placement insertions. Instead, use DISPLAY or
  8641  	// DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video
  8642  	// ads developed with the VAST standard. This field is required on insertion.
  8643  	//
  8644  	// Possible values:
  8645  	//   "DISPLAY"
  8646  	//   "DISPLAY_INTERSTITIAL"
  8647  	//   "APP" - Deprecated enum value. No longer supported.
  8648  	//   "APP_INTERSTITIAL" - Deprecated enum value. No longer supported.
  8649  	//   "IN_STREAM_VIDEO"
  8650  	//   "IN_STREAM_AUDIO"
  8651  	Compatibility string `json:"compatibility,omitempty"`
  8652  	// ContentCategoryId: ID of the content category assigned to this placement.
  8653  	ContentCategoryId int64 `json:"contentCategoryId,omitempty,string"`
  8654  	// ConversionDomainOverride: Optional. Conversion domain overrides for a
  8655  	// placement.
  8656  	ConversionDomainOverride *PlacementConversionDomainOverride `json:"conversionDomainOverride,omitempty"`
  8657  	// CreateInfo: Information about the creation of this placement. This is a
  8658  	// read-only field.
  8659  	CreateInfo *LastModifiedInfo `json:"createInfo,omitempty"`
  8660  	// DirectorySiteId: Directory site ID of this placement. On insert, you must
  8661  	// set either this field or the siteId field to specify the site associated
  8662  	// with this placement. This is a required field that is read-only after
  8663  	// insertion.
  8664  	DirectorySiteId int64 `json:"directorySiteId,omitempty,string"`
  8665  	// DirectorySiteIdDimensionValue: Dimension value for the ID of the directory
  8666  	// site. This is a read-only, auto-generated field.
  8667  	DirectorySiteIdDimensionValue *DimensionValue `json:"directorySiteIdDimensionValue,omitempty"`
  8668  	// ExternalId: External ID for this placement.
  8669  	ExternalId string `json:"externalId,omitempty"`
  8670  	// Id: ID of this placement. This is a read-only, auto-generated field.
  8671  	Id int64 `json:"id,omitempty,string"`
  8672  	// IdDimensionValue: Dimension value for the ID of this placement. This is a
  8673  	// read-only, auto-generated field.
  8674  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  8675  	// KeyName: Key name of this placement. This is a read-only, auto-generated
  8676  	// field.
  8677  	KeyName string `json:"keyName,omitempty"`
  8678  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  8679  	// "dfareporting#placement".
  8680  	Kind string `json:"kind,omitempty"`
  8681  	// LastModifiedInfo: Information about the most recent modification of this
  8682  	// placement. This is a read-only field.
  8683  	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
  8684  	// LookbackConfiguration: Lookback window settings for this placement.
  8685  	LookbackConfiguration *LookbackConfiguration `json:"lookbackConfiguration,omitempty"`
  8686  	// Name: Name of this placement.This is a required field and must be less than
  8687  	// or equal to 512 characters long.
  8688  	Name string `json:"name,omitempty"`
  8689  	// PartnerWrappingData: Measurement partner provided settings for a wrapped
  8690  	// placement.
  8691  	PartnerWrappingData *MeasurementPartnerWrappingData `json:"partnerWrappingData,omitempty"`
  8692  	// PaymentApproved: Whether payment was approved for this placement. This is a
  8693  	// read-only field relevant only to publisher-paid placements.
  8694  	PaymentApproved bool `json:"paymentApproved,omitempty"`
  8695  	// PaymentSource: Payment source for this placement. This is a required field
  8696  	// that is read-only after insertion.
  8697  	//
  8698  	// Possible values:
  8699  	//   "PLACEMENT_AGENCY_PAID"
  8700  	//   "PLACEMENT_PUBLISHER_PAID"
  8701  	PaymentSource string `json:"paymentSource,omitempty"`
  8702  	// PlacementGroupId: ID of this placement's group, if applicable.
  8703  	PlacementGroupId int64 `json:"placementGroupId,omitempty,string"`
  8704  	// PlacementGroupIdDimensionValue: Dimension value for the ID of the placement
  8705  	// group. This is a read-only, auto-generated field.
  8706  	PlacementGroupIdDimensionValue *DimensionValue `json:"placementGroupIdDimensionValue,omitempty"`
  8707  	// PlacementStrategyId: ID of the placement strategy assigned to this
  8708  	// placement.
  8709  	PlacementStrategyId int64 `json:"placementStrategyId,omitempty,string"`
  8710  	// PricingSchedule: Pricing schedule of this placement. This field is required
  8711  	// on insertion, specifically subfields startDate, endDate and pricingType.
  8712  	PricingSchedule *PricingSchedule `json:"pricingSchedule,omitempty"`
  8713  	// Primary: Whether this placement is the primary placement of a roadblock
  8714  	// (placement group). You cannot change this field from true to false. Setting
  8715  	// this field to true will automatically set the primary field on the original
  8716  	// primary placement of the roadblock to false, and it will automatically set
  8717  	// the roadblock's primaryPlacementId field to the ID of this placement.
  8718  	Primary bool `json:"primary,omitempty"`
  8719  	// PublisherUpdateInfo: Information about the last publisher update. This is a
  8720  	// read-only field.
  8721  	PublisherUpdateInfo *LastModifiedInfo `json:"publisherUpdateInfo,omitempty"`
  8722  	// SiteId: Site ID associated with this placement. On insert, you must set
  8723  	// either this field or the directorySiteId field to specify the site
  8724  	// associated with this placement. This is a required field that is read-only
  8725  	// after insertion.
  8726  	SiteId int64 `json:"siteId,omitempty,string"`
  8727  	// SiteIdDimensionValue: Dimension value for the ID of the site. This is a
  8728  	// read-only, auto-generated field.
  8729  	SiteIdDimensionValue *DimensionValue `json:"siteIdDimensionValue,omitempty"`
  8730  	// Size: Size associated with this placement. When inserting or updating a
  8731  	// placement, only the size ID field is used. This field is required on
  8732  	// insertion.
  8733  	Size *Size `json:"size,omitempty"`
  8734  	// SslRequired: Whether creatives assigned to this placement must be
  8735  	// SSL-compliant.
  8736  	SslRequired bool `json:"sslRequired,omitempty"`
  8737  	// Status: Third-party placement status.
  8738  	//
  8739  	// Possible values:
  8740  	//   "PENDING_REVIEW" - Placement is not yet reviewed by publisher.
  8741  	//   "PAYMENT_ACCEPTED" - Placement Ad Serving fee is accepted by publisher
  8742  	//   "PAYMENT_REJECTED" - Placement Ad Serving fee is rejected by publisher
  8743  	//   "ACKNOWLEDGE_REJECTION" - Advertisers has accepted rejection of placement
  8744  	// ad serving fee. This will suppress future notification on DDMM UI
  8745  	//   "ACKNOWLEDGE_ACCEPTANCE" - Advertisers has accepted acceptance of
  8746  	// placement ad serving fee. This will suppress future notification on DDMM UI
  8747  	//   "DRAFT" - Advertisers is still working on placement not yet ready for
  8748  	// Publisher review; default status for pub-paid placements
  8749  	Status string `json:"status,omitempty"`
  8750  	// SubaccountId: Subaccount ID of this placement. This field can be left blank.
  8751  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  8752  	// TagFormats: Tag formats to generate for this placement. This field is
  8753  	// required on insertion. Acceptable values are: - "PLACEMENT_TAG_STANDARD" -
  8754  	// "PLACEMENT_TAG_IFRAME_JAVASCRIPT" - "PLACEMENT_TAG_IFRAME_ILAYER" -
  8755  	// "PLACEMENT_TAG_INTERNAL_REDIRECT" - "PLACEMENT_TAG_JAVASCRIPT" -
  8756  	// "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT" -
  8757  	// "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT" -
  8758  	// "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT" - "PLACEMENT_TAG_CLICK_COMMANDS" -
  8759  	// "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH" -
  8760  	// "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3" -
  8761  	// "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4" - "PLACEMENT_TAG_TRACKING" -
  8762  	// "PLACEMENT_TAG_TRACKING_IFRAME" - "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
  8763  	//
  8764  	// Possible values:
  8765  	//   "PLACEMENT_TAG_STANDARD"
  8766  	//   "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
  8767  	//   "PLACEMENT_TAG_IFRAME_ILAYER"
  8768  	//   "PLACEMENT_TAG_INTERNAL_REDIRECT"
  8769  	//   "PLACEMENT_TAG_JAVASCRIPT"
  8770  	//   "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
  8771  	//   "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
  8772  	//   "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
  8773  	//   "PLACEMENT_TAG_CLICK_COMMANDS"
  8774  	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
  8775  	//   "PLACEMENT_TAG_TRACKING"
  8776  	//   "PLACEMENT_TAG_TRACKING_IFRAME"
  8777  	//   "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
  8778  	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
  8779  	//   "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
  8780  	//   "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
  8781  	//   "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
  8782  	//   "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
  8783  	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
  8784  	//   "PLACEMENT_TAG_TRACKING_THIRD_PARTY_MEASUREMENT"
  8785  	TagFormats []string `json:"tagFormats,omitempty"`
  8786  	// TagSetting: Tag settings for this placement.
  8787  	TagSetting *TagSetting `json:"tagSetting,omitempty"`
  8788  	// VideoActiveViewOptOut: Whether Verification and ActiveView are disabled for
  8789  	// in-stream video creatives for this placement. The same setting
  8790  	// videoActiveViewOptOut exists on the site level -- the opt out occurs if
  8791  	// either of these settings are true. These settings are distinct from
  8792  	// DirectorySites.settings.activeViewOptOut or
  8793  	// Sites.siteSettings.activeViewOptOut which only apply to display ads.
  8794  	// However, Accounts.activeViewOptOut opts out both video traffic, as well as
  8795  	// display ads, from Verification and ActiveView.
  8796  	VideoActiveViewOptOut bool `json:"videoActiveViewOptOut,omitempty"`
  8797  	// VideoSettings: A collection of settings which affect video creatives served
  8798  	// through this placement. Applicable to placements with IN_STREAM_VIDEO
  8799  	// compatibility.
  8800  	VideoSettings *VideoSettings `json:"videoSettings,omitempty"`
  8801  	// VpaidAdapterChoice: VPAID adapter setting for this placement. Controls which
  8802  	// VPAID format the measurement adapter will use for in-stream video creatives
  8803  	// assigned to this placement. *Note:* Flash is no longer supported. This field
  8804  	// now defaults to HTML5 when the following values are provided: FLASH, BOTH.
  8805  	//
  8806  	// Possible values:
  8807  	//   "DEFAULT" - DEFAULT means Google chooses which adapter, if any, to serve.
  8808  	//   "FLASH"
  8809  	//   "HTML5"
  8810  	//   "BOTH"
  8811  	VpaidAdapterChoice string `json:"vpaidAdapterChoice,omitempty"`
  8812  	// WrappingOptOut: Whether this placement opts out of tag wrapping.
  8813  	WrappingOptOut bool `json:"wrappingOptOut,omitempty"`
  8814  
  8815  	// ServerResponse contains the HTTP response code and headers from the server.
  8816  	googleapi.ServerResponse `json:"-"`
  8817  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  8818  	// unconditionally include in API requests. By default, fields with empty or
  8819  	// default values are omitted from API requests. See
  8820  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8821  	// details.
  8822  	ForceSendFields []string `json:"-"`
  8823  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  8824  	// requests with the JSON null value. By default, fields with empty values are
  8825  	// omitted from API requests. See
  8826  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8827  	NullFields []string `json:"-"`
  8828  }
  8829  
  8830  func (s *Placement) MarshalJSON() ([]byte, error) {
  8831  	type NoMethod Placement
  8832  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8833  }
  8834  
  8835  // PlacementAssignment: Placement Assignment.
  8836  type PlacementAssignment struct {
  8837  	// Active: Whether this placement assignment is active. When true, the
  8838  	// placement will be included in the ad's rotation.
  8839  	Active bool `json:"active,omitempty"`
  8840  	// PlacementId: ID of the placement to be assigned. This is a required field.
  8841  	PlacementId int64 `json:"placementId,omitempty,string"`
  8842  	// PlacementIdDimensionValue: Dimension value for the ID of the placement. This
  8843  	// is a read-only, auto-generated field.
  8844  	PlacementIdDimensionValue *DimensionValue `json:"placementIdDimensionValue,omitempty"`
  8845  	// SslRequired: Whether the placement to be assigned requires SSL. This is a
  8846  	// read-only field that is auto-generated when the ad is inserted or updated.
  8847  	SslRequired bool `json:"sslRequired,omitempty"`
  8848  	// ForceSendFields is a list of field names (e.g. "Active") to unconditionally
  8849  	// include in API requests. By default, fields with empty or default values are
  8850  	// omitted from API requests. See
  8851  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8852  	// details.
  8853  	ForceSendFields []string `json:"-"`
  8854  	// NullFields is a list of field names (e.g. "Active") to include in API
  8855  	// requests with the JSON null value. By default, fields with empty values are
  8856  	// omitted from API requests. See
  8857  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8858  	NullFields []string `json:"-"`
  8859  }
  8860  
  8861  func (s *PlacementAssignment) MarshalJSON() ([]byte, error) {
  8862  	type NoMethod PlacementAssignment
  8863  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8864  }
  8865  
  8866  type PlacementConversionDomainOverride struct {
  8867  	ConversionDomains []*PlacementSingleConversionDomain `json:"conversionDomains,omitempty"`
  8868  	// ForceSendFields is a list of field names (e.g. "ConversionDomains") to
  8869  	// unconditionally include in API requests. By default, fields with empty or
  8870  	// default values are omitted from API requests. See
  8871  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8872  	// details.
  8873  	ForceSendFields []string `json:"-"`
  8874  	// NullFields is a list of field names (e.g. "ConversionDomains") to include in
  8875  	// API requests with the JSON null value. By default, fields with empty values
  8876  	// are omitted from API requests. See
  8877  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  8878  	NullFields []string `json:"-"`
  8879  }
  8880  
  8881  func (s *PlacementConversionDomainOverride) MarshalJSON() ([]byte, error) {
  8882  	type NoMethod PlacementConversionDomainOverride
  8883  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  8884  }
  8885  
  8886  // PlacementGroup: Contains properties of a package or roadblock.
  8887  type PlacementGroup struct {
  8888  	// AccountId: Account ID of this placement group. This is a read-only field
  8889  	// that can be left blank.
  8890  	AccountId int64 `json:"accountId,omitempty,string"`
  8891  	// ActiveStatus: Whether this placement group is active, inactive, archived or
  8892  	// permanently archived.
  8893  	//
  8894  	// Possible values:
  8895  	//   "PLACEMENT_STATUS_UNKNOWN"
  8896  	//   "PLACEMENT_STATUS_ACTIVE"
  8897  	//   "PLACEMENT_STATUS_INACTIVE"
  8898  	//   "PLACEMENT_STATUS_ARCHIVED"
  8899  	//   "PLACEMENT_STATUS_PERMANENTLY_ARCHIVED"
  8900  	ActiveStatus string `json:"activeStatus,omitempty"`
  8901  	// AdvertiserId: Advertiser ID of this placement group. This is a required
  8902  	// field on insertion.
  8903  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  8904  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
  8905  	// This is a read-only, auto-generated field.
  8906  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  8907  	// CampaignId: Campaign ID of this placement group. This field is required on
  8908  	// insertion.
  8909  	CampaignId int64 `json:"campaignId,omitempty,string"`
  8910  	// CampaignIdDimensionValue: Dimension value for the ID of the campaign. This
  8911  	// is a read-only, auto-generated field.
  8912  	CampaignIdDimensionValue *DimensionValue `json:"campaignIdDimensionValue,omitempty"`
  8913  	// ChildPlacementIds: IDs of placements which are assigned to this placement
  8914  	// group. This is a read-only, auto-generated field.
  8915  	ChildPlacementIds googleapi.Int64s `json:"childPlacementIds,omitempty"`
  8916  	// Comment: Comments for this placement group.
  8917  	Comment string `json:"comment,omitempty"`
  8918  	// ContentCategoryId: ID of the content category assigned to this placement
  8919  	// group.
  8920  	ContentCategoryId int64 `json:"contentCategoryId,omitempty,string"`
  8921  	// CreateInfo: Information about the creation of this placement group. This is
  8922  	// a read-only field.
  8923  	CreateInfo *LastModifiedInfo `json:"createInfo,omitempty"`
  8924  	// DirectorySiteId: Directory site ID associated with this placement group. On
  8925  	// insert, you must set either this field or the site_id field to specify the
  8926  	// site associated with this placement group. This is a required field that is
  8927  	// read-only after insertion.
  8928  	DirectorySiteId int64 `json:"directorySiteId,omitempty,string"`
  8929  	// DirectorySiteIdDimensionValue: Dimension value for the ID of the directory
  8930  	// site. This is a read-only, auto-generated field.
  8931  	DirectorySiteIdDimensionValue *DimensionValue `json:"directorySiteIdDimensionValue,omitempty"`
  8932  	// ExternalId: External ID for this placement.
  8933  	ExternalId string `json:"externalId,omitempty"`
  8934  	// Id: ID of this placement group. This is a read-only, auto-generated field.
  8935  	Id int64 `json:"id,omitempty,string"`
  8936  	// IdDimensionValue: Dimension value for the ID of this placement group. This
  8937  	// is a read-only, auto-generated field.
  8938  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
  8939  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  8940  	// "dfareporting#placementGroup".
  8941  	Kind string `json:"kind,omitempty"`
  8942  	// LastModifiedInfo: Information about the most recent modification of this
  8943  	// placement group. This is a read-only field.
  8944  	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
  8945  	// Name: Name of this placement group. This is a required field and must be
  8946  	// less than 256 characters long.
  8947  	Name string `json:"name,omitempty"`
  8948  	// PlacementGroupType: Type of this placement group. A package is a simple
  8949  	// group of placements that acts as a single pricing point for a group of tags.
  8950  	// A roadblock is a group of placements that not only acts as a single pricing
  8951  	// point, but also assumes that all the tags in it will be served at the same
  8952  	// time. A roadblock requires one of its assigned placements to be marked as
  8953  	// primary for reporting. This field is required on insertion.
  8954  	//
  8955  	// Possible values:
  8956  	//   "PLACEMENT_PACKAGE" - A simple group of site-placements (tags). Basically
  8957  	// acts as a single pricing point for a group of tags.
  8958  	//   "PLACEMENT_ROADBLOCK" - A group of site-placements (tags) that not only
  8959  	// acts as a single pricing point but also assumes that all the tags in it will
  8960  	// be served at the same time. This kind of group requires one of its assigned
  8961  	// site-placements to be marked as primary for reporting purposes.
  8962  	PlacementGroupType string `json:"placementGroupType,omitempty"`
  8963  	// PlacementStrategyId: ID of the placement strategy assigned to this placement
  8964  	// group.
  8965  	PlacementStrategyId int64 `json:"placementStrategyId,omitempty,string"`
  8966  	// PricingSchedule: Pricing schedule of this placement group. This field is
  8967  	// required on insertion.
  8968  	PricingSchedule *PricingSchedule `json:"pricingSchedule,omitempty"`
  8969  	// PrimaryPlacementId: ID of the primary placement, used to calculate the media
  8970  	// cost of a roadblock (placement group). Modifying this field will
  8971  	// automatically modify the primary field on all affected roadblock child
  8972  	// placements.
  8973  	PrimaryPlacementId int64 `json:"primaryPlacementId,omitempty,string"`
  8974  	// PrimaryPlacementIdDimensionValue: Dimension value for the ID of the primary
  8975  	// placement. This is a read-only, auto-generated field.
  8976  	PrimaryPlacementIdDimensionValue *DimensionValue `json:"primaryPlacementIdDimensionValue,omitempty"`
  8977  	// SiteId: Site ID associated with this placement group. On insert, you must
  8978  	// set either this field or the directorySiteId field to specify the site
  8979  	// associated with this placement group. This is a required field that is
  8980  	// read-only after insertion.
  8981  	SiteId int64 `json:"siteId,omitempty,string"`
  8982  	// SiteIdDimensionValue: Dimension value for the ID of the site. This is a
  8983  	// read-only, auto-generated field.
  8984  	SiteIdDimensionValue *DimensionValue `json:"siteIdDimensionValue,omitempty"`
  8985  	// SubaccountId: Subaccount ID of this placement group. This is a read-only
  8986  	// field that can be left blank.
  8987  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  8988  
  8989  	// ServerResponse contains the HTTP response code and headers from the server.
  8990  	googleapi.ServerResponse `json:"-"`
  8991  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  8992  	// unconditionally include in API requests. By default, fields with empty or
  8993  	// default values are omitted from API requests. See
  8994  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  8995  	// details.
  8996  	ForceSendFields []string `json:"-"`
  8997  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  8998  	// requests with the JSON null value. By default, fields with empty values are
  8999  	// omitted from API requests. See
  9000  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9001  	NullFields []string `json:"-"`
  9002  }
  9003  
  9004  func (s *PlacementGroup) MarshalJSON() ([]byte, error) {
  9005  	type NoMethod PlacementGroup
  9006  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9007  }
  9008  
  9009  // PlacementGroupsListResponse: Placement Group List Response
  9010  type PlacementGroupsListResponse struct {
  9011  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9012  	// "dfareporting#placementGroupsListResponse".
  9013  	Kind string `json:"kind,omitempty"`
  9014  	// NextPageToken: Pagination token to be used for the next list operation.
  9015  	NextPageToken string `json:"nextPageToken,omitempty"`
  9016  	// PlacementGroups: Placement group collection.
  9017  	PlacementGroups []*PlacementGroup `json:"placementGroups,omitempty"`
  9018  
  9019  	// ServerResponse contains the HTTP response code and headers from the server.
  9020  	googleapi.ServerResponse `json:"-"`
  9021  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9022  	// include in API requests. By default, fields with empty or default values are
  9023  	// omitted from API requests. See
  9024  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9025  	// details.
  9026  	ForceSendFields []string `json:"-"`
  9027  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9028  	// with the JSON null value. By default, fields with empty values are omitted
  9029  	// from API requests. See
  9030  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9031  	NullFields []string `json:"-"`
  9032  }
  9033  
  9034  func (s *PlacementGroupsListResponse) MarshalJSON() ([]byte, error) {
  9035  	type NoMethod PlacementGroupsListResponse
  9036  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9037  }
  9038  
  9039  type PlacementSingleConversionDomain struct {
  9040  	ConversionDomainId    int64  `json:"conversionDomainId,omitempty,string"`
  9041  	ConversionDomainValue string `json:"conversionDomainValue,omitempty"`
  9042  	// ForceSendFields is a list of field names (e.g. "ConversionDomainId") to
  9043  	// unconditionally include in API requests. By default, fields with empty or
  9044  	// default values are omitted from API requests. See
  9045  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9046  	// details.
  9047  	ForceSendFields []string `json:"-"`
  9048  	// NullFields is a list of field names (e.g. "ConversionDomainId") to include
  9049  	// in API requests with the JSON null value. By default, fields with empty
  9050  	// values are omitted from API requests. See
  9051  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9052  	NullFields []string `json:"-"`
  9053  }
  9054  
  9055  func (s *PlacementSingleConversionDomain) MarshalJSON() ([]byte, error) {
  9056  	type NoMethod PlacementSingleConversionDomain
  9057  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9058  }
  9059  
  9060  // PlacementStrategiesListResponse: Placement Strategy List Response
  9061  type PlacementStrategiesListResponse struct {
  9062  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9063  	// "dfareporting#placementStrategiesListResponse".
  9064  	Kind string `json:"kind,omitempty"`
  9065  	// NextPageToken: Pagination token to be used for the next list operation.
  9066  	NextPageToken string `json:"nextPageToken,omitempty"`
  9067  	// PlacementStrategies: Placement strategy collection.
  9068  	PlacementStrategies []*PlacementStrategy `json:"placementStrategies,omitempty"`
  9069  
  9070  	// ServerResponse contains the HTTP response code and headers from the server.
  9071  	googleapi.ServerResponse `json:"-"`
  9072  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9073  	// include in API requests. By default, fields with empty or default values are
  9074  	// omitted from API requests. See
  9075  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9076  	// details.
  9077  	ForceSendFields []string `json:"-"`
  9078  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9079  	// with the JSON null value. By default, fields with empty values are omitted
  9080  	// from API requests. See
  9081  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9082  	NullFields []string `json:"-"`
  9083  }
  9084  
  9085  func (s *PlacementStrategiesListResponse) MarshalJSON() ([]byte, error) {
  9086  	type NoMethod PlacementStrategiesListResponse
  9087  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9088  }
  9089  
  9090  // PlacementStrategy: Contains properties of a placement strategy.
  9091  type PlacementStrategy struct {
  9092  	// AccountId: Account ID of this placement strategy.This is a read-only field
  9093  	// that can be left blank.
  9094  	AccountId int64 `json:"accountId,omitempty,string"`
  9095  	// Id: ID of this placement strategy. This is a read-only, auto-generated
  9096  	// field.
  9097  	Id int64 `json:"id,omitempty,string"`
  9098  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9099  	// "dfareporting#placementStrategy".
  9100  	Kind string `json:"kind,omitempty"`
  9101  	// Name: Name of this placement strategy. This is a required field. It must be
  9102  	// less than 256 characters long and unique among placement strategies of the
  9103  	// same account.
  9104  	Name string `json:"name,omitempty"`
  9105  
  9106  	// ServerResponse contains the HTTP response code and headers from the server.
  9107  	googleapi.ServerResponse `json:"-"`
  9108  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  9109  	// unconditionally include in API requests. By default, fields with empty or
  9110  	// default values are omitted from API requests. See
  9111  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9112  	// details.
  9113  	ForceSendFields []string `json:"-"`
  9114  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  9115  	// requests with the JSON null value. By default, fields with empty values are
  9116  	// omitted from API requests. See
  9117  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9118  	NullFields []string `json:"-"`
  9119  }
  9120  
  9121  func (s *PlacementStrategy) MarshalJSON() ([]byte, error) {
  9122  	type NoMethod PlacementStrategy
  9123  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9124  }
  9125  
  9126  // PlacementTag: Placement Tag
  9127  type PlacementTag struct {
  9128  	// PlacementId: Placement ID
  9129  	PlacementId int64 `json:"placementId,omitempty,string"`
  9130  	// TagDatas: Tags generated for this placement.
  9131  	TagDatas []*TagData `json:"tagDatas,omitempty"`
  9132  	// ForceSendFields is a list of field names (e.g. "PlacementId") to
  9133  	// unconditionally include in API requests. By default, fields with empty or
  9134  	// default values are omitted from API requests. See
  9135  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9136  	// details.
  9137  	ForceSendFields []string `json:"-"`
  9138  	// NullFields is a list of field names (e.g. "PlacementId") to include in API
  9139  	// requests with the JSON null value. By default, fields with empty values are
  9140  	// omitted from API requests. See
  9141  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9142  	NullFields []string `json:"-"`
  9143  }
  9144  
  9145  func (s *PlacementTag) MarshalJSON() ([]byte, error) {
  9146  	type NoMethod PlacementTag
  9147  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9148  }
  9149  
  9150  // PlacementsGenerateTagsResponse: Placement GenerateTags Response
  9151  type PlacementsGenerateTagsResponse struct {
  9152  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9153  	// "dfareporting#placementsGenerateTagsResponse".
  9154  	Kind string `json:"kind,omitempty"`
  9155  	// PlacementTags: Set of generated tags for the specified placements.
  9156  	PlacementTags []*PlacementTag `json:"placementTags,omitempty"`
  9157  
  9158  	// ServerResponse contains the HTTP response code and headers from the server.
  9159  	googleapi.ServerResponse `json:"-"`
  9160  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9161  	// include in API requests. By default, fields with empty or default values are
  9162  	// omitted from API requests. See
  9163  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9164  	// details.
  9165  	ForceSendFields []string `json:"-"`
  9166  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9167  	// with the JSON null value. By default, fields with empty values are omitted
  9168  	// from API requests. See
  9169  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9170  	NullFields []string `json:"-"`
  9171  }
  9172  
  9173  func (s *PlacementsGenerateTagsResponse) MarshalJSON() ([]byte, error) {
  9174  	type NoMethod PlacementsGenerateTagsResponse
  9175  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9176  }
  9177  
  9178  // PlacementsListResponse: Placement List Response
  9179  type PlacementsListResponse struct {
  9180  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9181  	// "dfareporting#placementsListResponse".
  9182  	Kind string `json:"kind,omitempty"`
  9183  	// NextPageToken: Pagination token to be used for the next list operation.
  9184  	NextPageToken string `json:"nextPageToken,omitempty"`
  9185  	// Placements: Placement collection.
  9186  	Placements []*Placement `json:"placements,omitempty"`
  9187  
  9188  	// ServerResponse contains the HTTP response code and headers from the server.
  9189  	googleapi.ServerResponse `json:"-"`
  9190  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9191  	// include in API requests. By default, fields with empty or default values are
  9192  	// omitted from API requests. See
  9193  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9194  	// details.
  9195  	ForceSendFields []string `json:"-"`
  9196  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9197  	// with the JSON null value. By default, fields with empty values are omitted
  9198  	// from API requests. See
  9199  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9200  	NullFields []string `json:"-"`
  9201  }
  9202  
  9203  func (s *PlacementsListResponse) MarshalJSON() ([]byte, error) {
  9204  	type NoMethod PlacementsListResponse
  9205  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9206  }
  9207  
  9208  // PlatformType: Contains information about a platform type that can be
  9209  // targeted by ads.
  9210  type PlatformType struct {
  9211  	// Id: ID of this platform type.
  9212  	Id int64 `json:"id,omitempty,string"`
  9213  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9214  	// "dfareporting#platformType".
  9215  	Kind string `json:"kind,omitempty"`
  9216  	// Name: Name of this platform type.
  9217  	Name string `json:"name,omitempty"`
  9218  
  9219  	// ServerResponse contains the HTTP response code and headers from the server.
  9220  	googleapi.ServerResponse `json:"-"`
  9221  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
  9222  	// include in API requests. By default, fields with empty or default values are
  9223  	// omitted from API requests. See
  9224  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9225  	// details.
  9226  	ForceSendFields []string `json:"-"`
  9227  	// NullFields is a list of field names (e.g. "Id") to include in API requests
  9228  	// with the JSON null value. By default, fields with empty values are omitted
  9229  	// from API requests. See
  9230  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9231  	NullFields []string `json:"-"`
  9232  }
  9233  
  9234  func (s *PlatformType) MarshalJSON() ([]byte, error) {
  9235  	type NoMethod PlatformType
  9236  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9237  }
  9238  
  9239  // PlatformTypesListResponse: Platform Type List Response
  9240  type PlatformTypesListResponse struct {
  9241  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9242  	// "dfareporting#platformTypesListResponse".
  9243  	Kind string `json:"kind,omitempty"`
  9244  	// PlatformTypes: Platform type collection.
  9245  	PlatformTypes []*PlatformType `json:"platformTypes,omitempty"`
  9246  
  9247  	// ServerResponse contains the HTTP response code and headers from the server.
  9248  	googleapi.ServerResponse `json:"-"`
  9249  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9250  	// include in API requests. By default, fields with empty or default values are
  9251  	// omitted from API requests. See
  9252  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9253  	// details.
  9254  	ForceSendFields []string `json:"-"`
  9255  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9256  	// with the JSON null value. By default, fields with empty values are omitted
  9257  	// from API requests. See
  9258  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9259  	NullFields []string `json:"-"`
  9260  }
  9261  
  9262  func (s *PlatformTypesListResponse) MarshalJSON() ([]byte, error) {
  9263  	type NoMethod PlatformTypesListResponse
  9264  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9265  }
  9266  
  9267  // PopupWindowProperties: Popup Window Properties.
  9268  type PopupWindowProperties struct {
  9269  	// Dimension: Popup dimension for a creative. This is a read-only field.
  9270  	// Applicable to the following creative types: all RICH_MEDIA and all VPAID
  9271  	Dimension *Size `json:"dimension,omitempty"`
  9272  	// Offset: Upper-left corner coordinates of the popup window. Applicable if
  9273  	// positionType is COORDINATES.
  9274  	Offset *OffsetPosition `json:"offset,omitempty"`
  9275  	// PositionType: Popup window position either centered or at specific
  9276  	// coordinate.
  9277  	//
  9278  	// Possible values:
  9279  	//   "CENTER" - window positioning at center.
  9280  	//   "COORDINATES" - window positioning by upper left corner coordinates.
  9281  	PositionType string `json:"positionType,omitempty"`
  9282  	// ShowAddressBar: Whether to display the browser address bar.
  9283  	ShowAddressBar bool `json:"showAddressBar,omitempty"`
  9284  	// ShowMenuBar: Whether to display the browser menu bar.
  9285  	ShowMenuBar bool `json:"showMenuBar,omitempty"`
  9286  	// ShowScrollBar: Whether to display the browser scroll bar.
  9287  	ShowScrollBar bool `json:"showScrollBar,omitempty"`
  9288  	// ShowStatusBar: Whether to display the browser status bar.
  9289  	ShowStatusBar bool `json:"showStatusBar,omitempty"`
  9290  	// ShowToolBar: Whether to display the browser tool bar.
  9291  	ShowToolBar bool `json:"showToolBar,omitempty"`
  9292  	// Title: Title of popup window.
  9293  	Title string `json:"title,omitempty"`
  9294  	// ForceSendFields is a list of field names (e.g. "Dimension") to
  9295  	// unconditionally include in API requests. By default, fields with empty or
  9296  	// default values are omitted from API requests. See
  9297  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9298  	// details.
  9299  	ForceSendFields []string `json:"-"`
  9300  	// NullFields is a list of field names (e.g. "Dimension") to include in API
  9301  	// requests with the JSON null value. By default, fields with empty values are
  9302  	// omitted from API requests. See
  9303  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9304  	NullFields []string `json:"-"`
  9305  }
  9306  
  9307  func (s *PopupWindowProperties) MarshalJSON() ([]byte, error) {
  9308  	type NoMethod PopupWindowProperties
  9309  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9310  }
  9311  
  9312  // PostalCode: Contains information about a postal code that can be targeted by
  9313  // ads.
  9314  type PostalCode struct {
  9315  	// Code: Postal code. This is equivalent to the id field.
  9316  	Code string `json:"code,omitempty"`
  9317  	// CountryCode: Country code of the country to which this postal code belongs.
  9318  	CountryCode string `json:"countryCode,omitempty"`
  9319  	// CountryDartId: DART ID of the country to which this postal code belongs.
  9320  	CountryDartId int64 `json:"countryDartId,omitempty,string"`
  9321  	// Id: ID of this postal code.
  9322  	Id string `json:"id,omitempty"`
  9323  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9324  	// "dfareporting#postalCode".
  9325  	Kind string `json:"kind,omitempty"`
  9326  
  9327  	// ServerResponse contains the HTTP response code and headers from the server.
  9328  	googleapi.ServerResponse `json:"-"`
  9329  	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
  9330  	// include in API requests. By default, fields with empty or default values are
  9331  	// omitted from API requests. See
  9332  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9333  	// details.
  9334  	ForceSendFields []string `json:"-"`
  9335  	// NullFields is a list of field names (e.g. "Code") to include in API requests
  9336  	// with the JSON null value. By default, fields with empty values are omitted
  9337  	// from API requests. See
  9338  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9339  	NullFields []string `json:"-"`
  9340  }
  9341  
  9342  func (s *PostalCode) MarshalJSON() ([]byte, error) {
  9343  	type NoMethod PostalCode
  9344  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9345  }
  9346  
  9347  // PostalCodesListResponse: Postal Code List Response
  9348  type PostalCodesListResponse struct {
  9349  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9350  	// "dfareporting#postalCodesListResponse".
  9351  	Kind string `json:"kind,omitempty"`
  9352  	// PostalCodes: Postal code collection.
  9353  	PostalCodes []*PostalCode `json:"postalCodes,omitempty"`
  9354  
  9355  	// ServerResponse contains the HTTP response code and headers from the server.
  9356  	googleapi.ServerResponse `json:"-"`
  9357  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9358  	// include in API requests. By default, fields with empty or default values are
  9359  	// omitted from API requests. See
  9360  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9361  	// details.
  9362  	ForceSendFields []string `json:"-"`
  9363  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9364  	// with the JSON null value. By default, fields with empty values are omitted
  9365  	// from API requests. See
  9366  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9367  	NullFields []string `json:"-"`
  9368  }
  9369  
  9370  func (s *PostalCodesListResponse) MarshalJSON() ([]byte, error) {
  9371  	type NoMethod PostalCodesListResponse
  9372  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9373  }
  9374  
  9375  type Pricing struct {
  9376  	// CapCostType: Cap cost type of this inventory item.
  9377  	//
  9378  	// Possible values:
  9379  	//   "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE"
  9380  	//   "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY"
  9381  	//   "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE"
  9382  	CapCostType string `json:"capCostType,omitempty"`
  9383  	EndDate     string `json:"endDate,omitempty"`
  9384  	// Flights: Flights of this inventory item. A flight (a.k.a. pricing period)
  9385  	// represents the inventory item pricing information for a specific period of
  9386  	// time.
  9387  	Flights []*Flight `json:"flights,omitempty"`
  9388  	// GroupType: Group type of this inventory item if it represents a placement
  9389  	// group. Is null otherwise. There are two type of placement groups:
  9390  	// PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory items
  9391  	// that acts as a single pricing point for a group of tags.
  9392  	// PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items that
  9393  	// not only acts as a single pricing point, but also assumes that all the tags
  9394  	// in it will be served at the same time. A roadblock requires one of its
  9395  	// assigned inventory items to be marked as primary.
  9396  	//
  9397  	// Possible values:
  9398  	//   "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE" - A placement package represents
  9399  	// "package pricing": Pricing and flight information is defined on the package,
  9400  	// not on its child placements. The placements in a package do not need to be
  9401  	// on the same page.
  9402  	//   "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK" - A roadblock represents a set
  9403  	// of placements that are all the same page. One of the child placements is
  9404  	// designated as the "primary" placement for reporting purposes.
  9405  	GroupType string `json:"groupType,omitempty"`
  9406  	// PricingType: Pricing type of this inventory item.
  9407  	//
  9408  	// Possible values:
  9409  	//   "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS"
  9410  	//   "PLANNING_PLACEMENT_PRICING_TYPE_CPM"
  9411  	//   "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS"
  9412  	//   "PLANNING_PLACEMENT_PRICING_TYPE_CPC"
  9413  	//   "PLANNING_PLACEMENT_PRICING_TYPE_CPA"
  9414  	//   "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
  9415  	//   "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS"
  9416  	//   "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW"
  9417  	PricingType string `json:"pricingType,omitempty"`
  9418  	StartDate   string `json:"startDate,omitempty"`
  9419  	// ForceSendFields is a list of field names (e.g. "CapCostType") to
  9420  	// unconditionally include in API requests. By default, fields with empty or
  9421  	// default values are omitted from API requests. See
  9422  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9423  	// details.
  9424  	ForceSendFields []string `json:"-"`
  9425  	// NullFields is a list of field names (e.g. "CapCostType") to include in API
  9426  	// requests with the JSON null value. By default, fields with empty values are
  9427  	// omitted from API requests. See
  9428  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9429  	NullFields []string `json:"-"`
  9430  }
  9431  
  9432  func (s *Pricing) MarshalJSON() ([]byte, error) {
  9433  	type NoMethod Pricing
  9434  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9435  }
  9436  
  9437  // PricingSchedule: Pricing Schedule
  9438  type PricingSchedule struct {
  9439  	// CapCostOption: Placement cap cost option.
  9440  	//
  9441  	// Possible values:
  9442  	//   "CAP_COST_NONE"
  9443  	//   "CAP_COST_MONTHLY"
  9444  	//   "CAP_COST_CUMULATIVE"
  9445  	CapCostOption string `json:"capCostOption,omitempty"`
  9446  	EndDate       string `json:"endDate,omitempty"`
  9447  	// Flighted: Whether this placement is flighted. If true, pricing periods will
  9448  	// be computed automatically.
  9449  	Flighted bool `json:"flighted,omitempty"`
  9450  	// FloodlightActivityId: Floodlight activity ID associated with this placement.
  9451  	// This field should be set when placement pricing type is set to
  9452  	// PRICING_TYPE_CPA.
  9453  	FloodlightActivityId int64 `json:"floodlightActivityId,omitempty,string"`
  9454  	// PricingPeriods: Pricing periods for this placement.
  9455  	PricingPeriods []*PricingSchedulePricingPeriod `json:"pricingPeriods,omitempty"`
  9456  	// PricingType: Placement pricing type. This field is required on insertion.
  9457  	//
  9458  	// Possible values:
  9459  	//   "PRICING_TYPE_CPM"
  9460  	//   "PRICING_TYPE_CPC"
  9461  	//   "PRICING_TYPE_CPA"
  9462  	//   "PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
  9463  	//   "PRICING_TYPE_FLAT_RATE_CLICKS"
  9464  	//   "PRICING_TYPE_CPM_ACTIVEVIEW"
  9465  	PricingType      string `json:"pricingType,omitempty"`
  9466  	StartDate        string `json:"startDate,omitempty"`
  9467  	TestingStartDate string `json:"testingStartDate,omitempty"`
  9468  	// ForceSendFields is a list of field names (e.g. "CapCostOption") to
  9469  	// unconditionally include in API requests. By default, fields with empty or
  9470  	// default values are omitted from API requests. See
  9471  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9472  	// details.
  9473  	ForceSendFields []string `json:"-"`
  9474  	// NullFields is a list of field names (e.g. "CapCostOption") to include in API
  9475  	// requests with the JSON null value. By default, fields with empty values are
  9476  	// omitted from API requests. See
  9477  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9478  	NullFields []string `json:"-"`
  9479  }
  9480  
  9481  func (s *PricingSchedule) MarshalJSON() ([]byte, error) {
  9482  	type NoMethod PricingSchedule
  9483  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9484  }
  9485  
  9486  // PricingSchedulePricingPeriod: Pricing Period
  9487  type PricingSchedulePricingPeriod struct {
  9488  	EndDate string `json:"endDate,omitempty"`
  9489  	// PricingComment: Comments for this pricing period.
  9490  	PricingComment string `json:"pricingComment,omitempty"`
  9491  	// RateOrCostNanos: Rate or cost of this pricing period in nanos (i.e.,
  9492  	// multiplied by 1000000000). Acceptable values are 0 to 1000000000000000000,
  9493  	// inclusive.
  9494  	RateOrCostNanos int64  `json:"rateOrCostNanos,omitempty,string"`
  9495  	StartDate       string `json:"startDate,omitempty"`
  9496  	// Units: Units of this pricing period. Acceptable values are 0 to 10000000000,
  9497  	// inclusive.
  9498  	Units int64 `json:"units,omitempty,string"`
  9499  	// ForceSendFields is a list of field names (e.g. "EndDate") to unconditionally
  9500  	// include in API requests. By default, fields with empty or default values are
  9501  	// omitted from API requests. See
  9502  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9503  	// details.
  9504  	ForceSendFields []string `json:"-"`
  9505  	// NullFields is a list of field names (e.g. "EndDate") to include in API
  9506  	// requests with the JSON null value. By default, fields with empty values are
  9507  	// omitted from API requests. See
  9508  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9509  	NullFields []string `json:"-"`
  9510  }
  9511  
  9512  func (s *PricingSchedulePricingPeriod) MarshalJSON() ([]byte, error) {
  9513  	type NoMethod PricingSchedulePricingPeriod
  9514  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9515  }
  9516  
  9517  // Project: Contains properties of a Planning project.
  9518  type Project struct {
  9519  	// AccountId: Account ID of this project.
  9520  	AccountId int64 `json:"accountId,omitempty,string"`
  9521  	// AdvertiserId: Advertiser ID of this project.
  9522  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  9523  	// AudienceAgeGroup: Audience age group of this project.
  9524  	//
  9525  	// Possible values:
  9526  	//   "PLANNING_AUDIENCE_AGE_18_24"
  9527  	//   "PLANNING_AUDIENCE_AGE_25_34"
  9528  	//   "PLANNING_AUDIENCE_AGE_35_44"
  9529  	//   "PLANNING_AUDIENCE_AGE_45_54"
  9530  	//   "PLANNING_AUDIENCE_AGE_55_64"
  9531  	//   "PLANNING_AUDIENCE_AGE_65_OR_MORE"
  9532  	//   "PLANNING_AUDIENCE_AGE_UNKNOWN"
  9533  	AudienceAgeGroup string `json:"audienceAgeGroup,omitempty"`
  9534  	// AudienceGender: Audience gender of this project.
  9535  	//
  9536  	// Possible values:
  9537  	//   "PLANNING_AUDIENCE_GENDER_MALE"
  9538  	//   "PLANNING_AUDIENCE_GENDER_FEMALE"
  9539  	AudienceGender string `json:"audienceGender,omitempty"`
  9540  	// Budget: Budget of this project in the currency specified by the current
  9541  	// account. The value stored in this field represents only the non-fractional
  9542  	// amount. For example, for USD, the smallest value that can be represented by
  9543  	// this field is 1 US dollar.
  9544  	Budget int64 `json:"budget,omitempty,string"`
  9545  	// ClientBillingCode: Client billing code of this project.
  9546  	ClientBillingCode string `json:"clientBillingCode,omitempty"`
  9547  	// ClientName: Name of the project client.
  9548  	ClientName string `json:"clientName,omitempty"`
  9549  	EndDate    string `json:"endDate,omitempty"`
  9550  	// Id: ID of this project. This is a read-only, auto-generated field.
  9551  	Id int64 `json:"id,omitempty,string"`
  9552  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9553  	// "dfareporting#project".
  9554  	Kind string `json:"kind,omitempty"`
  9555  	// LastModifiedInfo: Information about the most recent modification of this
  9556  	// project.
  9557  	LastModifiedInfo *LastModifiedInfo `json:"lastModifiedInfo,omitempty"`
  9558  	// Name: Name of this project.
  9559  	Name string `json:"name,omitempty"`
  9560  	// Overview: Overview of this project.
  9561  	Overview  string `json:"overview,omitempty"`
  9562  	StartDate string `json:"startDate,omitempty"`
  9563  	// SubaccountId: Subaccount ID of this project.
  9564  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  9565  	// TargetClicks: Number of clicks that the advertiser is targeting.
  9566  	TargetClicks int64 `json:"targetClicks,omitempty,string"`
  9567  	// TargetConversions: Number of conversions that the advertiser is targeting.
  9568  	TargetConversions int64 `json:"targetConversions,omitempty,string"`
  9569  	// TargetCpaNanos: CPA that the advertiser is targeting.
  9570  	TargetCpaNanos int64 `json:"targetCpaNanos,omitempty,string"`
  9571  	// TargetCpcNanos: CPC that the advertiser is targeting.
  9572  	TargetCpcNanos int64 `json:"targetCpcNanos,omitempty,string"`
  9573  	// TargetCpmActiveViewNanos: vCPM from Active View that the advertiser is
  9574  	// targeting.
  9575  	TargetCpmActiveViewNanos int64 `json:"targetCpmActiveViewNanos,omitempty,string"`
  9576  	// TargetCpmNanos: CPM that the advertiser is targeting.
  9577  	TargetCpmNanos int64 `json:"targetCpmNanos,omitempty,string"`
  9578  	// TargetImpressions: Number of impressions that the advertiser is targeting.
  9579  	TargetImpressions int64 `json:"targetImpressions,omitempty,string"`
  9580  
  9581  	// ServerResponse contains the HTTP response code and headers from the server.
  9582  	googleapi.ServerResponse `json:"-"`
  9583  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  9584  	// unconditionally include in API requests. By default, fields with empty or
  9585  	// default values are omitted from API requests. See
  9586  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9587  	// details.
  9588  	ForceSendFields []string `json:"-"`
  9589  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  9590  	// requests with the JSON null value. By default, fields with empty values are
  9591  	// omitted from API requests. See
  9592  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9593  	NullFields []string `json:"-"`
  9594  }
  9595  
  9596  func (s *Project) MarshalJSON() ([]byte, error) {
  9597  	type NoMethod Project
  9598  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9599  }
  9600  
  9601  // ProjectsListResponse: Project List Response
  9602  type ProjectsListResponse struct {
  9603  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9604  	// "dfareporting#projectsListResponse".
  9605  	Kind string `json:"kind,omitempty"`
  9606  	// NextPageToken: Pagination token to be used for the next list operation.
  9607  	NextPageToken string `json:"nextPageToken,omitempty"`
  9608  	// Projects: Project collection.
  9609  	Projects []*Project `json:"projects,omitempty"`
  9610  
  9611  	// ServerResponse contains the HTTP response code and headers from the server.
  9612  	googleapi.ServerResponse `json:"-"`
  9613  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9614  	// include in API requests. By default, fields with empty or default values are
  9615  	// omitted from API requests. See
  9616  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9617  	// details.
  9618  	ForceSendFields []string `json:"-"`
  9619  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9620  	// with the JSON null value. By default, fields with empty values are omitted
  9621  	// from API requests. See
  9622  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9623  	NullFields []string `json:"-"`
  9624  }
  9625  
  9626  func (s *ProjectsListResponse) MarshalJSON() ([]byte, error) {
  9627  	type NoMethod ProjectsListResponse
  9628  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9629  }
  9630  
  9631  // ReachReportCompatibleFields: Represents fields that are compatible to be
  9632  // selected for a report of type "REACH".
  9633  type ReachReportCompatibleFields struct {
  9634  	// DimensionFilters: Dimensions which are compatible to be selected in the
  9635  	// "dimensionFilters" section of the report.
  9636  	DimensionFilters []*Dimension `json:"dimensionFilters,omitempty"`
  9637  	// Dimensions: Dimensions which are compatible to be selected in the
  9638  	// "dimensions" section of the report.
  9639  	Dimensions []*Dimension `json:"dimensions,omitempty"`
  9640  	// Kind: The kind of resource this is, in this case
  9641  	// dfareporting#reachReportCompatibleFields.
  9642  	Kind string `json:"kind,omitempty"`
  9643  	// Metrics: Metrics which are compatible to be selected in the "metricNames"
  9644  	// section of the report.
  9645  	Metrics []*Metric `json:"metrics,omitempty"`
  9646  	// PivotedActivityMetrics: Metrics which are compatible to be selected as
  9647  	// activity metrics to pivot on in the "activities" section of the report.
  9648  	PivotedActivityMetrics []*Metric `json:"pivotedActivityMetrics,omitempty"`
  9649  	// ReachByFrequencyMetrics: Metrics which are compatible to be selected in the
  9650  	// "reachByFrequencyMetricNames" section of the report.
  9651  	ReachByFrequencyMetrics []*Metric `json:"reachByFrequencyMetrics,omitempty"`
  9652  	// ForceSendFields is a list of field names (e.g. "DimensionFilters") to
  9653  	// unconditionally include in API requests. By default, fields with empty or
  9654  	// default values are omitted from API requests. See
  9655  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9656  	// details.
  9657  	ForceSendFields []string `json:"-"`
  9658  	// NullFields is a list of field names (e.g. "DimensionFilters") to include in
  9659  	// API requests with the JSON null value. By default, fields with empty values
  9660  	// are omitted from API requests. See
  9661  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9662  	NullFields []string `json:"-"`
  9663  }
  9664  
  9665  func (s *ReachReportCompatibleFields) MarshalJSON() ([]byte, error) {
  9666  	type NoMethod ReachReportCompatibleFields
  9667  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9668  }
  9669  
  9670  // Recipient: Represents a recipient.
  9671  type Recipient struct {
  9672  	// DeliveryType: The delivery type for the recipient.
  9673  	//
  9674  	// Possible values:
  9675  	//   "LINK"
  9676  	//   "ATTACHMENT"
  9677  	DeliveryType string `json:"deliveryType,omitempty"`
  9678  	// Email: The email address of the recipient.
  9679  	Email string `json:"email,omitempty"`
  9680  	// Kind: The kind of resource this is, in this case dfareporting#recipient.
  9681  	Kind string `json:"kind,omitempty"`
  9682  	// ForceSendFields is a list of field names (e.g. "DeliveryType") to
  9683  	// unconditionally include in API requests. By default, fields with empty or
  9684  	// default values are omitted from API requests. See
  9685  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9686  	// details.
  9687  	ForceSendFields []string `json:"-"`
  9688  	// NullFields is a list of field names (e.g. "DeliveryType") to include in API
  9689  	// requests with the JSON null value. By default, fields with empty values are
  9690  	// omitted from API requests. See
  9691  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9692  	NullFields []string `json:"-"`
  9693  }
  9694  
  9695  func (s *Recipient) MarshalJSON() ([]byte, error) {
  9696  	type NoMethod Recipient
  9697  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9698  }
  9699  
  9700  // Region: Contains information about a region that can be targeted by ads.
  9701  type Region struct {
  9702  	// CountryCode: Country code of the country to which this region belongs.
  9703  	CountryCode string `json:"countryCode,omitempty"`
  9704  	// CountryDartId: DART ID of the country to which this region belongs.
  9705  	CountryDartId int64 `json:"countryDartId,omitempty,string"`
  9706  	// DartId: DART ID of this region.
  9707  	DartId int64 `json:"dartId,omitempty,string"`
  9708  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9709  	// "dfareporting#region".
  9710  	Kind string `json:"kind,omitempty"`
  9711  	// Name: Name of this region.
  9712  	Name string `json:"name,omitempty"`
  9713  	// RegionCode: Region code.
  9714  	RegionCode string `json:"regionCode,omitempty"`
  9715  	// ForceSendFields is a list of field names (e.g. "CountryCode") to
  9716  	// unconditionally include in API requests. By default, fields with empty or
  9717  	// default values are omitted from API requests. See
  9718  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9719  	// details.
  9720  	ForceSendFields []string `json:"-"`
  9721  	// NullFields is a list of field names (e.g. "CountryCode") to include in API
  9722  	// requests with the JSON null value. By default, fields with empty values are
  9723  	// omitted from API requests. See
  9724  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9725  	NullFields []string `json:"-"`
  9726  }
  9727  
  9728  func (s *Region) MarshalJSON() ([]byte, error) {
  9729  	type NoMethod Region
  9730  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9731  }
  9732  
  9733  // RegionsListResponse: Region List Response
  9734  type RegionsListResponse struct {
  9735  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9736  	// "dfareporting#regionsListResponse".
  9737  	Kind string `json:"kind,omitempty"`
  9738  	// Regions: Region collection.
  9739  	Regions []*Region `json:"regions,omitempty"`
  9740  
  9741  	// ServerResponse contains the HTTP response code and headers from the server.
  9742  	googleapi.ServerResponse `json:"-"`
  9743  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9744  	// include in API requests. By default, fields with empty or default values are
  9745  	// omitted from API requests. See
  9746  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9747  	// details.
  9748  	ForceSendFields []string `json:"-"`
  9749  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9750  	// with the JSON null value. By default, fields with empty values are omitted
  9751  	// from API requests. See
  9752  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9753  	NullFields []string `json:"-"`
  9754  }
  9755  
  9756  func (s *RegionsListResponse) MarshalJSON() ([]byte, error) {
  9757  	type NoMethod RegionsListResponse
  9758  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9759  }
  9760  
  9761  // RemarketingList: Contains properties of a remarketing list. Remarketing
  9762  // enables you to create lists of users who have performed specific actions on
  9763  // a site, then target ads to members of those lists. This resource can be used
  9764  // to manage remarketing lists that are owned by your advertisers. To see all
  9765  // remarketing lists that are visible to your advertisers, including those that
  9766  // are shared to your advertiser or account, use the TargetableRemarketingLists
  9767  // resource.
  9768  type RemarketingList struct {
  9769  	// AccountId: Account ID of this remarketing list. This is a read-only,
  9770  	// auto-generated field that is only returned in GET requests.
  9771  	AccountId int64 `json:"accountId,omitempty,string"`
  9772  	// Active: Whether this remarketing list is active.
  9773  	Active bool `json:"active,omitempty"`
  9774  	// AdvertiserId: Dimension value for the advertiser ID that owns this
  9775  	// remarketing list. This is a required field.
  9776  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
  9777  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
  9778  	// This is a read-only, auto-generated field.
  9779  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
  9780  	// Description: Remarketing list description.
  9781  	Description string `json:"description,omitempty"`
  9782  	// Id: Remarketing list ID. This is a read-only, auto-generated field.
  9783  	Id int64 `json:"id,omitempty,string"`
  9784  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9785  	// "dfareporting#remarketingList".
  9786  	Kind string `json:"kind,omitempty"`
  9787  	// LifeSpan: Number of days that a user should remain in the remarketing list
  9788  	// without an impression. Acceptable values are 1 to 540, inclusive.
  9789  	LifeSpan int64 `json:"lifeSpan,omitempty,string"`
  9790  	// ListPopulationRule: Rule used to populate the remarketing list with users.
  9791  	ListPopulationRule *ListPopulationRule `json:"listPopulationRule,omitempty"`
  9792  	// ListSize: Number of users currently in the list. This is a read-only field.
  9793  	ListSize int64 `json:"listSize,omitempty,string"`
  9794  	// ListSource: Product from which this remarketing list was originated.
  9795  	//
  9796  	// Possible values:
  9797  	//   "REMARKETING_LIST_SOURCE_OTHER" - covers sources not supported in DCM
  9798  	// other than those listed below
  9799  	//   "REMARKETING_LIST_SOURCE_ADX" - ADX
  9800  	//   "REMARKETING_LIST_SOURCE_DFP" - DFP
  9801  	//   "REMARKETING_LIST_SOURCE_XFP" - XFP
  9802  	//   "REMARKETING_LIST_SOURCE_DFA" - DoubleClick Campaign Manager
  9803  	//   "REMARKETING_LIST_SOURCE_GA" - Google Analytics Premium
  9804  	//   "REMARKETING_LIST_SOURCE_YOUTUBE" - Youtube
  9805  	//   "REMARKETING_LIST_SOURCE_DBM" - DoubleClick Bid Manager
  9806  	//   "REMARKETING_LIST_SOURCE_GPLUS" - G+
  9807  	//   "REMARKETING_LIST_SOURCE_DMP" - DoubleClick Audience Center
  9808  	//   "REMARKETING_LIST_SOURCE_PLAY_STORE" - Playstore
  9809  	ListSource string `json:"listSource,omitempty"`
  9810  	// Name: Name of the remarketing list. This is a required field. Must be no
  9811  	// greater than 128 characters long.
  9812  	Name string `json:"name,omitempty"`
  9813  	// SubaccountId: Subaccount ID of this remarketing list. This is a read-only,
  9814  	// auto-generated field that is only returned in GET requests.
  9815  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
  9816  
  9817  	// ServerResponse contains the HTTP response code and headers from the server.
  9818  	googleapi.ServerResponse `json:"-"`
  9819  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  9820  	// unconditionally include in API requests. By default, fields with empty or
  9821  	// default values are omitted from API requests. See
  9822  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9823  	// details.
  9824  	ForceSendFields []string `json:"-"`
  9825  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  9826  	// requests with the JSON null value. By default, fields with empty values are
  9827  	// omitted from API requests. See
  9828  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9829  	NullFields []string `json:"-"`
  9830  }
  9831  
  9832  func (s *RemarketingList) MarshalJSON() ([]byte, error) {
  9833  	type NoMethod RemarketingList
  9834  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9835  }
  9836  
  9837  // RemarketingListShare: Contains properties of a remarketing list's sharing
  9838  // information. Sharing allows other accounts or advertisers to target to your
  9839  // remarketing lists. This resource can be used to manage remarketing list
  9840  // sharing to other accounts and advertisers.
  9841  type RemarketingListShare struct {
  9842  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9843  	// "dfareporting#remarketingListShare".
  9844  	Kind string `json:"kind,omitempty"`
  9845  	// RemarketingListId: Remarketing list ID. This is a read-only, auto-generated
  9846  	// field.
  9847  	RemarketingListId int64 `json:"remarketingListId,omitempty,string"`
  9848  	// SharedAccountIds: Accounts that the remarketing list is shared with.
  9849  	SharedAccountIds googleapi.Int64s `json:"sharedAccountIds,omitempty"`
  9850  	// SharedAdvertiserIds: Advertisers that the remarketing list is shared with.
  9851  	SharedAdvertiserIds googleapi.Int64s `json:"sharedAdvertiserIds,omitempty"`
  9852  
  9853  	// ServerResponse contains the HTTP response code and headers from the server.
  9854  	googleapi.ServerResponse `json:"-"`
  9855  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9856  	// include in API requests. By default, fields with empty or default values are
  9857  	// omitted from API requests. See
  9858  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9859  	// details.
  9860  	ForceSendFields []string `json:"-"`
  9861  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9862  	// with the JSON null value. By default, fields with empty values are omitted
  9863  	// from API requests. See
  9864  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9865  	NullFields []string `json:"-"`
  9866  }
  9867  
  9868  func (s *RemarketingListShare) MarshalJSON() ([]byte, error) {
  9869  	type NoMethod RemarketingListShare
  9870  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9871  }
  9872  
  9873  // RemarketingListsListResponse: Remarketing list response
  9874  type RemarketingListsListResponse struct {
  9875  	// Kind: Identifies what kind of resource this is. Value: the fixed string
  9876  	// "dfareporting#remarketingListsListResponse".
  9877  	Kind string `json:"kind,omitempty"`
  9878  	// NextPageToken: Pagination token to be used for the next list operation.
  9879  	NextPageToken string `json:"nextPageToken,omitempty"`
  9880  	// RemarketingLists: Remarketing list collection.
  9881  	RemarketingLists []*RemarketingList `json:"remarketingLists,omitempty"`
  9882  
  9883  	// ServerResponse contains the HTTP response code and headers from the server.
  9884  	googleapi.ServerResponse `json:"-"`
  9885  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
  9886  	// include in API requests. By default, fields with empty or default values are
  9887  	// omitted from API requests. See
  9888  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9889  	// details.
  9890  	ForceSendFields []string `json:"-"`
  9891  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
  9892  	// with the JSON null value. By default, fields with empty values are omitted
  9893  	// from API requests. See
  9894  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9895  	NullFields []string `json:"-"`
  9896  }
  9897  
  9898  func (s *RemarketingListsListResponse) MarshalJSON() ([]byte, error) {
  9899  	type NoMethod RemarketingListsListResponse
  9900  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9901  }
  9902  
  9903  // Report: Represents a Report resource.
  9904  type Report struct {
  9905  	// AccountId: The account ID to which this report belongs.
  9906  	AccountId int64 `json:"accountId,omitempty,string"`
  9907  	// Criteria: The report criteria for a report of type "STANDARD".
  9908  	Criteria *ReportCriteria `json:"criteria,omitempty"`
  9909  	// CrossDimensionReachCriteria: The report criteria for a report of type
  9910  	// "CROSS_DIMENSION_REACH".
  9911  	CrossDimensionReachCriteria *ReportCrossDimensionReachCriteria `json:"crossDimensionReachCriteria,omitempty"`
  9912  	// Delivery: The report's email delivery settings.
  9913  	Delivery *ReportDelivery `json:"delivery,omitempty"`
  9914  	// Etag: The eTag of this response for caching purposes.
  9915  	Etag string `json:"etag,omitempty"`
  9916  	// FileName: The filename used when generating report files for this report.
  9917  	FileName string `json:"fileName,omitempty"`
  9918  	// FloodlightCriteria: The report criteria for a report of type "FLOODLIGHT".
  9919  	FloodlightCriteria *ReportFloodlightCriteria `json:"floodlightCriteria,omitempty"`
  9920  	// Format: The output format of the report. If not specified, default format is
  9921  	// "CSV". Note that the actual format in the completed report file might differ
  9922  	// if for instance the report's size exceeds the format's capabilities. "CSV"
  9923  	// will then be the fallback format.
  9924  	//
  9925  	// Possible values:
  9926  	//   "CSV"
  9927  	//   "EXCEL"
  9928  	Format string `json:"format,omitempty"`
  9929  	// Id: The unique ID identifying this report resource.
  9930  	Id int64 `json:"id,omitempty,string"`
  9931  	// Kind: The kind of resource this is, in this case dfareporting#report.
  9932  	Kind string `json:"kind,omitempty"`
  9933  	// LastModifiedTime: The timestamp (in milliseconds since epoch) of when this
  9934  	// report was last modified.
  9935  	LastModifiedTime uint64 `json:"lastModifiedTime,omitempty,string"`
  9936  	// Name: The name of the report.
  9937  	Name string `json:"name,omitempty"`
  9938  	// OwnerProfileId: The user profile id of the owner of this report.
  9939  	OwnerProfileId int64 `json:"ownerProfileId,omitempty,string"`
  9940  	// PathAttributionCriteria: The report criteria for a report of type
  9941  	// "PATH_ATTRIBUTION".
  9942  	PathAttributionCriteria *ReportPathAttributionCriteria `json:"pathAttributionCriteria,omitempty"`
  9943  	// PathCriteria: The report criteria for a report of type "PATH".
  9944  	PathCriteria *ReportPathCriteria `json:"pathCriteria,omitempty"`
  9945  	// PathToConversionCriteria: The report criteria for a report of type
  9946  	// "PATH_TO_CONVERSION".
  9947  	PathToConversionCriteria *ReportPathToConversionCriteria `json:"pathToConversionCriteria,omitempty"`
  9948  	// ReachCriteria: The report criteria for a report of type "REACH".
  9949  	ReachCriteria *ReportReachCriteria `json:"reachCriteria,omitempty"`
  9950  	// Schedule: The report's schedule. Can only be set if the report's 'dateRange'
  9951  	// is a relative date range and the relative date range is not "TODAY".
  9952  	Schedule *ReportSchedule `json:"schedule,omitempty"`
  9953  	// SubAccountId: The subaccount ID to which this report belongs if applicable.
  9954  	SubAccountId int64 `json:"subAccountId,omitempty,string"`
  9955  	// Type: The type of the report.
  9956  	//
  9957  	// Possible values:
  9958  	//   "STANDARD"
  9959  	//   "REACH"
  9960  	//   "PATH_TO_CONVERSION"
  9961  	//   "CROSS_DIMENSION_REACH"
  9962  	//   "FLOODLIGHT"
  9963  	//   "PATH"
  9964  	//   "PATH_ATTRIBUTION"
  9965  	Type string `json:"type,omitempty"`
  9966  
  9967  	// ServerResponse contains the HTTP response code and headers from the server.
  9968  	googleapi.ServerResponse `json:"-"`
  9969  	// ForceSendFields is a list of field names (e.g. "AccountId") to
  9970  	// unconditionally include in API requests. By default, fields with empty or
  9971  	// default values are omitted from API requests. See
  9972  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  9973  	// details.
  9974  	ForceSendFields []string `json:"-"`
  9975  	// NullFields is a list of field names (e.g. "AccountId") to include in API
  9976  	// requests with the JSON null value. By default, fields with empty values are
  9977  	// omitted from API requests. See
  9978  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  9979  	NullFields []string `json:"-"`
  9980  }
  9981  
  9982  func (s *Report) MarshalJSON() ([]byte, error) {
  9983  	type NoMethod Report
  9984  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  9985  }
  9986  
  9987  // ReportCriteria: The report criteria for a report of type "STANDARD".
  9988  type ReportCriteria struct {
  9989  	// Activities: Activity group.
  9990  	Activities *Activities `json:"activities,omitempty"`
  9991  	// CustomRichMediaEvents: Custom Rich Media Events group.
  9992  	CustomRichMediaEvents *CustomRichMediaEvents `json:"customRichMediaEvents,omitempty"`
  9993  	// DateRange: The date range for which this report should be run.
  9994  	DateRange *DateRange `json:"dateRange,omitempty"`
  9995  	// DimensionFilters: The list of filters on which dimensions are filtered.
  9996  	// Filters for different dimensions are ANDed, filters for the same dimension
  9997  	// are grouped together and ORed.
  9998  	DimensionFilters []*DimensionValue `json:"dimensionFilters,omitempty"`
  9999  	// Dimensions: The list of standard dimensions the report should include.
 10000  	Dimensions []*SortedDimension `json:"dimensions,omitempty"`
 10001  	// MetricNames: The list of names of metrics the report should include.
 10002  	MetricNames []string `json:"metricNames,omitempty"`
 10003  	// ForceSendFields is a list of field names (e.g. "Activities") to
 10004  	// unconditionally include in API requests. By default, fields with empty or
 10005  	// default values are omitted from API requests. See
 10006  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10007  	// details.
 10008  	ForceSendFields []string `json:"-"`
 10009  	// NullFields is a list of field names (e.g. "Activities") to include in API
 10010  	// requests with the JSON null value. By default, fields with empty values are
 10011  	// omitted from API requests. See
 10012  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10013  	NullFields []string `json:"-"`
 10014  }
 10015  
 10016  func (s *ReportCriteria) MarshalJSON() ([]byte, error) {
 10017  	type NoMethod ReportCriteria
 10018  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10019  }
 10020  
 10021  // ReportCrossDimensionReachCriteria: The report criteria for a report of type
 10022  // "CROSS_DIMENSION_REACH".
 10023  type ReportCrossDimensionReachCriteria struct {
 10024  	// Breakdown: The list of dimensions the report should include.
 10025  	Breakdown []*SortedDimension `json:"breakdown,omitempty"`
 10026  	// DateRange: The date range this report should be run for.
 10027  	DateRange *DateRange `json:"dateRange,omitempty"`
 10028  	// Dimension: The dimension option.
 10029  	//
 10030  	// Possible values:
 10031  	//   "ADVERTISER"
 10032  	//   "CAMPAIGN"
 10033  	//   "SITE_BY_ADVERTISER"
 10034  	//   "SITE_BY_CAMPAIGN"
 10035  	Dimension string `json:"dimension,omitempty"`
 10036  	// DimensionFilters: The list of filters on which dimensions are filtered.
 10037  	DimensionFilters []*DimensionValue `json:"dimensionFilters,omitempty"`
 10038  	// MetricNames: The list of names of metrics the report should include.
 10039  	MetricNames []string `json:"metricNames,omitempty"`
 10040  	// OverlapMetricNames: The list of names of overlap metrics the report should
 10041  	// include.
 10042  	OverlapMetricNames []string `json:"overlapMetricNames,omitempty"`
 10043  	// Pivoted: Whether the report is pivoted or not. Defaults to true.
 10044  	Pivoted bool `json:"pivoted,omitempty"`
 10045  	// ForceSendFields is a list of field names (e.g. "Breakdown") to
 10046  	// unconditionally include in API requests. By default, fields with empty or
 10047  	// default values are omitted from API requests. See
 10048  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10049  	// details.
 10050  	ForceSendFields []string `json:"-"`
 10051  	// NullFields is a list of field names (e.g. "Breakdown") to include in API
 10052  	// requests with the JSON null value. By default, fields with empty values are
 10053  	// omitted from API requests. See
 10054  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10055  	NullFields []string `json:"-"`
 10056  }
 10057  
 10058  func (s *ReportCrossDimensionReachCriteria) MarshalJSON() ([]byte, error) {
 10059  	type NoMethod ReportCrossDimensionReachCriteria
 10060  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10061  }
 10062  
 10063  // ReportDelivery: The report's email delivery settings.
 10064  type ReportDelivery struct {
 10065  	// EmailOwner: Whether the report should be emailed to the report owner.
 10066  	EmailOwner bool `json:"emailOwner,omitempty"`
 10067  	// EmailOwnerDeliveryType: The type of delivery for the owner to receive, if
 10068  	// enabled.
 10069  	//
 10070  	// Possible values:
 10071  	//   "LINK"
 10072  	//   "ATTACHMENT"
 10073  	EmailOwnerDeliveryType string `json:"emailOwnerDeliveryType,omitempty"`
 10074  	// Message: The message to be sent with each email.
 10075  	Message string `json:"message,omitempty"`
 10076  	// Recipients: The list of recipients to which to email the report.
 10077  	Recipients []*Recipient `json:"recipients,omitempty"`
 10078  	// ForceSendFields is a list of field names (e.g. "EmailOwner") to
 10079  	// unconditionally include in API requests. By default, fields with empty or
 10080  	// default values are omitted from API requests. See
 10081  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10082  	// details.
 10083  	ForceSendFields []string `json:"-"`
 10084  	// NullFields is a list of field names (e.g. "EmailOwner") to include in API
 10085  	// requests with the JSON null value. By default, fields with empty values are
 10086  	// omitted from API requests. See
 10087  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10088  	NullFields []string `json:"-"`
 10089  }
 10090  
 10091  func (s *ReportDelivery) MarshalJSON() ([]byte, error) {
 10092  	type NoMethod ReportDelivery
 10093  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10094  }
 10095  
 10096  // ReportFloodlightCriteria: The report criteria for a report of type
 10097  // "FLOODLIGHT".
 10098  type ReportFloodlightCriteria struct {
 10099  	// CustomRichMediaEvents: The list of custom rich media events to include.
 10100  	CustomRichMediaEvents []*DimensionValue `json:"customRichMediaEvents,omitempty"`
 10101  	// DateRange: The date range this report should be run for.
 10102  	DateRange *DateRange `json:"dateRange,omitempty"`
 10103  	// DimensionFilters: The list of filters on which dimensions are filtered.
 10104  	// Filters for different dimensions are ANDed, filters for the same dimension
 10105  	// are grouped together and ORed.
 10106  	DimensionFilters []*DimensionValue `json:"dimensionFilters,omitempty"`
 10107  	// Dimensions: The list of dimensions the report should include.
 10108  	Dimensions []*SortedDimension `json:"dimensions,omitempty"`
 10109  	// FloodlightConfigId: The floodlight ID for which to show data in this report.
 10110  	// All advertisers associated with that ID will automatically be added. The
 10111  	// dimension of the value needs to be 'dfa:floodlightConfigId'.
 10112  	FloodlightConfigId *DimensionValue `json:"floodlightConfigId,omitempty"`
 10113  	// MetricNames: The list of names of metrics the report should include.
 10114  	MetricNames []string `json:"metricNames,omitempty"`
 10115  	// ReportProperties: The properties of the report.
 10116  	ReportProperties *ReportFloodlightCriteriaReportProperties `json:"reportProperties,omitempty"`
 10117  	// ForceSendFields is a list of field names (e.g. "CustomRichMediaEvents") to
 10118  	// unconditionally include in API requests. By default, fields with empty or
 10119  	// default values are omitted from API requests. See
 10120  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10121  	// details.
 10122  	ForceSendFields []string `json:"-"`
 10123  	// NullFields is a list of field names (e.g. "CustomRichMediaEvents") to
 10124  	// include in API requests with the JSON null value. By default, fields with
 10125  	// empty values are omitted from API requests. See
 10126  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10127  	NullFields []string `json:"-"`
 10128  }
 10129  
 10130  func (s *ReportFloodlightCriteria) MarshalJSON() ([]byte, error) {
 10131  	type NoMethod ReportFloodlightCriteria
 10132  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10133  }
 10134  
 10135  // ReportFloodlightCriteriaReportProperties: The properties of the report.
 10136  type ReportFloodlightCriteriaReportProperties struct {
 10137  	// IncludeAttributedIPConversions: Include conversions that have no cookie, but
 10138  	// do have an exposure path.
 10139  	IncludeAttributedIPConversions bool `json:"includeAttributedIPConversions,omitempty"`
 10140  	// IncludeUnattributedCookieConversions: Include conversions of users with a
 10141  	// DoubleClick cookie but without an exposure. That means the user did not
 10142  	// click or see an ad from the advertiser within the Floodlight group, or that
 10143  	// the interaction happened outside the lookback window.
 10144  	IncludeUnattributedCookieConversions bool `json:"includeUnattributedCookieConversions,omitempty"`
 10145  	// IncludeUnattributedIPConversions: Include conversions that have no
 10146  	// associated cookies and no exposures. It’s therefore impossible to know how
 10147  	// the user was exposed to your ads during the lookback window prior to a
 10148  	// conversion.
 10149  	IncludeUnattributedIPConversions bool `json:"includeUnattributedIPConversions,omitempty"`
 10150  	// ForceSendFields is a list of field names (e.g.
 10151  	// "IncludeAttributedIPConversions") to unconditionally include in API
 10152  	// requests. By default, fields with empty or default values are omitted from
 10153  	// API requests. See
 10154  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10155  	// details.
 10156  	ForceSendFields []string `json:"-"`
 10157  	// NullFields is a list of field names (e.g. "IncludeAttributedIPConversions")
 10158  	// to include in API requests with the JSON null value. By default, fields with
 10159  	// empty values are omitted from API requests. See
 10160  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10161  	NullFields []string `json:"-"`
 10162  }
 10163  
 10164  func (s *ReportFloodlightCriteriaReportProperties) MarshalJSON() ([]byte, error) {
 10165  	type NoMethod ReportFloodlightCriteriaReportProperties
 10166  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10167  }
 10168  
 10169  // ReportPathAttributionCriteria: The report criteria for a report of type
 10170  // "PATH_ATTRIBUTION".
 10171  type ReportPathAttributionCriteria struct {
 10172  	// ActivityFilters: The list of 'dfa:activity' values to filter on.
 10173  	ActivityFilters []*DimensionValue `json:"activityFilters,omitempty"`
 10174  	// CustomChannelGrouping: Channel Grouping.
 10175  	CustomChannelGrouping *ChannelGrouping `json:"customChannelGrouping,omitempty"`
 10176  	// DateRange: The date range this report should be run for.
 10177  	DateRange *DateRange `json:"dateRange,omitempty"`
 10178  	// Dimensions: The list of dimensions the report should include.
 10179  	Dimensions []*SortedDimension `json:"dimensions,omitempty"`
 10180  	// FloodlightConfigId: The floodlight ID for which to show data in this report.
 10181  	// All advertisers associated with that ID will automatically be added. The
 10182  	// dimension of the value needs to be 'dfa:floodlightConfigId'.
 10183  	FloodlightConfigId *DimensionValue `json:"floodlightConfigId,omitempty"`
 10184  	// MetricNames: The list of names of metrics the report should include.
 10185  	MetricNames []string `json:"metricNames,omitempty"`
 10186  	// PathFilters: Path Filters.
 10187  	PathFilters []*PathFilter `json:"pathFilters,omitempty"`
 10188  	// ForceSendFields is a list of field names (e.g. "ActivityFilters") to
 10189  	// unconditionally include in API requests. By default, fields with empty or
 10190  	// default values are omitted from API requests. See
 10191  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10192  	// details.
 10193  	ForceSendFields []string `json:"-"`
 10194  	// NullFields is a list of field names (e.g. "ActivityFilters") to include in
 10195  	// API requests with the JSON null value. By default, fields with empty values
 10196  	// are omitted from API requests. See
 10197  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10198  	NullFields []string `json:"-"`
 10199  }
 10200  
 10201  func (s *ReportPathAttributionCriteria) MarshalJSON() ([]byte, error) {
 10202  	type NoMethod ReportPathAttributionCriteria
 10203  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10204  }
 10205  
 10206  // ReportPathCriteria: The report criteria for a report of type "PATH".
 10207  type ReportPathCriteria struct {
 10208  	// ActivityFilters: The list of 'dfa:activity' values to filter on.
 10209  	ActivityFilters []*DimensionValue `json:"activityFilters,omitempty"`
 10210  	// CustomChannelGrouping: Channel Grouping.
 10211  	CustomChannelGrouping *ChannelGrouping `json:"customChannelGrouping,omitempty"`
 10212  	// DateRange: The date range this report should be run for.
 10213  	DateRange *DateRange `json:"dateRange,omitempty"`
 10214  	// Dimensions: The list of dimensions the report should include.
 10215  	Dimensions []*SortedDimension `json:"dimensions,omitempty"`
 10216  	// FloodlightConfigId: The floodlight ID for which to show data in this report.
 10217  	// All advertisers associated with that ID will automatically be added. The
 10218  	// dimension of the value needs to be 'dfa:floodlightConfigId'.
 10219  	FloodlightConfigId *DimensionValue `json:"floodlightConfigId,omitempty"`
 10220  	// MetricNames: The list of names of metrics the report should include.
 10221  	MetricNames []string `json:"metricNames,omitempty"`
 10222  	// PathFilters: Path Filters.
 10223  	PathFilters []*PathFilter `json:"pathFilters,omitempty"`
 10224  	// ForceSendFields is a list of field names (e.g. "ActivityFilters") to
 10225  	// unconditionally include in API requests. By default, fields with empty or
 10226  	// default values are omitted from API requests. See
 10227  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10228  	// details.
 10229  	ForceSendFields []string `json:"-"`
 10230  	// NullFields is a list of field names (e.g. "ActivityFilters") to include in
 10231  	// API requests with the JSON null value. By default, fields with empty values
 10232  	// are omitted from API requests. See
 10233  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10234  	NullFields []string `json:"-"`
 10235  }
 10236  
 10237  func (s *ReportPathCriteria) MarshalJSON() ([]byte, error) {
 10238  	type NoMethod ReportPathCriteria
 10239  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10240  }
 10241  
 10242  // ReportPathToConversionCriteria: The report criteria for a report of type
 10243  // "PATH_TO_CONVERSION".
 10244  type ReportPathToConversionCriteria struct {
 10245  	// ActivityFilters: The list of 'dfa:activity' values to filter on.
 10246  	ActivityFilters []*DimensionValue `json:"activityFilters,omitempty"`
 10247  	// ConversionDimensions: The list of conversion dimensions the report should
 10248  	// include.
 10249  	ConversionDimensions []*SortedDimension `json:"conversionDimensions,omitempty"`
 10250  	// CustomFloodlightVariables: The list of custom floodlight variables the
 10251  	// report should include.
 10252  	CustomFloodlightVariables []*SortedDimension `json:"customFloodlightVariables,omitempty"`
 10253  	// CustomRichMediaEvents: The list of custom rich media events to include.
 10254  	CustomRichMediaEvents []*DimensionValue `json:"customRichMediaEvents,omitempty"`
 10255  	// DateRange: The date range this report should be run for.
 10256  	DateRange *DateRange `json:"dateRange,omitempty"`
 10257  	// FloodlightConfigId: The floodlight ID for which to show data in this report.
 10258  	// All advertisers associated with that ID will automatically be added. The
 10259  	// dimension of the value needs to be 'dfa:floodlightConfigId'.
 10260  	FloodlightConfigId *DimensionValue `json:"floodlightConfigId,omitempty"`
 10261  	// MetricNames: The list of names of metrics the report should include.
 10262  	MetricNames []string `json:"metricNames,omitempty"`
 10263  	// PerInteractionDimensions: The list of per interaction dimensions the report
 10264  	// should include.
 10265  	PerInteractionDimensions []*SortedDimension `json:"perInteractionDimensions,omitempty"`
 10266  	// ReportProperties: The properties of the report.
 10267  	ReportProperties *ReportPathToConversionCriteriaReportProperties `json:"reportProperties,omitempty"`
 10268  	// ForceSendFields is a list of field names (e.g. "ActivityFilters") to
 10269  	// unconditionally include in API requests. By default, fields with empty or
 10270  	// default values are omitted from API requests. See
 10271  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10272  	// details.
 10273  	ForceSendFields []string `json:"-"`
 10274  	// NullFields is a list of field names (e.g. "ActivityFilters") to include in
 10275  	// API requests with the JSON null value. By default, fields with empty values
 10276  	// are omitted from API requests. See
 10277  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10278  	NullFields []string `json:"-"`
 10279  }
 10280  
 10281  func (s *ReportPathToConversionCriteria) MarshalJSON() ([]byte, error) {
 10282  	type NoMethod ReportPathToConversionCriteria
 10283  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10284  }
 10285  
 10286  // ReportPathToConversionCriteriaReportProperties: The properties of the
 10287  // report.
 10288  type ReportPathToConversionCriteriaReportProperties struct {
 10289  	// ClicksLookbackWindow: CM360 checks to see if a click interaction occurred
 10290  	// within the specified period of time before a conversion. By default the
 10291  	// value is pulled from Floodlight or you can manually enter a custom value.
 10292  	// Valid values: 1-90.
 10293  	ClicksLookbackWindow int64 `json:"clicksLookbackWindow,omitempty"`
 10294  	// ImpressionsLookbackWindow: CM360 checks to see if an impression interaction
 10295  	// occurred within the specified period of time before a conversion. By default
 10296  	// the value is pulled from Floodlight or you can manually enter a custom
 10297  	// value. Valid values: 1-90.
 10298  	ImpressionsLookbackWindow int64 `json:"impressionsLookbackWindow,omitempty"`
 10299  	// IncludeAttributedIPConversions: Deprecated: has no effect.
 10300  	IncludeAttributedIPConversions bool `json:"includeAttributedIPConversions,omitempty"`
 10301  	// IncludeUnattributedCookieConversions: Include conversions of users with a
 10302  	// DoubleClick cookie but without an exposure. That means the user did not
 10303  	// click or see an ad from the advertiser within the Floodlight group, or that
 10304  	// the interaction happened outside the lookback window.
 10305  	IncludeUnattributedCookieConversions bool `json:"includeUnattributedCookieConversions,omitempty"`
 10306  	// IncludeUnattributedIPConversions: Include conversions that have no
 10307  	// associated cookies and no exposures. It’s therefore impossible to know how
 10308  	// the user was exposed to your ads during the lookback window prior to a
 10309  	// conversion.
 10310  	IncludeUnattributedIPConversions bool `json:"includeUnattributedIPConversions,omitempty"`
 10311  	// MaximumClickInteractions: The maximum number of click interactions to
 10312  	// include in the report. Advertisers currently paying for E2C reports get up
 10313  	// to 200 (100 clicks, 100 impressions). If another advertiser in your network
 10314  	// is paying for E2C, you can have up to 5 total exposures per report.
 10315  	MaximumClickInteractions int64 `json:"maximumClickInteractions,omitempty"`
 10316  	// MaximumImpressionInteractions: The maximum number of click interactions to
 10317  	// include in the report. Advertisers currently paying for E2C reports get up
 10318  	// to 200 (100 clicks, 100 impressions). If another advertiser in your network
 10319  	// is paying for E2C, you can have up to 5 total exposures per report.
 10320  	MaximumImpressionInteractions int64 `json:"maximumImpressionInteractions,omitempty"`
 10321  	// MaximumInteractionGap: The maximum amount of time that can take place
 10322  	// between interactions (clicks or impressions) by the same user. Valid values:
 10323  	// 1-90.
 10324  	MaximumInteractionGap int64 `json:"maximumInteractionGap,omitempty"`
 10325  	// PivotOnInteractionPath: Enable pivoting on interaction path.
 10326  	PivotOnInteractionPath bool `json:"pivotOnInteractionPath,omitempty"`
 10327  	// ForceSendFields is a list of field names (e.g. "ClicksLookbackWindow") to
 10328  	// unconditionally include in API requests. By default, fields with empty or
 10329  	// default values are omitted from API requests. See
 10330  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10331  	// details.
 10332  	ForceSendFields []string `json:"-"`
 10333  	// NullFields is a list of field names (e.g. "ClicksLookbackWindow") to include
 10334  	// in API requests with the JSON null value. By default, fields with empty
 10335  	// values are omitted from API requests. See
 10336  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10337  	NullFields []string `json:"-"`
 10338  }
 10339  
 10340  func (s *ReportPathToConversionCriteriaReportProperties) MarshalJSON() ([]byte, error) {
 10341  	type NoMethod ReportPathToConversionCriteriaReportProperties
 10342  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10343  }
 10344  
 10345  // ReportReachCriteria: The report criteria for a report of type "REACH".
 10346  type ReportReachCriteria struct {
 10347  	// Activities: Activity group.
 10348  	Activities *Activities `json:"activities,omitempty"`
 10349  	// CustomRichMediaEvents: Custom Rich Media Events group.
 10350  	CustomRichMediaEvents *CustomRichMediaEvents `json:"customRichMediaEvents,omitempty"`
 10351  	// DateRange: The date range this report should be run for.
 10352  	DateRange *DateRange `json:"dateRange,omitempty"`
 10353  	// DimensionFilters: The list of filters on which dimensions are filtered.
 10354  	// Filters for different dimensions are ANDed, filters for the same dimension
 10355  	// are grouped together and ORed.
 10356  	DimensionFilters []*DimensionValue `json:"dimensionFilters,omitempty"`
 10357  	// Dimensions: The list of dimensions the report should include.
 10358  	Dimensions []*SortedDimension `json:"dimensions,omitempty"`
 10359  	// EnableAllDimensionCombinations: Whether to enable all reach dimension
 10360  	// combinations in the report. Defaults to false. If enabled, the date range of
 10361  	// the report should be within the last 42 days.
 10362  	EnableAllDimensionCombinations bool `json:"enableAllDimensionCombinations,omitempty"`
 10363  	// MetricNames: The list of names of metrics the report should include.
 10364  	MetricNames []string `json:"metricNames,omitempty"`
 10365  	// ReachByFrequencyMetricNames: The list of names of Reach By Frequency metrics
 10366  	// the report should include.
 10367  	ReachByFrequencyMetricNames []string `json:"reachByFrequencyMetricNames,omitempty"`
 10368  	// ForceSendFields is a list of field names (e.g. "Activities") to
 10369  	// unconditionally include in API requests. By default, fields with empty or
 10370  	// default values are omitted from API requests. See
 10371  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10372  	// details.
 10373  	ForceSendFields []string `json:"-"`
 10374  	// NullFields is a list of field names (e.g. "Activities") to include in API
 10375  	// requests with the JSON null value. By default, fields with empty values are
 10376  	// omitted from API requests. See
 10377  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10378  	NullFields []string `json:"-"`
 10379  }
 10380  
 10381  func (s *ReportReachCriteria) MarshalJSON() ([]byte, error) {
 10382  	type NoMethod ReportReachCriteria
 10383  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10384  }
 10385  
 10386  // ReportSchedule: The report's schedule. Can only be set if the report's
 10387  // 'dateRange' is a relative date range and the relative date range is not
 10388  // "TODAY".
 10389  type ReportSchedule struct {
 10390  	// Active: Whether the schedule is active or not. Must be set to either true or
 10391  	// false.
 10392  	Active bool `json:"active,omitempty"`
 10393  	// Every: Defines every how many days, weeks or months the report should be
 10394  	// run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or
 10395  	// "MONTHLY".
 10396  	Every          int64  `json:"every,omitempty"`
 10397  	ExpirationDate string `json:"expirationDate,omitempty"`
 10398  	// Repeats: The interval for which the report is repeated. Note: - "DAILY" also
 10399  	// requires field "every" to be set. - "WEEKLY" also requires fields "every"
 10400  	// and "repeatsOnWeekDays" to be set. - "MONTHLY" also requires fields "every"
 10401  	// and "runsOnDayOfMonth" to be set.
 10402  	Repeats string `json:"repeats,omitempty"`
 10403  	// RepeatsOnWeekDays: List of week days "WEEKLY" on which scheduled reports
 10404  	// should run.
 10405  	//
 10406  	// Possible values:
 10407  	//   "SUNDAY"
 10408  	//   "MONDAY"
 10409  	//   "TUESDAY"
 10410  	//   "WEDNESDAY"
 10411  	//   "THURSDAY"
 10412  	//   "FRIDAY"
 10413  	//   "SATURDAY"
 10414  	RepeatsOnWeekDays []string `json:"repeatsOnWeekDays,omitempty"`
 10415  	// RunsOnDayOfMonth: Enum to define for "MONTHLY" scheduled reports whether
 10416  	// reports should be repeated on the same day of the month as "startDate" or
 10417  	// the same day of the week of the month. Example: If 'startDate' is Monday,
 10418  	// April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on
 10419  	// the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on
 10420  	// the first Monday of the month.
 10421  	//
 10422  	// Possible values:
 10423  	//   "DAY_OF_MONTH"
 10424  	//   "WEEK_OF_MONTH"
 10425  	RunsOnDayOfMonth string `json:"runsOnDayOfMonth,omitempty"`
 10426  	StartDate        string `json:"startDate,omitempty"`
 10427  	// Timezone: The timezone when the report will run.
 10428  	Timezone string `json:"timezone,omitempty"`
 10429  	// ForceSendFields is a list of field names (e.g. "Active") to unconditionally
 10430  	// include in API requests. By default, fields with empty or default values are
 10431  	// omitted from API requests. See
 10432  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10433  	// details.
 10434  	ForceSendFields []string `json:"-"`
 10435  	// NullFields is a list of field names (e.g. "Active") to include in API
 10436  	// requests with the JSON null value. By default, fields with empty values are
 10437  	// omitted from API requests. See
 10438  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10439  	NullFields []string `json:"-"`
 10440  }
 10441  
 10442  func (s *ReportSchedule) MarshalJSON() ([]byte, error) {
 10443  	type NoMethod ReportSchedule
 10444  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10445  }
 10446  
 10447  // ReportCompatibleFields: Represents fields that are compatible to be selected
 10448  // for a report of type "STANDARD".
 10449  type ReportCompatibleFields struct {
 10450  	// DimensionFilters: Dimensions which are compatible to be selected in the
 10451  	// "dimensionFilters" section of the report.
 10452  	DimensionFilters []*Dimension `json:"dimensionFilters,omitempty"`
 10453  	// Dimensions: Dimensions which are compatible to be selected in the
 10454  	// "dimensions" section of the report.
 10455  	Dimensions []*Dimension `json:"dimensions,omitempty"`
 10456  	// Kind: The kind of resource this is, in this case
 10457  	// dfareporting#reportCompatibleFields.
 10458  	Kind string `json:"kind,omitempty"`
 10459  	// Metrics: Metrics which are compatible to be selected in the "metricNames"
 10460  	// section of the report.
 10461  	Metrics []*Metric `json:"metrics,omitempty"`
 10462  	// PivotedActivityMetrics: Metrics which are compatible to be selected as
 10463  	// activity metrics to pivot on in the "activities" section of the report.
 10464  	PivotedActivityMetrics []*Metric `json:"pivotedActivityMetrics,omitempty"`
 10465  	// ForceSendFields is a list of field names (e.g. "DimensionFilters") to
 10466  	// unconditionally include in API requests. By default, fields with empty or
 10467  	// default values are omitted from API requests. See
 10468  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10469  	// details.
 10470  	ForceSendFields []string `json:"-"`
 10471  	// NullFields is a list of field names (e.g. "DimensionFilters") to include in
 10472  	// API requests with the JSON null value. By default, fields with empty values
 10473  	// are omitted from API requests. See
 10474  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10475  	NullFields []string `json:"-"`
 10476  }
 10477  
 10478  func (s *ReportCompatibleFields) MarshalJSON() ([]byte, error) {
 10479  	type NoMethod ReportCompatibleFields
 10480  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10481  }
 10482  
 10483  // ReportList: Represents the list of reports.
 10484  type ReportList struct {
 10485  	// Etag: The eTag of this response for caching purposes.
 10486  	Etag string `json:"etag,omitempty"`
 10487  	// Items: The reports returned in this response.
 10488  	Items []*Report `json:"items,omitempty"`
 10489  	// Kind: The kind of list this is, in this case dfareporting#reportList.
 10490  	Kind string `json:"kind,omitempty"`
 10491  	// NextPageToken: Continuation token used to page through reports. To retrieve
 10492  	// the next page of results, set the next request's "pageToken" to the value of
 10493  	// this field. The page token is only valid for a limited amount of time and
 10494  	// should not be persisted.
 10495  	NextPageToken string `json:"nextPageToken,omitempty"`
 10496  
 10497  	// ServerResponse contains the HTTP response code and headers from the server.
 10498  	googleapi.ServerResponse `json:"-"`
 10499  	// ForceSendFields is a list of field names (e.g. "Etag") to unconditionally
 10500  	// include in API requests. By default, fields with empty or default values are
 10501  	// omitted from API requests. See
 10502  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10503  	// details.
 10504  	ForceSendFields []string `json:"-"`
 10505  	// NullFields is a list of field names (e.g. "Etag") to include in API requests
 10506  	// with the JSON null value. By default, fields with empty values are omitted
 10507  	// from API requests. See
 10508  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10509  	NullFields []string `json:"-"`
 10510  }
 10511  
 10512  func (s *ReportList) MarshalJSON() ([]byte, error) {
 10513  	type NoMethod ReportList
 10514  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10515  }
 10516  
 10517  // ReportsConfiguration: Reporting Configuration
 10518  type ReportsConfiguration struct {
 10519  	// ExposureToConversionEnabled: Whether the exposure to conversion report is
 10520  	// enabled. This report shows detailed pathway information on up to 10 of the
 10521  	// most recent ad exposures seen by a user before converting.
 10522  	ExposureToConversionEnabled bool `json:"exposureToConversionEnabled,omitempty"`
 10523  	// LookbackConfiguration: Default lookback windows for new advertisers in this
 10524  	// account.
 10525  	LookbackConfiguration *LookbackConfiguration `json:"lookbackConfiguration,omitempty"`
 10526  	// ReportGenerationTimeZoneId: Report generation time zone ID of this account.
 10527  	// This is a required field that cannot be changed on update. Acceptable values
 10528  	// are: - "1" for "America/New_York" - "2" for "Europe/London" - "3" for
 10529  	// "Europe/Paris" - "4" for "Africa/Johannesburg" - "5" for "Asia/Jerusalem" -
 10530  	// "6" for "Asia/Shanghai" - "7" for "Asia/Hong_Kong" - "8" for "Asia/Tokyo" -
 10531  	// "9" for "Australia/Sydney" - "10" for "Asia/Dubai" - "11" for
 10532  	// "America/Los_Angeles" - "12" for "Pacific/Auckland" - "13" for
 10533  	// "America/Sao_Paulo" - "16" for "America/Asuncion" - "17" for
 10534  	// "America/Chicago" - "18" for "America/Denver" - "19" for "America/St_Johns"
 10535  	// - "20" for "Asia/Dhaka" - "21" for "Asia/Jakarta" - "22" for "Asia/Kabul" -
 10536  	// "23" for "Asia/Karachi" - "24" for "Asia/Calcutta" - "25" for
 10537  	// "Asia/Pyongyang" - "26" for "Asia/Rangoon" - "27" for "Atlantic/Cape_Verde"
 10538  	// - "28" for "Atlantic/South_Georgia" - "29" for "Australia/Adelaide" - "30"
 10539  	// for "Australia/Lord_Howe" - "31" for "Europe/Moscow" - "32" for
 10540  	// "Pacific/Kiritimati" - "35" for "Pacific/Norfolk" - "36" for
 10541  	// "Pacific/Tongatapu"
 10542  	ReportGenerationTimeZoneId int64 `json:"reportGenerationTimeZoneId,omitempty,string"`
 10543  	// ForceSendFields is a list of field names (e.g.
 10544  	// "ExposureToConversionEnabled") to unconditionally include in API requests.
 10545  	// By default, fields with empty or default values are omitted from API
 10546  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
 10547  	// for more details.
 10548  	ForceSendFields []string `json:"-"`
 10549  	// NullFields is a list of field names (e.g. "ExposureToConversionEnabled") to
 10550  	// include in API requests with the JSON null value. By default, fields with
 10551  	// empty values are omitted from API requests. See
 10552  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10553  	NullFields []string `json:"-"`
 10554  }
 10555  
 10556  func (s *ReportsConfiguration) MarshalJSON() ([]byte, error) {
 10557  	type NoMethod ReportsConfiguration
 10558  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10559  }
 10560  
 10561  // RichMediaExitOverride: Rich Media Exit Override.
 10562  type RichMediaExitOverride struct {
 10563  	// ClickThroughUrl: Click-through URL of this rich media exit override.
 10564  	// Applicable if the enabled field is set to true.
 10565  	ClickThroughUrl *ClickThroughUrl `json:"clickThroughUrl,omitempty"`
 10566  	// Enabled: Whether to use the clickThroughUrl. If false, the creative-level
 10567  	// exit will be used.
 10568  	Enabled bool `json:"enabled,omitempty"`
 10569  	// ExitId: ID for the override to refer to a specific exit in the creative.
 10570  	ExitId int64 `json:"exitId,omitempty,string"`
 10571  	// ForceSendFields is a list of field names (e.g. "ClickThroughUrl") to
 10572  	// unconditionally include in API requests. By default, fields with empty or
 10573  	// default values are omitted from API requests. See
 10574  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10575  	// details.
 10576  	ForceSendFields []string `json:"-"`
 10577  	// NullFields is a list of field names (e.g. "ClickThroughUrl") to include in
 10578  	// API requests with the JSON null value. By default, fields with empty values
 10579  	// are omitted from API requests. See
 10580  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10581  	NullFields []string `json:"-"`
 10582  }
 10583  
 10584  func (s *RichMediaExitOverride) MarshalJSON() ([]byte, error) {
 10585  	type NoMethod RichMediaExitOverride
 10586  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10587  }
 10588  
 10589  // Rule: A rule associates an asset with a targeting template for asset-level
 10590  // targeting. Applicable to INSTREAM_VIDEO creatives.
 10591  type Rule struct {
 10592  	// AssetId: A creativeAssets[].id. This should refer to one of the parent
 10593  	// assets in this creative. This is a required field.
 10594  	AssetId int64 `json:"assetId,omitempty,string"`
 10595  	// Name: A user-friendly name for this rule. This is a required field.
 10596  	Name string `json:"name,omitempty"`
 10597  	// TargetingTemplateId: A targeting template ID. The targeting from the
 10598  	// targeting template will be used to determine whether this asset should be
 10599  	// served. This is a required field.
 10600  	TargetingTemplateId int64 `json:"targetingTemplateId,omitempty,string"`
 10601  	// ForceSendFields is a list of field names (e.g. "AssetId") to unconditionally
 10602  	// include in API requests. By default, fields with empty or default values are
 10603  	// omitted from API requests. See
 10604  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10605  	// details.
 10606  	ForceSendFields []string `json:"-"`
 10607  	// NullFields is a list of field names (e.g. "AssetId") to include in API
 10608  	// requests with the JSON null value. By default, fields with empty values are
 10609  	// omitted from API requests. See
 10610  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10611  	NullFields []string `json:"-"`
 10612  }
 10613  
 10614  func (s *Rule) MarshalJSON() ([]byte, error) {
 10615  	type NoMethod Rule
 10616  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10617  }
 10618  
 10619  // Site: Contains properties of a site.
 10620  type Site struct {
 10621  	// AccountId: Account ID of this site. This is a read-only field that can be
 10622  	// left blank.
 10623  	AccountId int64 `json:"accountId,omitempty,string"`
 10624  	// Approved: Whether this site is approved.
 10625  	Approved bool `json:"approved,omitempty"`
 10626  	// DirectorySiteId: Directory site associated with this site. This is a
 10627  	// required field that is read-only after insertion.
 10628  	DirectorySiteId int64 `json:"directorySiteId,omitempty,string"`
 10629  	// DirectorySiteIdDimensionValue: Dimension value for the ID of the directory
 10630  	// site. This is a read-only, auto-generated field.
 10631  	DirectorySiteIdDimensionValue *DimensionValue `json:"directorySiteIdDimensionValue,omitempty"`
 10632  	// Id: ID of this site. This is a read-only, auto-generated field.
 10633  	Id int64 `json:"id,omitempty,string"`
 10634  	// IdDimensionValue: Dimension value for the ID of this site. This is a
 10635  	// read-only, auto-generated field.
 10636  	IdDimensionValue *DimensionValue `json:"idDimensionValue,omitempty"`
 10637  	// KeyName: Key name of this site. This is a read-only, auto-generated field.
 10638  	KeyName string `json:"keyName,omitempty"`
 10639  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 10640  	// "dfareporting#site".
 10641  	Kind string `json:"kind,omitempty"`
 10642  	// Name: Name of this site.This is a required field. Must be less than 128
 10643  	// characters long. If this site is under a subaccount, the name must be unique
 10644  	// among sites of the same subaccount. Otherwise, this site is a top-level
 10645  	// site, and the name must be unique among top-level sites of the same account.
 10646  	Name string `json:"name,omitempty"`
 10647  	// SiteContacts: Site contacts.
 10648  	SiteContacts []*SiteContact `json:"siteContacts,omitempty"`
 10649  	// SiteSettings: Site-wide settings.
 10650  	SiteSettings *SiteSettings `json:"siteSettings,omitempty"`
 10651  	// SubaccountId: Subaccount ID of this site. This is a read-only field that can
 10652  	// be left blank.
 10653  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
 10654  	// VideoSettings: Default video settings for new placements created under this
 10655  	// site. This value will be used to populate the placements.videoSettings
 10656  	// field, when no value is specified for the new placement.
 10657  	VideoSettings *SiteVideoSettings `json:"videoSettings,omitempty"`
 10658  
 10659  	// ServerResponse contains the HTTP response code and headers from the server.
 10660  	googleapi.ServerResponse `json:"-"`
 10661  	// ForceSendFields is a list of field names (e.g. "AccountId") to
 10662  	// unconditionally include in API requests. By default, fields with empty or
 10663  	// default values are omitted from API requests. See
 10664  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10665  	// details.
 10666  	ForceSendFields []string `json:"-"`
 10667  	// NullFields is a list of field names (e.g. "AccountId") to include in API
 10668  	// requests with the JSON null value. By default, fields with empty values are
 10669  	// omitted from API requests. See
 10670  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10671  	NullFields []string `json:"-"`
 10672  }
 10673  
 10674  func (s *Site) MarshalJSON() ([]byte, error) {
 10675  	type NoMethod Site
 10676  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10677  }
 10678  
 10679  // SiteCompanionSetting: Companion Settings
 10680  type SiteCompanionSetting struct {
 10681  	// CompanionsDisabled: Whether companions are disabled for this site template.
 10682  	CompanionsDisabled bool `json:"companionsDisabled,omitempty"`
 10683  	// EnabledSizes: Allowlist of companion sizes to be served via this site
 10684  	// template. Set this list to null or empty to serve all companion sizes.
 10685  	EnabledSizes []*Size `json:"enabledSizes,omitempty"`
 10686  	// ImageOnly: Whether to serve only static images as companions.
 10687  	ImageOnly bool `json:"imageOnly,omitempty"`
 10688  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 10689  	// "dfareporting#siteCompanionSetting".
 10690  	Kind string `json:"kind,omitempty"`
 10691  	// ForceSendFields is a list of field names (e.g. "CompanionsDisabled") to
 10692  	// unconditionally include in API requests. By default, fields with empty or
 10693  	// default values are omitted from API requests. See
 10694  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10695  	// details.
 10696  	ForceSendFields []string `json:"-"`
 10697  	// NullFields is a list of field names (e.g. "CompanionsDisabled") to include
 10698  	// in API requests with the JSON null value. By default, fields with empty
 10699  	// values are omitted from API requests. See
 10700  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10701  	NullFields []string `json:"-"`
 10702  }
 10703  
 10704  func (s *SiteCompanionSetting) MarshalJSON() ([]byte, error) {
 10705  	type NoMethod SiteCompanionSetting
 10706  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10707  }
 10708  
 10709  // SiteContact: Site Contact
 10710  type SiteContact struct {
 10711  	// Address: Address of this site contact.
 10712  	Address string `json:"address,omitempty"`
 10713  	// ContactType: Site contact type.
 10714  	//
 10715  	// Possible values:
 10716  	//   "SALES_PERSON"
 10717  	//   "TRAFFICKER"
 10718  	ContactType string `json:"contactType,omitempty"`
 10719  	// Email: Email address of this site contact. This is a required field.
 10720  	Email string `json:"email,omitempty"`
 10721  	// FirstName: First name of this site contact.
 10722  	FirstName string `json:"firstName,omitempty"`
 10723  	// Id: ID of this site contact. This is a read-only, auto-generated field.
 10724  	Id int64 `json:"id,omitempty,string"`
 10725  	// LastName: Last name of this site contact.
 10726  	LastName string `json:"lastName,omitempty"`
 10727  	// Phone: Primary phone number of this site contact.
 10728  	Phone string `json:"phone,omitempty"`
 10729  	// Title: Title or designation of this site contact.
 10730  	Title string `json:"title,omitempty"`
 10731  	// ForceSendFields is a list of field names (e.g. "Address") to unconditionally
 10732  	// include in API requests. By default, fields with empty or default values are
 10733  	// omitted from API requests. See
 10734  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10735  	// details.
 10736  	ForceSendFields []string `json:"-"`
 10737  	// NullFields is a list of field names (e.g. "Address") to include in API
 10738  	// requests with the JSON null value. By default, fields with empty values are
 10739  	// omitted from API requests. See
 10740  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10741  	NullFields []string `json:"-"`
 10742  }
 10743  
 10744  func (s *SiteContact) MarshalJSON() ([]byte, error) {
 10745  	type NoMethod SiteContact
 10746  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10747  }
 10748  
 10749  // SiteSettings: Site Settings
 10750  type SiteSettings struct {
 10751  	// ActiveViewOptOut: Whether active view creatives are disabled for this site.
 10752  	ActiveViewOptOut bool `json:"activeViewOptOut,omitempty"`
 10753  	// AdBlockingOptOut: Whether this site opts out of ad blocking. When true, ad
 10754  	// blocking is disabled for all placements under the site, regardless of the
 10755  	// individual placement settings. When false, the campaign and placement
 10756  	// settings take effect.
 10757  	AdBlockingOptOut bool `json:"adBlockingOptOut,omitempty"`
 10758  	// DisableNewCookie: Whether new cookies are disabled for this site.
 10759  	DisableNewCookie bool `json:"disableNewCookie,omitempty"`
 10760  	// TagSetting: Configuration settings for dynamic and image floodlight tags.
 10761  	TagSetting *TagSetting `json:"tagSetting,omitempty"`
 10762  	// VideoActiveViewOptOutTemplate: Whether Verification and ActiveView for
 10763  	// in-stream video creatives are disabled by default for new placements created
 10764  	// under this site. This value will be used to populate the
 10765  	// placement.videoActiveViewOptOut field, when no value is specified for the
 10766  	// new placement.
 10767  	VideoActiveViewOptOutTemplate bool `json:"videoActiveViewOptOutTemplate,omitempty"`
 10768  	// VpaidAdapterChoiceTemplate: Default VPAID adapter setting for new placements
 10769  	// created under this site. This value will be used to populate the
 10770  	// placements.vpaidAdapterChoice field, when no value is specified for the new
 10771  	// placement. Controls which VPAID format the measurement adapter will use for
 10772  	// in-stream video creatives assigned to the placement. The publisher's
 10773  	// specifications will typically determine this setting. For VPAID creatives,
 10774  	// the adapter format will match the VPAID format (HTML5 VPAID creatives use
 10775  	// the HTML5 adapter). *Note:* Flash is no longer supported. This field now
 10776  	// defaults to HTML5 when the following values are provided: FLASH, BOTH.
 10777  	//
 10778  	// Possible values:
 10779  	//   "DEFAULT" - DEFAULT means Google chooses which adapter, if any, to serve.
 10780  	//   "FLASH"
 10781  	//   "HTML5"
 10782  	//   "BOTH"
 10783  	VpaidAdapterChoiceTemplate string `json:"vpaidAdapterChoiceTemplate,omitempty"`
 10784  	// ForceSendFields is a list of field names (e.g. "ActiveViewOptOut") to
 10785  	// unconditionally include in API requests. By default, fields with empty or
 10786  	// default values are omitted from API requests. See
 10787  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10788  	// details.
 10789  	ForceSendFields []string `json:"-"`
 10790  	// NullFields is a list of field names (e.g. "ActiveViewOptOut") to include in
 10791  	// API requests with the JSON null value. By default, fields with empty values
 10792  	// are omitted from API requests. See
 10793  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10794  	NullFields []string `json:"-"`
 10795  }
 10796  
 10797  func (s *SiteSettings) MarshalJSON() ([]byte, error) {
 10798  	type NoMethod SiteSettings
 10799  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10800  }
 10801  
 10802  // SiteSkippableSetting: Skippable Settings
 10803  type SiteSkippableSetting struct {
 10804  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 10805  	// "dfareporting#siteSkippableSetting".
 10806  	Kind string `json:"kind,omitempty"`
 10807  	// ProgressOffset: Amount of time to play videos served to this site template
 10808  	// before counting a view. Applicable when skippable is true.
 10809  	ProgressOffset *VideoOffset `json:"progressOffset,omitempty"`
 10810  	// SkipOffset: Amount of time to play videos served to this site before the
 10811  	// skip button should appear. Applicable when skippable is true.
 10812  	SkipOffset *VideoOffset `json:"skipOffset,omitempty"`
 10813  	// Skippable: Whether the user can skip creatives served to this site. This
 10814  	// will act as default for new placements created under this site.
 10815  	Skippable bool `json:"skippable,omitempty"`
 10816  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 10817  	// include in API requests. By default, fields with empty or default values are
 10818  	// omitted from API requests. See
 10819  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10820  	// details.
 10821  	ForceSendFields []string `json:"-"`
 10822  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 10823  	// with the JSON null value. By default, fields with empty values are omitted
 10824  	// from API requests. See
 10825  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10826  	NullFields []string `json:"-"`
 10827  }
 10828  
 10829  func (s *SiteSkippableSetting) MarshalJSON() ([]byte, error) {
 10830  	type NoMethod SiteSkippableSetting
 10831  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10832  }
 10833  
 10834  // SiteTranscodeSetting: Transcode Settings
 10835  type SiteTranscodeSetting struct {
 10836  	// EnabledVideoFormats: Allowlist of video formats to be served to this site
 10837  	// template. Set this list to null or empty to serve all video formats.
 10838  	EnabledVideoFormats []int64 `json:"enabledVideoFormats,omitempty"`
 10839  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 10840  	// "dfareporting#siteTranscodeSetting".
 10841  	Kind string `json:"kind,omitempty"`
 10842  	// ForceSendFields is a list of field names (e.g. "EnabledVideoFormats") to
 10843  	// unconditionally include in API requests. By default, fields with empty or
 10844  	// default values are omitted from API requests. See
 10845  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10846  	// details.
 10847  	ForceSendFields []string `json:"-"`
 10848  	// NullFields is a list of field names (e.g. "EnabledVideoFormats") to include
 10849  	// in API requests with the JSON null value. By default, fields with empty
 10850  	// values are omitted from API requests. See
 10851  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10852  	NullFields []string `json:"-"`
 10853  }
 10854  
 10855  func (s *SiteTranscodeSetting) MarshalJSON() ([]byte, error) {
 10856  	type NoMethod SiteTranscodeSetting
 10857  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10858  }
 10859  
 10860  // SiteVideoSettings: Video Settings
 10861  type SiteVideoSettings struct {
 10862  	// CompanionSettings: Settings for the companion creatives of video creatives
 10863  	// served to this site.
 10864  	CompanionSettings *SiteCompanionSetting `json:"companionSettings,omitempty"`
 10865  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 10866  	// "dfareporting#siteVideoSettings".
 10867  	Kind string `json:"kind,omitempty"`
 10868  	// ObaEnabled: Whether OBA icons are enabled for this placement.
 10869  	ObaEnabled bool `json:"obaEnabled,omitempty"`
 10870  	// ObaSettings: Settings for the OBA icon of video creatives served to this
 10871  	// site. This will act as default for new placements created under this site.
 10872  	ObaSettings *ObaIcon `json:"obaSettings,omitempty"`
 10873  	// Orientation: Orientation of a site template used for video. This will act as
 10874  	// default for new placements created under this site.
 10875  	//
 10876  	// Possible values:
 10877  	//   "ANY"
 10878  	//   "LANDSCAPE"
 10879  	//   "PORTRAIT"
 10880  	Orientation string `json:"orientation,omitempty"`
 10881  	// PublisherSpecificationId: Publisher specification ID used to identify
 10882  	// site-associated publisher requirements and automatically populate transcode
 10883  	// settings. If publisher specification ID is specified, it will take
 10884  	// precedence over transcode settings.
 10885  	PublisherSpecificationId int64 `json:"publisherSpecificationId,omitempty,string"`
 10886  	// SkippableSettings: Settings for the skippability of video creatives served
 10887  	// to this site. This will act as default for new placements created under this
 10888  	// site.
 10889  	SkippableSettings *SiteSkippableSetting `json:"skippableSettings,omitempty"`
 10890  	// TranscodeSettings: Settings for the transcodes of video creatives served to
 10891  	// this site. This will act as default for new placements created under this
 10892  	// site.
 10893  	TranscodeSettings *SiteTranscodeSetting `json:"transcodeSettings,omitempty"`
 10894  	// ForceSendFields is a list of field names (e.g. "CompanionSettings") to
 10895  	// unconditionally include in API requests. By default, fields with empty or
 10896  	// default values are omitted from API requests. See
 10897  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10898  	// details.
 10899  	ForceSendFields []string `json:"-"`
 10900  	// NullFields is a list of field names (e.g. "CompanionSettings") to include in
 10901  	// API requests with the JSON null value. By default, fields with empty values
 10902  	// are omitted from API requests. See
 10903  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10904  	NullFields []string `json:"-"`
 10905  }
 10906  
 10907  func (s *SiteVideoSettings) MarshalJSON() ([]byte, error) {
 10908  	type NoMethod SiteVideoSettings
 10909  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10910  }
 10911  
 10912  // SitesListResponse: Site List Response
 10913  type SitesListResponse struct {
 10914  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 10915  	// "dfareporting#sitesListResponse".
 10916  	Kind string `json:"kind,omitempty"`
 10917  	// NextPageToken: Pagination token to be used for the next list operation.
 10918  	NextPageToken string `json:"nextPageToken,omitempty"`
 10919  	// Sites: Site collection.
 10920  	Sites []*Site `json:"sites,omitempty"`
 10921  
 10922  	// ServerResponse contains the HTTP response code and headers from the server.
 10923  	googleapi.ServerResponse `json:"-"`
 10924  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 10925  	// include in API requests. By default, fields with empty or default values are
 10926  	// omitted from API requests. See
 10927  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10928  	// details.
 10929  	ForceSendFields []string `json:"-"`
 10930  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 10931  	// with the JSON null value. By default, fields with empty values are omitted
 10932  	// from API requests. See
 10933  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10934  	NullFields []string `json:"-"`
 10935  }
 10936  
 10937  func (s *SitesListResponse) MarshalJSON() ([]byte, error) {
 10938  	type NoMethod SitesListResponse
 10939  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10940  }
 10941  
 10942  // Size: Represents the dimensions of ads, placements, creatives, or creative
 10943  // assets.
 10944  type Size struct {
 10945  	// Height: Height of this size. Acceptable values are 0 to 32767, inclusive.
 10946  	Height int64 `json:"height,omitempty"`
 10947  	// Iab: IAB standard size. This is a read-only, auto-generated field.
 10948  	Iab bool `json:"iab,omitempty"`
 10949  	// Id: ID of this size. This is a read-only, auto-generated field.
 10950  	Id int64 `json:"id,omitempty,string"`
 10951  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 10952  	// "dfareporting#size".
 10953  	Kind string `json:"kind,omitempty"`
 10954  	// Width: Width of this size. Acceptable values are 0 to 32767, inclusive.
 10955  	Width int64 `json:"width,omitempty"`
 10956  
 10957  	// ServerResponse contains the HTTP response code and headers from the server.
 10958  	googleapi.ServerResponse `json:"-"`
 10959  	// ForceSendFields is a list of field names (e.g. "Height") to unconditionally
 10960  	// include in API requests. By default, fields with empty or default values are
 10961  	// omitted from API requests. See
 10962  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10963  	// details.
 10964  	ForceSendFields []string `json:"-"`
 10965  	// NullFields is a list of field names (e.g. "Height") to include in API
 10966  	// requests with the JSON null value. By default, fields with empty values are
 10967  	// omitted from API requests. See
 10968  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10969  	NullFields []string `json:"-"`
 10970  }
 10971  
 10972  func (s *Size) MarshalJSON() ([]byte, error) {
 10973  	type NoMethod Size
 10974  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 10975  }
 10976  
 10977  // SizesListResponse: Size List Response
 10978  type SizesListResponse struct {
 10979  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 10980  	// "dfareporting#sizesListResponse".
 10981  	Kind string `json:"kind,omitempty"`
 10982  	// Sizes: Size collection.
 10983  	Sizes []*Size `json:"sizes,omitempty"`
 10984  
 10985  	// ServerResponse contains the HTTP response code and headers from the server.
 10986  	googleapi.ServerResponse `json:"-"`
 10987  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 10988  	// include in API requests. By default, fields with empty or default values are
 10989  	// omitted from API requests. See
 10990  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 10991  	// details.
 10992  	ForceSendFields []string `json:"-"`
 10993  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 10994  	// with the JSON null value. By default, fields with empty values are omitted
 10995  	// from API requests. See
 10996  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 10997  	NullFields []string `json:"-"`
 10998  }
 10999  
 11000  func (s *SizesListResponse) MarshalJSON() ([]byte, error) {
 11001  	type NoMethod SizesListResponse
 11002  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11003  }
 11004  
 11005  // SkippableSetting: Skippable Settings
 11006  type SkippableSetting struct {
 11007  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11008  	// "dfareporting#skippableSetting".
 11009  	Kind string `json:"kind,omitempty"`
 11010  	// ProgressOffset: Amount of time to play videos served to this placement
 11011  	// before counting a view. Applicable when skippable is true.
 11012  	ProgressOffset *VideoOffset `json:"progressOffset,omitempty"`
 11013  	// SkipOffset: Amount of time to play videos served to this placement before
 11014  	// the skip button should appear. Applicable when skippable is true.
 11015  	SkipOffset *VideoOffset `json:"skipOffset,omitempty"`
 11016  	// Skippable: Whether the user can skip creatives served to this placement.
 11017  	Skippable bool `json:"skippable,omitempty"`
 11018  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 11019  	// include in API requests. By default, fields with empty or default values are
 11020  	// omitted from API requests. See
 11021  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11022  	// details.
 11023  	ForceSendFields []string `json:"-"`
 11024  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 11025  	// with the JSON null value. By default, fields with empty values are omitted
 11026  	// from API requests. See
 11027  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11028  	NullFields []string `json:"-"`
 11029  }
 11030  
 11031  func (s *SkippableSetting) MarshalJSON() ([]byte, error) {
 11032  	type NoMethod SkippableSetting
 11033  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11034  }
 11035  
 11036  // SortedDimension: Represents a sorted dimension.
 11037  type SortedDimension struct {
 11038  	// Kind: The kind of resource this is, in this case
 11039  	// dfareporting#sortedDimension.
 11040  	Kind string `json:"kind,omitempty"`
 11041  	// Name: The name of the dimension.
 11042  	Name string `json:"name,omitempty"`
 11043  	// SortOrder: An optional sort order for the dimension column.
 11044  	//
 11045  	// Possible values:
 11046  	//   "ASCENDING"
 11047  	//   "DESCENDING"
 11048  	SortOrder string `json:"sortOrder,omitempty"`
 11049  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 11050  	// include in API requests. By default, fields with empty or default values are
 11051  	// omitted from API requests. See
 11052  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11053  	// details.
 11054  	ForceSendFields []string `json:"-"`
 11055  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 11056  	// with the JSON null value. By default, fields with empty values are omitted
 11057  	// from API requests. See
 11058  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11059  	NullFields []string `json:"-"`
 11060  }
 11061  
 11062  func (s *SortedDimension) MarshalJSON() ([]byte, error) {
 11063  	type NoMethod SortedDimension
 11064  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11065  }
 11066  
 11067  // Subaccount: Contains properties of a Campaign Manager subaccount.
 11068  type Subaccount struct {
 11069  	// AccountId: ID of the account that contains this subaccount. This is a
 11070  	// read-only field that can be left blank.
 11071  	AccountId int64 `json:"accountId,omitempty,string"`
 11072  	// AvailablePermissionIds: IDs of the available user role permissions for this
 11073  	// subaccount.
 11074  	AvailablePermissionIds googleapi.Int64s `json:"availablePermissionIds,omitempty"`
 11075  	// Id: ID of this subaccount. This is a read-only, auto-generated field.
 11076  	Id int64 `json:"id,omitempty,string"`
 11077  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11078  	// "dfareporting#subaccount".
 11079  	Kind string `json:"kind,omitempty"`
 11080  	// Name: Name of this subaccount. This is a required field. Must be less than
 11081  	// 128 characters long and be unique among subaccounts of the same account.
 11082  	Name string `json:"name,omitempty"`
 11083  
 11084  	// ServerResponse contains the HTTP response code and headers from the server.
 11085  	googleapi.ServerResponse `json:"-"`
 11086  	// ForceSendFields is a list of field names (e.g. "AccountId") to
 11087  	// unconditionally include in API requests. By default, fields with empty or
 11088  	// default values are omitted from API requests. See
 11089  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11090  	// details.
 11091  	ForceSendFields []string `json:"-"`
 11092  	// NullFields is a list of field names (e.g. "AccountId") to include in API
 11093  	// requests with the JSON null value. By default, fields with empty values are
 11094  	// omitted from API requests. See
 11095  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11096  	NullFields []string `json:"-"`
 11097  }
 11098  
 11099  func (s *Subaccount) MarshalJSON() ([]byte, error) {
 11100  	type NoMethod Subaccount
 11101  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11102  }
 11103  
 11104  // SubaccountsListResponse: Subaccount List Response
 11105  type SubaccountsListResponse struct {
 11106  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11107  	// "dfareporting#subaccountsListResponse".
 11108  	Kind string `json:"kind,omitempty"`
 11109  	// NextPageToken: Pagination token to be used for the next list operation.
 11110  	NextPageToken string `json:"nextPageToken,omitempty"`
 11111  	// Subaccounts: Subaccount collection.
 11112  	Subaccounts []*Subaccount `json:"subaccounts,omitempty"`
 11113  
 11114  	// ServerResponse contains the HTTP response code and headers from the server.
 11115  	googleapi.ServerResponse `json:"-"`
 11116  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 11117  	// include in API requests. By default, fields with empty or default values are
 11118  	// omitted from API requests. See
 11119  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11120  	// details.
 11121  	ForceSendFields []string `json:"-"`
 11122  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 11123  	// with the JSON null value. By default, fields with empty values are omitted
 11124  	// from API requests. See
 11125  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11126  	NullFields []string `json:"-"`
 11127  }
 11128  
 11129  func (s *SubaccountsListResponse) MarshalJSON() ([]byte, error) {
 11130  	type NoMethod SubaccountsListResponse
 11131  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11132  }
 11133  
 11134  // TagData: Placement Tag Data
 11135  type TagData struct {
 11136  	// AdId: Ad associated with this placement tag. Applicable only when format is
 11137  	// PLACEMENT_TAG_TRACKING.
 11138  	AdId int64 `json:"adId,omitempty,string"`
 11139  	// ClickTag: Tag string to record a click.
 11140  	ClickTag string `json:"clickTag,omitempty"`
 11141  	// CreativeId: Creative associated with this placement tag. Applicable only
 11142  	// when format is PLACEMENT_TAG_TRACKING.
 11143  	CreativeId int64 `json:"creativeId,omitempty,string"`
 11144  	// Format: TagData tag format of this tag.
 11145  	//
 11146  	// Possible values:
 11147  	//   "PLACEMENT_TAG_STANDARD"
 11148  	//   "PLACEMENT_TAG_IFRAME_JAVASCRIPT"
 11149  	//   "PLACEMENT_TAG_IFRAME_ILAYER"
 11150  	//   "PLACEMENT_TAG_INTERNAL_REDIRECT"
 11151  	//   "PLACEMENT_TAG_JAVASCRIPT"
 11152  	//   "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
 11153  	//   "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
 11154  	//   "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
 11155  	//   "PLACEMENT_TAG_CLICK_COMMANDS"
 11156  	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
 11157  	//   "PLACEMENT_TAG_TRACKING"
 11158  	//   "PLACEMENT_TAG_TRACKING_IFRAME"
 11159  	//   "PLACEMENT_TAG_TRACKING_JAVASCRIPT"
 11160  	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
 11161  	//   "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
 11162  	//   "PLACEMENT_TAG_JAVASCRIPT_LEGACY"
 11163  	//   "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
 11164  	//   "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
 11165  	//   "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
 11166  	//   "PLACEMENT_TAG_TRACKING_THIRD_PARTY_MEASUREMENT"
 11167  	Format string `json:"format,omitempty"`
 11168  	// ImpressionTag: Tag string for serving an ad.
 11169  	ImpressionTag string `json:"impressionTag,omitempty"`
 11170  	// ForceSendFields is a list of field names (e.g. "AdId") to unconditionally
 11171  	// include in API requests. By default, fields with empty or default values are
 11172  	// omitted from API requests. See
 11173  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11174  	// details.
 11175  	ForceSendFields []string `json:"-"`
 11176  	// NullFields is a list of field names (e.g. "AdId") to include in API requests
 11177  	// with the JSON null value. By default, fields with empty values are omitted
 11178  	// from API requests. See
 11179  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11180  	NullFields []string `json:"-"`
 11181  }
 11182  
 11183  func (s *TagData) MarshalJSON() ([]byte, error) {
 11184  	type NoMethod TagData
 11185  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11186  }
 11187  
 11188  // TagSetting: Tag Settings
 11189  type TagSetting struct {
 11190  	// AdditionalKeyValues: Additional key-values to be included in tags. Each
 11191  	// key-value pair must be of the form key=value, and pairs must be separated by
 11192  	// a semicolon (;). Keys and values must not contain commas. For example,
 11193  	// id=2;color=red is a valid value for this field.
 11194  	AdditionalKeyValues string `json:"additionalKeyValues,omitempty"`
 11195  	// IncludeClickThroughUrls: Whether static landing page URLs should be included
 11196  	// in the tags. New placements will default to the value set on their site.
 11197  	IncludeClickThroughUrls bool `json:"includeClickThroughUrls,omitempty"`
 11198  	// IncludeClickTracking: Whether click-tracking string should be included in
 11199  	// the tags.
 11200  	IncludeClickTracking bool `json:"includeClickTracking,omitempty"`
 11201  	// KeywordOption: Option specifying how keywords are embedded in ad tags. This
 11202  	// setting can be used to specify whether keyword placeholders are inserted in
 11203  	// placement tags for this site. Publishers can then add keywords to those
 11204  	// placeholders.
 11205  	//
 11206  	// Possible values:
 11207  	//   "PLACEHOLDER_WITH_LIST_OF_KEYWORDS" - Creates DART ad tags with a
 11208  	// placeholder, such as kw=[keyword] and a list of keywords. The site
 11209  	// trafficker must replace [keyword] with the keywords targeted by an ad.
 11210  	//   "IGNORE" - Creates DART ad tags that do not have a placeholder for
 11211  	// keywords and creates a list of keywords separately from the DART ad tags.
 11212  	// Use this option if the site uses a keyword referrer or is a site that uses
 11213  	// DART for Publishers.
 11214  	//   "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD" - Results in unique tag
 11215  	// generation for each relevant keyword during tag export. For example, an ad
 11216  	// with three keywords will generate three tags with each tag having its kw=
 11217  	// parameter filled in with the relevant keyword values.
 11218  	KeywordOption string `json:"keywordOption,omitempty"`
 11219  	// ForceSendFields is a list of field names (e.g. "AdditionalKeyValues") to
 11220  	// unconditionally include in API requests. By default, fields with empty or
 11221  	// default values are omitted from API requests. See
 11222  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11223  	// details.
 11224  	ForceSendFields []string `json:"-"`
 11225  	// NullFields is a list of field names (e.g. "AdditionalKeyValues") to include
 11226  	// in API requests with the JSON null value. By default, fields with empty
 11227  	// values are omitted from API requests. See
 11228  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11229  	NullFields []string `json:"-"`
 11230  }
 11231  
 11232  func (s *TagSetting) MarshalJSON() ([]byte, error) {
 11233  	type NoMethod TagSetting
 11234  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11235  }
 11236  
 11237  // TagSettings: Dynamic and Image Tag Settings.
 11238  type TagSettings struct {
 11239  	// DynamicTagEnabled: Whether dynamic floodlight tags are enabled.
 11240  	DynamicTagEnabled bool `json:"dynamicTagEnabled,omitempty"`
 11241  	// ImageTagEnabled: Whether image tags are enabled.
 11242  	ImageTagEnabled bool `json:"imageTagEnabled,omitempty"`
 11243  	// ForceSendFields is a list of field names (e.g. "DynamicTagEnabled") to
 11244  	// unconditionally include in API requests. By default, fields with empty or
 11245  	// default values are omitted from API requests. See
 11246  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11247  	// details.
 11248  	ForceSendFields []string `json:"-"`
 11249  	// NullFields is a list of field names (e.g. "DynamicTagEnabled") to include in
 11250  	// API requests with the JSON null value. By default, fields with empty values
 11251  	// are omitted from API requests. See
 11252  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11253  	NullFields []string `json:"-"`
 11254  }
 11255  
 11256  func (s *TagSettings) MarshalJSON() ([]byte, error) {
 11257  	type NoMethod TagSettings
 11258  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11259  }
 11260  
 11261  // TargetWindow: Target Window.
 11262  type TargetWindow struct {
 11263  	// CustomHtml: User-entered value.
 11264  	CustomHtml string `json:"customHtml,omitempty"`
 11265  	// TargetWindowOption: Type of browser window for which the backup image of the
 11266  	// flash creative can be displayed.
 11267  	//
 11268  	// Possible values:
 11269  	//   "NEW_WINDOW" - Open up a new window to display the backup image
 11270  	// Corresponds to "_blank" in html
 11271  	//   "CURRENT_WINDOW" - Use the current window to display the backup image
 11272  	// Corresponds to "_top" in html
 11273  	//   "CUSTOM" - User-defined HTML used to display the backup image Corresponds
 11274  	// to "other"
 11275  	TargetWindowOption string `json:"targetWindowOption,omitempty"`
 11276  	// ForceSendFields is a list of field names (e.g. "CustomHtml") to
 11277  	// unconditionally include in API requests. By default, fields with empty or
 11278  	// default values are omitted from API requests. See
 11279  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11280  	// details.
 11281  	ForceSendFields []string `json:"-"`
 11282  	// NullFields is a list of field names (e.g. "CustomHtml") to include in API
 11283  	// requests with the JSON null value. By default, fields with empty values are
 11284  	// omitted from API requests. See
 11285  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11286  	NullFields []string `json:"-"`
 11287  }
 11288  
 11289  func (s *TargetWindow) MarshalJSON() ([]byte, error) {
 11290  	type NoMethod TargetWindow
 11291  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11292  }
 11293  
 11294  // TargetableRemarketingList: Contains properties of a targetable remarketing
 11295  // list. Remarketing enables you to create lists of users who have performed
 11296  // specific actions on a site, then target ads to members of those lists. This
 11297  // resource is a read-only view of a remarketing list to be used to facilitate
 11298  // targeting ads to specific lists. Remarketing lists that are owned by your
 11299  // advertisers and those that are shared to your advertisers or account are
 11300  // accessible via this resource. To manage remarketing lists that are owned by
 11301  // your advertisers, use the RemarketingLists resource.
 11302  type TargetableRemarketingList struct {
 11303  	// AccountId: Account ID of this remarketing list. This is a read-only,
 11304  	// auto-generated field that is only returned in GET requests.
 11305  	AccountId int64 `json:"accountId,omitempty,string"`
 11306  	// Active: Whether this targetable remarketing list is active.
 11307  	Active bool `json:"active,omitempty"`
 11308  	// AdvertiserId: Dimension value for the advertiser ID that owns this
 11309  	// targetable remarketing list.
 11310  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
 11311  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
 11312  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
 11313  	// Description: Targetable remarketing list description.
 11314  	Description string `json:"description,omitempty"`
 11315  	// Id: Targetable remarketing list ID.
 11316  	Id int64 `json:"id,omitempty,string"`
 11317  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11318  	// "dfareporting#targetableRemarketingList".
 11319  	Kind string `json:"kind,omitempty"`
 11320  	// LifeSpan: Number of days that a user should remain in the targetable
 11321  	// remarketing list without an impression.
 11322  	LifeSpan int64 `json:"lifeSpan,omitempty,string"`
 11323  	// ListSize: Number of users currently in the list. This is a read-only field.
 11324  	ListSize int64 `json:"listSize,omitempty,string"`
 11325  	// ListSource: Product from which this targetable remarketing list was
 11326  	// originated.
 11327  	//
 11328  	// Possible values:
 11329  	//   "REMARKETING_LIST_SOURCE_OTHER" - covers sources not supported in DCM
 11330  	// other than those listed below
 11331  	//   "REMARKETING_LIST_SOURCE_ADX" - ADX
 11332  	//   "REMARKETING_LIST_SOURCE_DFP" - DFP
 11333  	//   "REMARKETING_LIST_SOURCE_XFP" - XFP
 11334  	//   "REMARKETING_LIST_SOURCE_DFA" - DoubleClick Campaign Manager
 11335  	//   "REMARKETING_LIST_SOURCE_GA" - Google Analytics Premium
 11336  	//   "REMARKETING_LIST_SOURCE_YOUTUBE" - Youtube
 11337  	//   "REMARKETING_LIST_SOURCE_DBM" - DoubleClick Bid Manager
 11338  	//   "REMARKETING_LIST_SOURCE_GPLUS" - G+
 11339  	//   "REMARKETING_LIST_SOURCE_DMP" - DoubleClick Audience Center
 11340  	//   "REMARKETING_LIST_SOURCE_PLAY_STORE" - Playstore
 11341  	ListSource string `json:"listSource,omitempty"`
 11342  	// Name: Name of the targetable remarketing list. Is no greater than 128
 11343  	// characters long.
 11344  	Name string `json:"name,omitempty"`
 11345  	// SubaccountId: Subaccount ID of this remarketing list. This is a read-only,
 11346  	// auto-generated field that is only returned in GET requests.
 11347  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
 11348  
 11349  	// ServerResponse contains the HTTP response code and headers from the server.
 11350  	googleapi.ServerResponse `json:"-"`
 11351  	// ForceSendFields is a list of field names (e.g. "AccountId") to
 11352  	// unconditionally include in API requests. By default, fields with empty or
 11353  	// default values are omitted from API requests. See
 11354  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11355  	// details.
 11356  	ForceSendFields []string `json:"-"`
 11357  	// NullFields is a list of field names (e.g. "AccountId") to include in API
 11358  	// requests with the JSON null value. By default, fields with empty values are
 11359  	// omitted from API requests. See
 11360  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11361  	NullFields []string `json:"-"`
 11362  }
 11363  
 11364  func (s *TargetableRemarketingList) MarshalJSON() ([]byte, error) {
 11365  	type NoMethod TargetableRemarketingList
 11366  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11367  }
 11368  
 11369  // TargetableRemarketingListsListResponse: Targetable remarketing list response
 11370  type TargetableRemarketingListsListResponse struct {
 11371  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11372  	// "dfareporting#targetableRemarketingListsListResponse".
 11373  	Kind string `json:"kind,omitempty"`
 11374  	// NextPageToken: Pagination token to be used for the next list operation.
 11375  	NextPageToken string `json:"nextPageToken,omitempty"`
 11376  	// TargetableRemarketingLists: Targetable remarketing list collection.
 11377  	TargetableRemarketingLists []*TargetableRemarketingList `json:"targetableRemarketingLists,omitempty"`
 11378  
 11379  	// ServerResponse contains the HTTP response code and headers from the server.
 11380  	googleapi.ServerResponse `json:"-"`
 11381  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 11382  	// include in API requests. By default, fields with empty or default values are
 11383  	// omitted from API requests. See
 11384  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11385  	// details.
 11386  	ForceSendFields []string `json:"-"`
 11387  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 11388  	// with the JSON null value. By default, fields with empty values are omitted
 11389  	// from API requests. See
 11390  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11391  	NullFields []string `json:"-"`
 11392  }
 11393  
 11394  func (s *TargetableRemarketingListsListResponse) MarshalJSON() ([]byte, error) {
 11395  	type NoMethod TargetableRemarketingListsListResponse
 11396  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11397  }
 11398  
 11399  // TargetingTemplate: Contains properties of a targeting template. A targeting
 11400  // template encapsulates targeting information which can be reused across
 11401  // multiple ads.
 11402  type TargetingTemplate struct {
 11403  	// AccountId: Account ID of this targeting template. This field, if left unset,
 11404  	// will be auto-generated on insert and is read-only after insert.
 11405  	AccountId int64 `json:"accountId,omitempty,string"`
 11406  	// AdvertiserId: Advertiser ID of this targeting template. This is a required
 11407  	// field on insert and is read-only after insert.
 11408  	AdvertiserId int64 `json:"advertiserId,omitempty,string"`
 11409  	// AdvertiserIdDimensionValue: Dimension value for the ID of the advertiser.
 11410  	// This is a read-only, auto-generated field.
 11411  	AdvertiserIdDimensionValue *DimensionValue `json:"advertiserIdDimensionValue,omitempty"`
 11412  	// DayPartTargeting: Time and day targeting criteria.
 11413  	DayPartTargeting *DayPartTargeting `json:"dayPartTargeting,omitempty"`
 11414  	// GeoTargeting: Geographical targeting criteria.
 11415  	GeoTargeting *GeoTargeting `json:"geoTargeting,omitempty"`
 11416  	// Id: ID of this targeting template. This is a read-only, auto-generated
 11417  	// field.
 11418  	Id int64 `json:"id,omitempty,string"`
 11419  	// KeyValueTargetingExpression: Key-value targeting criteria.
 11420  	KeyValueTargetingExpression *KeyValueTargetingExpression `json:"keyValueTargetingExpression,omitempty"`
 11421  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11422  	// "dfareporting#targetingTemplate".
 11423  	Kind string `json:"kind,omitempty"`
 11424  	// LanguageTargeting: Language targeting criteria.
 11425  	LanguageTargeting *LanguageTargeting `json:"languageTargeting,omitempty"`
 11426  	// ListTargetingExpression: Remarketing list targeting criteria.
 11427  	ListTargetingExpression *ListTargetingExpression `json:"listTargetingExpression,omitempty"`
 11428  	// Name: Name of this targeting template. This field is required. It must be
 11429  	// less than 256 characters long and unique within an advertiser.
 11430  	Name string `json:"name,omitempty"`
 11431  	// SubaccountId: Subaccount ID of this targeting template. This field, if left
 11432  	// unset, will be auto-generated on insert and is read-only after insert.
 11433  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
 11434  	// TechnologyTargeting: Technology platform targeting criteria.
 11435  	TechnologyTargeting *TechnologyTargeting `json:"technologyTargeting,omitempty"`
 11436  
 11437  	// ServerResponse contains the HTTP response code and headers from the server.
 11438  	googleapi.ServerResponse `json:"-"`
 11439  	// ForceSendFields is a list of field names (e.g. "AccountId") to
 11440  	// unconditionally include in API requests. By default, fields with empty or
 11441  	// default values are omitted from API requests. See
 11442  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11443  	// details.
 11444  	ForceSendFields []string `json:"-"`
 11445  	// NullFields is a list of field names (e.g. "AccountId") to include in API
 11446  	// requests with the JSON null value. By default, fields with empty values are
 11447  	// omitted from API requests. See
 11448  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11449  	NullFields []string `json:"-"`
 11450  }
 11451  
 11452  func (s *TargetingTemplate) MarshalJSON() ([]byte, error) {
 11453  	type NoMethod TargetingTemplate
 11454  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11455  }
 11456  
 11457  // TargetingTemplatesListResponse: Targeting Template List Response
 11458  type TargetingTemplatesListResponse struct {
 11459  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11460  	// "dfareporting#targetingTemplatesListResponse".
 11461  	Kind string `json:"kind,omitempty"`
 11462  	// NextPageToken: Pagination token to be used for the next list operation.
 11463  	NextPageToken string `json:"nextPageToken,omitempty"`
 11464  	// TargetingTemplates: Targeting template collection.
 11465  	TargetingTemplates []*TargetingTemplate `json:"targetingTemplates,omitempty"`
 11466  
 11467  	// ServerResponse contains the HTTP response code and headers from the server.
 11468  	googleapi.ServerResponse `json:"-"`
 11469  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 11470  	// include in API requests. By default, fields with empty or default values are
 11471  	// omitted from API requests. See
 11472  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11473  	// details.
 11474  	ForceSendFields []string `json:"-"`
 11475  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 11476  	// with the JSON null value. By default, fields with empty values are omitted
 11477  	// from API requests. See
 11478  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11479  	NullFields []string `json:"-"`
 11480  }
 11481  
 11482  func (s *TargetingTemplatesListResponse) MarshalJSON() ([]byte, error) {
 11483  	type NoMethod TargetingTemplatesListResponse
 11484  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11485  }
 11486  
 11487  // TechnologyTargeting: Technology Targeting.
 11488  type TechnologyTargeting struct {
 11489  	// Browsers: Browsers that this ad targets. For each browser either set
 11490  	// browserVersionId or dartId along with the version numbers. If both are
 11491  	// specified, only browserVersionId will be used. The other fields are
 11492  	// populated automatically when the ad is inserted or updated.
 11493  	Browsers []*Browser `json:"browsers,omitempty"`
 11494  	// ConnectionTypes: Connection types that this ad targets. For each connection
 11495  	// type only id is required. The other fields are populated automatically when
 11496  	// the ad is inserted or updated.
 11497  	ConnectionTypes []*ConnectionType `json:"connectionTypes,omitempty"`
 11498  	// MobileCarriers: Mobile carriers that this ad targets. For each mobile
 11499  	// carrier only id is required, and the other fields are populated
 11500  	// automatically when the ad is inserted or updated. If targeting a mobile
 11501  	// carrier, do not set targeting for any zip codes.
 11502  	MobileCarriers []*MobileCarrier `json:"mobileCarriers,omitempty"`
 11503  	// OperatingSystemVersions: Operating system versions that this ad targets. To
 11504  	// target all versions, use operatingSystems. For each operating system
 11505  	// version, only id is required. The other fields are populated automatically
 11506  	// when the ad is inserted or updated. If targeting an operating system
 11507  	// version, do not set targeting for the corresponding operating system in
 11508  	// operatingSystems.
 11509  	OperatingSystemVersions []*OperatingSystemVersion `json:"operatingSystemVersions,omitempty"`
 11510  	// OperatingSystems: Operating systems that this ad targets. To target specific
 11511  	// versions, use operatingSystemVersions. For each operating system only dartId
 11512  	// is required. The other fields are populated automatically when the ad is
 11513  	// inserted or updated. If targeting an operating system, do not set targeting
 11514  	// for operating system versions for the same operating system.
 11515  	OperatingSystems []*OperatingSystem `json:"operatingSystems,omitempty"`
 11516  	// PlatformTypes: Platform types that this ad targets. For example, desktop,
 11517  	// mobile, or tablet. For each platform type, only id is required, and the
 11518  	// other fields are populated automatically when the ad is inserted or updated.
 11519  	PlatformTypes []*PlatformType `json:"platformTypes,omitempty"`
 11520  	// ForceSendFields is a list of field names (e.g. "Browsers") to
 11521  	// unconditionally include in API requests. By default, fields with empty or
 11522  	// default values are omitted from API requests. See
 11523  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11524  	// details.
 11525  	ForceSendFields []string `json:"-"`
 11526  	// NullFields is a list of field names (e.g. "Browsers") to include in API
 11527  	// requests with the JSON null value. By default, fields with empty values are
 11528  	// omitted from API requests. See
 11529  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11530  	NullFields []string `json:"-"`
 11531  }
 11532  
 11533  func (s *TechnologyTargeting) MarshalJSON() ([]byte, error) {
 11534  	type NoMethod TechnologyTargeting
 11535  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11536  }
 11537  
 11538  // ThirdPartyAuthenticationToken: Third Party Authentication Token
 11539  type ThirdPartyAuthenticationToken struct {
 11540  	// Name: Name of the third-party authentication token.
 11541  	Name string `json:"name,omitempty"`
 11542  	// Value: Value of the third-party authentication token. This is a read-only,
 11543  	// auto-generated field.
 11544  	Value string `json:"value,omitempty"`
 11545  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
 11546  	// include in API requests. By default, fields with empty or default values are
 11547  	// omitted from API requests. See
 11548  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11549  	// details.
 11550  	ForceSendFields []string `json:"-"`
 11551  	// NullFields is a list of field names (e.g. "Name") to include in API requests
 11552  	// with the JSON null value. By default, fields with empty values are omitted
 11553  	// from API requests. See
 11554  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11555  	NullFields []string `json:"-"`
 11556  }
 11557  
 11558  func (s *ThirdPartyAuthenticationToken) MarshalJSON() ([]byte, error) {
 11559  	type NoMethod ThirdPartyAuthenticationToken
 11560  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11561  }
 11562  
 11563  // ThirdPartyTrackingUrl: Third-party Tracking URL.
 11564  type ThirdPartyTrackingUrl struct {
 11565  	// ThirdPartyUrlType: Third-party URL type for in-stream video and in-stream
 11566  	// audio creatives.
 11567  	//
 11568  	// Possible values:
 11569  	//   "IMPRESSION" - Used to count impressions of the ad after video buffering
 11570  	// is complete.
 11571  	//   "CLICK_TRACKING" - Used to track user clicks on the video.
 11572  	//   "VIDEO_START" - Used to track the number of times a user starts a video.
 11573  	//   "VIDEO_FIRST_QUARTILE" - Used to track the number of times the video plays
 11574  	// to 25% of its length.
 11575  	//   "VIDEO_MIDPOINT" - Used to track the number of times the video plays to
 11576  	// 50% of its length.
 11577  	//   "VIDEO_THIRD_QUARTILE" - Used to track the number of times the video plays
 11578  	// to 75% of its length.
 11579  	//   "VIDEO_COMPLETE" - Used to track the number of times the video plays to
 11580  	// the end.
 11581  	//   "VIDEO_MUTE" - Used to track the number of times a user mutes the video.
 11582  	//   "VIDEO_PAUSE" - Used to track the number of times a user pauses the video.
 11583  	//   "VIDEO_REWIND" - Used to track the number of times a user replays the
 11584  	// video.
 11585  	//   "VIDEO_FULLSCREEN" - Used to track the number of times a user expands the
 11586  	// video to full-screen size.
 11587  	//   "VIDEO_STOP" - Used to track the number of times a user stops the video.
 11588  	//   "VIDEO_CUSTOM" - Used to track the number of times a user performs a
 11589  	// custom click, such as clicking on a video hot spot.
 11590  	//   "SURVEY" - Used for DFA6 compatibility, this is deprecating in favor of
 11591  	// event tags.
 11592  	//   "RICH_MEDIA_IMPRESSION" - Used by Studio RichMediaCreative, maps to its
 11593  	// thirdPartyImpressionsUrl
 11594  	//   "RICH_MEDIA_RM_IMPRESSION" - Used by Studio RichMediaCreative, maps to its
 11595  	// thirdPartyRichMediaImpressionsUrl
 11596  	//   "RICH_MEDIA_BACKUP_IMPRESSION" - Used by Studio RichMediaCreative, maps to
 11597  	// its thirdPartyBackupImageImpressionsUrl
 11598  	//   "VIDEO_SKIP" - Used to track the number of times the video was skipped.
 11599  	//   "VIDEO_PROGRESS" - Used to track the number of times the video plays to an
 11600  	// offset determined by the user.
 11601  	ThirdPartyUrlType string `json:"thirdPartyUrlType,omitempty"`
 11602  	// Url: URL for the specified third-party URL type.
 11603  	Url string `json:"url,omitempty"`
 11604  	// ForceSendFields is a list of field names (e.g. "ThirdPartyUrlType") to
 11605  	// unconditionally include in API requests. By default, fields with empty or
 11606  	// default values are omitted from API requests. See
 11607  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11608  	// details.
 11609  	ForceSendFields []string `json:"-"`
 11610  	// NullFields is a list of field names (e.g. "ThirdPartyUrlType") to include in
 11611  	// API requests with the JSON null value. By default, fields with empty values
 11612  	// are omitted from API requests. See
 11613  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11614  	NullFields []string `json:"-"`
 11615  }
 11616  
 11617  func (s *ThirdPartyTrackingUrl) MarshalJSON() ([]byte, error) {
 11618  	type NoMethod ThirdPartyTrackingUrl
 11619  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11620  }
 11621  
 11622  // TranscodeSetting: Transcode Settings
 11623  type TranscodeSetting struct {
 11624  	// EnabledVideoFormats: Allowlist of video formats to be served to this
 11625  	// placement. Set this list to null or empty to serve all video formats.
 11626  	EnabledVideoFormats []int64 `json:"enabledVideoFormats,omitempty"`
 11627  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11628  	// "dfareporting#transcodeSetting".
 11629  	Kind string `json:"kind,omitempty"`
 11630  	// ForceSendFields is a list of field names (e.g. "EnabledVideoFormats") to
 11631  	// unconditionally include in API requests. By default, fields with empty or
 11632  	// default values are omitted from API requests. See
 11633  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11634  	// details.
 11635  	ForceSendFields []string `json:"-"`
 11636  	// NullFields is a list of field names (e.g. "EnabledVideoFormats") to include
 11637  	// in API requests with the JSON null value. By default, fields with empty
 11638  	// values are omitted from API requests. See
 11639  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11640  	NullFields []string `json:"-"`
 11641  }
 11642  
 11643  func (s *TranscodeSetting) MarshalJSON() ([]byte, error) {
 11644  	type NoMethod TranscodeSetting
 11645  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11646  }
 11647  
 11648  // UniversalAdId: A Universal Ad ID as per the VAST 4.0 spec. Applicable to the
 11649  // following creative types: INSTREAM_AUDIO, INSTREAM_VIDEO and VPAID.
 11650  type UniversalAdId struct {
 11651  	// Registry: Registry used for the Ad ID value.
 11652  	//
 11653  	// Possible values:
 11654  	//   "OTHER"
 11655  	//   "AD_ID_OFFICIAL"
 11656  	//   "CLEARCAST"
 11657  	//   "DCM"
 11658  	//   "ARPP"
 11659  	Registry string `json:"registry,omitempty"`
 11660  	// Value: ID value for this creative. Only alphanumeric characters and the
 11661  	// following symbols are valid: "_/\-". Maximum length is 64 characters. Read
 11662  	// only when registry is DCM.
 11663  	Value string `json:"value,omitempty"`
 11664  	// ForceSendFields is a list of field names (e.g. "Registry") to
 11665  	// unconditionally include in API requests. By default, fields with empty or
 11666  	// default values are omitted from API requests. See
 11667  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11668  	// details.
 11669  	ForceSendFields []string `json:"-"`
 11670  	// NullFields is a list of field names (e.g. "Registry") to include in API
 11671  	// requests with the JSON null value. By default, fields with empty values are
 11672  	// omitted from API requests. See
 11673  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11674  	NullFields []string `json:"-"`
 11675  }
 11676  
 11677  func (s *UniversalAdId) MarshalJSON() ([]byte, error) {
 11678  	type NoMethod UniversalAdId
 11679  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11680  }
 11681  
 11682  // UserDefinedVariableConfiguration: User Defined Variable configuration.
 11683  type UserDefinedVariableConfiguration struct {
 11684  	// DataType: Data type for the variable. This is a required field.
 11685  	//
 11686  	// Possible values:
 11687  	//   "STRING"
 11688  	//   "NUMBER"
 11689  	DataType string `json:"dataType,omitempty"`
 11690  	// ReportName: User-friendly name for the variable which will appear in
 11691  	// reports. This is a required field, must be less than 64 characters long, and
 11692  	// cannot contain the following characters: ""<>".
 11693  	ReportName string `json:"reportName,omitempty"`
 11694  	// VariableType: Variable name in the tag. This is a required field.
 11695  	//
 11696  	// Possible values:
 11697  	//   "U1"
 11698  	//   "U2"
 11699  	//   "U3"
 11700  	//   "U4"
 11701  	//   "U5"
 11702  	//   "U6"
 11703  	//   "U7"
 11704  	//   "U8"
 11705  	//   "U9"
 11706  	//   "U10"
 11707  	//   "U11"
 11708  	//   "U12"
 11709  	//   "U13"
 11710  	//   "U14"
 11711  	//   "U15"
 11712  	//   "U16"
 11713  	//   "U17"
 11714  	//   "U18"
 11715  	//   "U19"
 11716  	//   "U20"
 11717  	//   "U21"
 11718  	//   "U22"
 11719  	//   "U23"
 11720  	//   "U24"
 11721  	//   "U25"
 11722  	//   "U26"
 11723  	//   "U27"
 11724  	//   "U28"
 11725  	//   "U29"
 11726  	//   "U30"
 11727  	//   "U31"
 11728  	//   "U32"
 11729  	//   "U33"
 11730  	//   "U34"
 11731  	//   "U35"
 11732  	//   "U36"
 11733  	//   "U37"
 11734  	//   "U38"
 11735  	//   "U39"
 11736  	//   "U40"
 11737  	//   "U41"
 11738  	//   "U42"
 11739  	//   "U43"
 11740  	//   "U44"
 11741  	//   "U45"
 11742  	//   "U46"
 11743  	//   "U47"
 11744  	//   "U48"
 11745  	//   "U49"
 11746  	//   "U50"
 11747  	//   "U51"
 11748  	//   "U52"
 11749  	//   "U53"
 11750  	//   "U54"
 11751  	//   "U55"
 11752  	//   "U56"
 11753  	//   "U57"
 11754  	//   "U58"
 11755  	//   "U59"
 11756  	//   "U60"
 11757  	//   "U61"
 11758  	//   "U62"
 11759  	//   "U63"
 11760  	//   "U64"
 11761  	//   "U65"
 11762  	//   "U66"
 11763  	//   "U67"
 11764  	//   "U68"
 11765  	//   "U69"
 11766  	//   "U70"
 11767  	//   "U71"
 11768  	//   "U72"
 11769  	//   "U73"
 11770  	//   "U74"
 11771  	//   "U75"
 11772  	//   "U76"
 11773  	//   "U77"
 11774  	//   "U78"
 11775  	//   "U79"
 11776  	//   "U80"
 11777  	//   "U81"
 11778  	//   "U82"
 11779  	//   "U83"
 11780  	//   "U84"
 11781  	//   "U85"
 11782  	//   "U86"
 11783  	//   "U87"
 11784  	//   "U88"
 11785  	//   "U89"
 11786  	//   "U90"
 11787  	//   "U91"
 11788  	//   "U92"
 11789  	//   "U93"
 11790  	//   "U94"
 11791  	//   "U95"
 11792  	//   "U96"
 11793  	//   "U97"
 11794  	//   "U98"
 11795  	//   "U99"
 11796  	//   "U100"
 11797  	VariableType string `json:"variableType,omitempty"`
 11798  	// ForceSendFields is a list of field names (e.g. "DataType") to
 11799  	// unconditionally include in API requests. By default, fields with empty or
 11800  	// default values are omitted from API requests. See
 11801  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11802  	// details.
 11803  	ForceSendFields []string `json:"-"`
 11804  	// NullFields is a list of field names (e.g. "DataType") to include in API
 11805  	// requests with the JSON null value. By default, fields with empty values are
 11806  	// omitted from API requests. See
 11807  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11808  	NullFields []string `json:"-"`
 11809  }
 11810  
 11811  func (s *UserDefinedVariableConfiguration) MarshalJSON() ([]byte, error) {
 11812  	type NoMethod UserDefinedVariableConfiguration
 11813  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11814  }
 11815  
 11816  // UserIdentifier: User identifying information. Exactly one type of identifier
 11817  // must be specified.
 11818  type UserIdentifier struct {
 11819  	// AddressInfo: Address information.
 11820  	AddressInfo *OfflineUserAddressInfo `json:"addressInfo,omitempty"`
 11821  	// HashedEmail: Hashed email address using SHA-256 hash function after
 11822  	// normalization.
 11823  	HashedEmail string `json:"hashedEmail,omitempty"`
 11824  	// HashedPhoneNumber: Hashed phone number using SHA-256 hash function after
 11825  	// normalization (E164 standard).
 11826  	HashedPhoneNumber string `json:"hashedPhoneNumber,omitempty"`
 11827  	// ForceSendFields is a list of field names (e.g. "AddressInfo") to
 11828  	// unconditionally include in API requests. By default, fields with empty or
 11829  	// default values are omitted from API requests. See
 11830  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11831  	// details.
 11832  	ForceSendFields []string `json:"-"`
 11833  	// NullFields is a list of field names (e.g. "AddressInfo") to include in API
 11834  	// requests with the JSON null value. By default, fields with empty values are
 11835  	// omitted from API requests. See
 11836  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11837  	NullFields []string `json:"-"`
 11838  }
 11839  
 11840  func (s *UserIdentifier) MarshalJSON() ([]byte, error) {
 11841  	type NoMethod UserIdentifier
 11842  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11843  }
 11844  
 11845  // UserProfile: A UserProfile resource lets you list all DFA user profiles that
 11846  // are associated with a Google user account. The profile_id needs to be
 11847  // specified in other API requests.
 11848  type UserProfile struct {
 11849  	// AccountId: The account ID to which this profile belongs.
 11850  	AccountId int64 `json:"accountId,omitempty,string"`
 11851  	// AccountName: The account name this profile belongs to.
 11852  	AccountName string `json:"accountName,omitempty"`
 11853  	// Etag: Etag of this resource.
 11854  	Etag string `json:"etag,omitempty"`
 11855  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11856  	// "dfareporting#userProfile".
 11857  	Kind string `json:"kind,omitempty"`
 11858  	// ProfileId: The unique ID of the user profile.
 11859  	ProfileId int64 `json:"profileId,omitempty,string"`
 11860  	// SubAccountId: The sub account ID this profile belongs to if applicable.
 11861  	SubAccountId int64 `json:"subAccountId,omitempty,string"`
 11862  	// SubAccountName: The sub account name this profile belongs to if applicable.
 11863  	SubAccountName string `json:"subAccountName,omitempty"`
 11864  	// UserName: The user name.
 11865  	UserName string `json:"userName,omitempty"`
 11866  
 11867  	// ServerResponse contains the HTTP response code and headers from the server.
 11868  	googleapi.ServerResponse `json:"-"`
 11869  	// ForceSendFields is a list of field names (e.g. "AccountId") to
 11870  	// unconditionally include in API requests. By default, fields with empty or
 11871  	// default values are omitted from API requests. See
 11872  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11873  	// details.
 11874  	ForceSendFields []string `json:"-"`
 11875  	// NullFields is a list of field names (e.g. "AccountId") to include in API
 11876  	// requests with the JSON null value. By default, fields with empty values are
 11877  	// omitted from API requests. See
 11878  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11879  	NullFields []string `json:"-"`
 11880  }
 11881  
 11882  func (s *UserProfile) MarshalJSON() ([]byte, error) {
 11883  	type NoMethod UserProfile
 11884  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11885  }
 11886  
 11887  // UserProfileList: Represents the list of user profiles.
 11888  type UserProfileList struct {
 11889  	// Etag: Etag of this resource.
 11890  	Etag string `json:"etag,omitempty"`
 11891  	// Items: The user profiles returned in this response.
 11892  	Items []*UserProfile `json:"items,omitempty"`
 11893  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11894  	// "dfareporting#userProfileList".
 11895  	Kind string `json:"kind,omitempty"`
 11896  
 11897  	// ServerResponse contains the HTTP response code and headers from the server.
 11898  	googleapi.ServerResponse `json:"-"`
 11899  	// ForceSendFields is a list of field names (e.g. "Etag") to unconditionally
 11900  	// include in API requests. By default, fields with empty or default values are
 11901  	// omitted from API requests. See
 11902  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11903  	// details.
 11904  	ForceSendFields []string `json:"-"`
 11905  	// NullFields is a list of field names (e.g. "Etag") to include in API requests
 11906  	// with the JSON null value. By default, fields with empty values are omitted
 11907  	// from API requests. See
 11908  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11909  	NullFields []string `json:"-"`
 11910  }
 11911  
 11912  func (s *UserProfileList) MarshalJSON() ([]byte, error) {
 11913  	type NoMethod UserProfileList
 11914  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11915  }
 11916  
 11917  // UserRole: Contains properties of auser role, which is used to manage user
 11918  // access.
 11919  type UserRole struct {
 11920  	// AccountId: Account ID of this user role. This is a read-only field that can
 11921  	// be left blank.
 11922  	AccountId int64 `json:"accountId,omitempty,string"`
 11923  	// DefaultUserRole: Whether this is a default user role. Default user roles are
 11924  	// created by the system for the account/subaccount and cannot be modified or
 11925  	// deleted. Each default user role comes with a basic set of preassigned
 11926  	// permissions.
 11927  	DefaultUserRole bool `json:"defaultUserRole,omitempty"`
 11928  	// Id: ID of this user role. This is a read-only, auto-generated field.
 11929  	Id int64 `json:"id,omitempty,string"`
 11930  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11931  	// "dfareporting#userRole".
 11932  	Kind string `json:"kind,omitempty"`
 11933  	// Name: Name of this user role. This is a required field. Must be less than
 11934  	// 256 characters long. If this user role is under a subaccount, the name must
 11935  	// be unique among sites of the same subaccount. Otherwise, this user role is a
 11936  	// top-level user role, and the name must be unique among top-level user roles
 11937  	// of the same account.
 11938  	Name string `json:"name,omitempty"`
 11939  	// ParentUserRoleId: ID of the user role that this user role is based on or
 11940  	// copied from. This is a required field.
 11941  	ParentUserRoleId int64 `json:"parentUserRoleId,omitempty,string"`
 11942  	// Permissions: List of permissions associated with this user role.
 11943  	Permissions []*UserRolePermission `json:"permissions,omitempty"`
 11944  	// SubaccountId: Subaccount ID of this user role. This is a read-only field
 11945  	// that can be left blank.
 11946  	SubaccountId int64 `json:"subaccountId,omitempty,string"`
 11947  
 11948  	// ServerResponse contains the HTTP response code and headers from the server.
 11949  	googleapi.ServerResponse `json:"-"`
 11950  	// ForceSendFields is a list of field names (e.g. "AccountId") to
 11951  	// unconditionally include in API requests. By default, fields with empty or
 11952  	// default values are omitted from API requests. See
 11953  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11954  	// details.
 11955  	ForceSendFields []string `json:"-"`
 11956  	// NullFields is a list of field names (e.g. "AccountId") to include in API
 11957  	// requests with the JSON null value. By default, fields with empty values are
 11958  	// omitted from API requests. See
 11959  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 11960  	NullFields []string `json:"-"`
 11961  }
 11962  
 11963  func (s *UserRole) MarshalJSON() ([]byte, error) {
 11964  	type NoMethod UserRole
 11965  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 11966  }
 11967  
 11968  // UserRolePermission: Contains properties of a user role permission.
 11969  type UserRolePermission struct {
 11970  	// Availability: Levels of availability for a user role permission.
 11971  	//
 11972  	// Possible values:
 11973  	//   "NOT_AVAILABLE_BY_DEFAULT" - Not available by default.
 11974  	//   "ACCOUNT_BY_DEFAULT" - Available by default to accounts only.
 11975  	//   "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT" - Available by default to both
 11976  	// accounts and subaccounts.
 11977  	//   "ACCOUNT_ALWAYS" - Always available to accounts.
 11978  	//   "SUBACCOUNT_AND_ACCOUNT_ALWAYS" - Always available to both accounts and
 11979  	// subaccounts.
 11980  	//   "USER_PROFILE_ONLY" - Available for user profile permissions only.
 11981  	Availability string `json:"availability,omitempty"`
 11982  	// Id: ID of this user role permission.
 11983  	Id int64 `json:"id,omitempty,string"`
 11984  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 11985  	// "dfareporting#userRolePermission".
 11986  	Kind string `json:"kind,omitempty"`
 11987  	// Name: Name of this user role permission.
 11988  	Name string `json:"name,omitempty"`
 11989  	// PermissionGroupId: ID of the permission group that this user role permission
 11990  	// belongs to.
 11991  	PermissionGroupId int64 `json:"permissionGroupId,omitempty,string"`
 11992  
 11993  	// ServerResponse contains the HTTP response code and headers from the server.
 11994  	googleapi.ServerResponse `json:"-"`
 11995  	// ForceSendFields is a list of field names (e.g. "Availability") to
 11996  	// unconditionally include in API requests. By default, fields with empty or
 11997  	// default values are omitted from API requests. See
 11998  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 11999  	// details.
 12000  	ForceSendFields []string `json:"-"`
 12001  	// NullFields is a list of field names (e.g. "Availability") to include in API
 12002  	// requests with the JSON null value. By default, fields with empty values are
 12003  	// omitted from API requests. See
 12004  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 12005  	NullFields []string `json:"-"`
 12006  }
 12007  
 12008  func (s *UserRolePermission) MarshalJSON() ([]byte, error) {
 12009  	type NoMethod UserRolePermission
 12010  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 12011  }
 12012  
 12013  // UserRolePermissionGroup: Represents a grouping of related user role
 12014  // permissions.
 12015  type UserRolePermissionGroup struct {
 12016  	// Id: ID of this user role permission.
 12017  	Id int64 `json:"id,omitempty,string"`
 12018  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 12019  	// "dfareporting#userRolePermissionGroup".
 12020  	Kind string `json:"kind,omitempty"`
 12021  	// Name: Name of this user role permission group.
 12022  	Name string `json:"name,omitempty"`
 12023  
 12024  	// ServerResponse contains the HTTP response code and headers from the server.
 12025  	googleapi.ServerResponse `json:"-"`
 12026  	// ForceSendFields is a list of field names (e.g. "Id") to unconditionally
 12027  	// include in API requests. By default, fields with empty or default values are
 12028  	// omitted from API requests. See
 12029  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 12030  	// details.
 12031  	ForceSendFields []string `json:"-"`
 12032  	// NullFields is a list of field names (e.g. "Id") to include in API requests
 12033  	// with the JSON null value. By default, fields with empty values are omitted
 12034  	// from API requests. See
 12035  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 12036  	NullFields []string `json:"-"`
 12037  }
 12038  
 12039  func (s *UserRolePermissionGroup) MarshalJSON() ([]byte, error) {
 12040  	type NoMethod UserRolePermissionGroup
 12041  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 12042  }
 12043  
 12044  // UserRolePermissionGroupsListResponse: User Role Permission Group List
 12045  // Response
 12046  type UserRolePermissionGroupsListResponse struct {
 12047  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 12048  	// "dfareporting#userRolePermissionGroupsListResponse".
 12049  	Kind string `json:"kind,omitempty"`
 12050  	// UserRolePermissionGroups: User role permission group collection.
 12051  	UserRolePermissionGroups []*UserRolePermissionGroup `json:"userRolePermissionGroups,omitempty"`
 12052  
 12053  	// ServerResponse contains the HTTP response code and headers from the server.
 12054  	googleapi.ServerResponse `json:"-"`
 12055  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 12056  	// include in API requests. By default, fields with empty or default values are
 12057  	// omitted from API requests. See
 12058  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 12059  	// details.
 12060  	ForceSendFields []string `json:"-"`
 12061  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 12062  	// with the JSON null value. By default, fields with empty values are omitted
 12063  	// from API requests. See
 12064  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 12065  	NullFields []string `json:"-"`
 12066  }
 12067  
 12068  func (s *UserRolePermissionGroupsListResponse) MarshalJSON() ([]byte, error) {
 12069  	type NoMethod UserRolePermissionGroupsListResponse
 12070  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 12071  }
 12072  
 12073  // UserRolePermissionsListResponse: User Role Permission List Response
 12074  type UserRolePermissionsListResponse struct {
 12075  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 12076  	// "dfareporting#userRolePermissionsListResponse".
 12077  	Kind string `json:"kind,omitempty"`
 12078  	// UserRolePermissions: User role permission collection.
 12079  	UserRolePermissions []*UserRolePermission `json:"userRolePermissions,omitempty"`
 12080  
 12081  	// ServerResponse contains the HTTP response code and headers from the server.
 12082  	googleapi.ServerResponse `json:"-"`
 12083  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 12084  	// include in API requests. By default, fields with empty or default values are
 12085  	// omitted from API requests. See
 12086  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 12087  	// details.
 12088  	ForceSendFields []string `json:"-"`
 12089  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 12090  	// with the JSON null value. By default, fields with empty values are omitted
 12091  	// from API requests. See
 12092  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 12093  	NullFields []string `json:"-"`
 12094  }
 12095  
 12096  func (s *UserRolePermissionsListResponse) MarshalJSON() ([]byte, error) {
 12097  	type NoMethod UserRolePermissionsListResponse
 12098  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 12099  }
 12100  
 12101  // UserRolesListResponse: User Role List Response
 12102  type UserRolesListResponse struct {
 12103  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 12104  	// "dfareporting#userRolesListResponse".
 12105  	Kind string `json:"kind,omitempty"`
 12106  	// NextPageToken: Pagination token to be used for the next list operation.
 12107  	NextPageToken string `json:"nextPageToken,omitempty"`
 12108  	// UserRoles: User role collection.
 12109  	UserRoles []*UserRole `json:"userRoles,omitempty"`
 12110  
 12111  	// ServerResponse contains the HTTP response code and headers from the server.
 12112  	googleapi.ServerResponse `json:"-"`
 12113  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 12114  	// include in API requests. By default, fields with empty or default values are
 12115  	// omitted from API requests. See
 12116  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 12117  	// details.
 12118  	ForceSendFields []string `json:"-"`
 12119  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 12120  	// with the JSON null value. By default, fields with empty values are omitted
 12121  	// from API requests. See
 12122  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 12123  	NullFields []string `json:"-"`
 12124  }
 12125  
 12126  func (s *UserRolesListResponse) MarshalJSON() ([]byte, error) {
 12127  	type NoMethod UserRolesListResponse
 12128  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 12129  }
 12130  
 12131  // UvarFilter: Defines the filtering on a single uvar.
 12132  type UvarFilter struct {
 12133  	// Complement: Return rows which don't match this filter.
 12134  	Complement bool `json:"complement,omitempty"`
 12135  	// Index: Custom variable index the filter is applied to.
 12136  	Index int64 `json:"index,omitempty,string"`
 12137  	// Kind: The kind of resource this is, in this case dfareporting#uvarFilter.
 12138  	Kind string `json:"kind,omitempty"`
 12139  	// Match: Indicates how the filter should be matched to the values.
 12140  	//
 12141  	// Possible values:
 12142  	//   "UNSPECIFIED"
 12143  	//   "EXACT"
 12144  	//   "CONTAINS"
 12145  	Match string `json:"match,omitempty"`
 12146  	// Values: Values to filter on.
 12147  	Values []string `json:"values,omitempty"`
 12148  	// ForceSendFields is a list of field names (e.g. "Complement") to
 12149  	// unconditionally include in API requests. By default, fields with empty or
 12150  	// default values are omitted from API requests. See
 12151  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 12152  	// details.
 12153  	ForceSendFields []string `json:"-"`
 12154  	// NullFields is a list of field names (e.g. "Complement") to include in API
 12155  	// requests with the JSON null value. By default, fields with empty values are
 12156  	// omitted from API requests. See
 12157  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 12158  	NullFields []string `json:"-"`
 12159  }
 12160  
 12161  func (s *UvarFilter) MarshalJSON() ([]byte, error) {
 12162  	type NoMethod UvarFilter
 12163  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 12164  }
 12165  
 12166  // VideoFormat: Contains information about supported video formats.
 12167  type VideoFormat struct {
 12168  	// FileType: File type of the video format.
 12169  	//
 12170  	// Possible values:
 12171  	//   "FLV"
 12172  	//   "THREEGPP"
 12173  	//   "MP4"
 12174  	//   "WEBM"
 12175  	//   "M3U8"
 12176  	FileType string `json:"fileType,omitempty"`
 12177  	// Id: ID of the video format.
 12178  	Id int64 `json:"id,omitempty"`
 12179  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 12180  	// "dfareporting#videoFormat".
 12181  	Kind string `json:"kind,omitempty"`
 12182  	// Resolution: The resolution of this video format.
 12183  	Resolution *Size `json:"resolution,omitempty"`
 12184  	// TargetBitRate: The target bit rate of this video format.
 12185  	TargetBitRate int64 `json:"targetBitRate,omitempty"`
 12186  
 12187  	// ServerResponse contains the HTTP response code and headers from the server.
 12188  	googleapi.ServerResponse `json:"-"`
 12189  	// ForceSendFields is a list of field names (e.g. "FileType") to
 12190  	// unconditionally include in API requests. By default, fields with empty or
 12191  	// default values are omitted from API requests. See
 12192  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 12193  	// details.
 12194  	ForceSendFields []string `json:"-"`
 12195  	// NullFields is a list of field names (e.g. "FileType") to include in API
 12196  	// requests with the JSON null value. By default, fields with empty values are
 12197  	// omitted from API requests. See
 12198  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 12199  	NullFields []string `json:"-"`
 12200  }
 12201  
 12202  func (s *VideoFormat) MarshalJSON() ([]byte, error) {
 12203  	type NoMethod VideoFormat
 12204  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 12205  }
 12206  
 12207  // VideoFormatsListResponse: Video Format List Response
 12208  type VideoFormatsListResponse struct {
 12209  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 12210  	// "dfareporting#videoFormatsListResponse".
 12211  	Kind string `json:"kind,omitempty"`
 12212  	// VideoFormats: Video format collection.
 12213  	VideoFormats []*VideoFormat `json:"videoFormats,omitempty"`
 12214  
 12215  	// ServerResponse contains the HTTP response code and headers from the server.
 12216  	googleapi.ServerResponse `json:"-"`
 12217  	// ForceSendFields is a list of field names (e.g. "Kind") to unconditionally
 12218  	// include in API requests. By default, fields with empty or default values are
 12219  	// omitted from API requests. See
 12220  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 12221  	// details.
 12222  	ForceSendFields []string `json:"-"`
 12223  	// NullFields is a list of field names (e.g. "Kind") to include in API requests
 12224  	// with the JSON null value. By default, fields with empty values are omitted
 12225  	// from API requests. See
 12226  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 12227  	NullFields []string `json:"-"`
 12228  }
 12229  
 12230  func (s *VideoFormatsListResponse) MarshalJSON() ([]byte, error) {
 12231  	type NoMethod VideoFormatsListResponse
 12232  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 12233  }
 12234  
 12235  // VideoOffset: Video Offset
 12236  type VideoOffset struct {
 12237  	// OffsetPercentage: Duration, as a percentage of video duration. Do not set
 12238  	// when offsetSeconds is set. Acceptable values are 0 to 100, inclusive.
 12239  	OffsetPercentage int64 `json:"offsetPercentage,omitempty"`
 12240  	// OffsetSeconds: Duration, in seconds. Do not set when offsetPercentage is
 12241  	// set. Acceptable values are 0 to 86399, inclusive.
 12242  	OffsetSeconds int64 `json:"offsetSeconds,omitempty"`
 12243  	// ForceSendFields is a list of field names (e.g. "OffsetPercentage") to
 12244  	// unconditionally include in API requests. By default, fields with empty or
 12245  	// default values are omitted from API requests. See
 12246  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 12247  	// details.
 12248  	ForceSendFields []string `json:"-"`
 12249  	// NullFields is a list of field names (e.g. "OffsetPercentage") to include in
 12250  	// API requests with the JSON null value. By default, fields with empty values
 12251  	// are omitted from API requests. See
 12252  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 12253  	NullFields []string `json:"-"`
 12254  }
 12255  
 12256  func (s *VideoOffset) MarshalJSON() ([]byte, error) {
 12257  	type NoMethod VideoOffset
 12258  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 12259  }
 12260  
 12261  // VideoSettings: Video Settings
 12262  type VideoSettings struct {
 12263  	// CompanionSettings: Settings for the companion creatives of video creatives
 12264  	// served to this placement.
 12265  	CompanionSettings *CompanionSetting `json:"companionSettings,omitempty"`
 12266  	// DurationSeconds: Duration of a video placement in seconds.
 12267  	DurationSeconds int64 `json:"durationSeconds,omitempty"`
 12268  	// Kind: Identifies what kind of resource this is. Value: the fixed string
 12269  	// "dfareporting#videoSettings".
 12270  	Kind string `json:"kind,omitempty"`
 12271  	// ObaEnabled: Whether OBA icons are enabled for this placement.
 12272  	ObaEnabled bool `json:"obaEnabled,omitempty"`
 12273  	// ObaSettings: Settings for the OBA icon of video creatives served to this
 12274  	// placement. If this object is provided, the creative-level OBA settings will
 12275  	// be overridden.
 12276  	ObaSettings *ObaIcon `json:"obaSettings,omitempty"`
 12277  	// Orientation: Orientation of a video placement. If this value is set,
 12278  	// placement will return assets matching the specified orientation.
 12279  	//
 12280  	// Possible values:
 12281  	//   "ANY"
 12282  	//   "LANDSCAPE"
 12283  	//   "PORTRAIT"
 12284  	Orientation string `json:"orientation,omitempty"`
 12285  	// PublisherSpecificationId: Publisher specification ID of a video placement.
 12286  	PublisherSpecificationId int64 `json:"publisherSpecificationId,omitempty,string"`
 12287  	// SkippableSettings: Settings for the skippability of video creatives served
 12288  	// to this placement. If this object is provided, the creative-level skippable
 12289  	// settings will be overridden.
 12290  	SkippableSettings *SkippableSetting `json:"skippableSettings,omitempty"`
 12291  	// TranscodeSettings: Settings for the transcodes of video creatives served to
 12292  	// this placement. If this object is provided, the creative-level transcode
 12293  	// settings will be overridden.
 12294  	TranscodeSettings *TranscodeSetting `json:"transcodeSettings,omitempty"`
 12295  	// ForceSendFields is a list of field names (e.g. "CompanionSettings") to
 12296  	// unconditionally include in API requests. By default, fields with empty or
 12297  	// default values are omitted from API requests. See
 12298  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
 12299  	// details.
 12300  	ForceSendFields []string `json:"-"`
 12301  	// NullFields is a list of field names (e.g. "CompanionSettings") to include in
 12302  	// API requests with the JSON null value. By default, fields with empty values
 12303  	// are omitted from API requests. See
 12304  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
 12305  	NullFields []string `json:"-"`
 12306  }
 12307  
 12308  func (s *VideoSettings) MarshalJSON() ([]byte, error) {
 12309  	type NoMethod VideoSettings
 12310  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
 12311  }
 12312  
 12313  type AccountActiveAdSummariesGetCall struct {
 12314  	s                *Service
 12315  	profileId        int64
 12316  	summaryAccountId int64
 12317  	urlParams_       gensupport.URLParams
 12318  	ifNoneMatch_     string
 12319  	ctx_             context.Context
 12320  	header_          http.Header
 12321  }
 12322  
 12323  // Get: Gets the account's active ad summary by account ID.
 12324  //
 12325  // - profileId: User profile ID associated with this request.
 12326  // - summaryAccountId: Account ID.
 12327  func (r *AccountActiveAdSummariesService) Get(profileId int64, summaryAccountId int64) *AccountActiveAdSummariesGetCall {
 12328  	c := &AccountActiveAdSummariesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12329  	c.profileId = profileId
 12330  	c.summaryAccountId = summaryAccountId
 12331  	return c
 12332  }
 12333  
 12334  // Fields allows partial responses to be retrieved. See
 12335  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12336  // details.
 12337  func (c *AccountActiveAdSummariesGetCall) Fields(s ...googleapi.Field) *AccountActiveAdSummariesGetCall {
 12338  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12339  	return c
 12340  }
 12341  
 12342  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12343  // object's ETag matches the given value. This is useful for getting updates
 12344  // only after the object has changed since the last request.
 12345  func (c *AccountActiveAdSummariesGetCall) IfNoneMatch(entityTag string) *AccountActiveAdSummariesGetCall {
 12346  	c.ifNoneMatch_ = entityTag
 12347  	return c
 12348  }
 12349  
 12350  // Context sets the context to be used in this call's Do method.
 12351  func (c *AccountActiveAdSummariesGetCall) Context(ctx context.Context) *AccountActiveAdSummariesGetCall {
 12352  	c.ctx_ = ctx
 12353  	return c
 12354  }
 12355  
 12356  // Header returns a http.Header that can be modified by the caller to add
 12357  // headers to the request.
 12358  func (c *AccountActiveAdSummariesGetCall) Header() http.Header {
 12359  	if c.header_ == nil {
 12360  		c.header_ = make(http.Header)
 12361  	}
 12362  	return c.header_
 12363  }
 12364  
 12365  func (c *AccountActiveAdSummariesGetCall) doRequest(alt string) (*http.Response, error) {
 12366  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12367  	if c.ifNoneMatch_ != "" {
 12368  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12369  	}
 12370  	var body io.Reader = nil
 12371  	c.urlParams_.Set("alt", alt)
 12372  	c.urlParams_.Set("prettyPrint", "false")
 12373  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accountActiveAdSummaries/{+summaryAccountId}")
 12374  	urls += "?" + c.urlParams_.Encode()
 12375  	req, err := http.NewRequest("GET", urls, body)
 12376  	if err != nil {
 12377  		return nil, err
 12378  	}
 12379  	req.Header = reqHeaders
 12380  	googleapi.Expand(req.URL, map[string]string{
 12381  		"profileId":        strconv.FormatInt(c.profileId, 10),
 12382  		"summaryAccountId": strconv.FormatInt(c.summaryAccountId, 10),
 12383  	})
 12384  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12385  }
 12386  
 12387  // Do executes the "dfareporting.accountActiveAdSummaries.get" call.
 12388  // Any non-2xx status code is an error. Response headers are in either
 12389  // *AccountActiveAdSummary.ServerResponse.Header or (if a response was returned
 12390  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12391  // check whether the returned error was because http.StatusNotModified was
 12392  // returned.
 12393  func (c *AccountActiveAdSummariesGetCall) Do(opts ...googleapi.CallOption) (*AccountActiveAdSummary, error) {
 12394  	gensupport.SetOptions(c.urlParams_, opts...)
 12395  	res, err := c.doRequest("json")
 12396  	if res != nil && res.StatusCode == http.StatusNotModified {
 12397  		if res.Body != nil {
 12398  			res.Body.Close()
 12399  		}
 12400  		return nil, gensupport.WrapError(&googleapi.Error{
 12401  			Code:   res.StatusCode,
 12402  			Header: res.Header,
 12403  		})
 12404  	}
 12405  	if err != nil {
 12406  		return nil, err
 12407  	}
 12408  	defer googleapi.CloseBody(res)
 12409  	if err := googleapi.CheckResponse(res); err != nil {
 12410  		return nil, gensupport.WrapError(err)
 12411  	}
 12412  	ret := &AccountActiveAdSummary{
 12413  		ServerResponse: googleapi.ServerResponse{
 12414  			Header:         res.Header,
 12415  			HTTPStatusCode: res.StatusCode,
 12416  		},
 12417  	}
 12418  	target := &ret
 12419  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12420  		return nil, err
 12421  	}
 12422  	return ret, nil
 12423  }
 12424  
 12425  type AccountPermissionGroupsGetCall struct {
 12426  	s            *Service
 12427  	profileId    int64
 12428  	id           int64
 12429  	urlParams_   gensupport.URLParams
 12430  	ifNoneMatch_ string
 12431  	ctx_         context.Context
 12432  	header_      http.Header
 12433  }
 12434  
 12435  // Get: Gets one account permission group by ID.
 12436  //
 12437  // - id: Account permission group ID.
 12438  // - profileId: User profile ID associated with this request.
 12439  func (r *AccountPermissionGroupsService) Get(profileId int64, id int64) *AccountPermissionGroupsGetCall {
 12440  	c := &AccountPermissionGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12441  	c.profileId = profileId
 12442  	c.id = id
 12443  	return c
 12444  }
 12445  
 12446  // Fields allows partial responses to be retrieved. See
 12447  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12448  // details.
 12449  func (c *AccountPermissionGroupsGetCall) Fields(s ...googleapi.Field) *AccountPermissionGroupsGetCall {
 12450  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12451  	return c
 12452  }
 12453  
 12454  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12455  // object's ETag matches the given value. This is useful for getting updates
 12456  // only after the object has changed since the last request.
 12457  func (c *AccountPermissionGroupsGetCall) IfNoneMatch(entityTag string) *AccountPermissionGroupsGetCall {
 12458  	c.ifNoneMatch_ = entityTag
 12459  	return c
 12460  }
 12461  
 12462  // Context sets the context to be used in this call's Do method.
 12463  func (c *AccountPermissionGroupsGetCall) Context(ctx context.Context) *AccountPermissionGroupsGetCall {
 12464  	c.ctx_ = ctx
 12465  	return c
 12466  }
 12467  
 12468  // Header returns a http.Header that can be modified by the caller to add
 12469  // headers to the request.
 12470  func (c *AccountPermissionGroupsGetCall) Header() http.Header {
 12471  	if c.header_ == nil {
 12472  		c.header_ = make(http.Header)
 12473  	}
 12474  	return c.header_
 12475  }
 12476  
 12477  func (c *AccountPermissionGroupsGetCall) doRequest(alt string) (*http.Response, error) {
 12478  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12479  	if c.ifNoneMatch_ != "" {
 12480  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12481  	}
 12482  	var body io.Reader = nil
 12483  	c.urlParams_.Set("alt", alt)
 12484  	c.urlParams_.Set("prettyPrint", "false")
 12485  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accountPermissionGroups/{+id}")
 12486  	urls += "?" + c.urlParams_.Encode()
 12487  	req, err := http.NewRequest("GET", urls, body)
 12488  	if err != nil {
 12489  		return nil, err
 12490  	}
 12491  	req.Header = reqHeaders
 12492  	googleapi.Expand(req.URL, map[string]string{
 12493  		"profileId": strconv.FormatInt(c.profileId, 10),
 12494  		"id":        strconv.FormatInt(c.id, 10),
 12495  	})
 12496  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12497  }
 12498  
 12499  // Do executes the "dfareporting.accountPermissionGroups.get" call.
 12500  // Any non-2xx status code is an error. Response headers are in either
 12501  // *AccountPermissionGroup.ServerResponse.Header or (if a response was returned
 12502  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12503  // check whether the returned error was because http.StatusNotModified was
 12504  // returned.
 12505  func (c *AccountPermissionGroupsGetCall) Do(opts ...googleapi.CallOption) (*AccountPermissionGroup, error) {
 12506  	gensupport.SetOptions(c.urlParams_, opts...)
 12507  	res, err := c.doRequest("json")
 12508  	if res != nil && res.StatusCode == http.StatusNotModified {
 12509  		if res.Body != nil {
 12510  			res.Body.Close()
 12511  		}
 12512  		return nil, gensupport.WrapError(&googleapi.Error{
 12513  			Code:   res.StatusCode,
 12514  			Header: res.Header,
 12515  		})
 12516  	}
 12517  	if err != nil {
 12518  		return nil, err
 12519  	}
 12520  	defer googleapi.CloseBody(res)
 12521  	if err := googleapi.CheckResponse(res); err != nil {
 12522  		return nil, gensupport.WrapError(err)
 12523  	}
 12524  	ret := &AccountPermissionGroup{
 12525  		ServerResponse: googleapi.ServerResponse{
 12526  			Header:         res.Header,
 12527  			HTTPStatusCode: res.StatusCode,
 12528  		},
 12529  	}
 12530  	target := &ret
 12531  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12532  		return nil, err
 12533  	}
 12534  	return ret, nil
 12535  }
 12536  
 12537  type AccountPermissionGroupsListCall struct {
 12538  	s            *Service
 12539  	profileId    int64
 12540  	urlParams_   gensupport.URLParams
 12541  	ifNoneMatch_ string
 12542  	ctx_         context.Context
 12543  	header_      http.Header
 12544  }
 12545  
 12546  // List: Retrieves the list of account permission groups.
 12547  //
 12548  // - profileId: User profile ID associated with this request.
 12549  func (r *AccountPermissionGroupsService) List(profileId int64) *AccountPermissionGroupsListCall {
 12550  	c := &AccountPermissionGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12551  	c.profileId = profileId
 12552  	return c
 12553  }
 12554  
 12555  // Fields allows partial responses to be retrieved. See
 12556  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12557  // details.
 12558  func (c *AccountPermissionGroupsListCall) Fields(s ...googleapi.Field) *AccountPermissionGroupsListCall {
 12559  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12560  	return c
 12561  }
 12562  
 12563  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12564  // object's ETag matches the given value. This is useful for getting updates
 12565  // only after the object has changed since the last request.
 12566  func (c *AccountPermissionGroupsListCall) IfNoneMatch(entityTag string) *AccountPermissionGroupsListCall {
 12567  	c.ifNoneMatch_ = entityTag
 12568  	return c
 12569  }
 12570  
 12571  // Context sets the context to be used in this call's Do method.
 12572  func (c *AccountPermissionGroupsListCall) Context(ctx context.Context) *AccountPermissionGroupsListCall {
 12573  	c.ctx_ = ctx
 12574  	return c
 12575  }
 12576  
 12577  // Header returns a http.Header that can be modified by the caller to add
 12578  // headers to the request.
 12579  func (c *AccountPermissionGroupsListCall) Header() http.Header {
 12580  	if c.header_ == nil {
 12581  		c.header_ = make(http.Header)
 12582  	}
 12583  	return c.header_
 12584  }
 12585  
 12586  func (c *AccountPermissionGroupsListCall) doRequest(alt string) (*http.Response, error) {
 12587  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12588  	if c.ifNoneMatch_ != "" {
 12589  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12590  	}
 12591  	var body io.Reader = nil
 12592  	c.urlParams_.Set("alt", alt)
 12593  	c.urlParams_.Set("prettyPrint", "false")
 12594  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accountPermissionGroups")
 12595  	urls += "?" + c.urlParams_.Encode()
 12596  	req, err := http.NewRequest("GET", urls, body)
 12597  	if err != nil {
 12598  		return nil, err
 12599  	}
 12600  	req.Header = reqHeaders
 12601  	googleapi.Expand(req.URL, map[string]string{
 12602  		"profileId": strconv.FormatInt(c.profileId, 10),
 12603  	})
 12604  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12605  }
 12606  
 12607  // Do executes the "dfareporting.accountPermissionGroups.list" call.
 12608  // Any non-2xx status code is an error. Response headers are in either
 12609  // *AccountPermissionGroupsListResponse.ServerResponse.Header or (if a response
 12610  // was returned at all) in error.(*googleapi.Error).Header. Use
 12611  // googleapi.IsNotModified to check whether the returned error was because
 12612  // http.StatusNotModified was returned.
 12613  func (c *AccountPermissionGroupsListCall) Do(opts ...googleapi.CallOption) (*AccountPermissionGroupsListResponse, error) {
 12614  	gensupport.SetOptions(c.urlParams_, opts...)
 12615  	res, err := c.doRequest("json")
 12616  	if res != nil && res.StatusCode == http.StatusNotModified {
 12617  		if res.Body != nil {
 12618  			res.Body.Close()
 12619  		}
 12620  		return nil, gensupport.WrapError(&googleapi.Error{
 12621  			Code:   res.StatusCode,
 12622  			Header: res.Header,
 12623  		})
 12624  	}
 12625  	if err != nil {
 12626  		return nil, err
 12627  	}
 12628  	defer googleapi.CloseBody(res)
 12629  	if err := googleapi.CheckResponse(res); err != nil {
 12630  		return nil, gensupport.WrapError(err)
 12631  	}
 12632  	ret := &AccountPermissionGroupsListResponse{
 12633  		ServerResponse: googleapi.ServerResponse{
 12634  			Header:         res.Header,
 12635  			HTTPStatusCode: res.StatusCode,
 12636  		},
 12637  	}
 12638  	target := &ret
 12639  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12640  		return nil, err
 12641  	}
 12642  	return ret, nil
 12643  }
 12644  
 12645  type AccountPermissionsGetCall struct {
 12646  	s            *Service
 12647  	profileId    int64
 12648  	id           int64
 12649  	urlParams_   gensupport.URLParams
 12650  	ifNoneMatch_ string
 12651  	ctx_         context.Context
 12652  	header_      http.Header
 12653  }
 12654  
 12655  // Get: Gets one account permission by ID.
 12656  //
 12657  // - id: Account permission ID.
 12658  // - profileId: User profile ID associated with this request.
 12659  func (r *AccountPermissionsService) Get(profileId int64, id int64) *AccountPermissionsGetCall {
 12660  	c := &AccountPermissionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12661  	c.profileId = profileId
 12662  	c.id = id
 12663  	return c
 12664  }
 12665  
 12666  // Fields allows partial responses to be retrieved. See
 12667  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12668  // details.
 12669  func (c *AccountPermissionsGetCall) Fields(s ...googleapi.Field) *AccountPermissionsGetCall {
 12670  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12671  	return c
 12672  }
 12673  
 12674  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12675  // object's ETag matches the given value. This is useful for getting updates
 12676  // only after the object has changed since the last request.
 12677  func (c *AccountPermissionsGetCall) IfNoneMatch(entityTag string) *AccountPermissionsGetCall {
 12678  	c.ifNoneMatch_ = entityTag
 12679  	return c
 12680  }
 12681  
 12682  // Context sets the context to be used in this call's Do method.
 12683  func (c *AccountPermissionsGetCall) Context(ctx context.Context) *AccountPermissionsGetCall {
 12684  	c.ctx_ = ctx
 12685  	return c
 12686  }
 12687  
 12688  // Header returns a http.Header that can be modified by the caller to add
 12689  // headers to the request.
 12690  func (c *AccountPermissionsGetCall) Header() http.Header {
 12691  	if c.header_ == nil {
 12692  		c.header_ = make(http.Header)
 12693  	}
 12694  	return c.header_
 12695  }
 12696  
 12697  func (c *AccountPermissionsGetCall) doRequest(alt string) (*http.Response, error) {
 12698  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12699  	if c.ifNoneMatch_ != "" {
 12700  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12701  	}
 12702  	var body io.Reader = nil
 12703  	c.urlParams_.Set("alt", alt)
 12704  	c.urlParams_.Set("prettyPrint", "false")
 12705  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accountPermissions/{+id}")
 12706  	urls += "?" + c.urlParams_.Encode()
 12707  	req, err := http.NewRequest("GET", urls, body)
 12708  	if err != nil {
 12709  		return nil, err
 12710  	}
 12711  	req.Header = reqHeaders
 12712  	googleapi.Expand(req.URL, map[string]string{
 12713  		"profileId": strconv.FormatInt(c.profileId, 10),
 12714  		"id":        strconv.FormatInt(c.id, 10),
 12715  	})
 12716  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12717  }
 12718  
 12719  // Do executes the "dfareporting.accountPermissions.get" call.
 12720  // Any non-2xx status code is an error. Response headers are in either
 12721  // *AccountPermission.ServerResponse.Header or (if a response was returned at
 12722  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12723  // check whether the returned error was because http.StatusNotModified was
 12724  // returned.
 12725  func (c *AccountPermissionsGetCall) Do(opts ...googleapi.CallOption) (*AccountPermission, error) {
 12726  	gensupport.SetOptions(c.urlParams_, opts...)
 12727  	res, err := c.doRequest("json")
 12728  	if res != nil && res.StatusCode == http.StatusNotModified {
 12729  		if res.Body != nil {
 12730  			res.Body.Close()
 12731  		}
 12732  		return nil, gensupport.WrapError(&googleapi.Error{
 12733  			Code:   res.StatusCode,
 12734  			Header: res.Header,
 12735  		})
 12736  	}
 12737  	if err != nil {
 12738  		return nil, err
 12739  	}
 12740  	defer googleapi.CloseBody(res)
 12741  	if err := googleapi.CheckResponse(res); err != nil {
 12742  		return nil, gensupport.WrapError(err)
 12743  	}
 12744  	ret := &AccountPermission{
 12745  		ServerResponse: googleapi.ServerResponse{
 12746  			Header:         res.Header,
 12747  			HTTPStatusCode: res.StatusCode,
 12748  		},
 12749  	}
 12750  	target := &ret
 12751  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12752  		return nil, err
 12753  	}
 12754  	return ret, nil
 12755  }
 12756  
 12757  type AccountPermissionsListCall struct {
 12758  	s            *Service
 12759  	profileId    int64
 12760  	urlParams_   gensupport.URLParams
 12761  	ifNoneMatch_ string
 12762  	ctx_         context.Context
 12763  	header_      http.Header
 12764  }
 12765  
 12766  // List: Retrieves the list of account permissions.
 12767  //
 12768  // - profileId: User profile ID associated with this request.
 12769  func (r *AccountPermissionsService) List(profileId int64) *AccountPermissionsListCall {
 12770  	c := &AccountPermissionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12771  	c.profileId = profileId
 12772  	return c
 12773  }
 12774  
 12775  // Fields allows partial responses to be retrieved. See
 12776  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12777  // details.
 12778  func (c *AccountPermissionsListCall) Fields(s ...googleapi.Field) *AccountPermissionsListCall {
 12779  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12780  	return c
 12781  }
 12782  
 12783  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12784  // object's ETag matches the given value. This is useful for getting updates
 12785  // only after the object has changed since the last request.
 12786  func (c *AccountPermissionsListCall) IfNoneMatch(entityTag string) *AccountPermissionsListCall {
 12787  	c.ifNoneMatch_ = entityTag
 12788  	return c
 12789  }
 12790  
 12791  // Context sets the context to be used in this call's Do method.
 12792  func (c *AccountPermissionsListCall) Context(ctx context.Context) *AccountPermissionsListCall {
 12793  	c.ctx_ = ctx
 12794  	return c
 12795  }
 12796  
 12797  // Header returns a http.Header that can be modified by the caller to add
 12798  // headers to the request.
 12799  func (c *AccountPermissionsListCall) Header() http.Header {
 12800  	if c.header_ == nil {
 12801  		c.header_ = make(http.Header)
 12802  	}
 12803  	return c.header_
 12804  }
 12805  
 12806  func (c *AccountPermissionsListCall) doRequest(alt string) (*http.Response, error) {
 12807  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12808  	if c.ifNoneMatch_ != "" {
 12809  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12810  	}
 12811  	var body io.Reader = nil
 12812  	c.urlParams_.Set("alt", alt)
 12813  	c.urlParams_.Set("prettyPrint", "false")
 12814  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accountPermissions")
 12815  	urls += "?" + c.urlParams_.Encode()
 12816  	req, err := http.NewRequest("GET", urls, body)
 12817  	if err != nil {
 12818  		return nil, err
 12819  	}
 12820  	req.Header = reqHeaders
 12821  	googleapi.Expand(req.URL, map[string]string{
 12822  		"profileId": strconv.FormatInt(c.profileId, 10),
 12823  	})
 12824  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12825  }
 12826  
 12827  // Do executes the "dfareporting.accountPermissions.list" call.
 12828  // Any non-2xx status code is an error. Response headers are in either
 12829  // *AccountPermissionsListResponse.ServerResponse.Header or (if a response was
 12830  // returned at all) in error.(*googleapi.Error).Header. Use
 12831  // googleapi.IsNotModified to check whether the returned error was because
 12832  // http.StatusNotModified was returned.
 12833  func (c *AccountPermissionsListCall) Do(opts ...googleapi.CallOption) (*AccountPermissionsListResponse, error) {
 12834  	gensupport.SetOptions(c.urlParams_, opts...)
 12835  	res, err := c.doRequest("json")
 12836  	if res != nil && res.StatusCode == http.StatusNotModified {
 12837  		if res.Body != nil {
 12838  			res.Body.Close()
 12839  		}
 12840  		return nil, gensupport.WrapError(&googleapi.Error{
 12841  			Code:   res.StatusCode,
 12842  			Header: res.Header,
 12843  		})
 12844  	}
 12845  	if err != nil {
 12846  		return nil, err
 12847  	}
 12848  	defer googleapi.CloseBody(res)
 12849  	if err := googleapi.CheckResponse(res); err != nil {
 12850  		return nil, gensupport.WrapError(err)
 12851  	}
 12852  	ret := &AccountPermissionsListResponse{
 12853  		ServerResponse: googleapi.ServerResponse{
 12854  			Header:         res.Header,
 12855  			HTTPStatusCode: res.StatusCode,
 12856  		},
 12857  	}
 12858  	target := &ret
 12859  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12860  		return nil, err
 12861  	}
 12862  	return ret, nil
 12863  }
 12864  
 12865  type AccountUserProfilesGetCall struct {
 12866  	s            *Service
 12867  	profileId    int64
 12868  	id           int64
 12869  	urlParams_   gensupport.URLParams
 12870  	ifNoneMatch_ string
 12871  	ctx_         context.Context
 12872  	header_      http.Header
 12873  }
 12874  
 12875  // Get: Gets one account user profile by ID.
 12876  //
 12877  // - id: User profile ID.
 12878  // - profileId: User profile ID associated with this request.
 12879  func (r *AccountUserProfilesService) Get(profileId int64, id int64) *AccountUserProfilesGetCall {
 12880  	c := &AccountUserProfilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12881  	c.profileId = profileId
 12882  	c.id = id
 12883  	return c
 12884  }
 12885  
 12886  // Fields allows partial responses to be retrieved. See
 12887  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12888  // details.
 12889  func (c *AccountUserProfilesGetCall) Fields(s ...googleapi.Field) *AccountUserProfilesGetCall {
 12890  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 12891  	return c
 12892  }
 12893  
 12894  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 12895  // object's ETag matches the given value. This is useful for getting updates
 12896  // only after the object has changed since the last request.
 12897  func (c *AccountUserProfilesGetCall) IfNoneMatch(entityTag string) *AccountUserProfilesGetCall {
 12898  	c.ifNoneMatch_ = entityTag
 12899  	return c
 12900  }
 12901  
 12902  // Context sets the context to be used in this call's Do method.
 12903  func (c *AccountUserProfilesGetCall) Context(ctx context.Context) *AccountUserProfilesGetCall {
 12904  	c.ctx_ = ctx
 12905  	return c
 12906  }
 12907  
 12908  // Header returns a http.Header that can be modified by the caller to add
 12909  // headers to the request.
 12910  func (c *AccountUserProfilesGetCall) Header() http.Header {
 12911  	if c.header_ == nil {
 12912  		c.header_ = make(http.Header)
 12913  	}
 12914  	return c.header_
 12915  }
 12916  
 12917  func (c *AccountUserProfilesGetCall) doRequest(alt string) (*http.Response, error) {
 12918  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 12919  	if c.ifNoneMatch_ != "" {
 12920  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 12921  	}
 12922  	var body io.Reader = nil
 12923  	c.urlParams_.Set("alt", alt)
 12924  	c.urlParams_.Set("prettyPrint", "false")
 12925  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/accountUserProfiles/{+id}")
 12926  	urls += "?" + c.urlParams_.Encode()
 12927  	req, err := http.NewRequest("GET", urls, body)
 12928  	if err != nil {
 12929  		return nil, err
 12930  	}
 12931  	req.Header = reqHeaders
 12932  	googleapi.Expand(req.URL, map[string]string{
 12933  		"profileId": strconv.FormatInt(c.profileId, 10),
 12934  		"id":        strconv.FormatInt(c.id, 10),
 12935  	})
 12936  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 12937  }
 12938  
 12939  // Do executes the "dfareporting.accountUserProfiles.get" call.
 12940  // Any non-2xx status code is an error. Response headers are in either
 12941  // *AccountUserProfile.ServerResponse.Header or (if a response was returned at
 12942  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 12943  // check whether the returned error was because http.StatusNotModified was
 12944  // returned.
 12945  func (c *AccountUserProfilesGetCall) Do(opts ...googleapi.CallOption) (*AccountUserProfile, error) {
 12946  	gensupport.SetOptions(c.urlParams_, opts...)
 12947  	res, err := c.doRequest("json")
 12948  	if res != nil && res.StatusCode == http.StatusNotModified {
 12949  		if res.Body != nil {
 12950  			res.Body.Close()
 12951  		}
 12952  		return nil, gensupport.WrapError(&googleapi.Error{
 12953  			Code:   res.StatusCode,
 12954  			Header: res.Header,
 12955  		})
 12956  	}
 12957  	if err != nil {
 12958  		return nil, err
 12959  	}
 12960  	defer googleapi.CloseBody(res)
 12961  	if err := googleapi.CheckResponse(res); err != nil {
 12962  		return nil, gensupport.WrapError(err)
 12963  	}
 12964  	ret := &AccountUserProfile{
 12965  		ServerResponse: googleapi.ServerResponse{
 12966  			Header:         res.Header,
 12967  			HTTPStatusCode: res.StatusCode,
 12968  		},
 12969  	}
 12970  	target := &ret
 12971  	if err := gensupport.DecodeResponse(target, res); err != nil {
 12972  		return nil, err
 12973  	}
 12974  	return ret, nil
 12975  }
 12976  
 12977  type AccountUserProfilesInsertCall struct {
 12978  	s                  *Service
 12979  	profileId          int64
 12980  	accountuserprofile *AccountUserProfile
 12981  	urlParams_         gensupport.URLParams
 12982  	ctx_               context.Context
 12983  	header_            http.Header
 12984  }
 12985  
 12986  // Insert: Inserts a new account user profile.
 12987  //
 12988  // - profileId: User profile ID associated with this request.
 12989  func (r *AccountUserProfilesService) Insert(profileId int64, accountuserprofile *AccountUserProfile) *AccountUserProfilesInsertCall {
 12990  	c := &AccountUserProfilesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 12991  	c.profileId = profileId
 12992  	c.accountuserprofile = accountuserprofile
 12993  	return c
 12994  }
 12995  
 12996  // Fields allows partial responses to be retrieved. See
 12997  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 12998  // details.
 12999  func (c *AccountUserProfilesInsertCall) Fields(s ...googleapi.Field) *AccountUserProfilesInsertCall {
 13000  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13001  	return c
 13002  }
 13003  
 13004  // Context sets the context to be used in this call's Do method.
 13005  func (c *AccountUserProfilesInsertCall) Context(ctx context.Context) *AccountUserProfilesInsertCall {
 13006  	c.ctx_ = ctx
 13007  	return c
 13008  }
 13009  
 13010  // Header returns a http.Header that can be modified by the caller to add
 13011  // headers to the request.
 13012  func (c *AccountUserProfilesInsertCall) Header() http.Header {
 13013  	if c.header_ == nil {
 13014  		c.header_ = make(http.Header)
 13015  	}
 13016  	return c.header_
 13017  }
 13018  
 13019  func (c *AccountUserProfilesInsertCall) doRequest(alt string) (*http.Response, error) {
 13020  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13021  	var body io.Reader = nil
 13022  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountuserprofile)
 13023  	if err != nil {
 13024  		return nil, err
 13025  	}
 13026  	c.urlParams_.Set("alt", alt)
 13027  	c.urlParams_.Set("prettyPrint", "false")
 13028  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accountUserProfiles")
 13029  	urls += "?" + c.urlParams_.Encode()
 13030  	req, err := http.NewRequest("POST", urls, body)
 13031  	if err != nil {
 13032  		return nil, err
 13033  	}
 13034  	req.Header = reqHeaders
 13035  	googleapi.Expand(req.URL, map[string]string{
 13036  		"profileId": strconv.FormatInt(c.profileId, 10),
 13037  	})
 13038  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13039  }
 13040  
 13041  // Do executes the "dfareporting.accountUserProfiles.insert" call.
 13042  // Any non-2xx status code is an error. Response headers are in either
 13043  // *AccountUserProfile.ServerResponse.Header or (if a response was returned at
 13044  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 13045  // check whether the returned error was because http.StatusNotModified was
 13046  // returned.
 13047  func (c *AccountUserProfilesInsertCall) Do(opts ...googleapi.CallOption) (*AccountUserProfile, error) {
 13048  	gensupport.SetOptions(c.urlParams_, opts...)
 13049  	res, err := c.doRequest("json")
 13050  	if res != nil && res.StatusCode == http.StatusNotModified {
 13051  		if res.Body != nil {
 13052  			res.Body.Close()
 13053  		}
 13054  		return nil, gensupport.WrapError(&googleapi.Error{
 13055  			Code:   res.StatusCode,
 13056  			Header: res.Header,
 13057  		})
 13058  	}
 13059  	if err != nil {
 13060  		return nil, err
 13061  	}
 13062  	defer googleapi.CloseBody(res)
 13063  	if err := googleapi.CheckResponse(res); err != nil {
 13064  		return nil, gensupport.WrapError(err)
 13065  	}
 13066  	ret := &AccountUserProfile{
 13067  		ServerResponse: googleapi.ServerResponse{
 13068  			Header:         res.Header,
 13069  			HTTPStatusCode: res.StatusCode,
 13070  		},
 13071  	}
 13072  	target := &ret
 13073  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13074  		return nil, err
 13075  	}
 13076  	return ret, nil
 13077  }
 13078  
 13079  type AccountUserProfilesListCall struct {
 13080  	s            *Service
 13081  	profileId    int64
 13082  	urlParams_   gensupport.URLParams
 13083  	ifNoneMatch_ string
 13084  	ctx_         context.Context
 13085  	header_      http.Header
 13086  }
 13087  
 13088  // List: Retrieves a list of account user profiles, possibly filtered. This
 13089  // method supports paging.
 13090  //
 13091  // - profileId: User profile ID associated with this request.
 13092  func (r *AccountUserProfilesService) List(profileId int64) *AccountUserProfilesListCall {
 13093  	c := &AccountUserProfilesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13094  	c.profileId = profileId
 13095  	return c
 13096  }
 13097  
 13098  // Active sets the optional parameter "active": Select only active user
 13099  // profiles.
 13100  func (c *AccountUserProfilesListCall) Active(active bool) *AccountUserProfilesListCall {
 13101  	c.urlParams_.Set("active", fmt.Sprint(active))
 13102  	return c
 13103  }
 13104  
 13105  // Ids sets the optional parameter "ids": Select only user profiles with these
 13106  // IDs.
 13107  func (c *AccountUserProfilesListCall) Ids(ids ...int64) *AccountUserProfilesListCall {
 13108  	var ids_ []string
 13109  	for _, v := range ids {
 13110  		ids_ = append(ids_, fmt.Sprint(v))
 13111  	}
 13112  	c.urlParams_.SetMulti("ids", ids_)
 13113  	return c
 13114  }
 13115  
 13116  // MaxResults sets the optional parameter "maxResults": Maximum number of
 13117  // results to return.
 13118  func (c *AccountUserProfilesListCall) MaxResults(maxResults int64) *AccountUserProfilesListCall {
 13119  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 13120  	return c
 13121  }
 13122  
 13123  // PageToken sets the optional parameter "pageToken": Value of the
 13124  // nextPageToken from the previous result page.
 13125  func (c *AccountUserProfilesListCall) PageToken(pageToken string) *AccountUserProfilesListCall {
 13126  	c.urlParams_.Set("pageToken", pageToken)
 13127  	return c
 13128  }
 13129  
 13130  // SearchString sets the optional parameter "searchString": Allows searching
 13131  // for objects by name, ID or email. Wildcards (*) are allowed. For example,
 13132  // "user profile*2015" will return objects with names like "user profile June
 13133  // 2015", "user profile April 2015", or simply "user profile 2015". Most of the
 13134  // searches also add wildcards implicitly at the start and the end of the
 13135  // search string. For example, a search string of "user profile" will match
 13136  // objects with name "my user profile", "user profile 2015", or simply "user
 13137  // profile".
 13138  func (c *AccountUserProfilesListCall) SearchString(searchString string) *AccountUserProfilesListCall {
 13139  	c.urlParams_.Set("searchString", searchString)
 13140  	return c
 13141  }
 13142  
 13143  // SortField sets the optional parameter "sortField": Field by which to sort
 13144  // the list.
 13145  //
 13146  // Possible values:
 13147  //
 13148  //	"ID" (default)
 13149  //	"NAME"
 13150  func (c *AccountUserProfilesListCall) SortField(sortField string) *AccountUserProfilesListCall {
 13151  	c.urlParams_.Set("sortField", sortField)
 13152  	return c
 13153  }
 13154  
 13155  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 13156  //
 13157  // Possible values:
 13158  //
 13159  //	"ASCENDING" (default) - Ascending order.
 13160  //	"DESCENDING" - Descending order.
 13161  func (c *AccountUserProfilesListCall) SortOrder(sortOrder string) *AccountUserProfilesListCall {
 13162  	c.urlParams_.Set("sortOrder", sortOrder)
 13163  	return c
 13164  }
 13165  
 13166  // SubaccountId sets the optional parameter "subaccountId": Select only user
 13167  // profiles with the specified subaccount ID.
 13168  func (c *AccountUserProfilesListCall) SubaccountId(subaccountId int64) *AccountUserProfilesListCall {
 13169  	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
 13170  	return c
 13171  }
 13172  
 13173  // UserRoleId sets the optional parameter "userRoleId": Select only user
 13174  // profiles with the specified user role ID.
 13175  func (c *AccountUserProfilesListCall) UserRoleId(userRoleId int64) *AccountUserProfilesListCall {
 13176  	c.urlParams_.Set("userRoleId", fmt.Sprint(userRoleId))
 13177  	return c
 13178  }
 13179  
 13180  // Fields allows partial responses to be retrieved. See
 13181  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13182  // details.
 13183  func (c *AccountUserProfilesListCall) Fields(s ...googleapi.Field) *AccountUserProfilesListCall {
 13184  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13185  	return c
 13186  }
 13187  
 13188  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13189  // object's ETag matches the given value. This is useful for getting updates
 13190  // only after the object has changed since the last request.
 13191  func (c *AccountUserProfilesListCall) IfNoneMatch(entityTag string) *AccountUserProfilesListCall {
 13192  	c.ifNoneMatch_ = entityTag
 13193  	return c
 13194  }
 13195  
 13196  // Context sets the context to be used in this call's Do method.
 13197  func (c *AccountUserProfilesListCall) Context(ctx context.Context) *AccountUserProfilesListCall {
 13198  	c.ctx_ = ctx
 13199  	return c
 13200  }
 13201  
 13202  // Header returns a http.Header that can be modified by the caller to add
 13203  // headers to the request.
 13204  func (c *AccountUserProfilesListCall) Header() http.Header {
 13205  	if c.header_ == nil {
 13206  		c.header_ = make(http.Header)
 13207  	}
 13208  	return c.header_
 13209  }
 13210  
 13211  func (c *AccountUserProfilesListCall) doRequest(alt string) (*http.Response, error) {
 13212  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13213  	if c.ifNoneMatch_ != "" {
 13214  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13215  	}
 13216  	var body io.Reader = nil
 13217  	c.urlParams_.Set("alt", alt)
 13218  	c.urlParams_.Set("prettyPrint", "false")
 13219  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accountUserProfiles")
 13220  	urls += "?" + c.urlParams_.Encode()
 13221  	req, err := http.NewRequest("GET", urls, body)
 13222  	if err != nil {
 13223  		return nil, err
 13224  	}
 13225  	req.Header = reqHeaders
 13226  	googleapi.Expand(req.URL, map[string]string{
 13227  		"profileId": strconv.FormatInt(c.profileId, 10),
 13228  	})
 13229  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13230  }
 13231  
 13232  // Do executes the "dfareporting.accountUserProfiles.list" call.
 13233  // Any non-2xx status code is an error. Response headers are in either
 13234  // *AccountUserProfilesListResponse.ServerResponse.Header or (if a response was
 13235  // returned at all) in error.(*googleapi.Error).Header. Use
 13236  // googleapi.IsNotModified to check whether the returned error was because
 13237  // http.StatusNotModified was returned.
 13238  func (c *AccountUserProfilesListCall) Do(opts ...googleapi.CallOption) (*AccountUserProfilesListResponse, error) {
 13239  	gensupport.SetOptions(c.urlParams_, opts...)
 13240  	res, err := c.doRequest("json")
 13241  	if res != nil && res.StatusCode == http.StatusNotModified {
 13242  		if res.Body != nil {
 13243  			res.Body.Close()
 13244  		}
 13245  		return nil, gensupport.WrapError(&googleapi.Error{
 13246  			Code:   res.StatusCode,
 13247  			Header: res.Header,
 13248  		})
 13249  	}
 13250  	if err != nil {
 13251  		return nil, err
 13252  	}
 13253  	defer googleapi.CloseBody(res)
 13254  	if err := googleapi.CheckResponse(res); err != nil {
 13255  		return nil, gensupport.WrapError(err)
 13256  	}
 13257  	ret := &AccountUserProfilesListResponse{
 13258  		ServerResponse: googleapi.ServerResponse{
 13259  			Header:         res.Header,
 13260  			HTTPStatusCode: res.StatusCode,
 13261  		},
 13262  	}
 13263  	target := &ret
 13264  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13265  		return nil, err
 13266  	}
 13267  	return ret, nil
 13268  }
 13269  
 13270  // Pages invokes f for each page of results.
 13271  // A non-nil error returned from f will halt the iteration.
 13272  // The provided context supersedes any context provided to the Context method.
 13273  func (c *AccountUserProfilesListCall) Pages(ctx context.Context, f func(*AccountUserProfilesListResponse) error) error {
 13274  	c.ctx_ = ctx
 13275  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 13276  	for {
 13277  		x, err := c.Do()
 13278  		if err != nil {
 13279  			return err
 13280  		}
 13281  		if err := f(x); err != nil {
 13282  			return err
 13283  		}
 13284  		if x.NextPageToken == "" {
 13285  			return nil
 13286  		}
 13287  		c.PageToken(x.NextPageToken)
 13288  	}
 13289  }
 13290  
 13291  type AccountUserProfilesPatchCall struct {
 13292  	s                  *Service
 13293  	profileId          int64
 13294  	accountuserprofile *AccountUserProfile
 13295  	urlParams_         gensupport.URLParams
 13296  	ctx_               context.Context
 13297  	header_            http.Header
 13298  }
 13299  
 13300  // Patch: Updates an existing user role. This method supports patch semantics.
 13301  //
 13302  // - id: AccountUserProfile ID.
 13303  // - profileId: User profile ID associated with this request.
 13304  func (r *AccountUserProfilesService) Patch(profileId int64, id int64, accountuserprofile *AccountUserProfile) *AccountUserProfilesPatchCall {
 13305  	c := &AccountUserProfilesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13306  	c.profileId = profileId
 13307  	c.urlParams_.Set("id", fmt.Sprint(id))
 13308  	c.accountuserprofile = accountuserprofile
 13309  	return c
 13310  }
 13311  
 13312  // Fields allows partial responses to be retrieved. See
 13313  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13314  // details.
 13315  func (c *AccountUserProfilesPatchCall) Fields(s ...googleapi.Field) *AccountUserProfilesPatchCall {
 13316  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13317  	return c
 13318  }
 13319  
 13320  // Context sets the context to be used in this call's Do method.
 13321  func (c *AccountUserProfilesPatchCall) Context(ctx context.Context) *AccountUserProfilesPatchCall {
 13322  	c.ctx_ = ctx
 13323  	return c
 13324  }
 13325  
 13326  // Header returns a http.Header that can be modified by the caller to add
 13327  // headers to the request.
 13328  func (c *AccountUserProfilesPatchCall) Header() http.Header {
 13329  	if c.header_ == nil {
 13330  		c.header_ = make(http.Header)
 13331  	}
 13332  	return c.header_
 13333  }
 13334  
 13335  func (c *AccountUserProfilesPatchCall) doRequest(alt string) (*http.Response, error) {
 13336  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13337  	var body io.Reader = nil
 13338  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountuserprofile)
 13339  	if err != nil {
 13340  		return nil, err
 13341  	}
 13342  	c.urlParams_.Set("alt", alt)
 13343  	c.urlParams_.Set("prettyPrint", "false")
 13344  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accountUserProfiles")
 13345  	urls += "?" + c.urlParams_.Encode()
 13346  	req, err := http.NewRequest("PATCH", urls, body)
 13347  	if err != nil {
 13348  		return nil, err
 13349  	}
 13350  	req.Header = reqHeaders
 13351  	googleapi.Expand(req.URL, map[string]string{
 13352  		"profileId": strconv.FormatInt(c.profileId, 10),
 13353  	})
 13354  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13355  }
 13356  
 13357  // Do executes the "dfareporting.accountUserProfiles.patch" call.
 13358  // Any non-2xx status code is an error. Response headers are in either
 13359  // *AccountUserProfile.ServerResponse.Header or (if a response was returned at
 13360  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 13361  // check whether the returned error was because http.StatusNotModified was
 13362  // returned.
 13363  func (c *AccountUserProfilesPatchCall) Do(opts ...googleapi.CallOption) (*AccountUserProfile, error) {
 13364  	gensupport.SetOptions(c.urlParams_, opts...)
 13365  	res, err := c.doRequest("json")
 13366  	if res != nil && res.StatusCode == http.StatusNotModified {
 13367  		if res.Body != nil {
 13368  			res.Body.Close()
 13369  		}
 13370  		return nil, gensupport.WrapError(&googleapi.Error{
 13371  			Code:   res.StatusCode,
 13372  			Header: res.Header,
 13373  		})
 13374  	}
 13375  	if err != nil {
 13376  		return nil, err
 13377  	}
 13378  	defer googleapi.CloseBody(res)
 13379  	if err := googleapi.CheckResponse(res); err != nil {
 13380  		return nil, gensupport.WrapError(err)
 13381  	}
 13382  	ret := &AccountUserProfile{
 13383  		ServerResponse: googleapi.ServerResponse{
 13384  			Header:         res.Header,
 13385  			HTTPStatusCode: res.StatusCode,
 13386  		},
 13387  	}
 13388  	target := &ret
 13389  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13390  		return nil, err
 13391  	}
 13392  	return ret, nil
 13393  }
 13394  
 13395  type AccountUserProfilesUpdateCall struct {
 13396  	s                  *Service
 13397  	profileId          int64
 13398  	accountuserprofile *AccountUserProfile
 13399  	urlParams_         gensupport.URLParams
 13400  	ctx_               context.Context
 13401  	header_            http.Header
 13402  }
 13403  
 13404  // Update: Updates an existing account user profile.
 13405  //
 13406  // - profileId: User profile ID associated with this request.
 13407  func (r *AccountUserProfilesService) Update(profileId int64, accountuserprofile *AccountUserProfile) *AccountUserProfilesUpdateCall {
 13408  	c := &AccountUserProfilesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13409  	c.profileId = profileId
 13410  	c.accountuserprofile = accountuserprofile
 13411  	return c
 13412  }
 13413  
 13414  // Fields allows partial responses to be retrieved. See
 13415  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13416  // details.
 13417  func (c *AccountUserProfilesUpdateCall) Fields(s ...googleapi.Field) *AccountUserProfilesUpdateCall {
 13418  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13419  	return c
 13420  }
 13421  
 13422  // Context sets the context to be used in this call's Do method.
 13423  func (c *AccountUserProfilesUpdateCall) Context(ctx context.Context) *AccountUserProfilesUpdateCall {
 13424  	c.ctx_ = ctx
 13425  	return c
 13426  }
 13427  
 13428  // Header returns a http.Header that can be modified by the caller to add
 13429  // headers to the request.
 13430  func (c *AccountUserProfilesUpdateCall) Header() http.Header {
 13431  	if c.header_ == nil {
 13432  		c.header_ = make(http.Header)
 13433  	}
 13434  	return c.header_
 13435  }
 13436  
 13437  func (c *AccountUserProfilesUpdateCall) doRequest(alt string) (*http.Response, error) {
 13438  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13439  	var body io.Reader = nil
 13440  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.accountuserprofile)
 13441  	if err != nil {
 13442  		return nil, err
 13443  	}
 13444  	c.urlParams_.Set("alt", alt)
 13445  	c.urlParams_.Set("prettyPrint", "false")
 13446  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accountUserProfiles")
 13447  	urls += "?" + c.urlParams_.Encode()
 13448  	req, err := http.NewRequest("PUT", urls, body)
 13449  	if err != nil {
 13450  		return nil, err
 13451  	}
 13452  	req.Header = reqHeaders
 13453  	googleapi.Expand(req.URL, map[string]string{
 13454  		"profileId": strconv.FormatInt(c.profileId, 10),
 13455  	})
 13456  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13457  }
 13458  
 13459  // Do executes the "dfareporting.accountUserProfiles.update" call.
 13460  // Any non-2xx status code is an error. Response headers are in either
 13461  // *AccountUserProfile.ServerResponse.Header or (if a response was returned at
 13462  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 13463  // check whether the returned error was because http.StatusNotModified was
 13464  // returned.
 13465  func (c *AccountUserProfilesUpdateCall) Do(opts ...googleapi.CallOption) (*AccountUserProfile, error) {
 13466  	gensupport.SetOptions(c.urlParams_, opts...)
 13467  	res, err := c.doRequest("json")
 13468  	if res != nil && res.StatusCode == http.StatusNotModified {
 13469  		if res.Body != nil {
 13470  			res.Body.Close()
 13471  		}
 13472  		return nil, gensupport.WrapError(&googleapi.Error{
 13473  			Code:   res.StatusCode,
 13474  			Header: res.Header,
 13475  		})
 13476  	}
 13477  	if err != nil {
 13478  		return nil, err
 13479  	}
 13480  	defer googleapi.CloseBody(res)
 13481  	if err := googleapi.CheckResponse(res); err != nil {
 13482  		return nil, gensupport.WrapError(err)
 13483  	}
 13484  	ret := &AccountUserProfile{
 13485  		ServerResponse: googleapi.ServerResponse{
 13486  			Header:         res.Header,
 13487  			HTTPStatusCode: res.StatusCode,
 13488  		},
 13489  	}
 13490  	target := &ret
 13491  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13492  		return nil, err
 13493  	}
 13494  	return ret, nil
 13495  }
 13496  
 13497  type AccountsGetCall struct {
 13498  	s            *Service
 13499  	profileId    int64
 13500  	id           int64
 13501  	urlParams_   gensupport.URLParams
 13502  	ifNoneMatch_ string
 13503  	ctx_         context.Context
 13504  	header_      http.Header
 13505  }
 13506  
 13507  // Get: Gets one account by ID.
 13508  //
 13509  // - id: Account ID.
 13510  // - profileId: User profile ID associated with this request.
 13511  func (r *AccountsService) Get(profileId int64, id int64) *AccountsGetCall {
 13512  	c := &AccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13513  	c.profileId = profileId
 13514  	c.id = id
 13515  	return c
 13516  }
 13517  
 13518  // Fields allows partial responses to be retrieved. See
 13519  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13520  // details.
 13521  func (c *AccountsGetCall) Fields(s ...googleapi.Field) *AccountsGetCall {
 13522  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13523  	return c
 13524  }
 13525  
 13526  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13527  // object's ETag matches the given value. This is useful for getting updates
 13528  // only after the object has changed since the last request.
 13529  func (c *AccountsGetCall) IfNoneMatch(entityTag string) *AccountsGetCall {
 13530  	c.ifNoneMatch_ = entityTag
 13531  	return c
 13532  }
 13533  
 13534  // Context sets the context to be used in this call's Do method.
 13535  func (c *AccountsGetCall) Context(ctx context.Context) *AccountsGetCall {
 13536  	c.ctx_ = ctx
 13537  	return c
 13538  }
 13539  
 13540  // Header returns a http.Header that can be modified by the caller to add
 13541  // headers to the request.
 13542  func (c *AccountsGetCall) Header() http.Header {
 13543  	if c.header_ == nil {
 13544  		c.header_ = make(http.Header)
 13545  	}
 13546  	return c.header_
 13547  }
 13548  
 13549  func (c *AccountsGetCall) doRequest(alt string) (*http.Response, error) {
 13550  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13551  	if c.ifNoneMatch_ != "" {
 13552  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13553  	}
 13554  	var body io.Reader = nil
 13555  	c.urlParams_.Set("alt", alt)
 13556  	c.urlParams_.Set("prettyPrint", "false")
 13557  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accounts/{+id}")
 13558  	urls += "?" + c.urlParams_.Encode()
 13559  	req, err := http.NewRequest("GET", urls, body)
 13560  	if err != nil {
 13561  		return nil, err
 13562  	}
 13563  	req.Header = reqHeaders
 13564  	googleapi.Expand(req.URL, map[string]string{
 13565  		"profileId": strconv.FormatInt(c.profileId, 10),
 13566  		"id":        strconv.FormatInt(c.id, 10),
 13567  	})
 13568  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13569  }
 13570  
 13571  // Do executes the "dfareporting.accounts.get" call.
 13572  // Any non-2xx status code is an error. Response headers are in either
 13573  // *Account.ServerResponse.Header or (if a response was returned at all) in
 13574  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13575  // whether the returned error was because http.StatusNotModified was returned.
 13576  func (c *AccountsGetCall) Do(opts ...googleapi.CallOption) (*Account, error) {
 13577  	gensupport.SetOptions(c.urlParams_, opts...)
 13578  	res, err := c.doRequest("json")
 13579  	if res != nil && res.StatusCode == http.StatusNotModified {
 13580  		if res.Body != nil {
 13581  			res.Body.Close()
 13582  		}
 13583  		return nil, gensupport.WrapError(&googleapi.Error{
 13584  			Code:   res.StatusCode,
 13585  			Header: res.Header,
 13586  		})
 13587  	}
 13588  	if err != nil {
 13589  		return nil, err
 13590  	}
 13591  	defer googleapi.CloseBody(res)
 13592  	if err := googleapi.CheckResponse(res); err != nil {
 13593  		return nil, gensupport.WrapError(err)
 13594  	}
 13595  	ret := &Account{
 13596  		ServerResponse: googleapi.ServerResponse{
 13597  			Header:         res.Header,
 13598  			HTTPStatusCode: res.StatusCode,
 13599  		},
 13600  	}
 13601  	target := &ret
 13602  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13603  		return nil, err
 13604  	}
 13605  	return ret, nil
 13606  }
 13607  
 13608  type AccountsListCall struct {
 13609  	s            *Service
 13610  	profileId    int64
 13611  	urlParams_   gensupport.URLParams
 13612  	ifNoneMatch_ string
 13613  	ctx_         context.Context
 13614  	header_      http.Header
 13615  }
 13616  
 13617  // List: Retrieves the list of accounts, possibly filtered. This method
 13618  // supports paging.
 13619  //
 13620  // - profileId: User profile ID associated with this request.
 13621  func (r *AccountsService) List(profileId int64) *AccountsListCall {
 13622  	c := &AccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13623  	c.profileId = profileId
 13624  	return c
 13625  }
 13626  
 13627  // Active sets the optional parameter "active": Select only active accounts.
 13628  // Don't set this field to select both active and non-active accounts.
 13629  func (c *AccountsListCall) Active(active bool) *AccountsListCall {
 13630  	c.urlParams_.Set("active", fmt.Sprint(active))
 13631  	return c
 13632  }
 13633  
 13634  // Ids sets the optional parameter "ids": Select only accounts with these IDs.
 13635  func (c *AccountsListCall) Ids(ids ...int64) *AccountsListCall {
 13636  	var ids_ []string
 13637  	for _, v := range ids {
 13638  		ids_ = append(ids_, fmt.Sprint(v))
 13639  	}
 13640  	c.urlParams_.SetMulti("ids", ids_)
 13641  	return c
 13642  }
 13643  
 13644  // MaxResults sets the optional parameter "maxResults": Maximum number of
 13645  // results to return.
 13646  func (c *AccountsListCall) MaxResults(maxResults int64) *AccountsListCall {
 13647  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 13648  	return c
 13649  }
 13650  
 13651  // PageToken sets the optional parameter "pageToken": Value of the
 13652  // nextPageToken from the previous result page.
 13653  func (c *AccountsListCall) PageToken(pageToken string) *AccountsListCall {
 13654  	c.urlParams_.Set("pageToken", pageToken)
 13655  	return c
 13656  }
 13657  
 13658  // SearchString sets the optional parameter "searchString": Allows searching
 13659  // for objects by name or ID. Wildcards (*) are allowed. For example,
 13660  // "account*2015" will return objects with names like "account June 2015",
 13661  // "account April 2015", or simply "account 2015". Most of the searches also
 13662  // add wildcards implicitly at the start and the end of the search string. For
 13663  // example, a search string of "account" will match objects with name "my
 13664  // account", "account 2015", or simply "account".
 13665  func (c *AccountsListCall) SearchString(searchString string) *AccountsListCall {
 13666  	c.urlParams_.Set("searchString", searchString)
 13667  	return c
 13668  }
 13669  
 13670  // SortField sets the optional parameter "sortField": Field by which to sort
 13671  // the list.
 13672  //
 13673  // Possible values:
 13674  //
 13675  //	"ID" (default)
 13676  //	"NAME"
 13677  func (c *AccountsListCall) SortField(sortField string) *AccountsListCall {
 13678  	c.urlParams_.Set("sortField", sortField)
 13679  	return c
 13680  }
 13681  
 13682  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 13683  //
 13684  // Possible values:
 13685  //
 13686  //	"ASCENDING" (default) - Ascending order.
 13687  //	"DESCENDING" - Descending order.
 13688  func (c *AccountsListCall) SortOrder(sortOrder string) *AccountsListCall {
 13689  	c.urlParams_.Set("sortOrder", sortOrder)
 13690  	return c
 13691  }
 13692  
 13693  // Fields allows partial responses to be retrieved. See
 13694  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13695  // details.
 13696  func (c *AccountsListCall) Fields(s ...googleapi.Field) *AccountsListCall {
 13697  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13698  	return c
 13699  }
 13700  
 13701  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 13702  // object's ETag matches the given value. This is useful for getting updates
 13703  // only after the object has changed since the last request.
 13704  func (c *AccountsListCall) IfNoneMatch(entityTag string) *AccountsListCall {
 13705  	c.ifNoneMatch_ = entityTag
 13706  	return c
 13707  }
 13708  
 13709  // Context sets the context to be used in this call's Do method.
 13710  func (c *AccountsListCall) Context(ctx context.Context) *AccountsListCall {
 13711  	c.ctx_ = ctx
 13712  	return c
 13713  }
 13714  
 13715  // Header returns a http.Header that can be modified by the caller to add
 13716  // headers to the request.
 13717  func (c *AccountsListCall) Header() http.Header {
 13718  	if c.header_ == nil {
 13719  		c.header_ = make(http.Header)
 13720  	}
 13721  	return c.header_
 13722  }
 13723  
 13724  func (c *AccountsListCall) doRequest(alt string) (*http.Response, error) {
 13725  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 13726  	if c.ifNoneMatch_ != "" {
 13727  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 13728  	}
 13729  	var body io.Reader = nil
 13730  	c.urlParams_.Set("alt", alt)
 13731  	c.urlParams_.Set("prettyPrint", "false")
 13732  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accounts")
 13733  	urls += "?" + c.urlParams_.Encode()
 13734  	req, err := http.NewRequest("GET", urls, body)
 13735  	if err != nil {
 13736  		return nil, err
 13737  	}
 13738  	req.Header = reqHeaders
 13739  	googleapi.Expand(req.URL, map[string]string{
 13740  		"profileId": strconv.FormatInt(c.profileId, 10),
 13741  	})
 13742  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13743  }
 13744  
 13745  // Do executes the "dfareporting.accounts.list" call.
 13746  // Any non-2xx status code is an error. Response headers are in either
 13747  // *AccountsListResponse.ServerResponse.Header or (if a response was returned
 13748  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 13749  // check whether the returned error was because http.StatusNotModified was
 13750  // returned.
 13751  func (c *AccountsListCall) Do(opts ...googleapi.CallOption) (*AccountsListResponse, error) {
 13752  	gensupport.SetOptions(c.urlParams_, opts...)
 13753  	res, err := c.doRequest("json")
 13754  	if res != nil && res.StatusCode == http.StatusNotModified {
 13755  		if res.Body != nil {
 13756  			res.Body.Close()
 13757  		}
 13758  		return nil, gensupport.WrapError(&googleapi.Error{
 13759  			Code:   res.StatusCode,
 13760  			Header: res.Header,
 13761  		})
 13762  	}
 13763  	if err != nil {
 13764  		return nil, err
 13765  	}
 13766  	defer googleapi.CloseBody(res)
 13767  	if err := googleapi.CheckResponse(res); err != nil {
 13768  		return nil, gensupport.WrapError(err)
 13769  	}
 13770  	ret := &AccountsListResponse{
 13771  		ServerResponse: googleapi.ServerResponse{
 13772  			Header:         res.Header,
 13773  			HTTPStatusCode: res.StatusCode,
 13774  		},
 13775  	}
 13776  	target := &ret
 13777  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13778  		return nil, err
 13779  	}
 13780  	return ret, nil
 13781  }
 13782  
 13783  // Pages invokes f for each page of results.
 13784  // A non-nil error returned from f will halt the iteration.
 13785  // The provided context supersedes any context provided to the Context method.
 13786  func (c *AccountsListCall) Pages(ctx context.Context, f func(*AccountsListResponse) error) error {
 13787  	c.ctx_ = ctx
 13788  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 13789  	for {
 13790  		x, err := c.Do()
 13791  		if err != nil {
 13792  			return err
 13793  		}
 13794  		if err := f(x); err != nil {
 13795  			return err
 13796  		}
 13797  		if x.NextPageToken == "" {
 13798  			return nil
 13799  		}
 13800  		c.PageToken(x.NextPageToken)
 13801  	}
 13802  }
 13803  
 13804  type AccountsPatchCall struct {
 13805  	s          *Service
 13806  	profileId  int64
 13807  	account    *Account
 13808  	urlParams_ gensupport.URLParams
 13809  	ctx_       context.Context
 13810  	header_    http.Header
 13811  }
 13812  
 13813  // Patch: Updates an existing account. This method supports patch semantics.
 13814  //
 13815  // - id: Account ID.
 13816  // - profileId: User profile ID associated with this request.
 13817  func (r *AccountsService) Patch(profileId int64, id int64, account *Account) *AccountsPatchCall {
 13818  	c := &AccountsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13819  	c.profileId = profileId
 13820  	c.urlParams_.Set("id", fmt.Sprint(id))
 13821  	c.account = account
 13822  	return c
 13823  }
 13824  
 13825  // Fields allows partial responses to be retrieved. See
 13826  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13827  // details.
 13828  func (c *AccountsPatchCall) Fields(s ...googleapi.Field) *AccountsPatchCall {
 13829  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13830  	return c
 13831  }
 13832  
 13833  // Context sets the context to be used in this call's Do method.
 13834  func (c *AccountsPatchCall) Context(ctx context.Context) *AccountsPatchCall {
 13835  	c.ctx_ = ctx
 13836  	return c
 13837  }
 13838  
 13839  // Header returns a http.Header that can be modified by the caller to add
 13840  // headers to the request.
 13841  func (c *AccountsPatchCall) Header() http.Header {
 13842  	if c.header_ == nil {
 13843  		c.header_ = make(http.Header)
 13844  	}
 13845  	return c.header_
 13846  }
 13847  
 13848  func (c *AccountsPatchCall) doRequest(alt string) (*http.Response, error) {
 13849  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13850  	var body io.Reader = nil
 13851  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
 13852  	if err != nil {
 13853  		return nil, err
 13854  	}
 13855  	c.urlParams_.Set("alt", alt)
 13856  	c.urlParams_.Set("prettyPrint", "false")
 13857  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accounts")
 13858  	urls += "?" + c.urlParams_.Encode()
 13859  	req, err := http.NewRequest("PATCH", urls, body)
 13860  	if err != nil {
 13861  		return nil, err
 13862  	}
 13863  	req.Header = reqHeaders
 13864  	googleapi.Expand(req.URL, map[string]string{
 13865  		"profileId": strconv.FormatInt(c.profileId, 10),
 13866  	})
 13867  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13868  }
 13869  
 13870  // Do executes the "dfareporting.accounts.patch" call.
 13871  // Any non-2xx status code is an error. Response headers are in either
 13872  // *Account.ServerResponse.Header or (if a response was returned at all) in
 13873  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13874  // whether the returned error was because http.StatusNotModified was returned.
 13875  func (c *AccountsPatchCall) Do(opts ...googleapi.CallOption) (*Account, error) {
 13876  	gensupport.SetOptions(c.urlParams_, opts...)
 13877  	res, err := c.doRequest("json")
 13878  	if res != nil && res.StatusCode == http.StatusNotModified {
 13879  		if res.Body != nil {
 13880  			res.Body.Close()
 13881  		}
 13882  		return nil, gensupport.WrapError(&googleapi.Error{
 13883  			Code:   res.StatusCode,
 13884  			Header: res.Header,
 13885  		})
 13886  	}
 13887  	if err != nil {
 13888  		return nil, err
 13889  	}
 13890  	defer googleapi.CloseBody(res)
 13891  	if err := googleapi.CheckResponse(res); err != nil {
 13892  		return nil, gensupport.WrapError(err)
 13893  	}
 13894  	ret := &Account{
 13895  		ServerResponse: googleapi.ServerResponse{
 13896  			Header:         res.Header,
 13897  			HTTPStatusCode: res.StatusCode,
 13898  		},
 13899  	}
 13900  	target := &ret
 13901  	if err := gensupport.DecodeResponse(target, res); err != nil {
 13902  		return nil, err
 13903  	}
 13904  	return ret, nil
 13905  }
 13906  
 13907  type AccountsUpdateCall struct {
 13908  	s          *Service
 13909  	profileId  int64
 13910  	account    *Account
 13911  	urlParams_ gensupport.URLParams
 13912  	ctx_       context.Context
 13913  	header_    http.Header
 13914  }
 13915  
 13916  // Update: Updates an existing account.
 13917  //
 13918  // - profileId: User profile ID associated with this request.
 13919  func (r *AccountsService) Update(profileId int64, account *Account) *AccountsUpdateCall {
 13920  	c := &AccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 13921  	c.profileId = profileId
 13922  	c.account = account
 13923  	return c
 13924  }
 13925  
 13926  // Fields allows partial responses to be retrieved. See
 13927  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 13928  // details.
 13929  func (c *AccountsUpdateCall) Fields(s ...googleapi.Field) *AccountsUpdateCall {
 13930  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 13931  	return c
 13932  }
 13933  
 13934  // Context sets the context to be used in this call's Do method.
 13935  func (c *AccountsUpdateCall) Context(ctx context.Context) *AccountsUpdateCall {
 13936  	c.ctx_ = ctx
 13937  	return c
 13938  }
 13939  
 13940  // Header returns a http.Header that can be modified by the caller to add
 13941  // headers to the request.
 13942  func (c *AccountsUpdateCall) Header() http.Header {
 13943  	if c.header_ == nil {
 13944  		c.header_ = make(http.Header)
 13945  	}
 13946  	return c.header_
 13947  }
 13948  
 13949  func (c *AccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
 13950  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 13951  	var body io.Reader = nil
 13952  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.account)
 13953  	if err != nil {
 13954  		return nil, err
 13955  	}
 13956  	c.urlParams_.Set("alt", alt)
 13957  	c.urlParams_.Set("prettyPrint", "false")
 13958  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/accounts")
 13959  	urls += "?" + c.urlParams_.Encode()
 13960  	req, err := http.NewRequest("PUT", urls, body)
 13961  	if err != nil {
 13962  		return nil, err
 13963  	}
 13964  	req.Header = reqHeaders
 13965  	googleapi.Expand(req.URL, map[string]string{
 13966  		"profileId": strconv.FormatInt(c.profileId, 10),
 13967  	})
 13968  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 13969  }
 13970  
 13971  // Do executes the "dfareporting.accounts.update" call.
 13972  // Any non-2xx status code is an error. Response headers are in either
 13973  // *Account.ServerResponse.Header or (if a response was returned at all) in
 13974  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 13975  // whether the returned error was because http.StatusNotModified was returned.
 13976  func (c *AccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Account, error) {
 13977  	gensupport.SetOptions(c.urlParams_, opts...)
 13978  	res, err := c.doRequest("json")
 13979  	if res != nil && res.StatusCode == http.StatusNotModified {
 13980  		if res.Body != nil {
 13981  			res.Body.Close()
 13982  		}
 13983  		return nil, gensupport.WrapError(&googleapi.Error{
 13984  			Code:   res.StatusCode,
 13985  			Header: res.Header,
 13986  		})
 13987  	}
 13988  	if err != nil {
 13989  		return nil, err
 13990  	}
 13991  	defer googleapi.CloseBody(res)
 13992  	if err := googleapi.CheckResponse(res); err != nil {
 13993  		return nil, gensupport.WrapError(err)
 13994  	}
 13995  	ret := &Account{
 13996  		ServerResponse: googleapi.ServerResponse{
 13997  			Header:         res.Header,
 13998  			HTTPStatusCode: res.StatusCode,
 13999  		},
 14000  	}
 14001  	target := &ret
 14002  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14003  		return nil, err
 14004  	}
 14005  	return ret, nil
 14006  }
 14007  
 14008  type AdsGetCall struct {
 14009  	s            *Service
 14010  	profileId    int64
 14011  	id           int64
 14012  	urlParams_   gensupport.URLParams
 14013  	ifNoneMatch_ string
 14014  	ctx_         context.Context
 14015  	header_      http.Header
 14016  }
 14017  
 14018  // Get: Gets one ad by ID.
 14019  //
 14020  // - id: Ad ID.
 14021  // - profileId: User profile ID associated with this request.
 14022  func (r *AdsService) Get(profileId int64, id int64) *AdsGetCall {
 14023  	c := &AdsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14024  	c.profileId = profileId
 14025  	c.id = id
 14026  	return c
 14027  }
 14028  
 14029  // Fields allows partial responses to be retrieved. See
 14030  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14031  // details.
 14032  func (c *AdsGetCall) Fields(s ...googleapi.Field) *AdsGetCall {
 14033  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14034  	return c
 14035  }
 14036  
 14037  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14038  // object's ETag matches the given value. This is useful for getting updates
 14039  // only after the object has changed since the last request.
 14040  func (c *AdsGetCall) IfNoneMatch(entityTag string) *AdsGetCall {
 14041  	c.ifNoneMatch_ = entityTag
 14042  	return c
 14043  }
 14044  
 14045  // Context sets the context to be used in this call's Do method.
 14046  func (c *AdsGetCall) Context(ctx context.Context) *AdsGetCall {
 14047  	c.ctx_ = ctx
 14048  	return c
 14049  }
 14050  
 14051  // Header returns a http.Header that can be modified by the caller to add
 14052  // headers to the request.
 14053  func (c *AdsGetCall) Header() http.Header {
 14054  	if c.header_ == nil {
 14055  		c.header_ = make(http.Header)
 14056  	}
 14057  	return c.header_
 14058  }
 14059  
 14060  func (c *AdsGetCall) doRequest(alt string) (*http.Response, error) {
 14061  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14062  	if c.ifNoneMatch_ != "" {
 14063  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14064  	}
 14065  	var body io.Reader = nil
 14066  	c.urlParams_.Set("alt", alt)
 14067  	c.urlParams_.Set("prettyPrint", "false")
 14068  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/ads/{+id}")
 14069  	urls += "?" + c.urlParams_.Encode()
 14070  	req, err := http.NewRequest("GET", urls, body)
 14071  	if err != nil {
 14072  		return nil, err
 14073  	}
 14074  	req.Header = reqHeaders
 14075  	googleapi.Expand(req.URL, map[string]string{
 14076  		"profileId": strconv.FormatInt(c.profileId, 10),
 14077  		"id":        strconv.FormatInt(c.id, 10),
 14078  	})
 14079  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14080  }
 14081  
 14082  // Do executes the "dfareporting.ads.get" call.
 14083  // Any non-2xx status code is an error. Response headers are in either
 14084  // *Ad.ServerResponse.Header or (if a response was returned at all) in
 14085  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14086  // whether the returned error was because http.StatusNotModified was returned.
 14087  func (c *AdsGetCall) Do(opts ...googleapi.CallOption) (*Ad, error) {
 14088  	gensupport.SetOptions(c.urlParams_, opts...)
 14089  	res, err := c.doRequest("json")
 14090  	if res != nil && res.StatusCode == http.StatusNotModified {
 14091  		if res.Body != nil {
 14092  			res.Body.Close()
 14093  		}
 14094  		return nil, gensupport.WrapError(&googleapi.Error{
 14095  			Code:   res.StatusCode,
 14096  			Header: res.Header,
 14097  		})
 14098  	}
 14099  	if err != nil {
 14100  		return nil, err
 14101  	}
 14102  	defer googleapi.CloseBody(res)
 14103  	if err := googleapi.CheckResponse(res); err != nil {
 14104  		return nil, gensupport.WrapError(err)
 14105  	}
 14106  	ret := &Ad{
 14107  		ServerResponse: googleapi.ServerResponse{
 14108  			Header:         res.Header,
 14109  			HTTPStatusCode: res.StatusCode,
 14110  		},
 14111  	}
 14112  	target := &ret
 14113  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14114  		return nil, err
 14115  	}
 14116  	return ret, nil
 14117  }
 14118  
 14119  type AdsInsertCall struct {
 14120  	s          *Service
 14121  	profileId  int64
 14122  	ad         *Ad
 14123  	urlParams_ gensupport.URLParams
 14124  	ctx_       context.Context
 14125  	header_    http.Header
 14126  }
 14127  
 14128  // Insert: Inserts a new ad.
 14129  //
 14130  // - profileId: User profile ID associated with this request.
 14131  func (r *AdsService) Insert(profileId int64, ad *Ad) *AdsInsertCall {
 14132  	c := &AdsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14133  	c.profileId = profileId
 14134  	c.ad = ad
 14135  	return c
 14136  }
 14137  
 14138  // Fields allows partial responses to be retrieved. See
 14139  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14140  // details.
 14141  func (c *AdsInsertCall) Fields(s ...googleapi.Field) *AdsInsertCall {
 14142  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14143  	return c
 14144  }
 14145  
 14146  // Context sets the context to be used in this call's Do method.
 14147  func (c *AdsInsertCall) Context(ctx context.Context) *AdsInsertCall {
 14148  	c.ctx_ = ctx
 14149  	return c
 14150  }
 14151  
 14152  // Header returns a http.Header that can be modified by the caller to add
 14153  // headers to the request.
 14154  func (c *AdsInsertCall) Header() http.Header {
 14155  	if c.header_ == nil {
 14156  		c.header_ = make(http.Header)
 14157  	}
 14158  	return c.header_
 14159  }
 14160  
 14161  func (c *AdsInsertCall) doRequest(alt string) (*http.Response, error) {
 14162  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 14163  	var body io.Reader = nil
 14164  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ad)
 14165  	if err != nil {
 14166  		return nil, err
 14167  	}
 14168  	c.urlParams_.Set("alt", alt)
 14169  	c.urlParams_.Set("prettyPrint", "false")
 14170  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/ads")
 14171  	urls += "?" + c.urlParams_.Encode()
 14172  	req, err := http.NewRequest("POST", urls, body)
 14173  	if err != nil {
 14174  		return nil, err
 14175  	}
 14176  	req.Header = reqHeaders
 14177  	googleapi.Expand(req.URL, map[string]string{
 14178  		"profileId": strconv.FormatInt(c.profileId, 10),
 14179  	})
 14180  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14181  }
 14182  
 14183  // Do executes the "dfareporting.ads.insert" call.
 14184  // Any non-2xx status code is an error. Response headers are in either
 14185  // *Ad.ServerResponse.Header or (if a response was returned at all) in
 14186  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14187  // whether the returned error was because http.StatusNotModified was returned.
 14188  func (c *AdsInsertCall) Do(opts ...googleapi.CallOption) (*Ad, error) {
 14189  	gensupport.SetOptions(c.urlParams_, opts...)
 14190  	res, err := c.doRequest("json")
 14191  	if res != nil && res.StatusCode == http.StatusNotModified {
 14192  		if res.Body != nil {
 14193  			res.Body.Close()
 14194  		}
 14195  		return nil, gensupport.WrapError(&googleapi.Error{
 14196  			Code:   res.StatusCode,
 14197  			Header: res.Header,
 14198  		})
 14199  	}
 14200  	if err != nil {
 14201  		return nil, err
 14202  	}
 14203  	defer googleapi.CloseBody(res)
 14204  	if err := googleapi.CheckResponse(res); err != nil {
 14205  		return nil, gensupport.WrapError(err)
 14206  	}
 14207  	ret := &Ad{
 14208  		ServerResponse: googleapi.ServerResponse{
 14209  			Header:         res.Header,
 14210  			HTTPStatusCode: res.StatusCode,
 14211  		},
 14212  	}
 14213  	target := &ret
 14214  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14215  		return nil, err
 14216  	}
 14217  	return ret, nil
 14218  }
 14219  
 14220  type AdsListCall struct {
 14221  	s            *Service
 14222  	profileId    int64
 14223  	urlParams_   gensupport.URLParams
 14224  	ifNoneMatch_ string
 14225  	ctx_         context.Context
 14226  	header_      http.Header
 14227  }
 14228  
 14229  // List: Retrieves a list of ads, possibly filtered. This method supports
 14230  // paging.
 14231  //
 14232  // - profileId: User profile ID associated with this request.
 14233  func (r *AdsService) List(profileId int64) *AdsListCall {
 14234  	c := &AdsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14235  	c.profileId = profileId
 14236  	return c
 14237  }
 14238  
 14239  // Active sets the optional parameter "active": Select only active ads.
 14240  func (c *AdsListCall) Active(active bool) *AdsListCall {
 14241  	c.urlParams_.Set("active", fmt.Sprint(active))
 14242  	return c
 14243  }
 14244  
 14245  // AdvertiserId sets the optional parameter "advertiserId": Select only ads
 14246  // with this advertiser ID.
 14247  func (c *AdsListCall) AdvertiserId(advertiserId int64) *AdsListCall {
 14248  	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
 14249  	return c
 14250  }
 14251  
 14252  // Archived sets the optional parameter "archived": Select only archived ads.
 14253  func (c *AdsListCall) Archived(archived bool) *AdsListCall {
 14254  	c.urlParams_.Set("archived", fmt.Sprint(archived))
 14255  	return c
 14256  }
 14257  
 14258  // AudienceSegmentIds sets the optional parameter "audienceSegmentIds": Select
 14259  // only ads with these audience segment IDs.
 14260  func (c *AdsListCall) AudienceSegmentIds(audienceSegmentIds ...int64) *AdsListCall {
 14261  	var audienceSegmentIds_ []string
 14262  	for _, v := range audienceSegmentIds {
 14263  		audienceSegmentIds_ = append(audienceSegmentIds_, fmt.Sprint(v))
 14264  	}
 14265  	c.urlParams_.SetMulti("audienceSegmentIds", audienceSegmentIds_)
 14266  	return c
 14267  }
 14268  
 14269  // CampaignIds sets the optional parameter "campaignIds": Select only ads with
 14270  // these campaign IDs.
 14271  func (c *AdsListCall) CampaignIds(campaignIds ...int64) *AdsListCall {
 14272  	var campaignIds_ []string
 14273  	for _, v := range campaignIds {
 14274  		campaignIds_ = append(campaignIds_, fmt.Sprint(v))
 14275  	}
 14276  	c.urlParams_.SetMulti("campaignIds", campaignIds_)
 14277  	return c
 14278  }
 14279  
 14280  // Compatibility sets the optional parameter "compatibility": Select default
 14281  // ads with the specified compatibility. Applicable when type is
 14282  // AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering
 14283  // either on desktop or on mobile devices for regular or interstitial ads,
 14284  // respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps.
 14285  // IN_STREAM_VIDEO refers to rendering an in-stream video ads developed with
 14286  // the VAST standard.
 14287  //
 14288  // Possible values:
 14289  //
 14290  //	"DISPLAY"
 14291  //	"DISPLAY_INTERSTITIAL"
 14292  //	"APP" - Deprecated enum value. No longer supported.
 14293  //	"APP_INTERSTITIAL" - Deprecated enum value. No longer supported.
 14294  //	"IN_STREAM_VIDEO"
 14295  //	"IN_STREAM_AUDIO"
 14296  func (c *AdsListCall) Compatibility(compatibility string) *AdsListCall {
 14297  	c.urlParams_.Set("compatibility", compatibility)
 14298  	return c
 14299  }
 14300  
 14301  // CreativeIds sets the optional parameter "creativeIds": Select only ads with
 14302  // these creative IDs assigned.
 14303  func (c *AdsListCall) CreativeIds(creativeIds ...int64) *AdsListCall {
 14304  	var creativeIds_ []string
 14305  	for _, v := range creativeIds {
 14306  		creativeIds_ = append(creativeIds_, fmt.Sprint(v))
 14307  	}
 14308  	c.urlParams_.SetMulti("creativeIds", creativeIds_)
 14309  	return c
 14310  }
 14311  
 14312  // CreativeOptimizationConfigurationIds sets the optional parameter
 14313  // "creativeOptimizationConfigurationIds": Select only ads with these creative
 14314  // optimization configuration IDs.
 14315  func (c *AdsListCall) CreativeOptimizationConfigurationIds(creativeOptimizationConfigurationIds ...int64) *AdsListCall {
 14316  	var creativeOptimizationConfigurationIds_ []string
 14317  	for _, v := range creativeOptimizationConfigurationIds {
 14318  		creativeOptimizationConfigurationIds_ = append(creativeOptimizationConfigurationIds_, fmt.Sprint(v))
 14319  	}
 14320  	c.urlParams_.SetMulti("creativeOptimizationConfigurationIds", creativeOptimizationConfigurationIds_)
 14321  	return c
 14322  }
 14323  
 14324  // DynamicClickTracker sets the optional parameter "dynamicClickTracker":
 14325  // Select only dynamic click trackers. Applicable when type is
 14326  // AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If false,
 14327  // select static click trackers. Leave unset to select both.
 14328  func (c *AdsListCall) DynamicClickTracker(dynamicClickTracker bool) *AdsListCall {
 14329  	c.urlParams_.Set("dynamicClickTracker", fmt.Sprint(dynamicClickTracker))
 14330  	return c
 14331  }
 14332  
 14333  // Ids sets the optional parameter "ids": Select only ads with these IDs.
 14334  func (c *AdsListCall) Ids(ids ...int64) *AdsListCall {
 14335  	var ids_ []string
 14336  	for _, v := range ids {
 14337  		ids_ = append(ids_, fmt.Sprint(v))
 14338  	}
 14339  	c.urlParams_.SetMulti("ids", ids_)
 14340  	return c
 14341  }
 14342  
 14343  // LandingPageIds sets the optional parameter "landingPageIds": Select only ads
 14344  // with these landing page IDs.
 14345  func (c *AdsListCall) LandingPageIds(landingPageIds ...int64) *AdsListCall {
 14346  	var landingPageIds_ []string
 14347  	for _, v := range landingPageIds {
 14348  		landingPageIds_ = append(landingPageIds_, fmt.Sprint(v))
 14349  	}
 14350  	c.urlParams_.SetMulti("landingPageIds", landingPageIds_)
 14351  	return c
 14352  }
 14353  
 14354  // MaxResults sets the optional parameter "maxResults": Maximum number of
 14355  // results to return.
 14356  func (c *AdsListCall) MaxResults(maxResults int64) *AdsListCall {
 14357  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 14358  	return c
 14359  }
 14360  
 14361  // OverriddenEventTagId sets the optional parameter "overriddenEventTagId":
 14362  // Select only ads with this event tag override ID.
 14363  func (c *AdsListCall) OverriddenEventTagId(overriddenEventTagId int64) *AdsListCall {
 14364  	c.urlParams_.Set("overriddenEventTagId", fmt.Sprint(overriddenEventTagId))
 14365  	return c
 14366  }
 14367  
 14368  // PageToken sets the optional parameter "pageToken": Value of the
 14369  // nextPageToken from the previous result page.
 14370  func (c *AdsListCall) PageToken(pageToken string) *AdsListCall {
 14371  	c.urlParams_.Set("pageToken", pageToken)
 14372  	return c
 14373  }
 14374  
 14375  // PlacementIds sets the optional parameter "placementIds": Select only ads
 14376  // with these placement IDs assigned.
 14377  func (c *AdsListCall) PlacementIds(placementIds ...int64) *AdsListCall {
 14378  	var placementIds_ []string
 14379  	for _, v := range placementIds {
 14380  		placementIds_ = append(placementIds_, fmt.Sprint(v))
 14381  	}
 14382  	c.urlParams_.SetMulti("placementIds", placementIds_)
 14383  	return c
 14384  }
 14385  
 14386  // RemarketingListIds sets the optional parameter "remarketingListIds": Select
 14387  // only ads whose list targeting expression use these remarketing list IDs.
 14388  func (c *AdsListCall) RemarketingListIds(remarketingListIds ...int64) *AdsListCall {
 14389  	var remarketingListIds_ []string
 14390  	for _, v := range remarketingListIds {
 14391  		remarketingListIds_ = append(remarketingListIds_, fmt.Sprint(v))
 14392  	}
 14393  	c.urlParams_.SetMulti("remarketingListIds", remarketingListIds_)
 14394  	return c
 14395  }
 14396  
 14397  // SearchString sets the optional parameter "searchString": Allows searching
 14398  // for objects by name or ID. Wildcards (*) are allowed. For example, "ad*2015"
 14399  // will return objects with names like "ad June 2015", "ad April 2015", or
 14400  // simply "ad 2015". Most of the searches also add wildcards implicitly at the
 14401  // start and the end of the search string. For example, a search string of "ad"
 14402  // will match objects with name "my ad", "ad 2015", or simply "ad".
 14403  func (c *AdsListCall) SearchString(searchString string) *AdsListCall {
 14404  	c.urlParams_.Set("searchString", searchString)
 14405  	return c
 14406  }
 14407  
 14408  // SizeIds sets the optional parameter "sizeIds": Select only ads with these
 14409  // size IDs.
 14410  func (c *AdsListCall) SizeIds(sizeIds ...int64) *AdsListCall {
 14411  	var sizeIds_ []string
 14412  	for _, v := range sizeIds {
 14413  		sizeIds_ = append(sizeIds_, fmt.Sprint(v))
 14414  	}
 14415  	c.urlParams_.SetMulti("sizeIds", sizeIds_)
 14416  	return c
 14417  }
 14418  
 14419  // SortField sets the optional parameter "sortField": Field by which to sort
 14420  // the list.
 14421  //
 14422  // Possible values:
 14423  //
 14424  //	"ID" (default)
 14425  //	"NAME"
 14426  func (c *AdsListCall) SortField(sortField string) *AdsListCall {
 14427  	c.urlParams_.Set("sortField", sortField)
 14428  	return c
 14429  }
 14430  
 14431  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 14432  //
 14433  // Possible values:
 14434  //
 14435  //	"ASCENDING" (default) - Ascending order.
 14436  //	"DESCENDING" - Descending order.
 14437  func (c *AdsListCall) SortOrder(sortOrder string) *AdsListCall {
 14438  	c.urlParams_.Set("sortOrder", sortOrder)
 14439  	return c
 14440  }
 14441  
 14442  // SslCompliant sets the optional parameter "sslCompliant": Select only ads
 14443  // that are SSL-compliant.
 14444  func (c *AdsListCall) SslCompliant(sslCompliant bool) *AdsListCall {
 14445  	c.urlParams_.Set("sslCompliant", fmt.Sprint(sslCompliant))
 14446  	return c
 14447  }
 14448  
 14449  // SslRequired sets the optional parameter "sslRequired": Select only ads that
 14450  // require SSL.
 14451  func (c *AdsListCall) SslRequired(sslRequired bool) *AdsListCall {
 14452  	c.urlParams_.Set("sslRequired", fmt.Sprint(sslRequired))
 14453  	return c
 14454  }
 14455  
 14456  // Type sets the optional parameter "type": Select only ads with these types.
 14457  //
 14458  // Possible values:
 14459  //
 14460  //	"AD_SERVING_STANDARD_AD"
 14461  //	"AD_SERVING_DEFAULT_AD"
 14462  //	"AD_SERVING_CLICK_TRACKER"
 14463  //	"AD_SERVING_TRACKING"
 14464  //	"AD_SERVING_BRAND_SAFE_AD"
 14465  func (c *AdsListCall) Type(type_ ...string) *AdsListCall {
 14466  	c.urlParams_.SetMulti("type", append([]string{}, type_...))
 14467  	return c
 14468  }
 14469  
 14470  // Fields allows partial responses to be retrieved. See
 14471  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14472  // details.
 14473  func (c *AdsListCall) Fields(s ...googleapi.Field) *AdsListCall {
 14474  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14475  	return c
 14476  }
 14477  
 14478  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14479  // object's ETag matches the given value. This is useful for getting updates
 14480  // only after the object has changed since the last request.
 14481  func (c *AdsListCall) IfNoneMatch(entityTag string) *AdsListCall {
 14482  	c.ifNoneMatch_ = entityTag
 14483  	return c
 14484  }
 14485  
 14486  // Context sets the context to be used in this call's Do method.
 14487  func (c *AdsListCall) Context(ctx context.Context) *AdsListCall {
 14488  	c.ctx_ = ctx
 14489  	return c
 14490  }
 14491  
 14492  // Header returns a http.Header that can be modified by the caller to add
 14493  // headers to the request.
 14494  func (c *AdsListCall) Header() http.Header {
 14495  	if c.header_ == nil {
 14496  		c.header_ = make(http.Header)
 14497  	}
 14498  	return c.header_
 14499  }
 14500  
 14501  func (c *AdsListCall) doRequest(alt string) (*http.Response, error) {
 14502  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14503  	if c.ifNoneMatch_ != "" {
 14504  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14505  	}
 14506  	var body io.Reader = nil
 14507  	c.urlParams_.Set("alt", alt)
 14508  	c.urlParams_.Set("prettyPrint", "false")
 14509  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/ads")
 14510  	urls += "?" + c.urlParams_.Encode()
 14511  	req, err := http.NewRequest("GET", urls, body)
 14512  	if err != nil {
 14513  		return nil, err
 14514  	}
 14515  	req.Header = reqHeaders
 14516  	googleapi.Expand(req.URL, map[string]string{
 14517  		"profileId": strconv.FormatInt(c.profileId, 10),
 14518  	})
 14519  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14520  }
 14521  
 14522  // Do executes the "dfareporting.ads.list" call.
 14523  // Any non-2xx status code is an error. Response headers are in either
 14524  // *AdsListResponse.ServerResponse.Header or (if a response was returned at
 14525  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 14526  // check whether the returned error was because http.StatusNotModified was
 14527  // returned.
 14528  func (c *AdsListCall) Do(opts ...googleapi.CallOption) (*AdsListResponse, error) {
 14529  	gensupport.SetOptions(c.urlParams_, opts...)
 14530  	res, err := c.doRequest("json")
 14531  	if res != nil && res.StatusCode == http.StatusNotModified {
 14532  		if res.Body != nil {
 14533  			res.Body.Close()
 14534  		}
 14535  		return nil, gensupport.WrapError(&googleapi.Error{
 14536  			Code:   res.StatusCode,
 14537  			Header: res.Header,
 14538  		})
 14539  	}
 14540  	if err != nil {
 14541  		return nil, err
 14542  	}
 14543  	defer googleapi.CloseBody(res)
 14544  	if err := googleapi.CheckResponse(res); err != nil {
 14545  		return nil, gensupport.WrapError(err)
 14546  	}
 14547  	ret := &AdsListResponse{
 14548  		ServerResponse: googleapi.ServerResponse{
 14549  			Header:         res.Header,
 14550  			HTTPStatusCode: res.StatusCode,
 14551  		},
 14552  	}
 14553  	target := &ret
 14554  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14555  		return nil, err
 14556  	}
 14557  	return ret, nil
 14558  }
 14559  
 14560  // Pages invokes f for each page of results.
 14561  // A non-nil error returned from f will halt the iteration.
 14562  // The provided context supersedes any context provided to the Context method.
 14563  func (c *AdsListCall) Pages(ctx context.Context, f func(*AdsListResponse) error) error {
 14564  	c.ctx_ = ctx
 14565  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 14566  	for {
 14567  		x, err := c.Do()
 14568  		if err != nil {
 14569  			return err
 14570  		}
 14571  		if err := f(x); err != nil {
 14572  			return err
 14573  		}
 14574  		if x.NextPageToken == "" {
 14575  			return nil
 14576  		}
 14577  		c.PageToken(x.NextPageToken)
 14578  	}
 14579  }
 14580  
 14581  type AdsPatchCall struct {
 14582  	s          *Service
 14583  	profileId  int64
 14584  	ad         *Ad
 14585  	urlParams_ gensupport.URLParams
 14586  	ctx_       context.Context
 14587  	header_    http.Header
 14588  }
 14589  
 14590  // Patch: Updates an existing event tag. This method supports patch semantics.
 14591  //
 14592  // - id: RemarketingList ID.
 14593  // - profileId: User profile ID associated with this request.
 14594  func (r *AdsService) Patch(profileId int64, id int64, ad *Ad) *AdsPatchCall {
 14595  	c := &AdsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14596  	c.profileId = profileId
 14597  	c.urlParams_.Set("id", fmt.Sprint(id))
 14598  	c.ad = ad
 14599  	return c
 14600  }
 14601  
 14602  // Fields allows partial responses to be retrieved. See
 14603  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14604  // details.
 14605  func (c *AdsPatchCall) Fields(s ...googleapi.Field) *AdsPatchCall {
 14606  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14607  	return c
 14608  }
 14609  
 14610  // Context sets the context to be used in this call's Do method.
 14611  func (c *AdsPatchCall) Context(ctx context.Context) *AdsPatchCall {
 14612  	c.ctx_ = ctx
 14613  	return c
 14614  }
 14615  
 14616  // Header returns a http.Header that can be modified by the caller to add
 14617  // headers to the request.
 14618  func (c *AdsPatchCall) Header() http.Header {
 14619  	if c.header_ == nil {
 14620  		c.header_ = make(http.Header)
 14621  	}
 14622  	return c.header_
 14623  }
 14624  
 14625  func (c *AdsPatchCall) doRequest(alt string) (*http.Response, error) {
 14626  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 14627  	var body io.Reader = nil
 14628  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ad)
 14629  	if err != nil {
 14630  		return nil, err
 14631  	}
 14632  	c.urlParams_.Set("alt", alt)
 14633  	c.urlParams_.Set("prettyPrint", "false")
 14634  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/ads")
 14635  	urls += "?" + c.urlParams_.Encode()
 14636  	req, err := http.NewRequest("PATCH", urls, body)
 14637  	if err != nil {
 14638  		return nil, err
 14639  	}
 14640  	req.Header = reqHeaders
 14641  	googleapi.Expand(req.URL, map[string]string{
 14642  		"profileId": strconv.FormatInt(c.profileId, 10),
 14643  	})
 14644  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14645  }
 14646  
 14647  // Do executes the "dfareporting.ads.patch" call.
 14648  // Any non-2xx status code is an error. Response headers are in either
 14649  // *Ad.ServerResponse.Header or (if a response was returned at all) in
 14650  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14651  // whether the returned error was because http.StatusNotModified was returned.
 14652  func (c *AdsPatchCall) Do(opts ...googleapi.CallOption) (*Ad, error) {
 14653  	gensupport.SetOptions(c.urlParams_, opts...)
 14654  	res, err := c.doRequest("json")
 14655  	if res != nil && res.StatusCode == http.StatusNotModified {
 14656  		if res.Body != nil {
 14657  			res.Body.Close()
 14658  		}
 14659  		return nil, gensupport.WrapError(&googleapi.Error{
 14660  			Code:   res.StatusCode,
 14661  			Header: res.Header,
 14662  		})
 14663  	}
 14664  	if err != nil {
 14665  		return nil, err
 14666  	}
 14667  	defer googleapi.CloseBody(res)
 14668  	if err := googleapi.CheckResponse(res); err != nil {
 14669  		return nil, gensupport.WrapError(err)
 14670  	}
 14671  	ret := &Ad{
 14672  		ServerResponse: googleapi.ServerResponse{
 14673  			Header:         res.Header,
 14674  			HTTPStatusCode: res.StatusCode,
 14675  		},
 14676  	}
 14677  	target := &ret
 14678  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14679  		return nil, err
 14680  	}
 14681  	return ret, nil
 14682  }
 14683  
 14684  type AdsUpdateCall struct {
 14685  	s          *Service
 14686  	profileId  int64
 14687  	ad         *Ad
 14688  	urlParams_ gensupport.URLParams
 14689  	ctx_       context.Context
 14690  	header_    http.Header
 14691  }
 14692  
 14693  // Update: Updates an existing ad.
 14694  //
 14695  // - profileId: User profile ID associated with this request.
 14696  func (r *AdsService) Update(profileId int64, ad *Ad) *AdsUpdateCall {
 14697  	c := &AdsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14698  	c.profileId = profileId
 14699  	c.ad = ad
 14700  	return c
 14701  }
 14702  
 14703  // Fields allows partial responses to be retrieved. See
 14704  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14705  // details.
 14706  func (c *AdsUpdateCall) Fields(s ...googleapi.Field) *AdsUpdateCall {
 14707  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14708  	return c
 14709  }
 14710  
 14711  // Context sets the context to be used in this call's Do method.
 14712  func (c *AdsUpdateCall) Context(ctx context.Context) *AdsUpdateCall {
 14713  	c.ctx_ = ctx
 14714  	return c
 14715  }
 14716  
 14717  // Header returns a http.Header that can be modified by the caller to add
 14718  // headers to the request.
 14719  func (c *AdsUpdateCall) Header() http.Header {
 14720  	if c.header_ == nil {
 14721  		c.header_ = make(http.Header)
 14722  	}
 14723  	return c.header_
 14724  }
 14725  
 14726  func (c *AdsUpdateCall) doRequest(alt string) (*http.Response, error) {
 14727  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 14728  	var body io.Reader = nil
 14729  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ad)
 14730  	if err != nil {
 14731  		return nil, err
 14732  	}
 14733  	c.urlParams_.Set("alt", alt)
 14734  	c.urlParams_.Set("prettyPrint", "false")
 14735  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/ads")
 14736  	urls += "?" + c.urlParams_.Encode()
 14737  	req, err := http.NewRequest("PUT", urls, body)
 14738  	if err != nil {
 14739  		return nil, err
 14740  	}
 14741  	req.Header = reqHeaders
 14742  	googleapi.Expand(req.URL, map[string]string{
 14743  		"profileId": strconv.FormatInt(c.profileId, 10),
 14744  	})
 14745  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14746  }
 14747  
 14748  // Do executes the "dfareporting.ads.update" call.
 14749  // Any non-2xx status code is an error. Response headers are in either
 14750  // *Ad.ServerResponse.Header or (if a response was returned at all) in
 14751  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 14752  // whether the returned error was because http.StatusNotModified was returned.
 14753  func (c *AdsUpdateCall) Do(opts ...googleapi.CallOption) (*Ad, error) {
 14754  	gensupport.SetOptions(c.urlParams_, opts...)
 14755  	res, err := c.doRequest("json")
 14756  	if res != nil && res.StatusCode == http.StatusNotModified {
 14757  		if res.Body != nil {
 14758  			res.Body.Close()
 14759  		}
 14760  		return nil, gensupport.WrapError(&googleapi.Error{
 14761  			Code:   res.StatusCode,
 14762  			Header: res.Header,
 14763  		})
 14764  	}
 14765  	if err != nil {
 14766  		return nil, err
 14767  	}
 14768  	defer googleapi.CloseBody(res)
 14769  	if err := googleapi.CheckResponse(res); err != nil {
 14770  		return nil, gensupport.WrapError(err)
 14771  	}
 14772  	ret := &Ad{
 14773  		ServerResponse: googleapi.ServerResponse{
 14774  			Header:         res.Header,
 14775  			HTTPStatusCode: res.StatusCode,
 14776  		},
 14777  	}
 14778  	target := &ret
 14779  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14780  		return nil, err
 14781  	}
 14782  	return ret, nil
 14783  }
 14784  
 14785  type AdvertiserGroupsDeleteCall struct {
 14786  	s          *Service
 14787  	profileId  int64
 14788  	id         int64
 14789  	urlParams_ gensupport.URLParams
 14790  	ctx_       context.Context
 14791  	header_    http.Header
 14792  }
 14793  
 14794  // Delete: Deletes an existing advertiser group.
 14795  //
 14796  // - id: Advertiser group ID.
 14797  // - profileId: User profile ID associated with this request.
 14798  func (r *AdvertiserGroupsService) Delete(profileId int64, id int64) *AdvertiserGroupsDeleteCall {
 14799  	c := &AdvertiserGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14800  	c.profileId = profileId
 14801  	c.id = id
 14802  	return c
 14803  }
 14804  
 14805  // Fields allows partial responses to be retrieved. See
 14806  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14807  // details.
 14808  func (c *AdvertiserGroupsDeleteCall) Fields(s ...googleapi.Field) *AdvertiserGroupsDeleteCall {
 14809  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14810  	return c
 14811  }
 14812  
 14813  // Context sets the context to be used in this call's Do method.
 14814  func (c *AdvertiserGroupsDeleteCall) Context(ctx context.Context) *AdvertiserGroupsDeleteCall {
 14815  	c.ctx_ = ctx
 14816  	return c
 14817  }
 14818  
 14819  // Header returns a http.Header that can be modified by the caller to add
 14820  // headers to the request.
 14821  func (c *AdvertiserGroupsDeleteCall) Header() http.Header {
 14822  	if c.header_ == nil {
 14823  		c.header_ = make(http.Header)
 14824  	}
 14825  	return c.header_
 14826  }
 14827  
 14828  func (c *AdvertiserGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
 14829  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14830  	var body io.Reader = nil
 14831  	c.urlParams_.Set("alt", alt)
 14832  	c.urlParams_.Set("prettyPrint", "false")
 14833  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserGroups/{+id}")
 14834  	urls += "?" + c.urlParams_.Encode()
 14835  	req, err := http.NewRequest("DELETE", urls, body)
 14836  	if err != nil {
 14837  		return nil, err
 14838  	}
 14839  	req.Header = reqHeaders
 14840  	googleapi.Expand(req.URL, map[string]string{
 14841  		"profileId": strconv.FormatInt(c.profileId, 10),
 14842  		"id":        strconv.FormatInt(c.id, 10),
 14843  	})
 14844  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14845  }
 14846  
 14847  // Do executes the "dfareporting.advertiserGroups.delete" call.
 14848  func (c *AdvertiserGroupsDeleteCall) Do(opts ...googleapi.CallOption) error {
 14849  	gensupport.SetOptions(c.urlParams_, opts...)
 14850  	res, err := c.doRequest("json")
 14851  	if err != nil {
 14852  		return err
 14853  	}
 14854  	defer googleapi.CloseBody(res)
 14855  	if err := googleapi.CheckResponse(res); err != nil {
 14856  		return gensupport.WrapError(err)
 14857  	}
 14858  	return nil
 14859  }
 14860  
 14861  type AdvertiserGroupsGetCall struct {
 14862  	s            *Service
 14863  	profileId    int64
 14864  	id           int64
 14865  	urlParams_   gensupport.URLParams
 14866  	ifNoneMatch_ string
 14867  	ctx_         context.Context
 14868  	header_      http.Header
 14869  }
 14870  
 14871  // Get: Gets one advertiser group by ID.
 14872  //
 14873  // - id: Advertiser group ID.
 14874  // - profileId: User profile ID associated with this request.
 14875  func (r *AdvertiserGroupsService) Get(profileId int64, id int64) *AdvertiserGroupsGetCall {
 14876  	c := &AdvertiserGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14877  	c.profileId = profileId
 14878  	c.id = id
 14879  	return c
 14880  }
 14881  
 14882  // Fields allows partial responses to be retrieved. See
 14883  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14884  // details.
 14885  func (c *AdvertiserGroupsGetCall) Fields(s ...googleapi.Field) *AdvertiserGroupsGetCall {
 14886  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14887  	return c
 14888  }
 14889  
 14890  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 14891  // object's ETag matches the given value. This is useful for getting updates
 14892  // only after the object has changed since the last request.
 14893  func (c *AdvertiserGroupsGetCall) IfNoneMatch(entityTag string) *AdvertiserGroupsGetCall {
 14894  	c.ifNoneMatch_ = entityTag
 14895  	return c
 14896  }
 14897  
 14898  // Context sets the context to be used in this call's Do method.
 14899  func (c *AdvertiserGroupsGetCall) Context(ctx context.Context) *AdvertiserGroupsGetCall {
 14900  	c.ctx_ = ctx
 14901  	return c
 14902  }
 14903  
 14904  // Header returns a http.Header that can be modified by the caller to add
 14905  // headers to the request.
 14906  func (c *AdvertiserGroupsGetCall) Header() http.Header {
 14907  	if c.header_ == nil {
 14908  		c.header_ = make(http.Header)
 14909  	}
 14910  	return c.header_
 14911  }
 14912  
 14913  func (c *AdvertiserGroupsGetCall) doRequest(alt string) (*http.Response, error) {
 14914  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 14915  	if c.ifNoneMatch_ != "" {
 14916  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 14917  	}
 14918  	var body io.Reader = nil
 14919  	c.urlParams_.Set("alt", alt)
 14920  	c.urlParams_.Set("prettyPrint", "false")
 14921  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserGroups/{+id}")
 14922  	urls += "?" + c.urlParams_.Encode()
 14923  	req, err := http.NewRequest("GET", urls, body)
 14924  	if err != nil {
 14925  		return nil, err
 14926  	}
 14927  	req.Header = reqHeaders
 14928  	googleapi.Expand(req.URL, map[string]string{
 14929  		"profileId": strconv.FormatInt(c.profileId, 10),
 14930  		"id":        strconv.FormatInt(c.id, 10),
 14931  	})
 14932  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 14933  }
 14934  
 14935  // Do executes the "dfareporting.advertiserGroups.get" call.
 14936  // Any non-2xx status code is an error. Response headers are in either
 14937  // *AdvertiserGroup.ServerResponse.Header or (if a response was returned at
 14938  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 14939  // check whether the returned error was because http.StatusNotModified was
 14940  // returned.
 14941  func (c *AdvertiserGroupsGetCall) Do(opts ...googleapi.CallOption) (*AdvertiserGroup, error) {
 14942  	gensupport.SetOptions(c.urlParams_, opts...)
 14943  	res, err := c.doRequest("json")
 14944  	if res != nil && res.StatusCode == http.StatusNotModified {
 14945  		if res.Body != nil {
 14946  			res.Body.Close()
 14947  		}
 14948  		return nil, gensupport.WrapError(&googleapi.Error{
 14949  			Code:   res.StatusCode,
 14950  			Header: res.Header,
 14951  		})
 14952  	}
 14953  	if err != nil {
 14954  		return nil, err
 14955  	}
 14956  	defer googleapi.CloseBody(res)
 14957  	if err := googleapi.CheckResponse(res); err != nil {
 14958  		return nil, gensupport.WrapError(err)
 14959  	}
 14960  	ret := &AdvertiserGroup{
 14961  		ServerResponse: googleapi.ServerResponse{
 14962  			Header:         res.Header,
 14963  			HTTPStatusCode: res.StatusCode,
 14964  		},
 14965  	}
 14966  	target := &ret
 14967  	if err := gensupport.DecodeResponse(target, res); err != nil {
 14968  		return nil, err
 14969  	}
 14970  	return ret, nil
 14971  }
 14972  
 14973  type AdvertiserGroupsInsertCall struct {
 14974  	s               *Service
 14975  	profileId       int64
 14976  	advertisergroup *AdvertiserGroup
 14977  	urlParams_      gensupport.URLParams
 14978  	ctx_            context.Context
 14979  	header_         http.Header
 14980  }
 14981  
 14982  // Insert: Inserts a new advertiser group.
 14983  //
 14984  // - profileId: User profile ID associated with this request.
 14985  func (r *AdvertiserGroupsService) Insert(profileId int64, advertisergroup *AdvertiserGroup) *AdvertiserGroupsInsertCall {
 14986  	c := &AdvertiserGroupsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 14987  	c.profileId = profileId
 14988  	c.advertisergroup = advertisergroup
 14989  	return c
 14990  }
 14991  
 14992  // Fields allows partial responses to be retrieved. See
 14993  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 14994  // details.
 14995  func (c *AdvertiserGroupsInsertCall) Fields(s ...googleapi.Field) *AdvertiserGroupsInsertCall {
 14996  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 14997  	return c
 14998  }
 14999  
 15000  // Context sets the context to be used in this call's Do method.
 15001  func (c *AdvertiserGroupsInsertCall) Context(ctx context.Context) *AdvertiserGroupsInsertCall {
 15002  	c.ctx_ = ctx
 15003  	return c
 15004  }
 15005  
 15006  // Header returns a http.Header that can be modified by the caller to add
 15007  // headers to the request.
 15008  func (c *AdvertiserGroupsInsertCall) Header() http.Header {
 15009  	if c.header_ == nil {
 15010  		c.header_ = make(http.Header)
 15011  	}
 15012  	return c.header_
 15013  }
 15014  
 15015  func (c *AdvertiserGroupsInsertCall) doRequest(alt string) (*http.Response, error) {
 15016  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 15017  	var body io.Reader = nil
 15018  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertisergroup)
 15019  	if err != nil {
 15020  		return nil, err
 15021  	}
 15022  	c.urlParams_.Set("alt", alt)
 15023  	c.urlParams_.Set("prettyPrint", "false")
 15024  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserGroups")
 15025  	urls += "?" + c.urlParams_.Encode()
 15026  	req, err := http.NewRequest("POST", urls, body)
 15027  	if err != nil {
 15028  		return nil, err
 15029  	}
 15030  	req.Header = reqHeaders
 15031  	googleapi.Expand(req.URL, map[string]string{
 15032  		"profileId": strconv.FormatInt(c.profileId, 10),
 15033  	})
 15034  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15035  }
 15036  
 15037  // Do executes the "dfareporting.advertiserGroups.insert" call.
 15038  // Any non-2xx status code is an error. Response headers are in either
 15039  // *AdvertiserGroup.ServerResponse.Header or (if a response was returned at
 15040  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 15041  // check whether the returned error was because http.StatusNotModified was
 15042  // returned.
 15043  func (c *AdvertiserGroupsInsertCall) Do(opts ...googleapi.CallOption) (*AdvertiserGroup, error) {
 15044  	gensupport.SetOptions(c.urlParams_, opts...)
 15045  	res, err := c.doRequest("json")
 15046  	if res != nil && res.StatusCode == http.StatusNotModified {
 15047  		if res.Body != nil {
 15048  			res.Body.Close()
 15049  		}
 15050  		return nil, gensupport.WrapError(&googleapi.Error{
 15051  			Code:   res.StatusCode,
 15052  			Header: res.Header,
 15053  		})
 15054  	}
 15055  	if err != nil {
 15056  		return nil, err
 15057  	}
 15058  	defer googleapi.CloseBody(res)
 15059  	if err := googleapi.CheckResponse(res); err != nil {
 15060  		return nil, gensupport.WrapError(err)
 15061  	}
 15062  	ret := &AdvertiserGroup{
 15063  		ServerResponse: googleapi.ServerResponse{
 15064  			Header:         res.Header,
 15065  			HTTPStatusCode: res.StatusCode,
 15066  		},
 15067  	}
 15068  	target := &ret
 15069  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15070  		return nil, err
 15071  	}
 15072  	return ret, nil
 15073  }
 15074  
 15075  type AdvertiserGroupsListCall struct {
 15076  	s            *Service
 15077  	profileId    int64
 15078  	urlParams_   gensupport.URLParams
 15079  	ifNoneMatch_ string
 15080  	ctx_         context.Context
 15081  	header_      http.Header
 15082  }
 15083  
 15084  // List: Retrieves a list of advertiser groups, possibly filtered. This method
 15085  // supports paging.
 15086  //
 15087  // - profileId: User profile ID associated with this request.
 15088  func (r *AdvertiserGroupsService) List(profileId int64) *AdvertiserGroupsListCall {
 15089  	c := &AdvertiserGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15090  	c.profileId = profileId
 15091  	return c
 15092  }
 15093  
 15094  // Ids sets the optional parameter "ids": Select only advertiser groups with
 15095  // these IDs.
 15096  func (c *AdvertiserGroupsListCall) Ids(ids ...int64) *AdvertiserGroupsListCall {
 15097  	var ids_ []string
 15098  	for _, v := range ids {
 15099  		ids_ = append(ids_, fmt.Sprint(v))
 15100  	}
 15101  	c.urlParams_.SetMulti("ids", ids_)
 15102  	return c
 15103  }
 15104  
 15105  // MaxResults sets the optional parameter "maxResults": Maximum number of
 15106  // results to return.
 15107  func (c *AdvertiserGroupsListCall) MaxResults(maxResults int64) *AdvertiserGroupsListCall {
 15108  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 15109  	return c
 15110  }
 15111  
 15112  // PageToken sets the optional parameter "pageToken": Value of the
 15113  // nextPageToken from the previous result page.
 15114  func (c *AdvertiserGroupsListCall) PageToken(pageToken string) *AdvertiserGroupsListCall {
 15115  	c.urlParams_.Set("pageToken", pageToken)
 15116  	return c
 15117  }
 15118  
 15119  // SearchString sets the optional parameter "searchString": Allows searching
 15120  // for objects by name or ID. Wildcards (*) are allowed. For example,
 15121  // "advertiser*2015" will return objects with names like "advertiser group June
 15122  // 2015", "advertiser group April 2015", or simply "advertiser group 2015".
 15123  // Most of the searches also add wildcards implicitly at the start and the end
 15124  // of the search string. For example, a search string of "advertisergroup" will
 15125  // match objects with name "my advertisergroup", "advertisergroup 2015", or
 15126  // simply "advertisergroup".
 15127  func (c *AdvertiserGroupsListCall) SearchString(searchString string) *AdvertiserGroupsListCall {
 15128  	c.urlParams_.Set("searchString", searchString)
 15129  	return c
 15130  }
 15131  
 15132  // SortField sets the optional parameter "sortField": Field by which to sort
 15133  // the list.
 15134  //
 15135  // Possible values:
 15136  //
 15137  //	"ID" (default)
 15138  //	"NAME"
 15139  func (c *AdvertiserGroupsListCall) SortField(sortField string) *AdvertiserGroupsListCall {
 15140  	c.urlParams_.Set("sortField", sortField)
 15141  	return c
 15142  }
 15143  
 15144  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 15145  //
 15146  // Possible values:
 15147  //
 15148  //	"ASCENDING" (default) - Ascending order.
 15149  //	"DESCENDING" - Descending order.
 15150  func (c *AdvertiserGroupsListCall) SortOrder(sortOrder string) *AdvertiserGroupsListCall {
 15151  	c.urlParams_.Set("sortOrder", sortOrder)
 15152  	return c
 15153  }
 15154  
 15155  // Fields allows partial responses to be retrieved. See
 15156  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15157  // details.
 15158  func (c *AdvertiserGroupsListCall) Fields(s ...googleapi.Field) *AdvertiserGroupsListCall {
 15159  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15160  	return c
 15161  }
 15162  
 15163  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15164  // object's ETag matches the given value. This is useful for getting updates
 15165  // only after the object has changed since the last request.
 15166  func (c *AdvertiserGroupsListCall) IfNoneMatch(entityTag string) *AdvertiserGroupsListCall {
 15167  	c.ifNoneMatch_ = entityTag
 15168  	return c
 15169  }
 15170  
 15171  // Context sets the context to be used in this call's Do method.
 15172  func (c *AdvertiserGroupsListCall) Context(ctx context.Context) *AdvertiserGroupsListCall {
 15173  	c.ctx_ = ctx
 15174  	return c
 15175  }
 15176  
 15177  // Header returns a http.Header that can be modified by the caller to add
 15178  // headers to the request.
 15179  func (c *AdvertiserGroupsListCall) Header() http.Header {
 15180  	if c.header_ == nil {
 15181  		c.header_ = make(http.Header)
 15182  	}
 15183  	return c.header_
 15184  }
 15185  
 15186  func (c *AdvertiserGroupsListCall) doRequest(alt string) (*http.Response, error) {
 15187  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15188  	if c.ifNoneMatch_ != "" {
 15189  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15190  	}
 15191  	var body io.Reader = nil
 15192  	c.urlParams_.Set("alt", alt)
 15193  	c.urlParams_.Set("prettyPrint", "false")
 15194  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserGroups")
 15195  	urls += "?" + c.urlParams_.Encode()
 15196  	req, err := http.NewRequest("GET", urls, body)
 15197  	if err != nil {
 15198  		return nil, err
 15199  	}
 15200  	req.Header = reqHeaders
 15201  	googleapi.Expand(req.URL, map[string]string{
 15202  		"profileId": strconv.FormatInt(c.profileId, 10),
 15203  	})
 15204  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15205  }
 15206  
 15207  // Do executes the "dfareporting.advertiserGroups.list" call.
 15208  // Any non-2xx status code is an error. Response headers are in either
 15209  // *AdvertiserGroupsListResponse.ServerResponse.Header or (if a response was
 15210  // returned at all) in error.(*googleapi.Error).Header. Use
 15211  // googleapi.IsNotModified to check whether the returned error was because
 15212  // http.StatusNotModified was returned.
 15213  func (c *AdvertiserGroupsListCall) Do(opts ...googleapi.CallOption) (*AdvertiserGroupsListResponse, error) {
 15214  	gensupport.SetOptions(c.urlParams_, opts...)
 15215  	res, err := c.doRequest("json")
 15216  	if res != nil && res.StatusCode == http.StatusNotModified {
 15217  		if res.Body != nil {
 15218  			res.Body.Close()
 15219  		}
 15220  		return nil, gensupport.WrapError(&googleapi.Error{
 15221  			Code:   res.StatusCode,
 15222  			Header: res.Header,
 15223  		})
 15224  	}
 15225  	if err != nil {
 15226  		return nil, err
 15227  	}
 15228  	defer googleapi.CloseBody(res)
 15229  	if err := googleapi.CheckResponse(res); err != nil {
 15230  		return nil, gensupport.WrapError(err)
 15231  	}
 15232  	ret := &AdvertiserGroupsListResponse{
 15233  		ServerResponse: googleapi.ServerResponse{
 15234  			Header:         res.Header,
 15235  			HTTPStatusCode: res.StatusCode,
 15236  		},
 15237  	}
 15238  	target := &ret
 15239  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15240  		return nil, err
 15241  	}
 15242  	return ret, nil
 15243  }
 15244  
 15245  // Pages invokes f for each page of results.
 15246  // A non-nil error returned from f will halt the iteration.
 15247  // The provided context supersedes any context provided to the Context method.
 15248  func (c *AdvertiserGroupsListCall) Pages(ctx context.Context, f func(*AdvertiserGroupsListResponse) error) error {
 15249  	c.ctx_ = ctx
 15250  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 15251  	for {
 15252  		x, err := c.Do()
 15253  		if err != nil {
 15254  			return err
 15255  		}
 15256  		if err := f(x); err != nil {
 15257  			return err
 15258  		}
 15259  		if x.NextPageToken == "" {
 15260  			return nil
 15261  		}
 15262  		c.PageToken(x.NextPageToken)
 15263  	}
 15264  }
 15265  
 15266  type AdvertiserGroupsPatchCall struct {
 15267  	s               *Service
 15268  	profileId       int64
 15269  	advertisergroup *AdvertiserGroup
 15270  	urlParams_      gensupport.URLParams
 15271  	ctx_            context.Context
 15272  	header_         http.Header
 15273  }
 15274  
 15275  // Patch: Updates an existing advertiser group. This method supports patch
 15276  // semantics.
 15277  //
 15278  // - id: Advertiser Group ID.
 15279  // - profileId: User profile ID associated with this request.
 15280  func (r *AdvertiserGroupsService) Patch(profileId int64, id int64, advertisergroup *AdvertiserGroup) *AdvertiserGroupsPatchCall {
 15281  	c := &AdvertiserGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15282  	c.profileId = profileId
 15283  	c.urlParams_.Set("id", fmt.Sprint(id))
 15284  	c.advertisergroup = advertisergroup
 15285  	return c
 15286  }
 15287  
 15288  // Fields allows partial responses to be retrieved. See
 15289  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15290  // details.
 15291  func (c *AdvertiserGroupsPatchCall) Fields(s ...googleapi.Field) *AdvertiserGroupsPatchCall {
 15292  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15293  	return c
 15294  }
 15295  
 15296  // Context sets the context to be used in this call's Do method.
 15297  func (c *AdvertiserGroupsPatchCall) Context(ctx context.Context) *AdvertiserGroupsPatchCall {
 15298  	c.ctx_ = ctx
 15299  	return c
 15300  }
 15301  
 15302  // Header returns a http.Header that can be modified by the caller to add
 15303  // headers to the request.
 15304  func (c *AdvertiserGroupsPatchCall) Header() http.Header {
 15305  	if c.header_ == nil {
 15306  		c.header_ = make(http.Header)
 15307  	}
 15308  	return c.header_
 15309  }
 15310  
 15311  func (c *AdvertiserGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
 15312  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 15313  	var body io.Reader = nil
 15314  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertisergroup)
 15315  	if err != nil {
 15316  		return nil, err
 15317  	}
 15318  	c.urlParams_.Set("alt", alt)
 15319  	c.urlParams_.Set("prettyPrint", "false")
 15320  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserGroups")
 15321  	urls += "?" + c.urlParams_.Encode()
 15322  	req, err := http.NewRequest("PATCH", urls, body)
 15323  	if err != nil {
 15324  		return nil, err
 15325  	}
 15326  	req.Header = reqHeaders
 15327  	googleapi.Expand(req.URL, map[string]string{
 15328  		"profileId": strconv.FormatInt(c.profileId, 10),
 15329  	})
 15330  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15331  }
 15332  
 15333  // Do executes the "dfareporting.advertiserGroups.patch" call.
 15334  // Any non-2xx status code is an error. Response headers are in either
 15335  // *AdvertiserGroup.ServerResponse.Header or (if a response was returned at
 15336  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 15337  // check whether the returned error was because http.StatusNotModified was
 15338  // returned.
 15339  func (c *AdvertiserGroupsPatchCall) Do(opts ...googleapi.CallOption) (*AdvertiserGroup, error) {
 15340  	gensupport.SetOptions(c.urlParams_, opts...)
 15341  	res, err := c.doRequest("json")
 15342  	if res != nil && res.StatusCode == http.StatusNotModified {
 15343  		if res.Body != nil {
 15344  			res.Body.Close()
 15345  		}
 15346  		return nil, gensupport.WrapError(&googleapi.Error{
 15347  			Code:   res.StatusCode,
 15348  			Header: res.Header,
 15349  		})
 15350  	}
 15351  	if err != nil {
 15352  		return nil, err
 15353  	}
 15354  	defer googleapi.CloseBody(res)
 15355  	if err := googleapi.CheckResponse(res); err != nil {
 15356  		return nil, gensupport.WrapError(err)
 15357  	}
 15358  	ret := &AdvertiserGroup{
 15359  		ServerResponse: googleapi.ServerResponse{
 15360  			Header:         res.Header,
 15361  			HTTPStatusCode: res.StatusCode,
 15362  		},
 15363  	}
 15364  	target := &ret
 15365  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15366  		return nil, err
 15367  	}
 15368  	return ret, nil
 15369  }
 15370  
 15371  type AdvertiserGroupsUpdateCall struct {
 15372  	s               *Service
 15373  	profileId       int64
 15374  	advertisergroup *AdvertiserGroup
 15375  	urlParams_      gensupport.URLParams
 15376  	ctx_            context.Context
 15377  	header_         http.Header
 15378  }
 15379  
 15380  // Update: Updates an existing advertiser group.
 15381  //
 15382  // - profileId: User profile ID associated with this request.
 15383  func (r *AdvertiserGroupsService) Update(profileId int64, advertisergroup *AdvertiserGroup) *AdvertiserGroupsUpdateCall {
 15384  	c := &AdvertiserGroupsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15385  	c.profileId = profileId
 15386  	c.advertisergroup = advertisergroup
 15387  	return c
 15388  }
 15389  
 15390  // Fields allows partial responses to be retrieved. See
 15391  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15392  // details.
 15393  func (c *AdvertiserGroupsUpdateCall) Fields(s ...googleapi.Field) *AdvertiserGroupsUpdateCall {
 15394  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15395  	return c
 15396  }
 15397  
 15398  // Context sets the context to be used in this call's Do method.
 15399  func (c *AdvertiserGroupsUpdateCall) Context(ctx context.Context) *AdvertiserGroupsUpdateCall {
 15400  	c.ctx_ = ctx
 15401  	return c
 15402  }
 15403  
 15404  // Header returns a http.Header that can be modified by the caller to add
 15405  // headers to the request.
 15406  func (c *AdvertiserGroupsUpdateCall) Header() http.Header {
 15407  	if c.header_ == nil {
 15408  		c.header_ = make(http.Header)
 15409  	}
 15410  	return c.header_
 15411  }
 15412  
 15413  func (c *AdvertiserGroupsUpdateCall) doRequest(alt string) (*http.Response, error) {
 15414  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 15415  	var body io.Reader = nil
 15416  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertisergroup)
 15417  	if err != nil {
 15418  		return nil, err
 15419  	}
 15420  	c.urlParams_.Set("alt", alt)
 15421  	c.urlParams_.Set("prettyPrint", "false")
 15422  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserGroups")
 15423  	urls += "?" + c.urlParams_.Encode()
 15424  	req, err := http.NewRequest("PUT", urls, body)
 15425  	if err != nil {
 15426  		return nil, err
 15427  	}
 15428  	req.Header = reqHeaders
 15429  	googleapi.Expand(req.URL, map[string]string{
 15430  		"profileId": strconv.FormatInt(c.profileId, 10),
 15431  	})
 15432  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15433  }
 15434  
 15435  // Do executes the "dfareporting.advertiserGroups.update" call.
 15436  // Any non-2xx status code is an error. Response headers are in either
 15437  // *AdvertiserGroup.ServerResponse.Header or (if a response was returned at
 15438  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 15439  // check whether the returned error was because http.StatusNotModified was
 15440  // returned.
 15441  func (c *AdvertiserGroupsUpdateCall) Do(opts ...googleapi.CallOption) (*AdvertiserGroup, error) {
 15442  	gensupport.SetOptions(c.urlParams_, opts...)
 15443  	res, err := c.doRequest("json")
 15444  	if res != nil && res.StatusCode == http.StatusNotModified {
 15445  		if res.Body != nil {
 15446  			res.Body.Close()
 15447  		}
 15448  		return nil, gensupport.WrapError(&googleapi.Error{
 15449  			Code:   res.StatusCode,
 15450  			Header: res.Header,
 15451  		})
 15452  	}
 15453  	if err != nil {
 15454  		return nil, err
 15455  	}
 15456  	defer googleapi.CloseBody(res)
 15457  	if err := googleapi.CheckResponse(res); err != nil {
 15458  		return nil, gensupport.WrapError(err)
 15459  	}
 15460  	ret := &AdvertiserGroup{
 15461  		ServerResponse: googleapi.ServerResponse{
 15462  			Header:         res.Header,
 15463  			HTTPStatusCode: res.StatusCode,
 15464  		},
 15465  	}
 15466  	target := &ret
 15467  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15468  		return nil, err
 15469  	}
 15470  	return ret, nil
 15471  }
 15472  
 15473  type AdvertiserInvoicesListCall struct {
 15474  	s            *Service
 15475  	profileId    int64
 15476  	advertiserId int64
 15477  	urlParams_   gensupport.URLParams
 15478  	ifNoneMatch_ string
 15479  	ctx_         context.Context
 15480  	header_      http.Header
 15481  }
 15482  
 15483  // List: Retrieves a list of invoices for a particular issue month. The api
 15484  // only works if the billing profile invoice level is set to either advertiser
 15485  // or campaign non-consolidated invoice level.
 15486  //
 15487  // - advertiserId: Advertiser ID of this invoice.
 15488  // - profileId: User profile ID associated with this request.
 15489  func (r *AdvertiserInvoicesService) List(profileId int64, advertiserId int64) *AdvertiserInvoicesListCall {
 15490  	c := &AdvertiserInvoicesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15491  	c.profileId = profileId
 15492  	c.advertiserId = advertiserId
 15493  	return c
 15494  }
 15495  
 15496  // IssueMonth sets the optional parameter "issueMonth": Month for which
 15497  // invoices are needed in the format YYYYMM. Required field
 15498  func (c *AdvertiserInvoicesListCall) IssueMonth(issueMonth string) *AdvertiserInvoicesListCall {
 15499  	c.urlParams_.Set("issueMonth", issueMonth)
 15500  	return c
 15501  }
 15502  
 15503  // MaxResults sets the optional parameter "maxResults": Maximum number of
 15504  // results to return.
 15505  func (c *AdvertiserInvoicesListCall) MaxResults(maxResults int64) *AdvertiserInvoicesListCall {
 15506  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 15507  	return c
 15508  }
 15509  
 15510  // PageToken sets the optional parameter "pageToken": Value of the
 15511  // nextPageToken from the previous result page.
 15512  func (c *AdvertiserInvoicesListCall) PageToken(pageToken string) *AdvertiserInvoicesListCall {
 15513  	c.urlParams_.Set("pageToken", pageToken)
 15514  	return c
 15515  }
 15516  
 15517  // Fields allows partial responses to be retrieved. See
 15518  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15519  // details.
 15520  func (c *AdvertiserInvoicesListCall) Fields(s ...googleapi.Field) *AdvertiserInvoicesListCall {
 15521  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15522  	return c
 15523  }
 15524  
 15525  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15526  // object's ETag matches the given value. This is useful for getting updates
 15527  // only after the object has changed since the last request.
 15528  func (c *AdvertiserInvoicesListCall) IfNoneMatch(entityTag string) *AdvertiserInvoicesListCall {
 15529  	c.ifNoneMatch_ = entityTag
 15530  	return c
 15531  }
 15532  
 15533  // Context sets the context to be used in this call's Do method.
 15534  func (c *AdvertiserInvoicesListCall) Context(ctx context.Context) *AdvertiserInvoicesListCall {
 15535  	c.ctx_ = ctx
 15536  	return c
 15537  }
 15538  
 15539  // Header returns a http.Header that can be modified by the caller to add
 15540  // headers to the request.
 15541  func (c *AdvertiserInvoicesListCall) Header() http.Header {
 15542  	if c.header_ == nil {
 15543  		c.header_ = make(http.Header)
 15544  	}
 15545  	return c.header_
 15546  }
 15547  
 15548  func (c *AdvertiserInvoicesListCall) doRequest(alt string) (*http.Response, error) {
 15549  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15550  	if c.ifNoneMatch_ != "" {
 15551  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15552  	}
 15553  	var body io.Reader = nil
 15554  	c.urlParams_.Set("alt", alt)
 15555  	c.urlParams_.Set("prettyPrint", "false")
 15556  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertisers/{+advertiserId}/invoices")
 15557  	urls += "?" + c.urlParams_.Encode()
 15558  	req, err := http.NewRequest("GET", urls, body)
 15559  	if err != nil {
 15560  		return nil, err
 15561  	}
 15562  	req.Header = reqHeaders
 15563  	googleapi.Expand(req.URL, map[string]string{
 15564  		"profileId":    strconv.FormatInt(c.profileId, 10),
 15565  		"advertiserId": strconv.FormatInt(c.advertiserId, 10),
 15566  	})
 15567  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15568  }
 15569  
 15570  // Do executes the "dfareporting.advertiserInvoices.list" call.
 15571  // Any non-2xx status code is an error. Response headers are in either
 15572  // *AdvertiserInvoicesListResponse.ServerResponse.Header or (if a response was
 15573  // returned at all) in error.(*googleapi.Error).Header. Use
 15574  // googleapi.IsNotModified to check whether the returned error was because
 15575  // http.StatusNotModified was returned.
 15576  func (c *AdvertiserInvoicesListCall) Do(opts ...googleapi.CallOption) (*AdvertiserInvoicesListResponse, error) {
 15577  	gensupport.SetOptions(c.urlParams_, opts...)
 15578  	res, err := c.doRequest("json")
 15579  	if res != nil && res.StatusCode == http.StatusNotModified {
 15580  		if res.Body != nil {
 15581  			res.Body.Close()
 15582  		}
 15583  		return nil, gensupport.WrapError(&googleapi.Error{
 15584  			Code:   res.StatusCode,
 15585  			Header: res.Header,
 15586  		})
 15587  	}
 15588  	if err != nil {
 15589  		return nil, err
 15590  	}
 15591  	defer googleapi.CloseBody(res)
 15592  	if err := googleapi.CheckResponse(res); err != nil {
 15593  		return nil, gensupport.WrapError(err)
 15594  	}
 15595  	ret := &AdvertiserInvoicesListResponse{
 15596  		ServerResponse: googleapi.ServerResponse{
 15597  			Header:         res.Header,
 15598  			HTTPStatusCode: res.StatusCode,
 15599  		},
 15600  	}
 15601  	target := &ret
 15602  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15603  		return nil, err
 15604  	}
 15605  	return ret, nil
 15606  }
 15607  
 15608  // Pages invokes f for each page of results.
 15609  // A non-nil error returned from f will halt the iteration.
 15610  // The provided context supersedes any context provided to the Context method.
 15611  func (c *AdvertiserInvoicesListCall) Pages(ctx context.Context, f func(*AdvertiserInvoicesListResponse) error) error {
 15612  	c.ctx_ = ctx
 15613  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 15614  	for {
 15615  		x, err := c.Do()
 15616  		if err != nil {
 15617  			return err
 15618  		}
 15619  		if err := f(x); err != nil {
 15620  			return err
 15621  		}
 15622  		if x.NextPageToken == "" {
 15623  			return nil
 15624  		}
 15625  		c.PageToken(x.NextPageToken)
 15626  	}
 15627  }
 15628  
 15629  type AdvertiserLandingPagesGetCall struct {
 15630  	s            *Service
 15631  	profileId    int64
 15632  	id           int64
 15633  	urlParams_   gensupport.URLParams
 15634  	ifNoneMatch_ string
 15635  	ctx_         context.Context
 15636  	header_      http.Header
 15637  }
 15638  
 15639  // Get: Gets one landing page by ID.
 15640  //
 15641  // - id: Landing page ID.
 15642  // - profileId: User profile ID associated with this request.
 15643  func (r *AdvertiserLandingPagesService) Get(profileId int64, id int64) *AdvertiserLandingPagesGetCall {
 15644  	c := &AdvertiserLandingPagesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15645  	c.profileId = profileId
 15646  	c.id = id
 15647  	return c
 15648  }
 15649  
 15650  // Fields allows partial responses to be retrieved. See
 15651  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15652  // details.
 15653  func (c *AdvertiserLandingPagesGetCall) Fields(s ...googleapi.Field) *AdvertiserLandingPagesGetCall {
 15654  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15655  	return c
 15656  }
 15657  
 15658  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15659  // object's ETag matches the given value. This is useful for getting updates
 15660  // only after the object has changed since the last request.
 15661  func (c *AdvertiserLandingPagesGetCall) IfNoneMatch(entityTag string) *AdvertiserLandingPagesGetCall {
 15662  	c.ifNoneMatch_ = entityTag
 15663  	return c
 15664  }
 15665  
 15666  // Context sets the context to be used in this call's Do method.
 15667  func (c *AdvertiserLandingPagesGetCall) Context(ctx context.Context) *AdvertiserLandingPagesGetCall {
 15668  	c.ctx_ = ctx
 15669  	return c
 15670  }
 15671  
 15672  // Header returns a http.Header that can be modified by the caller to add
 15673  // headers to the request.
 15674  func (c *AdvertiserLandingPagesGetCall) Header() http.Header {
 15675  	if c.header_ == nil {
 15676  		c.header_ = make(http.Header)
 15677  	}
 15678  	return c.header_
 15679  }
 15680  
 15681  func (c *AdvertiserLandingPagesGetCall) doRequest(alt string) (*http.Response, error) {
 15682  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15683  	if c.ifNoneMatch_ != "" {
 15684  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15685  	}
 15686  	var body io.Reader = nil
 15687  	c.urlParams_.Set("alt", alt)
 15688  	c.urlParams_.Set("prettyPrint", "false")
 15689  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserLandingPages/{+id}")
 15690  	urls += "?" + c.urlParams_.Encode()
 15691  	req, err := http.NewRequest("GET", urls, body)
 15692  	if err != nil {
 15693  		return nil, err
 15694  	}
 15695  	req.Header = reqHeaders
 15696  	googleapi.Expand(req.URL, map[string]string{
 15697  		"profileId": strconv.FormatInt(c.profileId, 10),
 15698  		"id":        strconv.FormatInt(c.id, 10),
 15699  	})
 15700  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15701  }
 15702  
 15703  // Do executes the "dfareporting.advertiserLandingPages.get" call.
 15704  // Any non-2xx status code is an error. Response headers are in either
 15705  // *LandingPage.ServerResponse.Header or (if a response was returned at all) in
 15706  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15707  // whether the returned error was because http.StatusNotModified was returned.
 15708  func (c *AdvertiserLandingPagesGetCall) Do(opts ...googleapi.CallOption) (*LandingPage, error) {
 15709  	gensupport.SetOptions(c.urlParams_, opts...)
 15710  	res, err := c.doRequest("json")
 15711  	if res != nil && res.StatusCode == http.StatusNotModified {
 15712  		if res.Body != nil {
 15713  			res.Body.Close()
 15714  		}
 15715  		return nil, gensupport.WrapError(&googleapi.Error{
 15716  			Code:   res.StatusCode,
 15717  			Header: res.Header,
 15718  		})
 15719  	}
 15720  	if err != nil {
 15721  		return nil, err
 15722  	}
 15723  	defer googleapi.CloseBody(res)
 15724  	if err := googleapi.CheckResponse(res); err != nil {
 15725  		return nil, gensupport.WrapError(err)
 15726  	}
 15727  	ret := &LandingPage{
 15728  		ServerResponse: googleapi.ServerResponse{
 15729  			Header:         res.Header,
 15730  			HTTPStatusCode: res.StatusCode,
 15731  		},
 15732  	}
 15733  	target := &ret
 15734  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15735  		return nil, err
 15736  	}
 15737  	return ret, nil
 15738  }
 15739  
 15740  type AdvertiserLandingPagesInsertCall struct {
 15741  	s           *Service
 15742  	profileId   int64
 15743  	landingpage *LandingPage
 15744  	urlParams_  gensupport.URLParams
 15745  	ctx_        context.Context
 15746  	header_     http.Header
 15747  }
 15748  
 15749  // Insert: Inserts a new landing page.
 15750  //
 15751  // - profileId: User profile ID associated with this request.
 15752  func (r *AdvertiserLandingPagesService) Insert(profileId int64, landingpage *LandingPage) *AdvertiserLandingPagesInsertCall {
 15753  	c := &AdvertiserLandingPagesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15754  	c.profileId = profileId
 15755  	c.landingpage = landingpage
 15756  	return c
 15757  }
 15758  
 15759  // Fields allows partial responses to be retrieved. See
 15760  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15761  // details.
 15762  func (c *AdvertiserLandingPagesInsertCall) Fields(s ...googleapi.Field) *AdvertiserLandingPagesInsertCall {
 15763  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15764  	return c
 15765  }
 15766  
 15767  // Context sets the context to be used in this call's Do method.
 15768  func (c *AdvertiserLandingPagesInsertCall) Context(ctx context.Context) *AdvertiserLandingPagesInsertCall {
 15769  	c.ctx_ = ctx
 15770  	return c
 15771  }
 15772  
 15773  // Header returns a http.Header that can be modified by the caller to add
 15774  // headers to the request.
 15775  func (c *AdvertiserLandingPagesInsertCall) Header() http.Header {
 15776  	if c.header_ == nil {
 15777  		c.header_ = make(http.Header)
 15778  	}
 15779  	return c.header_
 15780  }
 15781  
 15782  func (c *AdvertiserLandingPagesInsertCall) doRequest(alt string) (*http.Response, error) {
 15783  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 15784  	var body io.Reader = nil
 15785  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.landingpage)
 15786  	if err != nil {
 15787  		return nil, err
 15788  	}
 15789  	c.urlParams_.Set("alt", alt)
 15790  	c.urlParams_.Set("prettyPrint", "false")
 15791  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserLandingPages")
 15792  	urls += "?" + c.urlParams_.Encode()
 15793  	req, err := http.NewRequest("POST", urls, body)
 15794  	if err != nil {
 15795  		return nil, err
 15796  	}
 15797  	req.Header = reqHeaders
 15798  	googleapi.Expand(req.URL, map[string]string{
 15799  		"profileId": strconv.FormatInt(c.profileId, 10),
 15800  	})
 15801  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 15802  }
 15803  
 15804  // Do executes the "dfareporting.advertiserLandingPages.insert" call.
 15805  // Any non-2xx status code is an error. Response headers are in either
 15806  // *LandingPage.ServerResponse.Header or (if a response was returned at all) in
 15807  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 15808  // whether the returned error was because http.StatusNotModified was returned.
 15809  func (c *AdvertiserLandingPagesInsertCall) Do(opts ...googleapi.CallOption) (*LandingPage, error) {
 15810  	gensupport.SetOptions(c.urlParams_, opts...)
 15811  	res, err := c.doRequest("json")
 15812  	if res != nil && res.StatusCode == http.StatusNotModified {
 15813  		if res.Body != nil {
 15814  			res.Body.Close()
 15815  		}
 15816  		return nil, gensupport.WrapError(&googleapi.Error{
 15817  			Code:   res.StatusCode,
 15818  			Header: res.Header,
 15819  		})
 15820  	}
 15821  	if err != nil {
 15822  		return nil, err
 15823  	}
 15824  	defer googleapi.CloseBody(res)
 15825  	if err := googleapi.CheckResponse(res); err != nil {
 15826  		return nil, gensupport.WrapError(err)
 15827  	}
 15828  	ret := &LandingPage{
 15829  		ServerResponse: googleapi.ServerResponse{
 15830  			Header:         res.Header,
 15831  			HTTPStatusCode: res.StatusCode,
 15832  		},
 15833  	}
 15834  	target := &ret
 15835  	if err := gensupport.DecodeResponse(target, res); err != nil {
 15836  		return nil, err
 15837  	}
 15838  	return ret, nil
 15839  }
 15840  
 15841  type AdvertiserLandingPagesListCall struct {
 15842  	s            *Service
 15843  	profileId    int64
 15844  	urlParams_   gensupport.URLParams
 15845  	ifNoneMatch_ string
 15846  	ctx_         context.Context
 15847  	header_      http.Header
 15848  }
 15849  
 15850  // List: Retrieves a list of landing pages.
 15851  //
 15852  // - profileId: User profile ID associated with this request.
 15853  func (r *AdvertiserLandingPagesService) List(profileId int64) *AdvertiserLandingPagesListCall {
 15854  	c := &AdvertiserLandingPagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 15855  	c.profileId = profileId
 15856  	return c
 15857  }
 15858  
 15859  // AdvertiserIds sets the optional parameter "advertiserIds": Select only
 15860  // landing pages that belong to these advertisers.
 15861  func (c *AdvertiserLandingPagesListCall) AdvertiserIds(advertiserIds ...int64) *AdvertiserLandingPagesListCall {
 15862  	var advertiserIds_ []string
 15863  	for _, v := range advertiserIds {
 15864  		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
 15865  	}
 15866  	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
 15867  	return c
 15868  }
 15869  
 15870  // Archived sets the optional parameter "archived": Select only archived
 15871  // landing pages. Don't set this field to select both archived and non-archived
 15872  // landing pages.
 15873  func (c *AdvertiserLandingPagesListCall) Archived(archived bool) *AdvertiserLandingPagesListCall {
 15874  	c.urlParams_.Set("archived", fmt.Sprint(archived))
 15875  	return c
 15876  }
 15877  
 15878  // CampaignIds sets the optional parameter "campaignIds": Select only landing
 15879  // pages that are associated with these campaigns.
 15880  func (c *AdvertiserLandingPagesListCall) CampaignIds(campaignIds ...int64) *AdvertiserLandingPagesListCall {
 15881  	var campaignIds_ []string
 15882  	for _, v := range campaignIds {
 15883  		campaignIds_ = append(campaignIds_, fmt.Sprint(v))
 15884  	}
 15885  	c.urlParams_.SetMulti("campaignIds", campaignIds_)
 15886  	return c
 15887  }
 15888  
 15889  // Ids sets the optional parameter "ids": Select only landing pages with these
 15890  // IDs.
 15891  func (c *AdvertiserLandingPagesListCall) Ids(ids ...int64) *AdvertiserLandingPagesListCall {
 15892  	var ids_ []string
 15893  	for _, v := range ids {
 15894  		ids_ = append(ids_, fmt.Sprint(v))
 15895  	}
 15896  	c.urlParams_.SetMulti("ids", ids_)
 15897  	return c
 15898  }
 15899  
 15900  // MaxResults sets the optional parameter "maxResults": Maximum number of
 15901  // results to return.
 15902  func (c *AdvertiserLandingPagesListCall) MaxResults(maxResults int64) *AdvertiserLandingPagesListCall {
 15903  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 15904  	return c
 15905  }
 15906  
 15907  // PageToken sets the optional parameter "pageToken": Value of the
 15908  // nextPageToken from the previous result page.
 15909  func (c *AdvertiserLandingPagesListCall) PageToken(pageToken string) *AdvertiserLandingPagesListCall {
 15910  	c.urlParams_.Set("pageToken", pageToken)
 15911  	return c
 15912  }
 15913  
 15914  // SearchString sets the optional parameter "searchString": Allows searching
 15915  // for landing pages by name or ID. Wildcards (*) are allowed. For example,
 15916  // "landingpage*2017" will return landing pages with names like "landingpage
 15917  // July 2017", "landingpage March 2017", or simply "landingpage 2017". Most of
 15918  // the searches also add wildcards implicitly at the start and the end of the
 15919  // search string. For example, a search string of "landingpage" will match
 15920  // campaigns with name "my landingpage", "landingpage 2015", or simply
 15921  // "landingpage".
 15922  func (c *AdvertiserLandingPagesListCall) SearchString(searchString string) *AdvertiserLandingPagesListCall {
 15923  	c.urlParams_.Set("searchString", searchString)
 15924  	return c
 15925  }
 15926  
 15927  // SortField sets the optional parameter "sortField": Field by which to sort
 15928  // the list.
 15929  //
 15930  // Possible values:
 15931  //
 15932  //	"ID" (default)
 15933  //	"NAME"
 15934  func (c *AdvertiserLandingPagesListCall) SortField(sortField string) *AdvertiserLandingPagesListCall {
 15935  	c.urlParams_.Set("sortField", sortField)
 15936  	return c
 15937  }
 15938  
 15939  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 15940  //
 15941  // Possible values:
 15942  //
 15943  //	"ASCENDING" (default) - Ascending order.
 15944  //	"DESCENDING" - Descending order.
 15945  func (c *AdvertiserLandingPagesListCall) SortOrder(sortOrder string) *AdvertiserLandingPagesListCall {
 15946  	c.urlParams_.Set("sortOrder", sortOrder)
 15947  	return c
 15948  }
 15949  
 15950  // SubaccountId sets the optional parameter "subaccountId": Select only landing
 15951  // pages that belong to this subaccount.
 15952  func (c *AdvertiserLandingPagesListCall) SubaccountId(subaccountId int64) *AdvertiserLandingPagesListCall {
 15953  	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
 15954  	return c
 15955  }
 15956  
 15957  // Fields allows partial responses to be retrieved. See
 15958  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 15959  // details.
 15960  func (c *AdvertiserLandingPagesListCall) Fields(s ...googleapi.Field) *AdvertiserLandingPagesListCall {
 15961  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 15962  	return c
 15963  }
 15964  
 15965  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 15966  // object's ETag matches the given value. This is useful for getting updates
 15967  // only after the object has changed since the last request.
 15968  func (c *AdvertiserLandingPagesListCall) IfNoneMatch(entityTag string) *AdvertiserLandingPagesListCall {
 15969  	c.ifNoneMatch_ = entityTag
 15970  	return c
 15971  }
 15972  
 15973  // Context sets the context to be used in this call's Do method.
 15974  func (c *AdvertiserLandingPagesListCall) Context(ctx context.Context) *AdvertiserLandingPagesListCall {
 15975  	c.ctx_ = ctx
 15976  	return c
 15977  }
 15978  
 15979  // Header returns a http.Header that can be modified by the caller to add
 15980  // headers to the request.
 15981  func (c *AdvertiserLandingPagesListCall) Header() http.Header {
 15982  	if c.header_ == nil {
 15983  		c.header_ = make(http.Header)
 15984  	}
 15985  	return c.header_
 15986  }
 15987  
 15988  func (c *AdvertiserLandingPagesListCall) doRequest(alt string) (*http.Response, error) {
 15989  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 15990  	if c.ifNoneMatch_ != "" {
 15991  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 15992  	}
 15993  	var body io.Reader = nil
 15994  	c.urlParams_.Set("alt", alt)
 15995  	c.urlParams_.Set("prettyPrint", "false")
 15996  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserLandingPages")
 15997  	urls += "?" + c.urlParams_.Encode()
 15998  	req, err := http.NewRequest("GET", urls, body)
 15999  	if err != nil {
 16000  		return nil, err
 16001  	}
 16002  	req.Header = reqHeaders
 16003  	googleapi.Expand(req.URL, map[string]string{
 16004  		"profileId": strconv.FormatInt(c.profileId, 10),
 16005  	})
 16006  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16007  }
 16008  
 16009  // Do executes the "dfareporting.advertiserLandingPages.list" call.
 16010  // Any non-2xx status code is an error. Response headers are in either
 16011  // *AdvertiserLandingPagesListResponse.ServerResponse.Header or (if a response
 16012  // was returned at all) in error.(*googleapi.Error).Header. Use
 16013  // googleapi.IsNotModified to check whether the returned error was because
 16014  // http.StatusNotModified was returned.
 16015  func (c *AdvertiserLandingPagesListCall) Do(opts ...googleapi.CallOption) (*AdvertiserLandingPagesListResponse, error) {
 16016  	gensupport.SetOptions(c.urlParams_, opts...)
 16017  	res, err := c.doRequest("json")
 16018  	if res != nil && res.StatusCode == http.StatusNotModified {
 16019  		if res.Body != nil {
 16020  			res.Body.Close()
 16021  		}
 16022  		return nil, gensupport.WrapError(&googleapi.Error{
 16023  			Code:   res.StatusCode,
 16024  			Header: res.Header,
 16025  		})
 16026  	}
 16027  	if err != nil {
 16028  		return nil, err
 16029  	}
 16030  	defer googleapi.CloseBody(res)
 16031  	if err := googleapi.CheckResponse(res); err != nil {
 16032  		return nil, gensupport.WrapError(err)
 16033  	}
 16034  	ret := &AdvertiserLandingPagesListResponse{
 16035  		ServerResponse: googleapi.ServerResponse{
 16036  			Header:         res.Header,
 16037  			HTTPStatusCode: res.StatusCode,
 16038  		},
 16039  	}
 16040  	target := &ret
 16041  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16042  		return nil, err
 16043  	}
 16044  	return ret, nil
 16045  }
 16046  
 16047  // Pages invokes f for each page of results.
 16048  // A non-nil error returned from f will halt the iteration.
 16049  // The provided context supersedes any context provided to the Context method.
 16050  func (c *AdvertiserLandingPagesListCall) Pages(ctx context.Context, f func(*AdvertiserLandingPagesListResponse) error) error {
 16051  	c.ctx_ = ctx
 16052  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 16053  	for {
 16054  		x, err := c.Do()
 16055  		if err != nil {
 16056  			return err
 16057  		}
 16058  		if err := f(x); err != nil {
 16059  			return err
 16060  		}
 16061  		if x.NextPageToken == "" {
 16062  			return nil
 16063  		}
 16064  		c.PageToken(x.NextPageToken)
 16065  	}
 16066  }
 16067  
 16068  type AdvertiserLandingPagesPatchCall struct {
 16069  	s           *Service
 16070  	profileId   int64
 16071  	landingpage *LandingPage
 16072  	urlParams_  gensupport.URLParams
 16073  	ctx_        context.Context
 16074  	header_     http.Header
 16075  }
 16076  
 16077  // Patch: Updates an existing advertiser. This method supports patch semantics.
 16078  //
 16079  // - id: Landing Page ID.
 16080  // - profileId: User profile ID associated with this request.
 16081  func (r *AdvertiserLandingPagesService) Patch(profileId int64, id int64, landingpage *LandingPage) *AdvertiserLandingPagesPatchCall {
 16082  	c := &AdvertiserLandingPagesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16083  	c.profileId = profileId
 16084  	c.urlParams_.Set("id", fmt.Sprint(id))
 16085  	c.landingpage = landingpage
 16086  	return c
 16087  }
 16088  
 16089  // Fields allows partial responses to be retrieved. See
 16090  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16091  // details.
 16092  func (c *AdvertiserLandingPagesPatchCall) Fields(s ...googleapi.Field) *AdvertiserLandingPagesPatchCall {
 16093  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16094  	return c
 16095  }
 16096  
 16097  // Context sets the context to be used in this call's Do method.
 16098  func (c *AdvertiserLandingPagesPatchCall) Context(ctx context.Context) *AdvertiserLandingPagesPatchCall {
 16099  	c.ctx_ = ctx
 16100  	return c
 16101  }
 16102  
 16103  // Header returns a http.Header that can be modified by the caller to add
 16104  // headers to the request.
 16105  func (c *AdvertiserLandingPagesPatchCall) Header() http.Header {
 16106  	if c.header_ == nil {
 16107  		c.header_ = make(http.Header)
 16108  	}
 16109  	return c.header_
 16110  }
 16111  
 16112  func (c *AdvertiserLandingPagesPatchCall) doRequest(alt string) (*http.Response, error) {
 16113  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16114  	var body io.Reader = nil
 16115  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.landingpage)
 16116  	if err != nil {
 16117  		return nil, err
 16118  	}
 16119  	c.urlParams_.Set("alt", alt)
 16120  	c.urlParams_.Set("prettyPrint", "false")
 16121  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserLandingPages")
 16122  	urls += "?" + c.urlParams_.Encode()
 16123  	req, err := http.NewRequest("PATCH", urls, body)
 16124  	if err != nil {
 16125  		return nil, err
 16126  	}
 16127  	req.Header = reqHeaders
 16128  	googleapi.Expand(req.URL, map[string]string{
 16129  		"profileId": strconv.FormatInt(c.profileId, 10),
 16130  	})
 16131  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16132  }
 16133  
 16134  // Do executes the "dfareporting.advertiserLandingPages.patch" call.
 16135  // Any non-2xx status code is an error. Response headers are in either
 16136  // *LandingPage.ServerResponse.Header or (if a response was returned at all) in
 16137  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16138  // whether the returned error was because http.StatusNotModified was returned.
 16139  func (c *AdvertiserLandingPagesPatchCall) Do(opts ...googleapi.CallOption) (*LandingPage, error) {
 16140  	gensupport.SetOptions(c.urlParams_, opts...)
 16141  	res, err := c.doRequest("json")
 16142  	if res != nil && res.StatusCode == http.StatusNotModified {
 16143  		if res.Body != nil {
 16144  			res.Body.Close()
 16145  		}
 16146  		return nil, gensupport.WrapError(&googleapi.Error{
 16147  			Code:   res.StatusCode,
 16148  			Header: res.Header,
 16149  		})
 16150  	}
 16151  	if err != nil {
 16152  		return nil, err
 16153  	}
 16154  	defer googleapi.CloseBody(res)
 16155  	if err := googleapi.CheckResponse(res); err != nil {
 16156  		return nil, gensupport.WrapError(err)
 16157  	}
 16158  	ret := &LandingPage{
 16159  		ServerResponse: googleapi.ServerResponse{
 16160  			Header:         res.Header,
 16161  			HTTPStatusCode: res.StatusCode,
 16162  		},
 16163  	}
 16164  	target := &ret
 16165  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16166  		return nil, err
 16167  	}
 16168  	return ret, nil
 16169  }
 16170  
 16171  type AdvertiserLandingPagesUpdateCall struct {
 16172  	s           *Service
 16173  	profileId   int64
 16174  	landingpage *LandingPage
 16175  	urlParams_  gensupport.URLParams
 16176  	ctx_        context.Context
 16177  	header_     http.Header
 16178  }
 16179  
 16180  // Update: Updates an existing landing page.
 16181  //
 16182  // - profileId: User profile ID associated with this request.
 16183  func (r *AdvertiserLandingPagesService) Update(profileId int64, landingpage *LandingPage) *AdvertiserLandingPagesUpdateCall {
 16184  	c := &AdvertiserLandingPagesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16185  	c.profileId = profileId
 16186  	c.landingpage = landingpage
 16187  	return c
 16188  }
 16189  
 16190  // Fields allows partial responses to be retrieved. See
 16191  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16192  // details.
 16193  func (c *AdvertiserLandingPagesUpdateCall) Fields(s ...googleapi.Field) *AdvertiserLandingPagesUpdateCall {
 16194  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16195  	return c
 16196  }
 16197  
 16198  // Context sets the context to be used in this call's Do method.
 16199  func (c *AdvertiserLandingPagesUpdateCall) Context(ctx context.Context) *AdvertiserLandingPagesUpdateCall {
 16200  	c.ctx_ = ctx
 16201  	return c
 16202  }
 16203  
 16204  // Header returns a http.Header that can be modified by the caller to add
 16205  // headers to the request.
 16206  func (c *AdvertiserLandingPagesUpdateCall) Header() http.Header {
 16207  	if c.header_ == nil {
 16208  		c.header_ = make(http.Header)
 16209  	}
 16210  	return c.header_
 16211  }
 16212  
 16213  func (c *AdvertiserLandingPagesUpdateCall) doRequest(alt string) (*http.Response, error) {
 16214  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16215  	var body io.Reader = nil
 16216  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.landingpage)
 16217  	if err != nil {
 16218  		return nil, err
 16219  	}
 16220  	c.urlParams_.Set("alt", alt)
 16221  	c.urlParams_.Set("prettyPrint", "false")
 16222  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertiserLandingPages")
 16223  	urls += "?" + c.urlParams_.Encode()
 16224  	req, err := http.NewRequest("PUT", urls, body)
 16225  	if err != nil {
 16226  		return nil, err
 16227  	}
 16228  	req.Header = reqHeaders
 16229  	googleapi.Expand(req.URL, map[string]string{
 16230  		"profileId": strconv.FormatInt(c.profileId, 10),
 16231  	})
 16232  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16233  }
 16234  
 16235  // Do executes the "dfareporting.advertiserLandingPages.update" call.
 16236  // Any non-2xx status code is an error. Response headers are in either
 16237  // *LandingPage.ServerResponse.Header or (if a response was returned at all) in
 16238  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16239  // whether the returned error was because http.StatusNotModified was returned.
 16240  func (c *AdvertiserLandingPagesUpdateCall) Do(opts ...googleapi.CallOption) (*LandingPage, error) {
 16241  	gensupport.SetOptions(c.urlParams_, opts...)
 16242  	res, err := c.doRequest("json")
 16243  	if res != nil && res.StatusCode == http.StatusNotModified {
 16244  		if res.Body != nil {
 16245  			res.Body.Close()
 16246  		}
 16247  		return nil, gensupport.WrapError(&googleapi.Error{
 16248  			Code:   res.StatusCode,
 16249  			Header: res.Header,
 16250  		})
 16251  	}
 16252  	if err != nil {
 16253  		return nil, err
 16254  	}
 16255  	defer googleapi.CloseBody(res)
 16256  	if err := googleapi.CheckResponse(res); err != nil {
 16257  		return nil, gensupport.WrapError(err)
 16258  	}
 16259  	ret := &LandingPage{
 16260  		ServerResponse: googleapi.ServerResponse{
 16261  			Header:         res.Header,
 16262  			HTTPStatusCode: res.StatusCode,
 16263  		},
 16264  	}
 16265  	target := &ret
 16266  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16267  		return nil, err
 16268  	}
 16269  	return ret, nil
 16270  }
 16271  
 16272  type AdvertisersGetCall struct {
 16273  	s            *Service
 16274  	profileId    int64
 16275  	id           int64
 16276  	urlParams_   gensupport.URLParams
 16277  	ifNoneMatch_ string
 16278  	ctx_         context.Context
 16279  	header_      http.Header
 16280  }
 16281  
 16282  // Get: Gets one advertiser by ID.
 16283  //
 16284  // - id: Advertiser ID.
 16285  // - profileId: User profile ID associated with this request.
 16286  func (r *AdvertisersService) Get(profileId int64, id int64) *AdvertisersGetCall {
 16287  	c := &AdvertisersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16288  	c.profileId = profileId
 16289  	c.id = id
 16290  	return c
 16291  }
 16292  
 16293  // Fields allows partial responses to be retrieved. See
 16294  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16295  // details.
 16296  func (c *AdvertisersGetCall) Fields(s ...googleapi.Field) *AdvertisersGetCall {
 16297  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16298  	return c
 16299  }
 16300  
 16301  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 16302  // object's ETag matches the given value. This is useful for getting updates
 16303  // only after the object has changed since the last request.
 16304  func (c *AdvertisersGetCall) IfNoneMatch(entityTag string) *AdvertisersGetCall {
 16305  	c.ifNoneMatch_ = entityTag
 16306  	return c
 16307  }
 16308  
 16309  // Context sets the context to be used in this call's Do method.
 16310  func (c *AdvertisersGetCall) Context(ctx context.Context) *AdvertisersGetCall {
 16311  	c.ctx_ = ctx
 16312  	return c
 16313  }
 16314  
 16315  // Header returns a http.Header that can be modified by the caller to add
 16316  // headers to the request.
 16317  func (c *AdvertisersGetCall) Header() http.Header {
 16318  	if c.header_ == nil {
 16319  		c.header_ = make(http.Header)
 16320  	}
 16321  	return c.header_
 16322  }
 16323  
 16324  func (c *AdvertisersGetCall) doRequest(alt string) (*http.Response, error) {
 16325  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 16326  	if c.ifNoneMatch_ != "" {
 16327  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 16328  	}
 16329  	var body io.Reader = nil
 16330  	c.urlParams_.Set("alt", alt)
 16331  	c.urlParams_.Set("prettyPrint", "false")
 16332  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertisers/{+id}")
 16333  	urls += "?" + c.urlParams_.Encode()
 16334  	req, err := http.NewRequest("GET", urls, body)
 16335  	if err != nil {
 16336  		return nil, err
 16337  	}
 16338  	req.Header = reqHeaders
 16339  	googleapi.Expand(req.URL, map[string]string{
 16340  		"profileId": strconv.FormatInt(c.profileId, 10),
 16341  		"id":        strconv.FormatInt(c.id, 10),
 16342  	})
 16343  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16344  }
 16345  
 16346  // Do executes the "dfareporting.advertisers.get" call.
 16347  // Any non-2xx status code is an error. Response headers are in either
 16348  // *Advertiser.ServerResponse.Header or (if a response was returned at all) in
 16349  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16350  // whether the returned error was because http.StatusNotModified was returned.
 16351  func (c *AdvertisersGetCall) Do(opts ...googleapi.CallOption) (*Advertiser, error) {
 16352  	gensupport.SetOptions(c.urlParams_, opts...)
 16353  	res, err := c.doRequest("json")
 16354  	if res != nil && res.StatusCode == http.StatusNotModified {
 16355  		if res.Body != nil {
 16356  			res.Body.Close()
 16357  		}
 16358  		return nil, gensupport.WrapError(&googleapi.Error{
 16359  			Code:   res.StatusCode,
 16360  			Header: res.Header,
 16361  		})
 16362  	}
 16363  	if err != nil {
 16364  		return nil, err
 16365  	}
 16366  	defer googleapi.CloseBody(res)
 16367  	if err := googleapi.CheckResponse(res); err != nil {
 16368  		return nil, gensupport.WrapError(err)
 16369  	}
 16370  	ret := &Advertiser{
 16371  		ServerResponse: googleapi.ServerResponse{
 16372  			Header:         res.Header,
 16373  			HTTPStatusCode: res.StatusCode,
 16374  		},
 16375  	}
 16376  	target := &ret
 16377  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16378  		return nil, err
 16379  	}
 16380  	return ret, nil
 16381  }
 16382  
 16383  type AdvertisersInsertCall struct {
 16384  	s          *Service
 16385  	profileId  int64
 16386  	advertiser *Advertiser
 16387  	urlParams_ gensupport.URLParams
 16388  	ctx_       context.Context
 16389  	header_    http.Header
 16390  }
 16391  
 16392  // Insert: Inserts a new advertiser.
 16393  //
 16394  // - profileId: User profile ID associated with this request.
 16395  func (r *AdvertisersService) Insert(profileId int64, advertiser *Advertiser) *AdvertisersInsertCall {
 16396  	c := &AdvertisersInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16397  	c.profileId = profileId
 16398  	c.advertiser = advertiser
 16399  	return c
 16400  }
 16401  
 16402  // Fields allows partial responses to be retrieved. See
 16403  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16404  // details.
 16405  func (c *AdvertisersInsertCall) Fields(s ...googleapi.Field) *AdvertisersInsertCall {
 16406  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16407  	return c
 16408  }
 16409  
 16410  // Context sets the context to be used in this call's Do method.
 16411  func (c *AdvertisersInsertCall) Context(ctx context.Context) *AdvertisersInsertCall {
 16412  	c.ctx_ = ctx
 16413  	return c
 16414  }
 16415  
 16416  // Header returns a http.Header that can be modified by the caller to add
 16417  // headers to the request.
 16418  func (c *AdvertisersInsertCall) Header() http.Header {
 16419  	if c.header_ == nil {
 16420  		c.header_ = make(http.Header)
 16421  	}
 16422  	return c.header_
 16423  }
 16424  
 16425  func (c *AdvertisersInsertCall) doRequest(alt string) (*http.Response, error) {
 16426  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16427  	var body io.Reader = nil
 16428  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertiser)
 16429  	if err != nil {
 16430  		return nil, err
 16431  	}
 16432  	c.urlParams_.Set("alt", alt)
 16433  	c.urlParams_.Set("prettyPrint", "false")
 16434  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertisers")
 16435  	urls += "?" + c.urlParams_.Encode()
 16436  	req, err := http.NewRequest("POST", urls, body)
 16437  	if err != nil {
 16438  		return nil, err
 16439  	}
 16440  	req.Header = reqHeaders
 16441  	googleapi.Expand(req.URL, map[string]string{
 16442  		"profileId": strconv.FormatInt(c.profileId, 10),
 16443  	})
 16444  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16445  }
 16446  
 16447  // Do executes the "dfareporting.advertisers.insert" call.
 16448  // Any non-2xx status code is an error. Response headers are in either
 16449  // *Advertiser.ServerResponse.Header or (if a response was returned at all) in
 16450  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16451  // whether the returned error was because http.StatusNotModified was returned.
 16452  func (c *AdvertisersInsertCall) Do(opts ...googleapi.CallOption) (*Advertiser, error) {
 16453  	gensupport.SetOptions(c.urlParams_, opts...)
 16454  	res, err := c.doRequest("json")
 16455  	if res != nil && res.StatusCode == http.StatusNotModified {
 16456  		if res.Body != nil {
 16457  			res.Body.Close()
 16458  		}
 16459  		return nil, gensupport.WrapError(&googleapi.Error{
 16460  			Code:   res.StatusCode,
 16461  			Header: res.Header,
 16462  		})
 16463  	}
 16464  	if err != nil {
 16465  		return nil, err
 16466  	}
 16467  	defer googleapi.CloseBody(res)
 16468  	if err := googleapi.CheckResponse(res); err != nil {
 16469  		return nil, gensupport.WrapError(err)
 16470  	}
 16471  	ret := &Advertiser{
 16472  		ServerResponse: googleapi.ServerResponse{
 16473  			Header:         res.Header,
 16474  			HTTPStatusCode: res.StatusCode,
 16475  		},
 16476  	}
 16477  	target := &ret
 16478  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16479  		return nil, err
 16480  	}
 16481  	return ret, nil
 16482  }
 16483  
 16484  type AdvertisersListCall struct {
 16485  	s            *Service
 16486  	profileId    int64
 16487  	urlParams_   gensupport.URLParams
 16488  	ifNoneMatch_ string
 16489  	ctx_         context.Context
 16490  	header_      http.Header
 16491  }
 16492  
 16493  // List: Retrieves a list of advertisers, possibly filtered. This method
 16494  // supports paging.
 16495  //
 16496  // - profileId: User profile ID associated with this request.
 16497  func (r *AdvertisersService) List(profileId int64) *AdvertisersListCall {
 16498  	c := &AdvertisersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16499  	c.profileId = profileId
 16500  	return c
 16501  }
 16502  
 16503  // AdvertiserGroupIds sets the optional parameter "advertiserGroupIds": Select
 16504  // only advertisers with these advertiser group IDs.
 16505  func (c *AdvertisersListCall) AdvertiserGroupIds(advertiserGroupIds ...int64) *AdvertisersListCall {
 16506  	var advertiserGroupIds_ []string
 16507  	for _, v := range advertiserGroupIds {
 16508  		advertiserGroupIds_ = append(advertiserGroupIds_, fmt.Sprint(v))
 16509  	}
 16510  	c.urlParams_.SetMulti("advertiserGroupIds", advertiserGroupIds_)
 16511  	return c
 16512  }
 16513  
 16514  // FloodlightConfigurationIds sets the optional parameter
 16515  // "floodlightConfigurationIds": Select only advertisers with these floodlight
 16516  // configuration IDs.
 16517  func (c *AdvertisersListCall) FloodlightConfigurationIds(floodlightConfigurationIds ...int64) *AdvertisersListCall {
 16518  	var floodlightConfigurationIds_ []string
 16519  	for _, v := range floodlightConfigurationIds {
 16520  		floodlightConfigurationIds_ = append(floodlightConfigurationIds_, fmt.Sprint(v))
 16521  	}
 16522  	c.urlParams_.SetMulti("floodlightConfigurationIds", floodlightConfigurationIds_)
 16523  	return c
 16524  }
 16525  
 16526  // Ids sets the optional parameter "ids": Select only advertisers with these
 16527  // IDs.
 16528  func (c *AdvertisersListCall) Ids(ids ...int64) *AdvertisersListCall {
 16529  	var ids_ []string
 16530  	for _, v := range ids {
 16531  		ids_ = append(ids_, fmt.Sprint(v))
 16532  	}
 16533  	c.urlParams_.SetMulti("ids", ids_)
 16534  	return c
 16535  }
 16536  
 16537  // IncludeAdvertisersWithoutGroupsOnly sets the optional parameter
 16538  // "includeAdvertisersWithoutGroupsOnly": Select only advertisers which do not
 16539  // belong to any advertiser group.
 16540  func (c *AdvertisersListCall) IncludeAdvertisersWithoutGroupsOnly(includeAdvertisersWithoutGroupsOnly bool) *AdvertisersListCall {
 16541  	c.urlParams_.Set("includeAdvertisersWithoutGroupsOnly", fmt.Sprint(includeAdvertisersWithoutGroupsOnly))
 16542  	return c
 16543  }
 16544  
 16545  // MaxResults sets the optional parameter "maxResults": Maximum number of
 16546  // results to return.
 16547  func (c *AdvertisersListCall) MaxResults(maxResults int64) *AdvertisersListCall {
 16548  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 16549  	return c
 16550  }
 16551  
 16552  // OnlyParent sets the optional parameter "onlyParent": Select only advertisers
 16553  // which use another advertiser's floodlight configuration.
 16554  func (c *AdvertisersListCall) OnlyParent(onlyParent bool) *AdvertisersListCall {
 16555  	c.urlParams_.Set("onlyParent", fmt.Sprint(onlyParent))
 16556  	return c
 16557  }
 16558  
 16559  // PageToken sets the optional parameter "pageToken": Value of the
 16560  // nextPageToken from the previous result page.
 16561  func (c *AdvertisersListCall) PageToken(pageToken string) *AdvertisersListCall {
 16562  	c.urlParams_.Set("pageToken", pageToken)
 16563  	return c
 16564  }
 16565  
 16566  // SearchString sets the optional parameter "searchString": Allows searching
 16567  // for objects by name or ID. Wildcards (*) are allowed. For example,
 16568  // "advertiser*2015" will return objects with names like "advertiser June
 16569  // 2015", "advertiser April 2015", or simply "advertiser 2015". Most of the
 16570  // searches also add wildcards implicitly at the start and the end of the
 16571  // search string. For example, a search string of "advertiser" will match
 16572  // objects with name "my advertiser", "advertiser 2015", or simply "advertiser"
 16573  // .
 16574  func (c *AdvertisersListCall) SearchString(searchString string) *AdvertisersListCall {
 16575  	c.urlParams_.Set("searchString", searchString)
 16576  	return c
 16577  }
 16578  
 16579  // SortField sets the optional parameter "sortField": Field by which to sort
 16580  // the list.
 16581  //
 16582  // Possible values:
 16583  //
 16584  //	"ID" (default)
 16585  //	"NAME"
 16586  func (c *AdvertisersListCall) SortField(sortField string) *AdvertisersListCall {
 16587  	c.urlParams_.Set("sortField", sortField)
 16588  	return c
 16589  }
 16590  
 16591  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 16592  //
 16593  // Possible values:
 16594  //
 16595  //	"ASCENDING" (default) - Ascending order.
 16596  //	"DESCENDING" - Descending order.
 16597  func (c *AdvertisersListCall) SortOrder(sortOrder string) *AdvertisersListCall {
 16598  	c.urlParams_.Set("sortOrder", sortOrder)
 16599  	return c
 16600  }
 16601  
 16602  // Status sets the optional parameter "status": Select only advertisers with
 16603  // the specified status.
 16604  //
 16605  // Possible values:
 16606  //
 16607  //	"APPROVED" - Approved (ads can deliver)
 16608  //	"ON_HOLD" - On-hold (all ads are stopped)
 16609  func (c *AdvertisersListCall) Status(status string) *AdvertisersListCall {
 16610  	c.urlParams_.Set("status", status)
 16611  	return c
 16612  }
 16613  
 16614  // SubaccountId sets the optional parameter "subaccountId": Select only
 16615  // advertisers with these subaccount IDs.
 16616  func (c *AdvertisersListCall) SubaccountId(subaccountId int64) *AdvertisersListCall {
 16617  	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
 16618  	return c
 16619  }
 16620  
 16621  // Fields allows partial responses to be retrieved. See
 16622  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16623  // details.
 16624  func (c *AdvertisersListCall) Fields(s ...googleapi.Field) *AdvertisersListCall {
 16625  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16626  	return c
 16627  }
 16628  
 16629  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 16630  // object's ETag matches the given value. This is useful for getting updates
 16631  // only after the object has changed since the last request.
 16632  func (c *AdvertisersListCall) IfNoneMatch(entityTag string) *AdvertisersListCall {
 16633  	c.ifNoneMatch_ = entityTag
 16634  	return c
 16635  }
 16636  
 16637  // Context sets the context to be used in this call's Do method.
 16638  func (c *AdvertisersListCall) Context(ctx context.Context) *AdvertisersListCall {
 16639  	c.ctx_ = ctx
 16640  	return c
 16641  }
 16642  
 16643  // Header returns a http.Header that can be modified by the caller to add
 16644  // headers to the request.
 16645  func (c *AdvertisersListCall) Header() http.Header {
 16646  	if c.header_ == nil {
 16647  		c.header_ = make(http.Header)
 16648  	}
 16649  	return c.header_
 16650  }
 16651  
 16652  func (c *AdvertisersListCall) doRequest(alt string) (*http.Response, error) {
 16653  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 16654  	if c.ifNoneMatch_ != "" {
 16655  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 16656  	}
 16657  	var body io.Reader = nil
 16658  	c.urlParams_.Set("alt", alt)
 16659  	c.urlParams_.Set("prettyPrint", "false")
 16660  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertisers")
 16661  	urls += "?" + c.urlParams_.Encode()
 16662  	req, err := http.NewRequest("GET", urls, body)
 16663  	if err != nil {
 16664  		return nil, err
 16665  	}
 16666  	req.Header = reqHeaders
 16667  	googleapi.Expand(req.URL, map[string]string{
 16668  		"profileId": strconv.FormatInt(c.profileId, 10),
 16669  	})
 16670  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16671  }
 16672  
 16673  // Do executes the "dfareporting.advertisers.list" call.
 16674  // Any non-2xx status code is an error. Response headers are in either
 16675  // *AdvertisersListResponse.ServerResponse.Header or (if a response was
 16676  // returned at all) in error.(*googleapi.Error).Header. Use
 16677  // googleapi.IsNotModified to check whether the returned error was because
 16678  // http.StatusNotModified was returned.
 16679  func (c *AdvertisersListCall) Do(opts ...googleapi.CallOption) (*AdvertisersListResponse, error) {
 16680  	gensupport.SetOptions(c.urlParams_, opts...)
 16681  	res, err := c.doRequest("json")
 16682  	if res != nil && res.StatusCode == http.StatusNotModified {
 16683  		if res.Body != nil {
 16684  			res.Body.Close()
 16685  		}
 16686  		return nil, gensupport.WrapError(&googleapi.Error{
 16687  			Code:   res.StatusCode,
 16688  			Header: res.Header,
 16689  		})
 16690  	}
 16691  	if err != nil {
 16692  		return nil, err
 16693  	}
 16694  	defer googleapi.CloseBody(res)
 16695  	if err := googleapi.CheckResponse(res); err != nil {
 16696  		return nil, gensupport.WrapError(err)
 16697  	}
 16698  	ret := &AdvertisersListResponse{
 16699  		ServerResponse: googleapi.ServerResponse{
 16700  			Header:         res.Header,
 16701  			HTTPStatusCode: res.StatusCode,
 16702  		},
 16703  	}
 16704  	target := &ret
 16705  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16706  		return nil, err
 16707  	}
 16708  	return ret, nil
 16709  }
 16710  
 16711  // Pages invokes f for each page of results.
 16712  // A non-nil error returned from f will halt the iteration.
 16713  // The provided context supersedes any context provided to the Context method.
 16714  func (c *AdvertisersListCall) Pages(ctx context.Context, f func(*AdvertisersListResponse) error) error {
 16715  	c.ctx_ = ctx
 16716  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 16717  	for {
 16718  		x, err := c.Do()
 16719  		if err != nil {
 16720  			return err
 16721  		}
 16722  		if err := f(x); err != nil {
 16723  			return err
 16724  		}
 16725  		if x.NextPageToken == "" {
 16726  			return nil
 16727  		}
 16728  		c.PageToken(x.NextPageToken)
 16729  	}
 16730  }
 16731  
 16732  type AdvertisersPatchCall struct {
 16733  	s          *Service
 16734  	profileId  int64
 16735  	advertiser *Advertiser
 16736  	urlParams_ gensupport.URLParams
 16737  	ctx_       context.Context
 16738  	header_    http.Header
 16739  }
 16740  
 16741  // Patch: Updates an existing advertiser. This method supports patch semantics.
 16742  //
 16743  // - id: Advertiser ID.
 16744  // - profileId: User profile ID associated with this request.
 16745  func (r *AdvertisersService) Patch(profileId int64, id int64, advertiser *Advertiser) *AdvertisersPatchCall {
 16746  	c := &AdvertisersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16747  	c.profileId = profileId
 16748  	c.urlParams_.Set("id", fmt.Sprint(id))
 16749  	c.advertiser = advertiser
 16750  	return c
 16751  }
 16752  
 16753  // Fields allows partial responses to be retrieved. See
 16754  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16755  // details.
 16756  func (c *AdvertisersPatchCall) Fields(s ...googleapi.Field) *AdvertisersPatchCall {
 16757  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16758  	return c
 16759  }
 16760  
 16761  // Context sets the context to be used in this call's Do method.
 16762  func (c *AdvertisersPatchCall) Context(ctx context.Context) *AdvertisersPatchCall {
 16763  	c.ctx_ = ctx
 16764  	return c
 16765  }
 16766  
 16767  // Header returns a http.Header that can be modified by the caller to add
 16768  // headers to the request.
 16769  func (c *AdvertisersPatchCall) Header() http.Header {
 16770  	if c.header_ == nil {
 16771  		c.header_ = make(http.Header)
 16772  	}
 16773  	return c.header_
 16774  }
 16775  
 16776  func (c *AdvertisersPatchCall) doRequest(alt string) (*http.Response, error) {
 16777  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16778  	var body io.Reader = nil
 16779  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertiser)
 16780  	if err != nil {
 16781  		return nil, err
 16782  	}
 16783  	c.urlParams_.Set("alt", alt)
 16784  	c.urlParams_.Set("prettyPrint", "false")
 16785  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertisers")
 16786  	urls += "?" + c.urlParams_.Encode()
 16787  	req, err := http.NewRequest("PATCH", urls, body)
 16788  	if err != nil {
 16789  		return nil, err
 16790  	}
 16791  	req.Header = reqHeaders
 16792  	googleapi.Expand(req.URL, map[string]string{
 16793  		"profileId": strconv.FormatInt(c.profileId, 10),
 16794  	})
 16795  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16796  }
 16797  
 16798  // Do executes the "dfareporting.advertisers.patch" call.
 16799  // Any non-2xx status code is an error. Response headers are in either
 16800  // *Advertiser.ServerResponse.Header or (if a response was returned at all) in
 16801  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16802  // whether the returned error was because http.StatusNotModified was returned.
 16803  func (c *AdvertisersPatchCall) Do(opts ...googleapi.CallOption) (*Advertiser, error) {
 16804  	gensupport.SetOptions(c.urlParams_, opts...)
 16805  	res, err := c.doRequest("json")
 16806  	if res != nil && res.StatusCode == http.StatusNotModified {
 16807  		if res.Body != nil {
 16808  			res.Body.Close()
 16809  		}
 16810  		return nil, gensupport.WrapError(&googleapi.Error{
 16811  			Code:   res.StatusCode,
 16812  			Header: res.Header,
 16813  		})
 16814  	}
 16815  	if err != nil {
 16816  		return nil, err
 16817  	}
 16818  	defer googleapi.CloseBody(res)
 16819  	if err := googleapi.CheckResponse(res); err != nil {
 16820  		return nil, gensupport.WrapError(err)
 16821  	}
 16822  	ret := &Advertiser{
 16823  		ServerResponse: googleapi.ServerResponse{
 16824  			Header:         res.Header,
 16825  			HTTPStatusCode: res.StatusCode,
 16826  		},
 16827  	}
 16828  	target := &ret
 16829  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16830  		return nil, err
 16831  	}
 16832  	return ret, nil
 16833  }
 16834  
 16835  type AdvertisersUpdateCall struct {
 16836  	s          *Service
 16837  	profileId  int64
 16838  	advertiser *Advertiser
 16839  	urlParams_ gensupport.URLParams
 16840  	ctx_       context.Context
 16841  	header_    http.Header
 16842  }
 16843  
 16844  // Update: Updates an existing advertiser.
 16845  //
 16846  // - profileId: User profile ID associated with this request.
 16847  func (r *AdvertisersService) Update(profileId int64, advertiser *Advertiser) *AdvertisersUpdateCall {
 16848  	c := &AdvertisersUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16849  	c.profileId = profileId
 16850  	c.advertiser = advertiser
 16851  	return c
 16852  }
 16853  
 16854  // Fields allows partial responses to be retrieved. See
 16855  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16856  // details.
 16857  func (c *AdvertisersUpdateCall) Fields(s ...googleapi.Field) *AdvertisersUpdateCall {
 16858  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16859  	return c
 16860  }
 16861  
 16862  // Context sets the context to be used in this call's Do method.
 16863  func (c *AdvertisersUpdateCall) Context(ctx context.Context) *AdvertisersUpdateCall {
 16864  	c.ctx_ = ctx
 16865  	return c
 16866  }
 16867  
 16868  // Header returns a http.Header that can be modified by the caller to add
 16869  // headers to the request.
 16870  func (c *AdvertisersUpdateCall) Header() http.Header {
 16871  	if c.header_ == nil {
 16872  		c.header_ = make(http.Header)
 16873  	}
 16874  	return c.header_
 16875  }
 16876  
 16877  func (c *AdvertisersUpdateCall) doRequest(alt string) (*http.Response, error) {
 16878  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16879  	var body io.Reader = nil
 16880  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.advertiser)
 16881  	if err != nil {
 16882  		return nil, err
 16883  	}
 16884  	c.urlParams_.Set("alt", alt)
 16885  	c.urlParams_.Set("prettyPrint", "false")
 16886  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/advertisers")
 16887  	urls += "?" + c.urlParams_.Encode()
 16888  	req, err := http.NewRequest("PUT", urls, body)
 16889  	if err != nil {
 16890  		return nil, err
 16891  	}
 16892  	req.Header = reqHeaders
 16893  	googleapi.Expand(req.URL, map[string]string{
 16894  		"profileId": strconv.FormatInt(c.profileId, 10),
 16895  	})
 16896  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 16897  }
 16898  
 16899  // Do executes the "dfareporting.advertisers.update" call.
 16900  // Any non-2xx status code is an error. Response headers are in either
 16901  // *Advertiser.ServerResponse.Header or (if a response was returned at all) in
 16902  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 16903  // whether the returned error was because http.StatusNotModified was returned.
 16904  func (c *AdvertisersUpdateCall) Do(opts ...googleapi.CallOption) (*Advertiser, error) {
 16905  	gensupport.SetOptions(c.urlParams_, opts...)
 16906  	res, err := c.doRequest("json")
 16907  	if res != nil && res.StatusCode == http.StatusNotModified {
 16908  		if res.Body != nil {
 16909  			res.Body.Close()
 16910  		}
 16911  		return nil, gensupport.WrapError(&googleapi.Error{
 16912  			Code:   res.StatusCode,
 16913  			Header: res.Header,
 16914  		})
 16915  	}
 16916  	if err != nil {
 16917  		return nil, err
 16918  	}
 16919  	defer googleapi.CloseBody(res)
 16920  	if err := googleapi.CheckResponse(res); err != nil {
 16921  		return nil, gensupport.WrapError(err)
 16922  	}
 16923  	ret := &Advertiser{
 16924  		ServerResponse: googleapi.ServerResponse{
 16925  			Header:         res.Header,
 16926  			HTTPStatusCode: res.StatusCode,
 16927  		},
 16928  	}
 16929  	target := &ret
 16930  	if err := gensupport.DecodeResponse(target, res); err != nil {
 16931  		return nil, err
 16932  	}
 16933  	return ret, nil
 16934  }
 16935  
 16936  type BillingAssignmentsInsertCall struct {
 16937  	s                 *Service
 16938  	profileId         int64
 16939  	billingProfileId  int64
 16940  	billingassignment *BillingAssignment
 16941  	urlParams_        gensupport.URLParams
 16942  	ctx_              context.Context
 16943  	header_           http.Header
 16944  }
 16945  
 16946  // Insert: Inserts a new billing assignment and returns the new assignment.
 16947  // Only one of advertiser_id or campaign_id is support per request. If the new
 16948  // assignment has no effect (assigning a campaign to the parent advertiser
 16949  // billing profile or assigning an advertiser to the account billing profile),
 16950  // no assignment will be returned.
 16951  //
 16952  // - billingProfileId: Billing profile ID of this billing assignment.
 16953  // - profileId: User profile ID associated with this request.
 16954  func (r *BillingAssignmentsService) Insert(profileId int64, billingProfileId int64, billingassignment *BillingAssignment) *BillingAssignmentsInsertCall {
 16955  	c := &BillingAssignmentsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 16956  	c.profileId = profileId
 16957  	c.billingProfileId = billingProfileId
 16958  	c.billingassignment = billingassignment
 16959  	return c
 16960  }
 16961  
 16962  // Fields allows partial responses to be retrieved. See
 16963  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 16964  // details.
 16965  func (c *BillingAssignmentsInsertCall) Fields(s ...googleapi.Field) *BillingAssignmentsInsertCall {
 16966  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 16967  	return c
 16968  }
 16969  
 16970  // Context sets the context to be used in this call's Do method.
 16971  func (c *BillingAssignmentsInsertCall) Context(ctx context.Context) *BillingAssignmentsInsertCall {
 16972  	c.ctx_ = ctx
 16973  	return c
 16974  }
 16975  
 16976  // Header returns a http.Header that can be modified by the caller to add
 16977  // headers to the request.
 16978  func (c *BillingAssignmentsInsertCall) Header() http.Header {
 16979  	if c.header_ == nil {
 16980  		c.header_ = make(http.Header)
 16981  	}
 16982  	return c.header_
 16983  }
 16984  
 16985  func (c *BillingAssignmentsInsertCall) doRequest(alt string) (*http.Response, error) {
 16986  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 16987  	var body io.Reader = nil
 16988  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.billingassignment)
 16989  	if err != nil {
 16990  		return nil, err
 16991  	}
 16992  	c.urlParams_.Set("alt", alt)
 16993  	c.urlParams_.Set("prettyPrint", "false")
 16994  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/billingProfiles/{+billingProfileId}/billingAssignments")
 16995  	urls += "?" + c.urlParams_.Encode()
 16996  	req, err := http.NewRequest("POST", urls, body)
 16997  	if err != nil {
 16998  		return nil, err
 16999  	}
 17000  	req.Header = reqHeaders
 17001  	googleapi.Expand(req.URL, map[string]string{
 17002  		"profileId":        strconv.FormatInt(c.profileId, 10),
 17003  		"billingProfileId": strconv.FormatInt(c.billingProfileId, 10),
 17004  	})
 17005  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17006  }
 17007  
 17008  // Do executes the "dfareporting.billingAssignments.insert" call.
 17009  // Any non-2xx status code is an error. Response headers are in either
 17010  // *BillingAssignment.ServerResponse.Header or (if a response was returned at
 17011  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 17012  // check whether the returned error was because http.StatusNotModified was
 17013  // returned.
 17014  func (c *BillingAssignmentsInsertCall) Do(opts ...googleapi.CallOption) (*BillingAssignment, error) {
 17015  	gensupport.SetOptions(c.urlParams_, opts...)
 17016  	res, err := c.doRequest("json")
 17017  	if res != nil && res.StatusCode == http.StatusNotModified {
 17018  		if res.Body != nil {
 17019  			res.Body.Close()
 17020  		}
 17021  		return nil, gensupport.WrapError(&googleapi.Error{
 17022  			Code:   res.StatusCode,
 17023  			Header: res.Header,
 17024  		})
 17025  	}
 17026  	if err != nil {
 17027  		return nil, err
 17028  	}
 17029  	defer googleapi.CloseBody(res)
 17030  	if err := googleapi.CheckResponse(res); err != nil {
 17031  		return nil, gensupport.WrapError(err)
 17032  	}
 17033  	ret := &BillingAssignment{
 17034  		ServerResponse: googleapi.ServerResponse{
 17035  			Header:         res.Header,
 17036  			HTTPStatusCode: res.StatusCode,
 17037  		},
 17038  	}
 17039  	target := &ret
 17040  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17041  		return nil, err
 17042  	}
 17043  	return ret, nil
 17044  }
 17045  
 17046  type BillingAssignmentsListCall struct {
 17047  	s                *Service
 17048  	profileId        int64
 17049  	billingProfileId int64
 17050  	urlParams_       gensupport.URLParams
 17051  	ifNoneMatch_     string
 17052  	ctx_             context.Context
 17053  	header_          http.Header
 17054  }
 17055  
 17056  // List: Retrieves a list of billing assignments.
 17057  //
 17058  // - billingProfileId: Billing profile ID of this billing assignment.
 17059  // - profileId: User profile ID associated with this request.
 17060  func (r *BillingAssignmentsService) List(profileId int64, billingProfileId int64) *BillingAssignmentsListCall {
 17061  	c := &BillingAssignmentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17062  	c.profileId = profileId
 17063  	c.billingProfileId = billingProfileId
 17064  	return c
 17065  }
 17066  
 17067  // Fields allows partial responses to be retrieved. See
 17068  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17069  // details.
 17070  func (c *BillingAssignmentsListCall) Fields(s ...googleapi.Field) *BillingAssignmentsListCall {
 17071  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17072  	return c
 17073  }
 17074  
 17075  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17076  // object's ETag matches the given value. This is useful for getting updates
 17077  // only after the object has changed since the last request.
 17078  func (c *BillingAssignmentsListCall) IfNoneMatch(entityTag string) *BillingAssignmentsListCall {
 17079  	c.ifNoneMatch_ = entityTag
 17080  	return c
 17081  }
 17082  
 17083  // Context sets the context to be used in this call's Do method.
 17084  func (c *BillingAssignmentsListCall) Context(ctx context.Context) *BillingAssignmentsListCall {
 17085  	c.ctx_ = ctx
 17086  	return c
 17087  }
 17088  
 17089  // Header returns a http.Header that can be modified by the caller to add
 17090  // headers to the request.
 17091  func (c *BillingAssignmentsListCall) Header() http.Header {
 17092  	if c.header_ == nil {
 17093  		c.header_ = make(http.Header)
 17094  	}
 17095  	return c.header_
 17096  }
 17097  
 17098  func (c *BillingAssignmentsListCall) doRequest(alt string) (*http.Response, error) {
 17099  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17100  	if c.ifNoneMatch_ != "" {
 17101  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 17102  	}
 17103  	var body io.Reader = nil
 17104  	c.urlParams_.Set("alt", alt)
 17105  	c.urlParams_.Set("prettyPrint", "false")
 17106  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/billingProfiles/{+billingProfileId}/billingAssignments")
 17107  	urls += "?" + c.urlParams_.Encode()
 17108  	req, err := http.NewRequest("GET", urls, body)
 17109  	if err != nil {
 17110  		return nil, err
 17111  	}
 17112  	req.Header = reqHeaders
 17113  	googleapi.Expand(req.URL, map[string]string{
 17114  		"profileId":        strconv.FormatInt(c.profileId, 10),
 17115  		"billingProfileId": strconv.FormatInt(c.billingProfileId, 10),
 17116  	})
 17117  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17118  }
 17119  
 17120  // Do executes the "dfareporting.billingAssignments.list" call.
 17121  // Any non-2xx status code is an error. Response headers are in either
 17122  // *BillingAssignmentsListResponse.ServerResponse.Header or (if a response was
 17123  // returned at all) in error.(*googleapi.Error).Header. Use
 17124  // googleapi.IsNotModified to check whether the returned error was because
 17125  // http.StatusNotModified was returned.
 17126  func (c *BillingAssignmentsListCall) Do(opts ...googleapi.CallOption) (*BillingAssignmentsListResponse, error) {
 17127  	gensupport.SetOptions(c.urlParams_, opts...)
 17128  	res, err := c.doRequest("json")
 17129  	if res != nil && res.StatusCode == http.StatusNotModified {
 17130  		if res.Body != nil {
 17131  			res.Body.Close()
 17132  		}
 17133  		return nil, gensupport.WrapError(&googleapi.Error{
 17134  			Code:   res.StatusCode,
 17135  			Header: res.Header,
 17136  		})
 17137  	}
 17138  	if err != nil {
 17139  		return nil, err
 17140  	}
 17141  	defer googleapi.CloseBody(res)
 17142  	if err := googleapi.CheckResponse(res); err != nil {
 17143  		return nil, gensupport.WrapError(err)
 17144  	}
 17145  	ret := &BillingAssignmentsListResponse{
 17146  		ServerResponse: googleapi.ServerResponse{
 17147  			Header:         res.Header,
 17148  			HTTPStatusCode: res.StatusCode,
 17149  		},
 17150  	}
 17151  	target := &ret
 17152  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17153  		return nil, err
 17154  	}
 17155  	return ret, nil
 17156  }
 17157  
 17158  type BillingProfilesGetCall struct {
 17159  	s            *Service
 17160  	profileId    int64
 17161  	id           int64
 17162  	urlParams_   gensupport.URLParams
 17163  	ifNoneMatch_ string
 17164  	ctx_         context.Context
 17165  	header_      http.Header
 17166  }
 17167  
 17168  // Get: Gets one billing profile by ID.
 17169  //
 17170  // - id: Billing Profile ID.
 17171  // - profileId: User profile ID associated with this request.
 17172  func (r *BillingProfilesService) Get(profileId int64, id int64) *BillingProfilesGetCall {
 17173  	c := &BillingProfilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17174  	c.profileId = profileId
 17175  	c.id = id
 17176  	return c
 17177  }
 17178  
 17179  // Fields allows partial responses to be retrieved. See
 17180  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17181  // details.
 17182  func (c *BillingProfilesGetCall) Fields(s ...googleapi.Field) *BillingProfilesGetCall {
 17183  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17184  	return c
 17185  }
 17186  
 17187  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17188  // object's ETag matches the given value. This is useful for getting updates
 17189  // only after the object has changed since the last request.
 17190  func (c *BillingProfilesGetCall) IfNoneMatch(entityTag string) *BillingProfilesGetCall {
 17191  	c.ifNoneMatch_ = entityTag
 17192  	return c
 17193  }
 17194  
 17195  // Context sets the context to be used in this call's Do method.
 17196  func (c *BillingProfilesGetCall) Context(ctx context.Context) *BillingProfilesGetCall {
 17197  	c.ctx_ = ctx
 17198  	return c
 17199  }
 17200  
 17201  // Header returns a http.Header that can be modified by the caller to add
 17202  // headers to the request.
 17203  func (c *BillingProfilesGetCall) Header() http.Header {
 17204  	if c.header_ == nil {
 17205  		c.header_ = make(http.Header)
 17206  	}
 17207  	return c.header_
 17208  }
 17209  
 17210  func (c *BillingProfilesGetCall) doRequest(alt string) (*http.Response, error) {
 17211  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17212  	if c.ifNoneMatch_ != "" {
 17213  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 17214  	}
 17215  	var body io.Reader = nil
 17216  	c.urlParams_.Set("alt", alt)
 17217  	c.urlParams_.Set("prettyPrint", "false")
 17218  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/billingProfiles/{+id}")
 17219  	urls += "?" + c.urlParams_.Encode()
 17220  	req, err := http.NewRequest("GET", urls, body)
 17221  	if err != nil {
 17222  		return nil, err
 17223  	}
 17224  	req.Header = reqHeaders
 17225  	googleapi.Expand(req.URL, map[string]string{
 17226  		"profileId": strconv.FormatInt(c.profileId, 10),
 17227  		"id":        strconv.FormatInt(c.id, 10),
 17228  	})
 17229  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17230  }
 17231  
 17232  // Do executes the "dfareporting.billingProfiles.get" call.
 17233  // Any non-2xx status code is an error. Response headers are in either
 17234  // *BillingProfile.ServerResponse.Header or (if a response was returned at all)
 17235  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 17236  // whether the returned error was because http.StatusNotModified was returned.
 17237  func (c *BillingProfilesGetCall) Do(opts ...googleapi.CallOption) (*BillingProfile, error) {
 17238  	gensupport.SetOptions(c.urlParams_, opts...)
 17239  	res, err := c.doRequest("json")
 17240  	if res != nil && res.StatusCode == http.StatusNotModified {
 17241  		if res.Body != nil {
 17242  			res.Body.Close()
 17243  		}
 17244  		return nil, gensupport.WrapError(&googleapi.Error{
 17245  			Code:   res.StatusCode,
 17246  			Header: res.Header,
 17247  		})
 17248  	}
 17249  	if err != nil {
 17250  		return nil, err
 17251  	}
 17252  	defer googleapi.CloseBody(res)
 17253  	if err := googleapi.CheckResponse(res); err != nil {
 17254  		return nil, gensupport.WrapError(err)
 17255  	}
 17256  	ret := &BillingProfile{
 17257  		ServerResponse: googleapi.ServerResponse{
 17258  			Header:         res.Header,
 17259  			HTTPStatusCode: res.StatusCode,
 17260  		},
 17261  	}
 17262  	target := &ret
 17263  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17264  		return nil, err
 17265  	}
 17266  	return ret, nil
 17267  }
 17268  
 17269  type BillingProfilesListCall struct {
 17270  	s            *Service
 17271  	profileId    int64
 17272  	urlParams_   gensupport.URLParams
 17273  	ifNoneMatch_ string
 17274  	ctx_         context.Context
 17275  	header_      http.Header
 17276  }
 17277  
 17278  // List: Retrieves a list of billing profiles, possibly filtered. This method
 17279  // supports paging.
 17280  //
 17281  // - profileId: User profile ID associated with this request.
 17282  func (r *BillingProfilesService) List(profileId int64) *BillingProfilesListCall {
 17283  	c := &BillingProfilesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17284  	c.profileId = profileId
 17285  	return c
 17286  }
 17287  
 17288  // CurrencyCode sets the optional parameter "currency_code": Select only
 17289  // billing profile with currency.
 17290  func (c *BillingProfilesListCall) CurrencyCode(currencyCode string) *BillingProfilesListCall {
 17291  	c.urlParams_.Set("currency_code", currencyCode)
 17292  	return c
 17293  }
 17294  
 17295  // Ids sets the optional parameter "ids": Select only billing profile with
 17296  // these IDs.
 17297  func (c *BillingProfilesListCall) Ids(ids ...int64) *BillingProfilesListCall {
 17298  	var ids_ []string
 17299  	for _, v := range ids {
 17300  		ids_ = append(ids_, fmt.Sprint(v))
 17301  	}
 17302  	c.urlParams_.SetMulti("ids", ids_)
 17303  	return c
 17304  }
 17305  
 17306  // MaxResults sets the optional parameter "maxResults": Maximum number of
 17307  // results to return.
 17308  func (c *BillingProfilesListCall) MaxResults(maxResults int64) *BillingProfilesListCall {
 17309  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 17310  	return c
 17311  }
 17312  
 17313  // Name sets the optional parameter "name": Allows searching for billing
 17314  // profiles by name. Wildcards (*) are allowed. For example, "profile*2020"
 17315  // will return objects with names like "profile June 2020", "profile April
 17316  // 2020", or simply "profile 2020". Most of the searches also add wildcards
 17317  // implicitly at the start and the end of the search string. For example, a
 17318  // search string of "profile" will match objects with name "my profile",
 17319  // "profile 2021", or simply "profile".
 17320  func (c *BillingProfilesListCall) Name(name string) *BillingProfilesListCall {
 17321  	c.urlParams_.Set("name", name)
 17322  	return c
 17323  }
 17324  
 17325  // OnlySuggestion sets the optional parameter "onlySuggestion": Select only
 17326  // billing profile which is suggested for the currency_code & subaccount_id
 17327  // using the Billing Suggestion API.
 17328  func (c *BillingProfilesListCall) OnlySuggestion(onlySuggestion bool) *BillingProfilesListCall {
 17329  	c.urlParams_.Set("onlySuggestion", fmt.Sprint(onlySuggestion))
 17330  	return c
 17331  }
 17332  
 17333  // PageToken sets the optional parameter "pageToken": Value of the
 17334  // nextPageToken from the previous result page.
 17335  func (c *BillingProfilesListCall) PageToken(pageToken string) *BillingProfilesListCall {
 17336  	c.urlParams_.Set("pageToken", pageToken)
 17337  	return c
 17338  }
 17339  
 17340  // SortField sets the optional parameter "sortField": Field by which to sort
 17341  // the list.
 17342  //
 17343  // Possible values:
 17344  //
 17345  //	"ID" (default)
 17346  //	"NAME"
 17347  func (c *BillingProfilesListCall) SortField(sortField string) *BillingProfilesListCall {
 17348  	c.urlParams_.Set("sortField", sortField)
 17349  	return c
 17350  }
 17351  
 17352  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 17353  //
 17354  // Possible values:
 17355  //
 17356  //	"ASCENDING" (default) - Ascending order.
 17357  //	"DESCENDING" - Descending order.
 17358  func (c *BillingProfilesListCall) SortOrder(sortOrder string) *BillingProfilesListCall {
 17359  	c.urlParams_.Set("sortOrder", sortOrder)
 17360  	return c
 17361  }
 17362  
 17363  // Status sets the optional parameter "status": Select only billing profile
 17364  // with the specified status.
 17365  //
 17366  // Possible values:
 17367  //
 17368  //	"UNDER_REVIEW"
 17369  //	"ACTIVE"
 17370  //	"ARCHIVED"
 17371  func (c *BillingProfilesListCall) Status(status ...string) *BillingProfilesListCall {
 17372  	c.urlParams_.SetMulti("status", append([]string{}, status...))
 17373  	return c
 17374  }
 17375  
 17376  // SubaccountIds sets the optional parameter "subaccountIds": Select only
 17377  // billing profile with the specified subaccount.When only_suggestion is true,
 17378  // only a single subaccount_id is supported.
 17379  func (c *BillingProfilesListCall) SubaccountIds(subaccountIds ...int64) *BillingProfilesListCall {
 17380  	var subaccountIds_ []string
 17381  	for _, v := range subaccountIds {
 17382  		subaccountIds_ = append(subaccountIds_, fmt.Sprint(v))
 17383  	}
 17384  	c.urlParams_.SetMulti("subaccountIds", subaccountIds_)
 17385  	return c
 17386  }
 17387  
 17388  // Fields allows partial responses to be retrieved. See
 17389  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17390  // details.
 17391  func (c *BillingProfilesListCall) Fields(s ...googleapi.Field) *BillingProfilesListCall {
 17392  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17393  	return c
 17394  }
 17395  
 17396  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17397  // object's ETag matches the given value. This is useful for getting updates
 17398  // only after the object has changed since the last request.
 17399  func (c *BillingProfilesListCall) IfNoneMatch(entityTag string) *BillingProfilesListCall {
 17400  	c.ifNoneMatch_ = entityTag
 17401  	return c
 17402  }
 17403  
 17404  // Context sets the context to be used in this call's Do method.
 17405  func (c *BillingProfilesListCall) Context(ctx context.Context) *BillingProfilesListCall {
 17406  	c.ctx_ = ctx
 17407  	return c
 17408  }
 17409  
 17410  // Header returns a http.Header that can be modified by the caller to add
 17411  // headers to the request.
 17412  func (c *BillingProfilesListCall) Header() http.Header {
 17413  	if c.header_ == nil {
 17414  		c.header_ = make(http.Header)
 17415  	}
 17416  	return c.header_
 17417  }
 17418  
 17419  func (c *BillingProfilesListCall) doRequest(alt string) (*http.Response, error) {
 17420  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17421  	if c.ifNoneMatch_ != "" {
 17422  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 17423  	}
 17424  	var body io.Reader = nil
 17425  	c.urlParams_.Set("alt", alt)
 17426  	c.urlParams_.Set("prettyPrint", "false")
 17427  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/billingProfiles")
 17428  	urls += "?" + c.urlParams_.Encode()
 17429  	req, err := http.NewRequest("GET", urls, body)
 17430  	if err != nil {
 17431  		return nil, err
 17432  	}
 17433  	req.Header = reqHeaders
 17434  	googleapi.Expand(req.URL, map[string]string{
 17435  		"profileId": strconv.FormatInt(c.profileId, 10),
 17436  	})
 17437  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17438  }
 17439  
 17440  // Do executes the "dfareporting.billingProfiles.list" call.
 17441  // Any non-2xx status code is an error. Response headers are in either
 17442  // *BillingProfilesListResponse.ServerResponse.Header or (if a response was
 17443  // returned at all) in error.(*googleapi.Error).Header. Use
 17444  // googleapi.IsNotModified to check whether the returned error was because
 17445  // http.StatusNotModified was returned.
 17446  func (c *BillingProfilesListCall) Do(opts ...googleapi.CallOption) (*BillingProfilesListResponse, error) {
 17447  	gensupport.SetOptions(c.urlParams_, opts...)
 17448  	res, err := c.doRequest("json")
 17449  	if res != nil && res.StatusCode == http.StatusNotModified {
 17450  		if res.Body != nil {
 17451  			res.Body.Close()
 17452  		}
 17453  		return nil, gensupport.WrapError(&googleapi.Error{
 17454  			Code:   res.StatusCode,
 17455  			Header: res.Header,
 17456  		})
 17457  	}
 17458  	if err != nil {
 17459  		return nil, err
 17460  	}
 17461  	defer googleapi.CloseBody(res)
 17462  	if err := googleapi.CheckResponse(res); err != nil {
 17463  		return nil, gensupport.WrapError(err)
 17464  	}
 17465  	ret := &BillingProfilesListResponse{
 17466  		ServerResponse: googleapi.ServerResponse{
 17467  			Header:         res.Header,
 17468  			HTTPStatusCode: res.StatusCode,
 17469  		},
 17470  	}
 17471  	target := &ret
 17472  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17473  		return nil, err
 17474  	}
 17475  	return ret, nil
 17476  }
 17477  
 17478  // Pages invokes f for each page of results.
 17479  // A non-nil error returned from f will halt the iteration.
 17480  // The provided context supersedes any context provided to the Context method.
 17481  func (c *BillingProfilesListCall) Pages(ctx context.Context, f func(*BillingProfilesListResponse) error) error {
 17482  	c.ctx_ = ctx
 17483  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 17484  	for {
 17485  		x, err := c.Do()
 17486  		if err != nil {
 17487  			return err
 17488  		}
 17489  		if err := f(x); err != nil {
 17490  			return err
 17491  		}
 17492  		if x.NextPageToken == "" {
 17493  			return nil
 17494  		}
 17495  		c.PageToken(x.NextPageToken)
 17496  	}
 17497  }
 17498  
 17499  type BillingProfilesUpdateCall struct {
 17500  	s              *Service
 17501  	profileId      int64
 17502  	billingprofile *BillingProfile
 17503  	urlParams_     gensupport.URLParams
 17504  	ctx_           context.Context
 17505  	header_        http.Header
 17506  }
 17507  
 17508  // Update: Updates an existing billing profile.
 17509  //
 17510  // - profileId: User profile ID associated with this request.
 17511  func (r *BillingProfilesService) Update(profileId int64, billingprofile *BillingProfile) *BillingProfilesUpdateCall {
 17512  	c := &BillingProfilesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17513  	c.profileId = profileId
 17514  	c.billingprofile = billingprofile
 17515  	return c
 17516  }
 17517  
 17518  // Fields allows partial responses to be retrieved. See
 17519  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17520  // details.
 17521  func (c *BillingProfilesUpdateCall) Fields(s ...googleapi.Field) *BillingProfilesUpdateCall {
 17522  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17523  	return c
 17524  }
 17525  
 17526  // Context sets the context to be used in this call's Do method.
 17527  func (c *BillingProfilesUpdateCall) Context(ctx context.Context) *BillingProfilesUpdateCall {
 17528  	c.ctx_ = ctx
 17529  	return c
 17530  }
 17531  
 17532  // Header returns a http.Header that can be modified by the caller to add
 17533  // headers to the request.
 17534  func (c *BillingProfilesUpdateCall) Header() http.Header {
 17535  	if c.header_ == nil {
 17536  		c.header_ = make(http.Header)
 17537  	}
 17538  	return c.header_
 17539  }
 17540  
 17541  func (c *BillingProfilesUpdateCall) doRequest(alt string) (*http.Response, error) {
 17542  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 17543  	var body io.Reader = nil
 17544  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.billingprofile)
 17545  	if err != nil {
 17546  		return nil, err
 17547  	}
 17548  	c.urlParams_.Set("alt", alt)
 17549  	c.urlParams_.Set("prettyPrint", "false")
 17550  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/billingProfiles")
 17551  	urls += "?" + c.urlParams_.Encode()
 17552  	req, err := http.NewRequest("PUT", urls, body)
 17553  	if err != nil {
 17554  		return nil, err
 17555  	}
 17556  	req.Header = reqHeaders
 17557  	googleapi.Expand(req.URL, map[string]string{
 17558  		"profileId": strconv.FormatInt(c.profileId, 10),
 17559  	})
 17560  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17561  }
 17562  
 17563  // Do executes the "dfareporting.billingProfiles.update" call.
 17564  // Any non-2xx status code is an error. Response headers are in either
 17565  // *BillingProfile.ServerResponse.Header or (if a response was returned at all)
 17566  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 17567  // whether the returned error was because http.StatusNotModified was returned.
 17568  func (c *BillingProfilesUpdateCall) Do(opts ...googleapi.CallOption) (*BillingProfile, error) {
 17569  	gensupport.SetOptions(c.urlParams_, opts...)
 17570  	res, err := c.doRequest("json")
 17571  	if res != nil && res.StatusCode == http.StatusNotModified {
 17572  		if res.Body != nil {
 17573  			res.Body.Close()
 17574  		}
 17575  		return nil, gensupport.WrapError(&googleapi.Error{
 17576  			Code:   res.StatusCode,
 17577  			Header: res.Header,
 17578  		})
 17579  	}
 17580  	if err != nil {
 17581  		return nil, err
 17582  	}
 17583  	defer googleapi.CloseBody(res)
 17584  	if err := googleapi.CheckResponse(res); err != nil {
 17585  		return nil, gensupport.WrapError(err)
 17586  	}
 17587  	ret := &BillingProfile{
 17588  		ServerResponse: googleapi.ServerResponse{
 17589  			Header:         res.Header,
 17590  			HTTPStatusCode: res.StatusCode,
 17591  		},
 17592  	}
 17593  	target := &ret
 17594  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17595  		return nil, err
 17596  	}
 17597  	return ret, nil
 17598  }
 17599  
 17600  type BillingRatesListCall struct {
 17601  	s                *Service
 17602  	profileId        int64
 17603  	billingProfileId int64
 17604  	urlParams_       gensupport.URLParams
 17605  	ifNoneMatch_     string
 17606  	ctx_             context.Context
 17607  	header_          http.Header
 17608  }
 17609  
 17610  // List: Retrieves a list of billing rates. This method supports paging.
 17611  //
 17612  // - billingProfileId: Billing profile ID of this billing rate.
 17613  // - profileId: User profile ID associated with this request.
 17614  func (r *BillingRatesService) List(profileId int64, billingProfileId int64) *BillingRatesListCall {
 17615  	c := &BillingRatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17616  	c.profileId = profileId
 17617  	c.billingProfileId = billingProfileId
 17618  	return c
 17619  }
 17620  
 17621  // Fields allows partial responses to be retrieved. See
 17622  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17623  // details.
 17624  func (c *BillingRatesListCall) Fields(s ...googleapi.Field) *BillingRatesListCall {
 17625  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17626  	return c
 17627  }
 17628  
 17629  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17630  // object's ETag matches the given value. This is useful for getting updates
 17631  // only after the object has changed since the last request.
 17632  func (c *BillingRatesListCall) IfNoneMatch(entityTag string) *BillingRatesListCall {
 17633  	c.ifNoneMatch_ = entityTag
 17634  	return c
 17635  }
 17636  
 17637  // Context sets the context to be used in this call's Do method.
 17638  func (c *BillingRatesListCall) Context(ctx context.Context) *BillingRatesListCall {
 17639  	c.ctx_ = ctx
 17640  	return c
 17641  }
 17642  
 17643  // Header returns a http.Header that can be modified by the caller to add
 17644  // headers to the request.
 17645  func (c *BillingRatesListCall) Header() http.Header {
 17646  	if c.header_ == nil {
 17647  		c.header_ = make(http.Header)
 17648  	}
 17649  	return c.header_
 17650  }
 17651  
 17652  func (c *BillingRatesListCall) doRequest(alt string) (*http.Response, error) {
 17653  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17654  	if c.ifNoneMatch_ != "" {
 17655  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 17656  	}
 17657  	var body io.Reader = nil
 17658  	c.urlParams_.Set("alt", alt)
 17659  	c.urlParams_.Set("prettyPrint", "false")
 17660  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/billingProfiles/{+billingProfileId}/billingRates")
 17661  	urls += "?" + c.urlParams_.Encode()
 17662  	req, err := http.NewRequest("GET", urls, body)
 17663  	if err != nil {
 17664  		return nil, err
 17665  	}
 17666  	req.Header = reqHeaders
 17667  	googleapi.Expand(req.URL, map[string]string{
 17668  		"profileId":        strconv.FormatInt(c.profileId, 10),
 17669  		"billingProfileId": strconv.FormatInt(c.billingProfileId, 10),
 17670  	})
 17671  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17672  }
 17673  
 17674  // Do executes the "dfareporting.billingRates.list" call.
 17675  // Any non-2xx status code is an error. Response headers are in either
 17676  // *BillingRatesListResponse.ServerResponse.Header or (if a response was
 17677  // returned at all) in error.(*googleapi.Error).Header. Use
 17678  // googleapi.IsNotModified to check whether the returned error was because
 17679  // http.StatusNotModified was returned.
 17680  func (c *BillingRatesListCall) Do(opts ...googleapi.CallOption) (*BillingRatesListResponse, error) {
 17681  	gensupport.SetOptions(c.urlParams_, opts...)
 17682  	res, err := c.doRequest("json")
 17683  	if res != nil && res.StatusCode == http.StatusNotModified {
 17684  		if res.Body != nil {
 17685  			res.Body.Close()
 17686  		}
 17687  		return nil, gensupport.WrapError(&googleapi.Error{
 17688  			Code:   res.StatusCode,
 17689  			Header: res.Header,
 17690  		})
 17691  	}
 17692  	if err != nil {
 17693  		return nil, err
 17694  	}
 17695  	defer googleapi.CloseBody(res)
 17696  	if err := googleapi.CheckResponse(res); err != nil {
 17697  		return nil, gensupport.WrapError(err)
 17698  	}
 17699  	ret := &BillingRatesListResponse{
 17700  		ServerResponse: googleapi.ServerResponse{
 17701  			Header:         res.Header,
 17702  			HTTPStatusCode: res.StatusCode,
 17703  		},
 17704  	}
 17705  	target := &ret
 17706  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17707  		return nil, err
 17708  	}
 17709  	return ret, nil
 17710  }
 17711  
 17712  type BrowsersListCall struct {
 17713  	s            *Service
 17714  	profileId    int64
 17715  	urlParams_   gensupport.URLParams
 17716  	ifNoneMatch_ string
 17717  	ctx_         context.Context
 17718  	header_      http.Header
 17719  }
 17720  
 17721  // List: Retrieves a list of browsers.
 17722  //
 17723  // - profileId: User profile ID associated with this request.
 17724  func (r *BrowsersService) List(profileId int64) *BrowsersListCall {
 17725  	c := &BrowsersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17726  	c.profileId = profileId
 17727  	return c
 17728  }
 17729  
 17730  // Fields allows partial responses to be retrieved. See
 17731  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17732  // details.
 17733  func (c *BrowsersListCall) Fields(s ...googleapi.Field) *BrowsersListCall {
 17734  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17735  	return c
 17736  }
 17737  
 17738  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17739  // object's ETag matches the given value. This is useful for getting updates
 17740  // only after the object has changed since the last request.
 17741  func (c *BrowsersListCall) IfNoneMatch(entityTag string) *BrowsersListCall {
 17742  	c.ifNoneMatch_ = entityTag
 17743  	return c
 17744  }
 17745  
 17746  // Context sets the context to be used in this call's Do method.
 17747  func (c *BrowsersListCall) Context(ctx context.Context) *BrowsersListCall {
 17748  	c.ctx_ = ctx
 17749  	return c
 17750  }
 17751  
 17752  // Header returns a http.Header that can be modified by the caller to add
 17753  // headers to the request.
 17754  func (c *BrowsersListCall) Header() http.Header {
 17755  	if c.header_ == nil {
 17756  		c.header_ = make(http.Header)
 17757  	}
 17758  	return c.header_
 17759  }
 17760  
 17761  func (c *BrowsersListCall) doRequest(alt string) (*http.Response, error) {
 17762  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 17763  	if c.ifNoneMatch_ != "" {
 17764  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 17765  	}
 17766  	var body io.Reader = nil
 17767  	c.urlParams_.Set("alt", alt)
 17768  	c.urlParams_.Set("prettyPrint", "false")
 17769  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/browsers")
 17770  	urls += "?" + c.urlParams_.Encode()
 17771  	req, err := http.NewRequest("GET", urls, body)
 17772  	if err != nil {
 17773  		return nil, err
 17774  	}
 17775  	req.Header = reqHeaders
 17776  	googleapi.Expand(req.URL, map[string]string{
 17777  		"profileId": strconv.FormatInt(c.profileId, 10),
 17778  	})
 17779  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17780  }
 17781  
 17782  // Do executes the "dfareporting.browsers.list" call.
 17783  // Any non-2xx status code is an error. Response headers are in either
 17784  // *BrowsersListResponse.ServerResponse.Header or (if a response was returned
 17785  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 17786  // check whether the returned error was because http.StatusNotModified was
 17787  // returned.
 17788  func (c *BrowsersListCall) Do(opts ...googleapi.CallOption) (*BrowsersListResponse, error) {
 17789  	gensupport.SetOptions(c.urlParams_, opts...)
 17790  	res, err := c.doRequest("json")
 17791  	if res != nil && res.StatusCode == http.StatusNotModified {
 17792  		if res.Body != nil {
 17793  			res.Body.Close()
 17794  		}
 17795  		return nil, gensupport.WrapError(&googleapi.Error{
 17796  			Code:   res.StatusCode,
 17797  			Header: res.Header,
 17798  		})
 17799  	}
 17800  	if err != nil {
 17801  		return nil, err
 17802  	}
 17803  	defer googleapi.CloseBody(res)
 17804  	if err := googleapi.CheckResponse(res); err != nil {
 17805  		return nil, gensupport.WrapError(err)
 17806  	}
 17807  	ret := &BrowsersListResponse{
 17808  		ServerResponse: googleapi.ServerResponse{
 17809  			Header:         res.Header,
 17810  			HTTPStatusCode: res.StatusCode,
 17811  		},
 17812  	}
 17813  	target := &ret
 17814  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17815  		return nil, err
 17816  	}
 17817  	return ret, nil
 17818  }
 17819  
 17820  type CampaignCreativeAssociationsInsertCall struct {
 17821  	s                           *Service
 17822  	profileId                   int64
 17823  	campaignId                  int64
 17824  	campaigncreativeassociation *CampaignCreativeAssociation
 17825  	urlParams_                  gensupport.URLParams
 17826  	ctx_                        context.Context
 17827  	header_                     http.Header
 17828  }
 17829  
 17830  // Insert: Associates a creative with the specified campaign. This method
 17831  // creates a default ad with dimensions matching the creative in the campaign
 17832  // if such a default ad does not exist already.
 17833  //
 17834  // - campaignId: Campaign ID in this association.
 17835  // - profileId: User profile ID associated with this request.
 17836  func (r *CampaignCreativeAssociationsService) Insert(profileId int64, campaignId int64, campaigncreativeassociation *CampaignCreativeAssociation) *CampaignCreativeAssociationsInsertCall {
 17837  	c := &CampaignCreativeAssociationsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17838  	c.profileId = profileId
 17839  	c.campaignId = campaignId
 17840  	c.campaigncreativeassociation = campaigncreativeassociation
 17841  	return c
 17842  }
 17843  
 17844  // Fields allows partial responses to be retrieved. See
 17845  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17846  // details.
 17847  func (c *CampaignCreativeAssociationsInsertCall) Fields(s ...googleapi.Field) *CampaignCreativeAssociationsInsertCall {
 17848  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17849  	return c
 17850  }
 17851  
 17852  // Context sets the context to be used in this call's Do method.
 17853  func (c *CampaignCreativeAssociationsInsertCall) Context(ctx context.Context) *CampaignCreativeAssociationsInsertCall {
 17854  	c.ctx_ = ctx
 17855  	return c
 17856  }
 17857  
 17858  // Header returns a http.Header that can be modified by the caller to add
 17859  // headers to the request.
 17860  func (c *CampaignCreativeAssociationsInsertCall) Header() http.Header {
 17861  	if c.header_ == nil {
 17862  		c.header_ = make(http.Header)
 17863  	}
 17864  	return c.header_
 17865  }
 17866  
 17867  func (c *CampaignCreativeAssociationsInsertCall) doRequest(alt string) (*http.Response, error) {
 17868  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 17869  	var body io.Reader = nil
 17870  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.campaigncreativeassociation)
 17871  	if err != nil {
 17872  		return nil, err
 17873  	}
 17874  	c.urlParams_.Set("alt", alt)
 17875  	c.urlParams_.Set("prettyPrint", "false")
 17876  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/campaigns/{+campaignId}/campaignCreativeAssociations")
 17877  	urls += "?" + c.urlParams_.Encode()
 17878  	req, err := http.NewRequest("POST", urls, body)
 17879  	if err != nil {
 17880  		return nil, err
 17881  	}
 17882  	req.Header = reqHeaders
 17883  	googleapi.Expand(req.URL, map[string]string{
 17884  		"profileId":  strconv.FormatInt(c.profileId, 10),
 17885  		"campaignId": strconv.FormatInt(c.campaignId, 10),
 17886  	})
 17887  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 17888  }
 17889  
 17890  // Do executes the "dfareporting.campaignCreativeAssociations.insert" call.
 17891  // Any non-2xx status code is an error. Response headers are in either
 17892  // *CampaignCreativeAssociation.ServerResponse.Header or (if a response was
 17893  // returned at all) in error.(*googleapi.Error).Header. Use
 17894  // googleapi.IsNotModified to check whether the returned error was because
 17895  // http.StatusNotModified was returned.
 17896  func (c *CampaignCreativeAssociationsInsertCall) Do(opts ...googleapi.CallOption) (*CampaignCreativeAssociation, error) {
 17897  	gensupport.SetOptions(c.urlParams_, opts...)
 17898  	res, err := c.doRequest("json")
 17899  	if res != nil && res.StatusCode == http.StatusNotModified {
 17900  		if res.Body != nil {
 17901  			res.Body.Close()
 17902  		}
 17903  		return nil, gensupport.WrapError(&googleapi.Error{
 17904  			Code:   res.StatusCode,
 17905  			Header: res.Header,
 17906  		})
 17907  	}
 17908  	if err != nil {
 17909  		return nil, err
 17910  	}
 17911  	defer googleapi.CloseBody(res)
 17912  	if err := googleapi.CheckResponse(res); err != nil {
 17913  		return nil, gensupport.WrapError(err)
 17914  	}
 17915  	ret := &CampaignCreativeAssociation{
 17916  		ServerResponse: googleapi.ServerResponse{
 17917  			Header:         res.Header,
 17918  			HTTPStatusCode: res.StatusCode,
 17919  		},
 17920  	}
 17921  	target := &ret
 17922  	if err := gensupport.DecodeResponse(target, res); err != nil {
 17923  		return nil, err
 17924  	}
 17925  	return ret, nil
 17926  }
 17927  
 17928  type CampaignCreativeAssociationsListCall struct {
 17929  	s            *Service
 17930  	profileId    int64
 17931  	campaignId   int64
 17932  	urlParams_   gensupport.URLParams
 17933  	ifNoneMatch_ string
 17934  	ctx_         context.Context
 17935  	header_      http.Header
 17936  }
 17937  
 17938  // List: Retrieves the list of creative IDs associated with the specified
 17939  // campaign. This method supports paging.
 17940  //
 17941  // - campaignId: Campaign ID in this association.
 17942  // - profileId: User profile ID associated with this request.
 17943  func (r *CampaignCreativeAssociationsService) List(profileId int64, campaignId int64) *CampaignCreativeAssociationsListCall {
 17944  	c := &CampaignCreativeAssociationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 17945  	c.profileId = profileId
 17946  	c.campaignId = campaignId
 17947  	return c
 17948  }
 17949  
 17950  // MaxResults sets the optional parameter "maxResults": Maximum number of
 17951  // results to return.
 17952  func (c *CampaignCreativeAssociationsListCall) MaxResults(maxResults int64) *CampaignCreativeAssociationsListCall {
 17953  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 17954  	return c
 17955  }
 17956  
 17957  // PageToken sets the optional parameter "pageToken": Value of the
 17958  // nextPageToken from the previous result page.
 17959  func (c *CampaignCreativeAssociationsListCall) PageToken(pageToken string) *CampaignCreativeAssociationsListCall {
 17960  	c.urlParams_.Set("pageToken", pageToken)
 17961  	return c
 17962  }
 17963  
 17964  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 17965  //
 17966  // Possible values:
 17967  //
 17968  //	"ASCENDING" (default) - Ascending order.
 17969  //	"DESCENDING" - Descending order.
 17970  func (c *CampaignCreativeAssociationsListCall) SortOrder(sortOrder string) *CampaignCreativeAssociationsListCall {
 17971  	c.urlParams_.Set("sortOrder", sortOrder)
 17972  	return c
 17973  }
 17974  
 17975  // Fields allows partial responses to be retrieved. See
 17976  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 17977  // details.
 17978  func (c *CampaignCreativeAssociationsListCall) Fields(s ...googleapi.Field) *CampaignCreativeAssociationsListCall {
 17979  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 17980  	return c
 17981  }
 17982  
 17983  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 17984  // object's ETag matches the given value. This is useful for getting updates
 17985  // only after the object has changed since the last request.
 17986  func (c *CampaignCreativeAssociationsListCall) IfNoneMatch(entityTag string) *CampaignCreativeAssociationsListCall {
 17987  	c.ifNoneMatch_ = entityTag
 17988  	return c
 17989  }
 17990  
 17991  // Context sets the context to be used in this call's Do method.
 17992  func (c *CampaignCreativeAssociationsListCall) Context(ctx context.Context) *CampaignCreativeAssociationsListCall {
 17993  	c.ctx_ = ctx
 17994  	return c
 17995  }
 17996  
 17997  // Header returns a http.Header that can be modified by the caller to add
 17998  // headers to the request.
 17999  func (c *CampaignCreativeAssociationsListCall) Header() http.Header {
 18000  	if c.header_ == nil {
 18001  		c.header_ = make(http.Header)
 18002  	}
 18003  	return c.header_
 18004  }
 18005  
 18006  func (c *CampaignCreativeAssociationsListCall) doRequest(alt string) (*http.Response, error) {
 18007  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18008  	if c.ifNoneMatch_ != "" {
 18009  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18010  	}
 18011  	var body io.Reader = nil
 18012  	c.urlParams_.Set("alt", alt)
 18013  	c.urlParams_.Set("prettyPrint", "false")
 18014  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/campaigns/{+campaignId}/campaignCreativeAssociations")
 18015  	urls += "?" + c.urlParams_.Encode()
 18016  	req, err := http.NewRequest("GET", urls, body)
 18017  	if err != nil {
 18018  		return nil, err
 18019  	}
 18020  	req.Header = reqHeaders
 18021  	googleapi.Expand(req.URL, map[string]string{
 18022  		"profileId":  strconv.FormatInt(c.profileId, 10),
 18023  		"campaignId": strconv.FormatInt(c.campaignId, 10),
 18024  	})
 18025  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18026  }
 18027  
 18028  // Do executes the "dfareporting.campaignCreativeAssociations.list" call.
 18029  // Any non-2xx status code is an error. Response headers are in either
 18030  // *CampaignCreativeAssociationsListResponse.ServerResponse.Header or (if a
 18031  // response was returned at all) in error.(*googleapi.Error).Header. Use
 18032  // googleapi.IsNotModified to check whether the returned error was because
 18033  // http.StatusNotModified was returned.
 18034  func (c *CampaignCreativeAssociationsListCall) Do(opts ...googleapi.CallOption) (*CampaignCreativeAssociationsListResponse, error) {
 18035  	gensupport.SetOptions(c.urlParams_, opts...)
 18036  	res, err := c.doRequest("json")
 18037  	if res != nil && res.StatusCode == http.StatusNotModified {
 18038  		if res.Body != nil {
 18039  			res.Body.Close()
 18040  		}
 18041  		return nil, gensupport.WrapError(&googleapi.Error{
 18042  			Code:   res.StatusCode,
 18043  			Header: res.Header,
 18044  		})
 18045  	}
 18046  	if err != nil {
 18047  		return nil, err
 18048  	}
 18049  	defer googleapi.CloseBody(res)
 18050  	if err := googleapi.CheckResponse(res); err != nil {
 18051  		return nil, gensupport.WrapError(err)
 18052  	}
 18053  	ret := &CampaignCreativeAssociationsListResponse{
 18054  		ServerResponse: googleapi.ServerResponse{
 18055  			Header:         res.Header,
 18056  			HTTPStatusCode: res.StatusCode,
 18057  		},
 18058  	}
 18059  	target := &ret
 18060  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18061  		return nil, err
 18062  	}
 18063  	return ret, nil
 18064  }
 18065  
 18066  // Pages invokes f for each page of results.
 18067  // A non-nil error returned from f will halt the iteration.
 18068  // The provided context supersedes any context provided to the Context method.
 18069  func (c *CampaignCreativeAssociationsListCall) Pages(ctx context.Context, f func(*CampaignCreativeAssociationsListResponse) error) error {
 18070  	c.ctx_ = ctx
 18071  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 18072  	for {
 18073  		x, err := c.Do()
 18074  		if err != nil {
 18075  			return err
 18076  		}
 18077  		if err := f(x); err != nil {
 18078  			return err
 18079  		}
 18080  		if x.NextPageToken == "" {
 18081  			return nil
 18082  		}
 18083  		c.PageToken(x.NextPageToken)
 18084  	}
 18085  }
 18086  
 18087  type CampaignsGetCall struct {
 18088  	s            *Service
 18089  	profileId    int64
 18090  	id           int64
 18091  	urlParams_   gensupport.URLParams
 18092  	ifNoneMatch_ string
 18093  	ctx_         context.Context
 18094  	header_      http.Header
 18095  }
 18096  
 18097  // Get: Gets one campaign by ID.
 18098  //
 18099  // - id: Campaign ID.
 18100  // - profileId: User profile ID associated with this request.
 18101  func (r *CampaignsService) Get(profileId int64, id int64) *CampaignsGetCall {
 18102  	c := &CampaignsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18103  	c.profileId = profileId
 18104  	c.id = id
 18105  	return c
 18106  }
 18107  
 18108  // Fields allows partial responses to be retrieved. See
 18109  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18110  // details.
 18111  func (c *CampaignsGetCall) Fields(s ...googleapi.Field) *CampaignsGetCall {
 18112  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18113  	return c
 18114  }
 18115  
 18116  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18117  // object's ETag matches the given value. This is useful for getting updates
 18118  // only after the object has changed since the last request.
 18119  func (c *CampaignsGetCall) IfNoneMatch(entityTag string) *CampaignsGetCall {
 18120  	c.ifNoneMatch_ = entityTag
 18121  	return c
 18122  }
 18123  
 18124  // Context sets the context to be used in this call's Do method.
 18125  func (c *CampaignsGetCall) Context(ctx context.Context) *CampaignsGetCall {
 18126  	c.ctx_ = ctx
 18127  	return c
 18128  }
 18129  
 18130  // Header returns a http.Header that can be modified by the caller to add
 18131  // headers to the request.
 18132  func (c *CampaignsGetCall) Header() http.Header {
 18133  	if c.header_ == nil {
 18134  		c.header_ = make(http.Header)
 18135  	}
 18136  	return c.header_
 18137  }
 18138  
 18139  func (c *CampaignsGetCall) doRequest(alt string) (*http.Response, error) {
 18140  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18141  	if c.ifNoneMatch_ != "" {
 18142  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18143  	}
 18144  	var body io.Reader = nil
 18145  	c.urlParams_.Set("alt", alt)
 18146  	c.urlParams_.Set("prettyPrint", "false")
 18147  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/campaigns/{+id}")
 18148  	urls += "?" + c.urlParams_.Encode()
 18149  	req, err := http.NewRequest("GET", urls, body)
 18150  	if err != nil {
 18151  		return nil, err
 18152  	}
 18153  	req.Header = reqHeaders
 18154  	googleapi.Expand(req.URL, map[string]string{
 18155  		"profileId": strconv.FormatInt(c.profileId, 10),
 18156  		"id":        strconv.FormatInt(c.id, 10),
 18157  	})
 18158  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18159  }
 18160  
 18161  // Do executes the "dfareporting.campaigns.get" call.
 18162  // Any non-2xx status code is an error. Response headers are in either
 18163  // *Campaign.ServerResponse.Header or (if a response was returned at all) in
 18164  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18165  // whether the returned error was because http.StatusNotModified was returned.
 18166  func (c *CampaignsGetCall) Do(opts ...googleapi.CallOption) (*Campaign, error) {
 18167  	gensupport.SetOptions(c.urlParams_, opts...)
 18168  	res, err := c.doRequest("json")
 18169  	if res != nil && res.StatusCode == http.StatusNotModified {
 18170  		if res.Body != nil {
 18171  			res.Body.Close()
 18172  		}
 18173  		return nil, gensupport.WrapError(&googleapi.Error{
 18174  			Code:   res.StatusCode,
 18175  			Header: res.Header,
 18176  		})
 18177  	}
 18178  	if err != nil {
 18179  		return nil, err
 18180  	}
 18181  	defer googleapi.CloseBody(res)
 18182  	if err := googleapi.CheckResponse(res); err != nil {
 18183  		return nil, gensupport.WrapError(err)
 18184  	}
 18185  	ret := &Campaign{
 18186  		ServerResponse: googleapi.ServerResponse{
 18187  			Header:         res.Header,
 18188  			HTTPStatusCode: res.StatusCode,
 18189  		},
 18190  	}
 18191  	target := &ret
 18192  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18193  		return nil, err
 18194  	}
 18195  	return ret, nil
 18196  }
 18197  
 18198  type CampaignsInsertCall struct {
 18199  	s          *Service
 18200  	profileId  int64
 18201  	campaign   *Campaign
 18202  	urlParams_ gensupport.URLParams
 18203  	ctx_       context.Context
 18204  	header_    http.Header
 18205  }
 18206  
 18207  // Insert: Inserts a new campaign.
 18208  //
 18209  // - profileId: User profile ID associated with this request.
 18210  func (r *CampaignsService) Insert(profileId int64, campaign *Campaign) *CampaignsInsertCall {
 18211  	c := &CampaignsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18212  	c.profileId = profileId
 18213  	c.campaign = campaign
 18214  	return c
 18215  }
 18216  
 18217  // Fields allows partial responses to be retrieved. See
 18218  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18219  // details.
 18220  func (c *CampaignsInsertCall) Fields(s ...googleapi.Field) *CampaignsInsertCall {
 18221  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18222  	return c
 18223  }
 18224  
 18225  // Context sets the context to be used in this call's Do method.
 18226  func (c *CampaignsInsertCall) Context(ctx context.Context) *CampaignsInsertCall {
 18227  	c.ctx_ = ctx
 18228  	return c
 18229  }
 18230  
 18231  // Header returns a http.Header that can be modified by the caller to add
 18232  // headers to the request.
 18233  func (c *CampaignsInsertCall) Header() http.Header {
 18234  	if c.header_ == nil {
 18235  		c.header_ = make(http.Header)
 18236  	}
 18237  	return c.header_
 18238  }
 18239  
 18240  func (c *CampaignsInsertCall) doRequest(alt string) (*http.Response, error) {
 18241  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 18242  	var body io.Reader = nil
 18243  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.campaign)
 18244  	if err != nil {
 18245  		return nil, err
 18246  	}
 18247  	c.urlParams_.Set("alt", alt)
 18248  	c.urlParams_.Set("prettyPrint", "false")
 18249  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/campaigns")
 18250  	urls += "?" + c.urlParams_.Encode()
 18251  	req, err := http.NewRequest("POST", urls, body)
 18252  	if err != nil {
 18253  		return nil, err
 18254  	}
 18255  	req.Header = reqHeaders
 18256  	googleapi.Expand(req.URL, map[string]string{
 18257  		"profileId": strconv.FormatInt(c.profileId, 10),
 18258  	})
 18259  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18260  }
 18261  
 18262  // Do executes the "dfareporting.campaigns.insert" call.
 18263  // Any non-2xx status code is an error. Response headers are in either
 18264  // *Campaign.ServerResponse.Header or (if a response was returned at all) in
 18265  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18266  // whether the returned error was because http.StatusNotModified was returned.
 18267  func (c *CampaignsInsertCall) Do(opts ...googleapi.CallOption) (*Campaign, error) {
 18268  	gensupport.SetOptions(c.urlParams_, opts...)
 18269  	res, err := c.doRequest("json")
 18270  	if res != nil && res.StatusCode == http.StatusNotModified {
 18271  		if res.Body != nil {
 18272  			res.Body.Close()
 18273  		}
 18274  		return nil, gensupport.WrapError(&googleapi.Error{
 18275  			Code:   res.StatusCode,
 18276  			Header: res.Header,
 18277  		})
 18278  	}
 18279  	if err != nil {
 18280  		return nil, err
 18281  	}
 18282  	defer googleapi.CloseBody(res)
 18283  	if err := googleapi.CheckResponse(res); err != nil {
 18284  		return nil, gensupport.WrapError(err)
 18285  	}
 18286  	ret := &Campaign{
 18287  		ServerResponse: googleapi.ServerResponse{
 18288  			Header:         res.Header,
 18289  			HTTPStatusCode: res.StatusCode,
 18290  		},
 18291  	}
 18292  	target := &ret
 18293  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18294  		return nil, err
 18295  	}
 18296  	return ret, nil
 18297  }
 18298  
 18299  type CampaignsListCall struct {
 18300  	s            *Service
 18301  	profileId    int64
 18302  	urlParams_   gensupport.URLParams
 18303  	ifNoneMatch_ string
 18304  	ctx_         context.Context
 18305  	header_      http.Header
 18306  }
 18307  
 18308  // List: Retrieves a list of campaigns, possibly filtered. This method supports
 18309  // paging.
 18310  //
 18311  // - profileId: User profile ID associated with this request.
 18312  func (r *CampaignsService) List(profileId int64) *CampaignsListCall {
 18313  	c := &CampaignsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18314  	c.profileId = profileId
 18315  	return c
 18316  }
 18317  
 18318  // AdvertiserGroupIds sets the optional parameter "advertiserGroupIds": Select
 18319  // only campaigns whose advertisers belong to these advertiser groups.
 18320  func (c *CampaignsListCall) AdvertiserGroupIds(advertiserGroupIds ...int64) *CampaignsListCall {
 18321  	var advertiserGroupIds_ []string
 18322  	for _, v := range advertiserGroupIds {
 18323  		advertiserGroupIds_ = append(advertiserGroupIds_, fmt.Sprint(v))
 18324  	}
 18325  	c.urlParams_.SetMulti("advertiserGroupIds", advertiserGroupIds_)
 18326  	return c
 18327  }
 18328  
 18329  // AdvertiserIds sets the optional parameter "advertiserIds": Select only
 18330  // campaigns that belong to these advertisers.
 18331  func (c *CampaignsListCall) AdvertiserIds(advertiserIds ...int64) *CampaignsListCall {
 18332  	var advertiserIds_ []string
 18333  	for _, v := range advertiserIds {
 18334  		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
 18335  	}
 18336  	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
 18337  	return c
 18338  }
 18339  
 18340  // Archived sets the optional parameter "archived": Select only archived
 18341  // campaigns. Don't set this field to select both archived and non-archived
 18342  // campaigns.
 18343  func (c *CampaignsListCall) Archived(archived bool) *CampaignsListCall {
 18344  	c.urlParams_.Set("archived", fmt.Sprint(archived))
 18345  	return c
 18346  }
 18347  
 18348  // AtLeastOneOptimizationActivity sets the optional parameter
 18349  // "atLeastOneOptimizationActivity": Select only campaigns that have at least
 18350  // one optimization activity.
 18351  func (c *CampaignsListCall) AtLeastOneOptimizationActivity(atLeastOneOptimizationActivity bool) *CampaignsListCall {
 18352  	c.urlParams_.Set("atLeastOneOptimizationActivity", fmt.Sprint(atLeastOneOptimizationActivity))
 18353  	return c
 18354  }
 18355  
 18356  // ExcludedIds sets the optional parameter "excludedIds": Exclude campaigns
 18357  // with these IDs.
 18358  func (c *CampaignsListCall) ExcludedIds(excludedIds ...int64) *CampaignsListCall {
 18359  	var excludedIds_ []string
 18360  	for _, v := range excludedIds {
 18361  		excludedIds_ = append(excludedIds_, fmt.Sprint(v))
 18362  	}
 18363  	c.urlParams_.SetMulti("excludedIds", excludedIds_)
 18364  	return c
 18365  }
 18366  
 18367  // Ids sets the optional parameter "ids": Select only campaigns with these IDs.
 18368  func (c *CampaignsListCall) Ids(ids ...int64) *CampaignsListCall {
 18369  	var ids_ []string
 18370  	for _, v := range ids {
 18371  		ids_ = append(ids_, fmt.Sprint(v))
 18372  	}
 18373  	c.urlParams_.SetMulti("ids", ids_)
 18374  	return c
 18375  }
 18376  
 18377  // MaxResults sets the optional parameter "maxResults": Maximum number of
 18378  // results to return.
 18379  func (c *CampaignsListCall) MaxResults(maxResults int64) *CampaignsListCall {
 18380  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 18381  	return c
 18382  }
 18383  
 18384  // OverriddenEventTagId sets the optional parameter "overriddenEventTagId":
 18385  // Select only campaigns that have overridden this event tag ID.
 18386  func (c *CampaignsListCall) OverriddenEventTagId(overriddenEventTagId int64) *CampaignsListCall {
 18387  	c.urlParams_.Set("overriddenEventTagId", fmt.Sprint(overriddenEventTagId))
 18388  	return c
 18389  }
 18390  
 18391  // PageToken sets the optional parameter "pageToken": Value of the
 18392  // nextPageToken from the previous result page.
 18393  func (c *CampaignsListCall) PageToken(pageToken string) *CampaignsListCall {
 18394  	c.urlParams_.Set("pageToken", pageToken)
 18395  	return c
 18396  }
 18397  
 18398  // SearchString sets the optional parameter "searchString": Allows searching
 18399  // for campaigns by name or ID. Wildcards (*) are allowed. For example,
 18400  // "campaign*2015" will return campaigns with names like "campaign June 2015",
 18401  // "campaign April 2015", or simply "campaign 2015". Most of the searches also
 18402  // add wildcards implicitly at the start and the end of the search string. For
 18403  // example, a search string of "campaign" will match campaigns with name "my
 18404  // campaign", "campaign 2015", or simply "campaign".
 18405  func (c *CampaignsListCall) SearchString(searchString string) *CampaignsListCall {
 18406  	c.urlParams_.Set("searchString", searchString)
 18407  	return c
 18408  }
 18409  
 18410  // SortField sets the optional parameter "sortField": Field by which to sort
 18411  // the list.
 18412  //
 18413  // Possible values:
 18414  //
 18415  //	"ID" (default)
 18416  //	"NAME"
 18417  func (c *CampaignsListCall) SortField(sortField string) *CampaignsListCall {
 18418  	c.urlParams_.Set("sortField", sortField)
 18419  	return c
 18420  }
 18421  
 18422  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 18423  //
 18424  // Possible values:
 18425  //
 18426  //	"ASCENDING" (default) - Ascending order.
 18427  //	"DESCENDING" - Descending order.
 18428  func (c *CampaignsListCall) SortOrder(sortOrder string) *CampaignsListCall {
 18429  	c.urlParams_.Set("sortOrder", sortOrder)
 18430  	return c
 18431  }
 18432  
 18433  // SubaccountId sets the optional parameter "subaccountId": Select only
 18434  // campaigns that belong to this subaccount.
 18435  func (c *CampaignsListCall) SubaccountId(subaccountId int64) *CampaignsListCall {
 18436  	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
 18437  	return c
 18438  }
 18439  
 18440  // Fields allows partial responses to be retrieved. See
 18441  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18442  // details.
 18443  func (c *CampaignsListCall) Fields(s ...googleapi.Field) *CampaignsListCall {
 18444  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18445  	return c
 18446  }
 18447  
 18448  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18449  // object's ETag matches the given value. This is useful for getting updates
 18450  // only after the object has changed since the last request.
 18451  func (c *CampaignsListCall) IfNoneMatch(entityTag string) *CampaignsListCall {
 18452  	c.ifNoneMatch_ = entityTag
 18453  	return c
 18454  }
 18455  
 18456  // Context sets the context to be used in this call's Do method.
 18457  func (c *CampaignsListCall) Context(ctx context.Context) *CampaignsListCall {
 18458  	c.ctx_ = ctx
 18459  	return c
 18460  }
 18461  
 18462  // Header returns a http.Header that can be modified by the caller to add
 18463  // headers to the request.
 18464  func (c *CampaignsListCall) Header() http.Header {
 18465  	if c.header_ == nil {
 18466  		c.header_ = make(http.Header)
 18467  	}
 18468  	return c.header_
 18469  }
 18470  
 18471  func (c *CampaignsListCall) doRequest(alt string) (*http.Response, error) {
 18472  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18473  	if c.ifNoneMatch_ != "" {
 18474  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18475  	}
 18476  	var body io.Reader = nil
 18477  	c.urlParams_.Set("alt", alt)
 18478  	c.urlParams_.Set("prettyPrint", "false")
 18479  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/campaigns")
 18480  	urls += "?" + c.urlParams_.Encode()
 18481  	req, err := http.NewRequest("GET", urls, body)
 18482  	if err != nil {
 18483  		return nil, err
 18484  	}
 18485  	req.Header = reqHeaders
 18486  	googleapi.Expand(req.URL, map[string]string{
 18487  		"profileId": strconv.FormatInt(c.profileId, 10),
 18488  	})
 18489  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18490  }
 18491  
 18492  // Do executes the "dfareporting.campaigns.list" call.
 18493  // Any non-2xx status code is an error. Response headers are in either
 18494  // *CampaignsListResponse.ServerResponse.Header or (if a response was returned
 18495  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 18496  // check whether the returned error was because http.StatusNotModified was
 18497  // returned.
 18498  func (c *CampaignsListCall) Do(opts ...googleapi.CallOption) (*CampaignsListResponse, error) {
 18499  	gensupport.SetOptions(c.urlParams_, opts...)
 18500  	res, err := c.doRequest("json")
 18501  	if res != nil && res.StatusCode == http.StatusNotModified {
 18502  		if res.Body != nil {
 18503  			res.Body.Close()
 18504  		}
 18505  		return nil, gensupport.WrapError(&googleapi.Error{
 18506  			Code:   res.StatusCode,
 18507  			Header: res.Header,
 18508  		})
 18509  	}
 18510  	if err != nil {
 18511  		return nil, err
 18512  	}
 18513  	defer googleapi.CloseBody(res)
 18514  	if err := googleapi.CheckResponse(res); err != nil {
 18515  		return nil, gensupport.WrapError(err)
 18516  	}
 18517  	ret := &CampaignsListResponse{
 18518  		ServerResponse: googleapi.ServerResponse{
 18519  			Header:         res.Header,
 18520  			HTTPStatusCode: res.StatusCode,
 18521  		},
 18522  	}
 18523  	target := &ret
 18524  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18525  		return nil, err
 18526  	}
 18527  	return ret, nil
 18528  }
 18529  
 18530  // Pages invokes f for each page of results.
 18531  // A non-nil error returned from f will halt the iteration.
 18532  // The provided context supersedes any context provided to the Context method.
 18533  func (c *CampaignsListCall) Pages(ctx context.Context, f func(*CampaignsListResponse) error) error {
 18534  	c.ctx_ = ctx
 18535  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 18536  	for {
 18537  		x, err := c.Do()
 18538  		if err != nil {
 18539  			return err
 18540  		}
 18541  		if err := f(x); err != nil {
 18542  			return err
 18543  		}
 18544  		if x.NextPageToken == "" {
 18545  			return nil
 18546  		}
 18547  		c.PageToken(x.NextPageToken)
 18548  	}
 18549  }
 18550  
 18551  type CampaignsPatchCall struct {
 18552  	s          *Service
 18553  	profileId  int64
 18554  	campaign   *Campaign
 18555  	urlParams_ gensupport.URLParams
 18556  	ctx_       context.Context
 18557  	header_    http.Header
 18558  }
 18559  
 18560  // Patch: Updates an existing creative. This method supports patch semantics.
 18561  //
 18562  // - id: Campaign ID.
 18563  // - profileId: User profile ID associated with this request.
 18564  func (r *CampaignsService) Patch(profileId int64, id int64, campaign *Campaign) *CampaignsPatchCall {
 18565  	c := &CampaignsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18566  	c.profileId = profileId
 18567  	c.urlParams_.Set("id", fmt.Sprint(id))
 18568  	c.campaign = campaign
 18569  	return c
 18570  }
 18571  
 18572  // Fields allows partial responses to be retrieved. See
 18573  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18574  // details.
 18575  func (c *CampaignsPatchCall) Fields(s ...googleapi.Field) *CampaignsPatchCall {
 18576  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18577  	return c
 18578  }
 18579  
 18580  // Context sets the context to be used in this call's Do method.
 18581  func (c *CampaignsPatchCall) Context(ctx context.Context) *CampaignsPatchCall {
 18582  	c.ctx_ = ctx
 18583  	return c
 18584  }
 18585  
 18586  // Header returns a http.Header that can be modified by the caller to add
 18587  // headers to the request.
 18588  func (c *CampaignsPatchCall) Header() http.Header {
 18589  	if c.header_ == nil {
 18590  		c.header_ = make(http.Header)
 18591  	}
 18592  	return c.header_
 18593  }
 18594  
 18595  func (c *CampaignsPatchCall) doRequest(alt string) (*http.Response, error) {
 18596  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 18597  	var body io.Reader = nil
 18598  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.campaign)
 18599  	if err != nil {
 18600  		return nil, err
 18601  	}
 18602  	c.urlParams_.Set("alt", alt)
 18603  	c.urlParams_.Set("prettyPrint", "false")
 18604  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/campaigns")
 18605  	urls += "?" + c.urlParams_.Encode()
 18606  	req, err := http.NewRequest("PATCH", urls, body)
 18607  	if err != nil {
 18608  		return nil, err
 18609  	}
 18610  	req.Header = reqHeaders
 18611  	googleapi.Expand(req.URL, map[string]string{
 18612  		"profileId": strconv.FormatInt(c.profileId, 10),
 18613  	})
 18614  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18615  }
 18616  
 18617  // Do executes the "dfareporting.campaigns.patch" call.
 18618  // Any non-2xx status code is an error. Response headers are in either
 18619  // *Campaign.ServerResponse.Header or (if a response was returned at all) in
 18620  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18621  // whether the returned error was because http.StatusNotModified was returned.
 18622  func (c *CampaignsPatchCall) Do(opts ...googleapi.CallOption) (*Campaign, error) {
 18623  	gensupport.SetOptions(c.urlParams_, opts...)
 18624  	res, err := c.doRequest("json")
 18625  	if res != nil && res.StatusCode == http.StatusNotModified {
 18626  		if res.Body != nil {
 18627  			res.Body.Close()
 18628  		}
 18629  		return nil, gensupport.WrapError(&googleapi.Error{
 18630  			Code:   res.StatusCode,
 18631  			Header: res.Header,
 18632  		})
 18633  	}
 18634  	if err != nil {
 18635  		return nil, err
 18636  	}
 18637  	defer googleapi.CloseBody(res)
 18638  	if err := googleapi.CheckResponse(res); err != nil {
 18639  		return nil, gensupport.WrapError(err)
 18640  	}
 18641  	ret := &Campaign{
 18642  		ServerResponse: googleapi.ServerResponse{
 18643  			Header:         res.Header,
 18644  			HTTPStatusCode: res.StatusCode,
 18645  		},
 18646  	}
 18647  	target := &ret
 18648  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18649  		return nil, err
 18650  	}
 18651  	return ret, nil
 18652  }
 18653  
 18654  type CampaignsUpdateCall struct {
 18655  	s          *Service
 18656  	profileId  int64
 18657  	campaign   *Campaign
 18658  	urlParams_ gensupport.URLParams
 18659  	ctx_       context.Context
 18660  	header_    http.Header
 18661  }
 18662  
 18663  // Update: Updates an existing campaign.
 18664  //
 18665  // - profileId: User profile ID associated with this request.
 18666  func (r *CampaignsService) Update(profileId int64, campaign *Campaign) *CampaignsUpdateCall {
 18667  	c := &CampaignsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18668  	c.profileId = profileId
 18669  	c.campaign = campaign
 18670  	return c
 18671  }
 18672  
 18673  // Fields allows partial responses to be retrieved. See
 18674  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18675  // details.
 18676  func (c *CampaignsUpdateCall) Fields(s ...googleapi.Field) *CampaignsUpdateCall {
 18677  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18678  	return c
 18679  }
 18680  
 18681  // Context sets the context to be used in this call's Do method.
 18682  func (c *CampaignsUpdateCall) Context(ctx context.Context) *CampaignsUpdateCall {
 18683  	c.ctx_ = ctx
 18684  	return c
 18685  }
 18686  
 18687  // Header returns a http.Header that can be modified by the caller to add
 18688  // headers to the request.
 18689  func (c *CampaignsUpdateCall) Header() http.Header {
 18690  	if c.header_ == nil {
 18691  		c.header_ = make(http.Header)
 18692  	}
 18693  	return c.header_
 18694  }
 18695  
 18696  func (c *CampaignsUpdateCall) doRequest(alt string) (*http.Response, error) {
 18697  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 18698  	var body io.Reader = nil
 18699  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.campaign)
 18700  	if err != nil {
 18701  		return nil, err
 18702  	}
 18703  	c.urlParams_.Set("alt", alt)
 18704  	c.urlParams_.Set("prettyPrint", "false")
 18705  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/campaigns")
 18706  	urls += "?" + c.urlParams_.Encode()
 18707  	req, err := http.NewRequest("PUT", urls, body)
 18708  	if err != nil {
 18709  		return nil, err
 18710  	}
 18711  	req.Header = reqHeaders
 18712  	googleapi.Expand(req.URL, map[string]string{
 18713  		"profileId": strconv.FormatInt(c.profileId, 10),
 18714  	})
 18715  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18716  }
 18717  
 18718  // Do executes the "dfareporting.campaigns.update" call.
 18719  // Any non-2xx status code is an error. Response headers are in either
 18720  // *Campaign.ServerResponse.Header or (if a response was returned at all) in
 18721  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18722  // whether the returned error was because http.StatusNotModified was returned.
 18723  func (c *CampaignsUpdateCall) Do(opts ...googleapi.CallOption) (*Campaign, error) {
 18724  	gensupport.SetOptions(c.urlParams_, opts...)
 18725  	res, err := c.doRequest("json")
 18726  	if res != nil && res.StatusCode == http.StatusNotModified {
 18727  		if res.Body != nil {
 18728  			res.Body.Close()
 18729  		}
 18730  		return nil, gensupport.WrapError(&googleapi.Error{
 18731  			Code:   res.StatusCode,
 18732  			Header: res.Header,
 18733  		})
 18734  	}
 18735  	if err != nil {
 18736  		return nil, err
 18737  	}
 18738  	defer googleapi.CloseBody(res)
 18739  	if err := googleapi.CheckResponse(res); err != nil {
 18740  		return nil, gensupport.WrapError(err)
 18741  	}
 18742  	ret := &Campaign{
 18743  		ServerResponse: googleapi.ServerResponse{
 18744  			Header:         res.Header,
 18745  			HTTPStatusCode: res.StatusCode,
 18746  		},
 18747  	}
 18748  	target := &ret
 18749  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18750  		return nil, err
 18751  	}
 18752  	return ret, nil
 18753  }
 18754  
 18755  type ChangeLogsGetCall struct {
 18756  	s            *Service
 18757  	profileId    int64
 18758  	id           int64
 18759  	urlParams_   gensupport.URLParams
 18760  	ifNoneMatch_ string
 18761  	ctx_         context.Context
 18762  	header_      http.Header
 18763  }
 18764  
 18765  // Get: Gets one change log by ID.
 18766  //
 18767  // - id: Change log ID.
 18768  // - profileId: User profile ID associated with this request.
 18769  func (r *ChangeLogsService) Get(profileId int64, id int64) *ChangeLogsGetCall {
 18770  	c := &ChangeLogsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18771  	c.profileId = profileId
 18772  	c.id = id
 18773  	return c
 18774  }
 18775  
 18776  // Fields allows partial responses to be retrieved. See
 18777  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 18778  // details.
 18779  func (c *ChangeLogsGetCall) Fields(s ...googleapi.Field) *ChangeLogsGetCall {
 18780  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 18781  	return c
 18782  }
 18783  
 18784  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 18785  // object's ETag matches the given value. This is useful for getting updates
 18786  // only after the object has changed since the last request.
 18787  func (c *ChangeLogsGetCall) IfNoneMatch(entityTag string) *ChangeLogsGetCall {
 18788  	c.ifNoneMatch_ = entityTag
 18789  	return c
 18790  }
 18791  
 18792  // Context sets the context to be used in this call's Do method.
 18793  func (c *ChangeLogsGetCall) Context(ctx context.Context) *ChangeLogsGetCall {
 18794  	c.ctx_ = ctx
 18795  	return c
 18796  }
 18797  
 18798  // Header returns a http.Header that can be modified by the caller to add
 18799  // headers to the request.
 18800  func (c *ChangeLogsGetCall) Header() http.Header {
 18801  	if c.header_ == nil {
 18802  		c.header_ = make(http.Header)
 18803  	}
 18804  	return c.header_
 18805  }
 18806  
 18807  func (c *ChangeLogsGetCall) doRequest(alt string) (*http.Response, error) {
 18808  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 18809  	if c.ifNoneMatch_ != "" {
 18810  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 18811  	}
 18812  	var body io.Reader = nil
 18813  	c.urlParams_.Set("alt", alt)
 18814  	c.urlParams_.Set("prettyPrint", "false")
 18815  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/changeLogs/{+id}")
 18816  	urls += "?" + c.urlParams_.Encode()
 18817  	req, err := http.NewRequest("GET", urls, body)
 18818  	if err != nil {
 18819  		return nil, err
 18820  	}
 18821  	req.Header = reqHeaders
 18822  	googleapi.Expand(req.URL, map[string]string{
 18823  		"profileId": strconv.FormatInt(c.profileId, 10),
 18824  		"id":        strconv.FormatInt(c.id, 10),
 18825  	})
 18826  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 18827  }
 18828  
 18829  // Do executes the "dfareporting.changeLogs.get" call.
 18830  // Any non-2xx status code is an error. Response headers are in either
 18831  // *ChangeLog.ServerResponse.Header or (if a response was returned at all) in
 18832  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 18833  // whether the returned error was because http.StatusNotModified was returned.
 18834  func (c *ChangeLogsGetCall) Do(opts ...googleapi.CallOption) (*ChangeLog, error) {
 18835  	gensupport.SetOptions(c.urlParams_, opts...)
 18836  	res, err := c.doRequest("json")
 18837  	if res != nil && res.StatusCode == http.StatusNotModified {
 18838  		if res.Body != nil {
 18839  			res.Body.Close()
 18840  		}
 18841  		return nil, gensupport.WrapError(&googleapi.Error{
 18842  			Code:   res.StatusCode,
 18843  			Header: res.Header,
 18844  		})
 18845  	}
 18846  	if err != nil {
 18847  		return nil, err
 18848  	}
 18849  	defer googleapi.CloseBody(res)
 18850  	if err := googleapi.CheckResponse(res); err != nil {
 18851  		return nil, gensupport.WrapError(err)
 18852  	}
 18853  	ret := &ChangeLog{
 18854  		ServerResponse: googleapi.ServerResponse{
 18855  			Header:         res.Header,
 18856  			HTTPStatusCode: res.StatusCode,
 18857  		},
 18858  	}
 18859  	target := &ret
 18860  	if err := gensupport.DecodeResponse(target, res); err != nil {
 18861  		return nil, err
 18862  	}
 18863  	return ret, nil
 18864  }
 18865  
 18866  type ChangeLogsListCall struct {
 18867  	s            *Service
 18868  	profileId    int64
 18869  	urlParams_   gensupport.URLParams
 18870  	ifNoneMatch_ string
 18871  	ctx_         context.Context
 18872  	header_      http.Header
 18873  }
 18874  
 18875  // List: Retrieves a list of change logs. This method supports paging.
 18876  //
 18877  // - profileId: User profile ID associated with this request.
 18878  func (r *ChangeLogsService) List(profileId int64) *ChangeLogsListCall {
 18879  	c := &ChangeLogsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 18880  	c.profileId = profileId
 18881  	return c
 18882  }
 18883  
 18884  // Action sets the optional parameter "action": Select only change logs with
 18885  // the specified action.
 18886  //
 18887  // Possible values:
 18888  //
 18889  //	"ACTION_CREATE"
 18890  //	"ACTION_UPDATE"
 18891  //	"ACTION_DELETE"
 18892  //	"ACTION_ENABLE"
 18893  //	"ACTION_DISABLE"
 18894  //	"ACTION_ADD"
 18895  //	"ACTION_REMOVE"
 18896  //	"ACTION_MARK_AS_DEFAULT"
 18897  //	"ACTION_ASSOCIATE"
 18898  //	"ACTION_ASSIGN"
 18899  //	"ACTION_UNASSIGN"
 18900  //	"ACTION_SEND"
 18901  //	"ACTION_LINK"
 18902  //	"ACTION_UNLINK"
 18903  //	"ACTION_PUSH"
 18904  //	"ACTION_EMAIL_TAGS"
 18905  //	"ACTION_SHARE"
 18906  func (c *ChangeLogsListCall) Action(action string) *ChangeLogsListCall {
 18907  	c.urlParams_.Set("action", action)
 18908  	return c
 18909  }
 18910  
 18911  // Ids sets the optional parameter "ids": Select only change logs with these
 18912  // IDs.
 18913  func (c *ChangeLogsListCall) Ids(ids ...int64) *ChangeLogsListCall {
 18914  	var ids_ []string
 18915  	for _, v := range ids {
 18916  		ids_ = append(ids_, fmt.Sprint(v))
 18917  	}
 18918  	c.urlParams_.SetMulti("ids", ids_)
 18919  	return c
 18920  }
 18921  
 18922  // MaxChangeTime sets the optional parameter "maxChangeTime": Select only
 18923  // change logs whose change time is before the specified maxChangeTime.The time
 18924  // should be formatted as an RFC3339 date/time string. For example, for 10:54
 18925  // PM on July 18th, 2015, in the America/New York time zone, the format is
 18926  // "2015-07-18T22:54:00-04:00". In other words, the year, month, day, the
 18927  // letter T, the hour (24-hour clock system), minute, second, and then the time
 18928  // zone offset.
 18929  func (c *ChangeLogsListCall) MaxChangeTime(maxChangeTime string) *ChangeLogsListCall {
 18930  	c.urlParams_.Set("maxChangeTime", maxChangeTime)
 18931  	return c
 18932  }
 18933  
 18934  // MaxResults sets the optional parameter "maxResults": Maximum number of
 18935  // results to return.
 18936  func (c *ChangeLogsListCall) MaxResults(maxResults int64) *ChangeLogsListCall {
 18937  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 18938  	return c
 18939  }
 18940  
 18941  // MinChangeTime sets the optional parameter "minChangeTime": Select only
 18942  // change logs whose change time is after the specified minChangeTime.The time
 18943  // should be formatted as an RFC3339 date/time string. For example, for 10:54
 18944  // PM on July 18th, 2015, in the America/New York time zone, the format is
 18945  // "2015-07-18T22:54:00-04:00". In other words, the year, month, day, the
 18946  // letter T, the hour (24-hour clock system), minute, second, and then the time
 18947  // zone offset.
 18948  func (c *ChangeLogsListCall) MinChangeTime(minChangeTime string) *ChangeLogsListCall {
 18949  	c.urlParams_.Set("minChangeTime", minChangeTime)
 18950  	return c
 18951  }
 18952  
 18953  // ObjectIds sets the optional parameter "objectIds": Select only change logs
 18954  // with these object IDs.
 18955  func (c *ChangeLogsListCall) ObjectIds(objectIds ...int64) *ChangeLogsListCall {
 18956  	var objectIds_ []string
 18957  	for _, v := range objectIds {
 18958  		objectIds_ = append(objectIds_, fmt.Sprint(v))
 18959  	}
 18960  	c.urlParams_.SetMulti("objectIds", objectIds_)
 18961  	return c
 18962  }
 18963  
 18964  // ObjectType sets the optional parameter "objectType": Select only change logs
 18965  // with the specified object type.
 18966  //
 18967  // Possible values:
 18968  //
 18969  //	"OBJECT_ADVERTISER"
 18970  //	"OBJECT_FLOODLIGHT_CONFIGURATION"
 18971  //	"OBJECT_AD"
 18972  //	"OBJECT_FLOODLIGHT_ACTVITY"
 18973  //	"OBJECT_CAMPAIGN"
 18974  //	"OBJECT_FLOODLIGHT_ACTIVITY_GROUP"
 18975  //	"OBJECT_CREATIVE"
 18976  //	"OBJECT_PLACEMENT"
 18977  //	"OBJECT_DFA_SITE"
 18978  //	"OBJECT_USER_ROLE"
 18979  //	"OBJECT_USER_PROFILE"
 18980  //	"OBJECT_ADVERTISER_GROUP"
 18981  //	"OBJECT_ACCOUNT"
 18982  //	"OBJECT_SUBACCOUNT"
 18983  //	"OBJECT_RICHMEDIA_CREATIVE"
 18984  //	"OBJECT_INSTREAM_CREATIVE"
 18985  //	"OBJECT_MEDIA_ORDER"
 18986  //	"OBJECT_CONTENT_CATEGORY"
 18987  //	"OBJECT_PLACEMENT_STRATEGY"
 18988  //	"OBJECT_SD_SITE"
 18989  //	"OBJECT_SIZE"
 18990  //	"OBJECT_CREATIVE_GROUP"
 18991  //	"OBJECT_CREATIVE_ASSET"
 18992  //	"OBJECT_USER_PROFILE_FILTER"
 18993  //	"OBJECT_LANDING_PAGE"
 18994  //	"OBJECT_CREATIVE_FIELD"
 18995  //	"OBJECT_REMARKETING_LIST"
 18996  //	"OBJECT_PROVIDED_LIST_CLIENT"
 18997  //	"OBJECT_EVENT_TAG"
 18998  //	"OBJECT_CREATIVE_BUNDLE"
 18999  //	"OBJECT_BILLING_ACCOUNT_GROUP"
 19000  //	"OBJECT_BILLING_FEATURE"
 19001  //	"OBJECT_RATE_CARD"
 19002  //	"OBJECT_ACCOUNT_BILLING_FEATURE"
 19003  //	"OBJECT_BILLING_MINIMUM_FEE"
 19004  //	"OBJECT_BILLING_PROFILE"
 19005  //	"OBJECT_PLAYSTORE_LINK"
 19006  //	"OBJECT_TARGETING_TEMPLATE"
 19007  //	"OBJECT_SEARCH_LIFT_STUDY"
 19008  //	"OBJECT_FLOODLIGHT_DV360_LINK"
 19009  //	"OBJECT_ADVERTISER_CUSTOMER_LINK"
 19010  //	"OBJECT_CONVERSION_DOMAIN"
 19011  //	"OBJECT_ACCOUNT_CONVERSION_DOMAIN"
 19012  func (c *ChangeLogsListCall) ObjectType(objectType string) *ChangeLogsListCall {
 19013  	c.urlParams_.Set("objectType", objectType)
 19014  	return c
 19015  }
 19016  
 19017  // PageToken sets the optional parameter "pageToken": Value of the
 19018  // nextPageToken from the previous result page.
 19019  func (c *ChangeLogsListCall) PageToken(pageToken string) *ChangeLogsListCall {
 19020  	c.urlParams_.Set("pageToken", pageToken)
 19021  	return c
 19022  }
 19023  
 19024  // SearchString sets the optional parameter "searchString": Select only change
 19025  // logs whose object ID, user name, old or new values match the search string.
 19026  func (c *ChangeLogsListCall) SearchString(searchString string) *ChangeLogsListCall {
 19027  	c.urlParams_.Set("searchString", searchString)
 19028  	return c
 19029  }
 19030  
 19031  // UserProfileIds sets the optional parameter "userProfileIds": Select only
 19032  // change logs with these user profile IDs.
 19033  func (c *ChangeLogsListCall) UserProfileIds(userProfileIds ...int64) *ChangeLogsListCall {
 19034  	var userProfileIds_ []string
 19035  	for _, v := range userProfileIds {
 19036  		userProfileIds_ = append(userProfileIds_, fmt.Sprint(v))
 19037  	}
 19038  	c.urlParams_.SetMulti("userProfileIds", userProfileIds_)
 19039  	return c
 19040  }
 19041  
 19042  // Fields allows partial responses to be retrieved. See
 19043  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19044  // details.
 19045  func (c *ChangeLogsListCall) Fields(s ...googleapi.Field) *ChangeLogsListCall {
 19046  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19047  	return c
 19048  }
 19049  
 19050  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19051  // object's ETag matches the given value. This is useful for getting updates
 19052  // only after the object has changed since the last request.
 19053  func (c *ChangeLogsListCall) IfNoneMatch(entityTag string) *ChangeLogsListCall {
 19054  	c.ifNoneMatch_ = entityTag
 19055  	return c
 19056  }
 19057  
 19058  // Context sets the context to be used in this call's Do method.
 19059  func (c *ChangeLogsListCall) Context(ctx context.Context) *ChangeLogsListCall {
 19060  	c.ctx_ = ctx
 19061  	return c
 19062  }
 19063  
 19064  // Header returns a http.Header that can be modified by the caller to add
 19065  // headers to the request.
 19066  func (c *ChangeLogsListCall) Header() http.Header {
 19067  	if c.header_ == nil {
 19068  		c.header_ = make(http.Header)
 19069  	}
 19070  	return c.header_
 19071  }
 19072  
 19073  func (c *ChangeLogsListCall) doRequest(alt string) (*http.Response, error) {
 19074  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19075  	if c.ifNoneMatch_ != "" {
 19076  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19077  	}
 19078  	var body io.Reader = nil
 19079  	c.urlParams_.Set("alt", alt)
 19080  	c.urlParams_.Set("prettyPrint", "false")
 19081  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/changeLogs")
 19082  	urls += "?" + c.urlParams_.Encode()
 19083  	req, err := http.NewRequest("GET", urls, body)
 19084  	if err != nil {
 19085  		return nil, err
 19086  	}
 19087  	req.Header = reqHeaders
 19088  	googleapi.Expand(req.URL, map[string]string{
 19089  		"profileId": strconv.FormatInt(c.profileId, 10),
 19090  	})
 19091  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19092  }
 19093  
 19094  // Do executes the "dfareporting.changeLogs.list" call.
 19095  // Any non-2xx status code is an error. Response headers are in either
 19096  // *ChangeLogsListResponse.ServerResponse.Header or (if a response was returned
 19097  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 19098  // check whether the returned error was because http.StatusNotModified was
 19099  // returned.
 19100  func (c *ChangeLogsListCall) Do(opts ...googleapi.CallOption) (*ChangeLogsListResponse, error) {
 19101  	gensupport.SetOptions(c.urlParams_, opts...)
 19102  	res, err := c.doRequest("json")
 19103  	if res != nil && res.StatusCode == http.StatusNotModified {
 19104  		if res.Body != nil {
 19105  			res.Body.Close()
 19106  		}
 19107  		return nil, gensupport.WrapError(&googleapi.Error{
 19108  			Code:   res.StatusCode,
 19109  			Header: res.Header,
 19110  		})
 19111  	}
 19112  	if err != nil {
 19113  		return nil, err
 19114  	}
 19115  	defer googleapi.CloseBody(res)
 19116  	if err := googleapi.CheckResponse(res); err != nil {
 19117  		return nil, gensupport.WrapError(err)
 19118  	}
 19119  	ret := &ChangeLogsListResponse{
 19120  		ServerResponse: googleapi.ServerResponse{
 19121  			Header:         res.Header,
 19122  			HTTPStatusCode: res.StatusCode,
 19123  		},
 19124  	}
 19125  	target := &ret
 19126  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19127  		return nil, err
 19128  	}
 19129  	return ret, nil
 19130  }
 19131  
 19132  // Pages invokes f for each page of results.
 19133  // A non-nil error returned from f will halt the iteration.
 19134  // The provided context supersedes any context provided to the Context method.
 19135  func (c *ChangeLogsListCall) Pages(ctx context.Context, f func(*ChangeLogsListResponse) error) error {
 19136  	c.ctx_ = ctx
 19137  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 19138  	for {
 19139  		x, err := c.Do()
 19140  		if err != nil {
 19141  			return err
 19142  		}
 19143  		if err := f(x); err != nil {
 19144  			return err
 19145  		}
 19146  		if x.NextPageToken == "" {
 19147  			return nil
 19148  		}
 19149  		c.PageToken(x.NextPageToken)
 19150  	}
 19151  }
 19152  
 19153  type CitiesListCall struct {
 19154  	s            *Service
 19155  	profileId    int64
 19156  	urlParams_   gensupport.URLParams
 19157  	ifNoneMatch_ string
 19158  	ctx_         context.Context
 19159  	header_      http.Header
 19160  }
 19161  
 19162  // List: Retrieves a list of cities, possibly filtered.
 19163  //
 19164  // - profileId: User profile ID associated with this request.
 19165  func (r *CitiesService) List(profileId int64) *CitiesListCall {
 19166  	c := &CitiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19167  	c.profileId = profileId
 19168  	return c
 19169  }
 19170  
 19171  // CountryDartIds sets the optional parameter "countryDartIds": Select only
 19172  // cities from these countries.
 19173  func (c *CitiesListCall) CountryDartIds(countryDartIds ...int64) *CitiesListCall {
 19174  	var countryDartIds_ []string
 19175  	for _, v := range countryDartIds {
 19176  		countryDartIds_ = append(countryDartIds_, fmt.Sprint(v))
 19177  	}
 19178  	c.urlParams_.SetMulti("countryDartIds", countryDartIds_)
 19179  	return c
 19180  }
 19181  
 19182  // DartIds sets the optional parameter "dartIds": Select only cities with these
 19183  // DART IDs.
 19184  func (c *CitiesListCall) DartIds(dartIds ...int64) *CitiesListCall {
 19185  	var dartIds_ []string
 19186  	for _, v := range dartIds {
 19187  		dartIds_ = append(dartIds_, fmt.Sprint(v))
 19188  	}
 19189  	c.urlParams_.SetMulti("dartIds", dartIds_)
 19190  	return c
 19191  }
 19192  
 19193  // NamePrefix sets the optional parameter "namePrefix": Select only cities with
 19194  // names starting with this prefix.
 19195  func (c *CitiesListCall) NamePrefix(namePrefix string) *CitiesListCall {
 19196  	c.urlParams_.Set("namePrefix", namePrefix)
 19197  	return c
 19198  }
 19199  
 19200  // RegionDartIds sets the optional parameter "regionDartIds": Select only
 19201  // cities from these regions.
 19202  func (c *CitiesListCall) RegionDartIds(regionDartIds ...int64) *CitiesListCall {
 19203  	var regionDartIds_ []string
 19204  	for _, v := range regionDartIds {
 19205  		regionDartIds_ = append(regionDartIds_, fmt.Sprint(v))
 19206  	}
 19207  	c.urlParams_.SetMulti("regionDartIds", regionDartIds_)
 19208  	return c
 19209  }
 19210  
 19211  // Fields allows partial responses to be retrieved. See
 19212  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19213  // details.
 19214  func (c *CitiesListCall) Fields(s ...googleapi.Field) *CitiesListCall {
 19215  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19216  	return c
 19217  }
 19218  
 19219  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19220  // object's ETag matches the given value. This is useful for getting updates
 19221  // only after the object has changed since the last request.
 19222  func (c *CitiesListCall) IfNoneMatch(entityTag string) *CitiesListCall {
 19223  	c.ifNoneMatch_ = entityTag
 19224  	return c
 19225  }
 19226  
 19227  // Context sets the context to be used in this call's Do method.
 19228  func (c *CitiesListCall) Context(ctx context.Context) *CitiesListCall {
 19229  	c.ctx_ = ctx
 19230  	return c
 19231  }
 19232  
 19233  // Header returns a http.Header that can be modified by the caller to add
 19234  // headers to the request.
 19235  func (c *CitiesListCall) Header() http.Header {
 19236  	if c.header_ == nil {
 19237  		c.header_ = make(http.Header)
 19238  	}
 19239  	return c.header_
 19240  }
 19241  
 19242  func (c *CitiesListCall) doRequest(alt string) (*http.Response, error) {
 19243  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19244  	if c.ifNoneMatch_ != "" {
 19245  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19246  	}
 19247  	var body io.Reader = nil
 19248  	c.urlParams_.Set("alt", alt)
 19249  	c.urlParams_.Set("prettyPrint", "false")
 19250  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/cities")
 19251  	urls += "?" + c.urlParams_.Encode()
 19252  	req, err := http.NewRequest("GET", urls, body)
 19253  	if err != nil {
 19254  		return nil, err
 19255  	}
 19256  	req.Header = reqHeaders
 19257  	googleapi.Expand(req.URL, map[string]string{
 19258  		"profileId": strconv.FormatInt(c.profileId, 10),
 19259  	})
 19260  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19261  }
 19262  
 19263  // Do executes the "dfareporting.cities.list" call.
 19264  // Any non-2xx status code is an error. Response headers are in either
 19265  // *CitiesListResponse.ServerResponse.Header or (if a response was returned at
 19266  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 19267  // check whether the returned error was because http.StatusNotModified was
 19268  // returned.
 19269  func (c *CitiesListCall) Do(opts ...googleapi.CallOption) (*CitiesListResponse, error) {
 19270  	gensupport.SetOptions(c.urlParams_, opts...)
 19271  	res, err := c.doRequest("json")
 19272  	if res != nil && res.StatusCode == http.StatusNotModified {
 19273  		if res.Body != nil {
 19274  			res.Body.Close()
 19275  		}
 19276  		return nil, gensupport.WrapError(&googleapi.Error{
 19277  			Code:   res.StatusCode,
 19278  			Header: res.Header,
 19279  		})
 19280  	}
 19281  	if err != nil {
 19282  		return nil, err
 19283  	}
 19284  	defer googleapi.CloseBody(res)
 19285  	if err := googleapi.CheckResponse(res); err != nil {
 19286  		return nil, gensupport.WrapError(err)
 19287  	}
 19288  	ret := &CitiesListResponse{
 19289  		ServerResponse: googleapi.ServerResponse{
 19290  			Header:         res.Header,
 19291  			HTTPStatusCode: res.StatusCode,
 19292  		},
 19293  	}
 19294  	target := &ret
 19295  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19296  		return nil, err
 19297  	}
 19298  	return ret, nil
 19299  }
 19300  
 19301  type ConnectionTypesGetCall struct {
 19302  	s            *Service
 19303  	profileId    int64
 19304  	id           int64
 19305  	urlParams_   gensupport.URLParams
 19306  	ifNoneMatch_ string
 19307  	ctx_         context.Context
 19308  	header_      http.Header
 19309  }
 19310  
 19311  // Get: Gets one connection type by ID.
 19312  //
 19313  // - id: Connection type ID.
 19314  // - profileId: User profile ID associated with this request.
 19315  func (r *ConnectionTypesService) Get(profileId int64, id int64) *ConnectionTypesGetCall {
 19316  	c := &ConnectionTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19317  	c.profileId = profileId
 19318  	c.id = id
 19319  	return c
 19320  }
 19321  
 19322  // Fields allows partial responses to be retrieved. See
 19323  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19324  // details.
 19325  func (c *ConnectionTypesGetCall) Fields(s ...googleapi.Field) *ConnectionTypesGetCall {
 19326  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19327  	return c
 19328  }
 19329  
 19330  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19331  // object's ETag matches the given value. This is useful for getting updates
 19332  // only after the object has changed since the last request.
 19333  func (c *ConnectionTypesGetCall) IfNoneMatch(entityTag string) *ConnectionTypesGetCall {
 19334  	c.ifNoneMatch_ = entityTag
 19335  	return c
 19336  }
 19337  
 19338  // Context sets the context to be used in this call's Do method.
 19339  func (c *ConnectionTypesGetCall) Context(ctx context.Context) *ConnectionTypesGetCall {
 19340  	c.ctx_ = ctx
 19341  	return c
 19342  }
 19343  
 19344  // Header returns a http.Header that can be modified by the caller to add
 19345  // headers to the request.
 19346  func (c *ConnectionTypesGetCall) Header() http.Header {
 19347  	if c.header_ == nil {
 19348  		c.header_ = make(http.Header)
 19349  	}
 19350  	return c.header_
 19351  }
 19352  
 19353  func (c *ConnectionTypesGetCall) doRequest(alt string) (*http.Response, error) {
 19354  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19355  	if c.ifNoneMatch_ != "" {
 19356  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19357  	}
 19358  	var body io.Reader = nil
 19359  	c.urlParams_.Set("alt", alt)
 19360  	c.urlParams_.Set("prettyPrint", "false")
 19361  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/connectionTypes/{+id}")
 19362  	urls += "?" + c.urlParams_.Encode()
 19363  	req, err := http.NewRequest("GET", urls, body)
 19364  	if err != nil {
 19365  		return nil, err
 19366  	}
 19367  	req.Header = reqHeaders
 19368  	googleapi.Expand(req.URL, map[string]string{
 19369  		"profileId": strconv.FormatInt(c.profileId, 10),
 19370  		"id":        strconv.FormatInt(c.id, 10),
 19371  	})
 19372  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19373  }
 19374  
 19375  // Do executes the "dfareporting.connectionTypes.get" call.
 19376  // Any non-2xx status code is an error. Response headers are in either
 19377  // *ConnectionType.ServerResponse.Header or (if a response was returned at all)
 19378  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 19379  // whether the returned error was because http.StatusNotModified was returned.
 19380  func (c *ConnectionTypesGetCall) Do(opts ...googleapi.CallOption) (*ConnectionType, error) {
 19381  	gensupport.SetOptions(c.urlParams_, opts...)
 19382  	res, err := c.doRequest("json")
 19383  	if res != nil && res.StatusCode == http.StatusNotModified {
 19384  		if res.Body != nil {
 19385  			res.Body.Close()
 19386  		}
 19387  		return nil, gensupport.WrapError(&googleapi.Error{
 19388  			Code:   res.StatusCode,
 19389  			Header: res.Header,
 19390  		})
 19391  	}
 19392  	if err != nil {
 19393  		return nil, err
 19394  	}
 19395  	defer googleapi.CloseBody(res)
 19396  	if err := googleapi.CheckResponse(res); err != nil {
 19397  		return nil, gensupport.WrapError(err)
 19398  	}
 19399  	ret := &ConnectionType{
 19400  		ServerResponse: googleapi.ServerResponse{
 19401  			Header:         res.Header,
 19402  			HTTPStatusCode: res.StatusCode,
 19403  		},
 19404  	}
 19405  	target := &ret
 19406  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19407  		return nil, err
 19408  	}
 19409  	return ret, nil
 19410  }
 19411  
 19412  type ConnectionTypesListCall struct {
 19413  	s            *Service
 19414  	profileId    int64
 19415  	urlParams_   gensupport.URLParams
 19416  	ifNoneMatch_ string
 19417  	ctx_         context.Context
 19418  	header_      http.Header
 19419  }
 19420  
 19421  // List: Retrieves a list of connection types.
 19422  //
 19423  // - profileId: User profile ID associated with this request.
 19424  func (r *ConnectionTypesService) List(profileId int64) *ConnectionTypesListCall {
 19425  	c := &ConnectionTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19426  	c.profileId = profileId
 19427  	return c
 19428  }
 19429  
 19430  // Fields allows partial responses to be retrieved. See
 19431  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19432  // details.
 19433  func (c *ConnectionTypesListCall) Fields(s ...googleapi.Field) *ConnectionTypesListCall {
 19434  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19435  	return c
 19436  }
 19437  
 19438  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19439  // object's ETag matches the given value. This is useful for getting updates
 19440  // only after the object has changed since the last request.
 19441  func (c *ConnectionTypesListCall) IfNoneMatch(entityTag string) *ConnectionTypesListCall {
 19442  	c.ifNoneMatch_ = entityTag
 19443  	return c
 19444  }
 19445  
 19446  // Context sets the context to be used in this call's Do method.
 19447  func (c *ConnectionTypesListCall) Context(ctx context.Context) *ConnectionTypesListCall {
 19448  	c.ctx_ = ctx
 19449  	return c
 19450  }
 19451  
 19452  // Header returns a http.Header that can be modified by the caller to add
 19453  // headers to the request.
 19454  func (c *ConnectionTypesListCall) Header() http.Header {
 19455  	if c.header_ == nil {
 19456  		c.header_ = make(http.Header)
 19457  	}
 19458  	return c.header_
 19459  }
 19460  
 19461  func (c *ConnectionTypesListCall) doRequest(alt string) (*http.Response, error) {
 19462  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19463  	if c.ifNoneMatch_ != "" {
 19464  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19465  	}
 19466  	var body io.Reader = nil
 19467  	c.urlParams_.Set("alt", alt)
 19468  	c.urlParams_.Set("prettyPrint", "false")
 19469  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/connectionTypes")
 19470  	urls += "?" + c.urlParams_.Encode()
 19471  	req, err := http.NewRequest("GET", urls, body)
 19472  	if err != nil {
 19473  		return nil, err
 19474  	}
 19475  	req.Header = reqHeaders
 19476  	googleapi.Expand(req.URL, map[string]string{
 19477  		"profileId": strconv.FormatInt(c.profileId, 10),
 19478  	})
 19479  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19480  }
 19481  
 19482  // Do executes the "dfareporting.connectionTypes.list" call.
 19483  // Any non-2xx status code is an error. Response headers are in either
 19484  // *ConnectionTypesListResponse.ServerResponse.Header or (if a response was
 19485  // returned at all) in error.(*googleapi.Error).Header. Use
 19486  // googleapi.IsNotModified to check whether the returned error was because
 19487  // http.StatusNotModified was returned.
 19488  func (c *ConnectionTypesListCall) Do(opts ...googleapi.CallOption) (*ConnectionTypesListResponse, error) {
 19489  	gensupport.SetOptions(c.urlParams_, opts...)
 19490  	res, err := c.doRequest("json")
 19491  	if res != nil && res.StatusCode == http.StatusNotModified {
 19492  		if res.Body != nil {
 19493  			res.Body.Close()
 19494  		}
 19495  		return nil, gensupport.WrapError(&googleapi.Error{
 19496  			Code:   res.StatusCode,
 19497  			Header: res.Header,
 19498  		})
 19499  	}
 19500  	if err != nil {
 19501  		return nil, err
 19502  	}
 19503  	defer googleapi.CloseBody(res)
 19504  	if err := googleapi.CheckResponse(res); err != nil {
 19505  		return nil, gensupport.WrapError(err)
 19506  	}
 19507  	ret := &ConnectionTypesListResponse{
 19508  		ServerResponse: googleapi.ServerResponse{
 19509  			Header:         res.Header,
 19510  			HTTPStatusCode: res.StatusCode,
 19511  		},
 19512  	}
 19513  	target := &ret
 19514  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19515  		return nil, err
 19516  	}
 19517  	return ret, nil
 19518  }
 19519  
 19520  type ContentCategoriesDeleteCall struct {
 19521  	s          *Service
 19522  	profileId  int64
 19523  	id         int64
 19524  	urlParams_ gensupport.URLParams
 19525  	ctx_       context.Context
 19526  	header_    http.Header
 19527  }
 19528  
 19529  // Delete: Deletes an existing content category.
 19530  //
 19531  // - id: Content category ID.
 19532  // - profileId: User profile ID associated with this request.
 19533  func (r *ContentCategoriesService) Delete(profileId int64, id int64) *ContentCategoriesDeleteCall {
 19534  	c := &ContentCategoriesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19535  	c.profileId = profileId
 19536  	c.id = id
 19537  	return c
 19538  }
 19539  
 19540  // Fields allows partial responses to be retrieved. See
 19541  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19542  // details.
 19543  func (c *ContentCategoriesDeleteCall) Fields(s ...googleapi.Field) *ContentCategoriesDeleteCall {
 19544  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19545  	return c
 19546  }
 19547  
 19548  // Context sets the context to be used in this call's Do method.
 19549  func (c *ContentCategoriesDeleteCall) Context(ctx context.Context) *ContentCategoriesDeleteCall {
 19550  	c.ctx_ = ctx
 19551  	return c
 19552  }
 19553  
 19554  // Header returns a http.Header that can be modified by the caller to add
 19555  // headers to the request.
 19556  func (c *ContentCategoriesDeleteCall) Header() http.Header {
 19557  	if c.header_ == nil {
 19558  		c.header_ = make(http.Header)
 19559  	}
 19560  	return c.header_
 19561  }
 19562  
 19563  func (c *ContentCategoriesDeleteCall) doRequest(alt string) (*http.Response, error) {
 19564  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19565  	var body io.Reader = nil
 19566  	c.urlParams_.Set("alt", alt)
 19567  	c.urlParams_.Set("prettyPrint", "false")
 19568  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/contentCategories/{+id}")
 19569  	urls += "?" + c.urlParams_.Encode()
 19570  	req, err := http.NewRequest("DELETE", urls, body)
 19571  	if err != nil {
 19572  		return nil, err
 19573  	}
 19574  	req.Header = reqHeaders
 19575  	googleapi.Expand(req.URL, map[string]string{
 19576  		"profileId": strconv.FormatInt(c.profileId, 10),
 19577  		"id":        strconv.FormatInt(c.id, 10),
 19578  	})
 19579  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19580  }
 19581  
 19582  // Do executes the "dfareporting.contentCategories.delete" call.
 19583  func (c *ContentCategoriesDeleteCall) Do(opts ...googleapi.CallOption) error {
 19584  	gensupport.SetOptions(c.urlParams_, opts...)
 19585  	res, err := c.doRequest("json")
 19586  	if err != nil {
 19587  		return err
 19588  	}
 19589  	defer googleapi.CloseBody(res)
 19590  	if err := googleapi.CheckResponse(res); err != nil {
 19591  		return gensupport.WrapError(err)
 19592  	}
 19593  	return nil
 19594  }
 19595  
 19596  type ContentCategoriesGetCall struct {
 19597  	s            *Service
 19598  	profileId    int64
 19599  	id           int64
 19600  	urlParams_   gensupport.URLParams
 19601  	ifNoneMatch_ string
 19602  	ctx_         context.Context
 19603  	header_      http.Header
 19604  }
 19605  
 19606  // Get: Gets one content category by ID.
 19607  //
 19608  // - id: Content category ID.
 19609  // - profileId: User profile ID associated with this request.
 19610  func (r *ContentCategoriesService) Get(profileId int64, id int64) *ContentCategoriesGetCall {
 19611  	c := &ContentCategoriesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19612  	c.profileId = profileId
 19613  	c.id = id
 19614  	return c
 19615  }
 19616  
 19617  // Fields allows partial responses to be retrieved. See
 19618  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19619  // details.
 19620  func (c *ContentCategoriesGetCall) Fields(s ...googleapi.Field) *ContentCategoriesGetCall {
 19621  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19622  	return c
 19623  }
 19624  
 19625  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19626  // object's ETag matches the given value. This is useful for getting updates
 19627  // only after the object has changed since the last request.
 19628  func (c *ContentCategoriesGetCall) IfNoneMatch(entityTag string) *ContentCategoriesGetCall {
 19629  	c.ifNoneMatch_ = entityTag
 19630  	return c
 19631  }
 19632  
 19633  // Context sets the context to be used in this call's Do method.
 19634  func (c *ContentCategoriesGetCall) Context(ctx context.Context) *ContentCategoriesGetCall {
 19635  	c.ctx_ = ctx
 19636  	return c
 19637  }
 19638  
 19639  // Header returns a http.Header that can be modified by the caller to add
 19640  // headers to the request.
 19641  func (c *ContentCategoriesGetCall) Header() http.Header {
 19642  	if c.header_ == nil {
 19643  		c.header_ = make(http.Header)
 19644  	}
 19645  	return c.header_
 19646  }
 19647  
 19648  func (c *ContentCategoriesGetCall) doRequest(alt string) (*http.Response, error) {
 19649  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19650  	if c.ifNoneMatch_ != "" {
 19651  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19652  	}
 19653  	var body io.Reader = nil
 19654  	c.urlParams_.Set("alt", alt)
 19655  	c.urlParams_.Set("prettyPrint", "false")
 19656  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/contentCategories/{+id}")
 19657  	urls += "?" + c.urlParams_.Encode()
 19658  	req, err := http.NewRequest("GET", urls, body)
 19659  	if err != nil {
 19660  		return nil, err
 19661  	}
 19662  	req.Header = reqHeaders
 19663  	googleapi.Expand(req.URL, map[string]string{
 19664  		"profileId": strconv.FormatInt(c.profileId, 10),
 19665  		"id":        strconv.FormatInt(c.id, 10),
 19666  	})
 19667  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19668  }
 19669  
 19670  // Do executes the "dfareporting.contentCategories.get" call.
 19671  // Any non-2xx status code is an error. Response headers are in either
 19672  // *ContentCategory.ServerResponse.Header or (if a response was returned at
 19673  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 19674  // check whether the returned error was because http.StatusNotModified was
 19675  // returned.
 19676  func (c *ContentCategoriesGetCall) Do(opts ...googleapi.CallOption) (*ContentCategory, error) {
 19677  	gensupport.SetOptions(c.urlParams_, opts...)
 19678  	res, err := c.doRequest("json")
 19679  	if res != nil && res.StatusCode == http.StatusNotModified {
 19680  		if res.Body != nil {
 19681  			res.Body.Close()
 19682  		}
 19683  		return nil, gensupport.WrapError(&googleapi.Error{
 19684  			Code:   res.StatusCode,
 19685  			Header: res.Header,
 19686  		})
 19687  	}
 19688  	if err != nil {
 19689  		return nil, err
 19690  	}
 19691  	defer googleapi.CloseBody(res)
 19692  	if err := googleapi.CheckResponse(res); err != nil {
 19693  		return nil, gensupport.WrapError(err)
 19694  	}
 19695  	ret := &ContentCategory{
 19696  		ServerResponse: googleapi.ServerResponse{
 19697  			Header:         res.Header,
 19698  			HTTPStatusCode: res.StatusCode,
 19699  		},
 19700  	}
 19701  	target := &ret
 19702  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19703  		return nil, err
 19704  	}
 19705  	return ret, nil
 19706  }
 19707  
 19708  type ContentCategoriesInsertCall struct {
 19709  	s               *Service
 19710  	profileId       int64
 19711  	contentcategory *ContentCategory
 19712  	urlParams_      gensupport.URLParams
 19713  	ctx_            context.Context
 19714  	header_         http.Header
 19715  }
 19716  
 19717  // Insert: Inserts a new content category.
 19718  //
 19719  // - profileId: User profile ID associated with this request.
 19720  func (r *ContentCategoriesService) Insert(profileId int64, contentcategory *ContentCategory) *ContentCategoriesInsertCall {
 19721  	c := &ContentCategoriesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19722  	c.profileId = profileId
 19723  	c.contentcategory = contentcategory
 19724  	return c
 19725  }
 19726  
 19727  // Fields allows partial responses to be retrieved. See
 19728  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19729  // details.
 19730  func (c *ContentCategoriesInsertCall) Fields(s ...googleapi.Field) *ContentCategoriesInsertCall {
 19731  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19732  	return c
 19733  }
 19734  
 19735  // Context sets the context to be used in this call's Do method.
 19736  func (c *ContentCategoriesInsertCall) Context(ctx context.Context) *ContentCategoriesInsertCall {
 19737  	c.ctx_ = ctx
 19738  	return c
 19739  }
 19740  
 19741  // Header returns a http.Header that can be modified by the caller to add
 19742  // headers to the request.
 19743  func (c *ContentCategoriesInsertCall) Header() http.Header {
 19744  	if c.header_ == nil {
 19745  		c.header_ = make(http.Header)
 19746  	}
 19747  	return c.header_
 19748  }
 19749  
 19750  func (c *ContentCategoriesInsertCall) doRequest(alt string) (*http.Response, error) {
 19751  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 19752  	var body io.Reader = nil
 19753  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.contentcategory)
 19754  	if err != nil {
 19755  		return nil, err
 19756  	}
 19757  	c.urlParams_.Set("alt", alt)
 19758  	c.urlParams_.Set("prettyPrint", "false")
 19759  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/contentCategories")
 19760  	urls += "?" + c.urlParams_.Encode()
 19761  	req, err := http.NewRequest("POST", urls, body)
 19762  	if err != nil {
 19763  		return nil, err
 19764  	}
 19765  	req.Header = reqHeaders
 19766  	googleapi.Expand(req.URL, map[string]string{
 19767  		"profileId": strconv.FormatInt(c.profileId, 10),
 19768  	})
 19769  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19770  }
 19771  
 19772  // Do executes the "dfareporting.contentCategories.insert" call.
 19773  // Any non-2xx status code is an error. Response headers are in either
 19774  // *ContentCategory.ServerResponse.Header or (if a response was returned at
 19775  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 19776  // check whether the returned error was because http.StatusNotModified was
 19777  // returned.
 19778  func (c *ContentCategoriesInsertCall) Do(opts ...googleapi.CallOption) (*ContentCategory, error) {
 19779  	gensupport.SetOptions(c.urlParams_, opts...)
 19780  	res, err := c.doRequest("json")
 19781  	if res != nil && res.StatusCode == http.StatusNotModified {
 19782  		if res.Body != nil {
 19783  			res.Body.Close()
 19784  		}
 19785  		return nil, gensupport.WrapError(&googleapi.Error{
 19786  			Code:   res.StatusCode,
 19787  			Header: res.Header,
 19788  		})
 19789  	}
 19790  	if err != nil {
 19791  		return nil, err
 19792  	}
 19793  	defer googleapi.CloseBody(res)
 19794  	if err := googleapi.CheckResponse(res); err != nil {
 19795  		return nil, gensupport.WrapError(err)
 19796  	}
 19797  	ret := &ContentCategory{
 19798  		ServerResponse: googleapi.ServerResponse{
 19799  			Header:         res.Header,
 19800  			HTTPStatusCode: res.StatusCode,
 19801  		},
 19802  	}
 19803  	target := &ret
 19804  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19805  		return nil, err
 19806  	}
 19807  	return ret, nil
 19808  }
 19809  
 19810  type ContentCategoriesListCall struct {
 19811  	s            *Service
 19812  	profileId    int64
 19813  	urlParams_   gensupport.URLParams
 19814  	ifNoneMatch_ string
 19815  	ctx_         context.Context
 19816  	header_      http.Header
 19817  }
 19818  
 19819  // List: Retrieves a list of content categories, possibly filtered. This method
 19820  // supports paging.
 19821  //
 19822  // - profileId: User profile ID associated with this request.
 19823  func (r *ContentCategoriesService) List(profileId int64) *ContentCategoriesListCall {
 19824  	c := &ContentCategoriesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 19825  	c.profileId = profileId
 19826  	return c
 19827  }
 19828  
 19829  // Ids sets the optional parameter "ids": Select only content categories with
 19830  // these IDs.
 19831  func (c *ContentCategoriesListCall) Ids(ids ...int64) *ContentCategoriesListCall {
 19832  	var ids_ []string
 19833  	for _, v := range ids {
 19834  		ids_ = append(ids_, fmt.Sprint(v))
 19835  	}
 19836  	c.urlParams_.SetMulti("ids", ids_)
 19837  	return c
 19838  }
 19839  
 19840  // MaxResults sets the optional parameter "maxResults": Maximum number of
 19841  // results to return.
 19842  func (c *ContentCategoriesListCall) MaxResults(maxResults int64) *ContentCategoriesListCall {
 19843  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 19844  	return c
 19845  }
 19846  
 19847  // PageToken sets the optional parameter "pageToken": Value of the
 19848  // nextPageToken from the previous result page.
 19849  func (c *ContentCategoriesListCall) PageToken(pageToken string) *ContentCategoriesListCall {
 19850  	c.urlParams_.Set("pageToken", pageToken)
 19851  	return c
 19852  }
 19853  
 19854  // SearchString sets the optional parameter "searchString": Allows searching
 19855  // for objects by name or ID. Wildcards (*) are allowed. For example,
 19856  // "contentcategory*2015" will return objects with names like "contentcategory
 19857  // June 2015", "contentcategory April 2015", or simply "contentcategory 2015".
 19858  // Most of the searches also add wildcards implicitly at the start and the end
 19859  // of the search string. For example, a search string of "contentcategory" will
 19860  // match objects with name "my contentcategory", "contentcategory 2015", or
 19861  // simply "contentcategory".
 19862  func (c *ContentCategoriesListCall) SearchString(searchString string) *ContentCategoriesListCall {
 19863  	c.urlParams_.Set("searchString", searchString)
 19864  	return c
 19865  }
 19866  
 19867  // SortField sets the optional parameter "sortField": Field by which to sort
 19868  // the list.
 19869  //
 19870  // Possible values:
 19871  //
 19872  //	"ID" (default)
 19873  //	"NAME"
 19874  func (c *ContentCategoriesListCall) SortField(sortField string) *ContentCategoriesListCall {
 19875  	c.urlParams_.Set("sortField", sortField)
 19876  	return c
 19877  }
 19878  
 19879  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 19880  //
 19881  // Possible values:
 19882  //
 19883  //	"ASCENDING" (default) - Ascending order.
 19884  //	"DESCENDING" - Descending order.
 19885  func (c *ContentCategoriesListCall) SortOrder(sortOrder string) *ContentCategoriesListCall {
 19886  	c.urlParams_.Set("sortOrder", sortOrder)
 19887  	return c
 19888  }
 19889  
 19890  // Fields allows partial responses to be retrieved. See
 19891  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 19892  // details.
 19893  func (c *ContentCategoriesListCall) Fields(s ...googleapi.Field) *ContentCategoriesListCall {
 19894  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 19895  	return c
 19896  }
 19897  
 19898  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 19899  // object's ETag matches the given value. This is useful for getting updates
 19900  // only after the object has changed since the last request.
 19901  func (c *ContentCategoriesListCall) IfNoneMatch(entityTag string) *ContentCategoriesListCall {
 19902  	c.ifNoneMatch_ = entityTag
 19903  	return c
 19904  }
 19905  
 19906  // Context sets the context to be used in this call's Do method.
 19907  func (c *ContentCategoriesListCall) Context(ctx context.Context) *ContentCategoriesListCall {
 19908  	c.ctx_ = ctx
 19909  	return c
 19910  }
 19911  
 19912  // Header returns a http.Header that can be modified by the caller to add
 19913  // headers to the request.
 19914  func (c *ContentCategoriesListCall) Header() http.Header {
 19915  	if c.header_ == nil {
 19916  		c.header_ = make(http.Header)
 19917  	}
 19918  	return c.header_
 19919  }
 19920  
 19921  func (c *ContentCategoriesListCall) doRequest(alt string) (*http.Response, error) {
 19922  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 19923  	if c.ifNoneMatch_ != "" {
 19924  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 19925  	}
 19926  	var body io.Reader = nil
 19927  	c.urlParams_.Set("alt", alt)
 19928  	c.urlParams_.Set("prettyPrint", "false")
 19929  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/contentCategories")
 19930  	urls += "?" + c.urlParams_.Encode()
 19931  	req, err := http.NewRequest("GET", urls, body)
 19932  	if err != nil {
 19933  		return nil, err
 19934  	}
 19935  	req.Header = reqHeaders
 19936  	googleapi.Expand(req.URL, map[string]string{
 19937  		"profileId": strconv.FormatInt(c.profileId, 10),
 19938  	})
 19939  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 19940  }
 19941  
 19942  // Do executes the "dfareporting.contentCategories.list" call.
 19943  // Any non-2xx status code is an error. Response headers are in either
 19944  // *ContentCategoriesListResponse.ServerResponse.Header or (if a response was
 19945  // returned at all) in error.(*googleapi.Error).Header. Use
 19946  // googleapi.IsNotModified to check whether the returned error was because
 19947  // http.StatusNotModified was returned.
 19948  func (c *ContentCategoriesListCall) Do(opts ...googleapi.CallOption) (*ContentCategoriesListResponse, error) {
 19949  	gensupport.SetOptions(c.urlParams_, opts...)
 19950  	res, err := c.doRequest("json")
 19951  	if res != nil && res.StatusCode == http.StatusNotModified {
 19952  		if res.Body != nil {
 19953  			res.Body.Close()
 19954  		}
 19955  		return nil, gensupport.WrapError(&googleapi.Error{
 19956  			Code:   res.StatusCode,
 19957  			Header: res.Header,
 19958  		})
 19959  	}
 19960  	if err != nil {
 19961  		return nil, err
 19962  	}
 19963  	defer googleapi.CloseBody(res)
 19964  	if err := googleapi.CheckResponse(res); err != nil {
 19965  		return nil, gensupport.WrapError(err)
 19966  	}
 19967  	ret := &ContentCategoriesListResponse{
 19968  		ServerResponse: googleapi.ServerResponse{
 19969  			Header:         res.Header,
 19970  			HTTPStatusCode: res.StatusCode,
 19971  		},
 19972  	}
 19973  	target := &ret
 19974  	if err := gensupport.DecodeResponse(target, res); err != nil {
 19975  		return nil, err
 19976  	}
 19977  	return ret, nil
 19978  }
 19979  
 19980  // Pages invokes f for each page of results.
 19981  // A non-nil error returned from f will halt the iteration.
 19982  // The provided context supersedes any context provided to the Context method.
 19983  func (c *ContentCategoriesListCall) Pages(ctx context.Context, f func(*ContentCategoriesListResponse) error) error {
 19984  	c.ctx_ = ctx
 19985  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 19986  	for {
 19987  		x, err := c.Do()
 19988  		if err != nil {
 19989  			return err
 19990  		}
 19991  		if err := f(x); err != nil {
 19992  			return err
 19993  		}
 19994  		if x.NextPageToken == "" {
 19995  			return nil
 19996  		}
 19997  		c.PageToken(x.NextPageToken)
 19998  	}
 19999  }
 20000  
 20001  type ContentCategoriesPatchCall struct {
 20002  	s               *Service
 20003  	profileId       int64
 20004  	contentcategory *ContentCategory
 20005  	urlParams_      gensupport.URLParams
 20006  	ctx_            context.Context
 20007  	header_         http.Header
 20008  }
 20009  
 20010  // Patch: Updates an existing content category. This method supports patch
 20011  // semantics.
 20012  //
 20013  // - id: ContentCategory ID.
 20014  // - profileId: User profile ID associated with this request.
 20015  func (r *ContentCategoriesService) Patch(profileId int64, id int64, contentcategory *ContentCategory) *ContentCategoriesPatchCall {
 20016  	c := &ContentCategoriesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20017  	c.profileId = profileId
 20018  	c.urlParams_.Set("id", fmt.Sprint(id))
 20019  	c.contentcategory = contentcategory
 20020  	return c
 20021  }
 20022  
 20023  // Fields allows partial responses to be retrieved. See
 20024  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20025  // details.
 20026  func (c *ContentCategoriesPatchCall) Fields(s ...googleapi.Field) *ContentCategoriesPatchCall {
 20027  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20028  	return c
 20029  }
 20030  
 20031  // Context sets the context to be used in this call's Do method.
 20032  func (c *ContentCategoriesPatchCall) Context(ctx context.Context) *ContentCategoriesPatchCall {
 20033  	c.ctx_ = ctx
 20034  	return c
 20035  }
 20036  
 20037  // Header returns a http.Header that can be modified by the caller to add
 20038  // headers to the request.
 20039  func (c *ContentCategoriesPatchCall) Header() http.Header {
 20040  	if c.header_ == nil {
 20041  		c.header_ = make(http.Header)
 20042  	}
 20043  	return c.header_
 20044  }
 20045  
 20046  func (c *ContentCategoriesPatchCall) doRequest(alt string) (*http.Response, error) {
 20047  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20048  	var body io.Reader = nil
 20049  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.contentcategory)
 20050  	if err != nil {
 20051  		return nil, err
 20052  	}
 20053  	c.urlParams_.Set("alt", alt)
 20054  	c.urlParams_.Set("prettyPrint", "false")
 20055  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/contentCategories")
 20056  	urls += "?" + c.urlParams_.Encode()
 20057  	req, err := http.NewRequest("PATCH", urls, body)
 20058  	if err != nil {
 20059  		return nil, err
 20060  	}
 20061  	req.Header = reqHeaders
 20062  	googleapi.Expand(req.URL, map[string]string{
 20063  		"profileId": strconv.FormatInt(c.profileId, 10),
 20064  	})
 20065  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20066  }
 20067  
 20068  // Do executes the "dfareporting.contentCategories.patch" call.
 20069  // Any non-2xx status code is an error. Response headers are in either
 20070  // *ContentCategory.ServerResponse.Header or (if a response was returned at
 20071  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 20072  // check whether the returned error was because http.StatusNotModified was
 20073  // returned.
 20074  func (c *ContentCategoriesPatchCall) Do(opts ...googleapi.CallOption) (*ContentCategory, error) {
 20075  	gensupport.SetOptions(c.urlParams_, opts...)
 20076  	res, err := c.doRequest("json")
 20077  	if res != nil && res.StatusCode == http.StatusNotModified {
 20078  		if res.Body != nil {
 20079  			res.Body.Close()
 20080  		}
 20081  		return nil, gensupport.WrapError(&googleapi.Error{
 20082  			Code:   res.StatusCode,
 20083  			Header: res.Header,
 20084  		})
 20085  	}
 20086  	if err != nil {
 20087  		return nil, err
 20088  	}
 20089  	defer googleapi.CloseBody(res)
 20090  	if err := googleapi.CheckResponse(res); err != nil {
 20091  		return nil, gensupport.WrapError(err)
 20092  	}
 20093  	ret := &ContentCategory{
 20094  		ServerResponse: googleapi.ServerResponse{
 20095  			Header:         res.Header,
 20096  			HTTPStatusCode: res.StatusCode,
 20097  		},
 20098  	}
 20099  	target := &ret
 20100  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20101  		return nil, err
 20102  	}
 20103  	return ret, nil
 20104  }
 20105  
 20106  type ContentCategoriesUpdateCall struct {
 20107  	s               *Service
 20108  	profileId       int64
 20109  	contentcategory *ContentCategory
 20110  	urlParams_      gensupport.URLParams
 20111  	ctx_            context.Context
 20112  	header_         http.Header
 20113  }
 20114  
 20115  // Update: Updates an existing content category.
 20116  //
 20117  // - profileId: User profile ID associated with this request.
 20118  func (r *ContentCategoriesService) Update(profileId int64, contentcategory *ContentCategory) *ContentCategoriesUpdateCall {
 20119  	c := &ContentCategoriesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20120  	c.profileId = profileId
 20121  	c.contentcategory = contentcategory
 20122  	return c
 20123  }
 20124  
 20125  // Fields allows partial responses to be retrieved. See
 20126  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20127  // details.
 20128  func (c *ContentCategoriesUpdateCall) Fields(s ...googleapi.Field) *ContentCategoriesUpdateCall {
 20129  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20130  	return c
 20131  }
 20132  
 20133  // Context sets the context to be used in this call's Do method.
 20134  func (c *ContentCategoriesUpdateCall) Context(ctx context.Context) *ContentCategoriesUpdateCall {
 20135  	c.ctx_ = ctx
 20136  	return c
 20137  }
 20138  
 20139  // Header returns a http.Header that can be modified by the caller to add
 20140  // headers to the request.
 20141  func (c *ContentCategoriesUpdateCall) Header() http.Header {
 20142  	if c.header_ == nil {
 20143  		c.header_ = make(http.Header)
 20144  	}
 20145  	return c.header_
 20146  }
 20147  
 20148  func (c *ContentCategoriesUpdateCall) doRequest(alt string) (*http.Response, error) {
 20149  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20150  	var body io.Reader = nil
 20151  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.contentcategory)
 20152  	if err != nil {
 20153  		return nil, err
 20154  	}
 20155  	c.urlParams_.Set("alt", alt)
 20156  	c.urlParams_.Set("prettyPrint", "false")
 20157  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/contentCategories")
 20158  	urls += "?" + c.urlParams_.Encode()
 20159  	req, err := http.NewRequest("PUT", urls, body)
 20160  	if err != nil {
 20161  		return nil, err
 20162  	}
 20163  	req.Header = reqHeaders
 20164  	googleapi.Expand(req.URL, map[string]string{
 20165  		"profileId": strconv.FormatInt(c.profileId, 10),
 20166  	})
 20167  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20168  }
 20169  
 20170  // Do executes the "dfareporting.contentCategories.update" call.
 20171  // Any non-2xx status code is an error. Response headers are in either
 20172  // *ContentCategory.ServerResponse.Header or (if a response was returned at
 20173  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 20174  // check whether the returned error was because http.StatusNotModified was
 20175  // returned.
 20176  func (c *ContentCategoriesUpdateCall) Do(opts ...googleapi.CallOption) (*ContentCategory, error) {
 20177  	gensupport.SetOptions(c.urlParams_, opts...)
 20178  	res, err := c.doRequest("json")
 20179  	if res != nil && res.StatusCode == http.StatusNotModified {
 20180  		if res.Body != nil {
 20181  			res.Body.Close()
 20182  		}
 20183  		return nil, gensupport.WrapError(&googleapi.Error{
 20184  			Code:   res.StatusCode,
 20185  			Header: res.Header,
 20186  		})
 20187  	}
 20188  	if err != nil {
 20189  		return nil, err
 20190  	}
 20191  	defer googleapi.CloseBody(res)
 20192  	if err := googleapi.CheckResponse(res); err != nil {
 20193  		return nil, gensupport.WrapError(err)
 20194  	}
 20195  	ret := &ContentCategory{
 20196  		ServerResponse: googleapi.ServerResponse{
 20197  			Header:         res.Header,
 20198  			HTTPStatusCode: res.StatusCode,
 20199  		},
 20200  	}
 20201  	target := &ret
 20202  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20203  		return nil, err
 20204  	}
 20205  	return ret, nil
 20206  }
 20207  
 20208  type ConversionsBatchinsertCall struct {
 20209  	s                             *Service
 20210  	profileId                     int64
 20211  	conversionsbatchinsertrequest *ConversionsBatchInsertRequest
 20212  	urlParams_                    gensupport.URLParams
 20213  	ctx_                          context.Context
 20214  	header_                       http.Header
 20215  }
 20216  
 20217  // Batchinsert: Inserts conversions.
 20218  //
 20219  // - profileId: User profile ID associated with this request.
 20220  func (r *ConversionsService) Batchinsert(profileId int64, conversionsbatchinsertrequest *ConversionsBatchInsertRequest) *ConversionsBatchinsertCall {
 20221  	c := &ConversionsBatchinsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20222  	c.profileId = profileId
 20223  	c.conversionsbatchinsertrequest = conversionsbatchinsertrequest
 20224  	return c
 20225  }
 20226  
 20227  // Fields allows partial responses to be retrieved. See
 20228  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20229  // details.
 20230  func (c *ConversionsBatchinsertCall) Fields(s ...googleapi.Field) *ConversionsBatchinsertCall {
 20231  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20232  	return c
 20233  }
 20234  
 20235  // Context sets the context to be used in this call's Do method.
 20236  func (c *ConversionsBatchinsertCall) Context(ctx context.Context) *ConversionsBatchinsertCall {
 20237  	c.ctx_ = ctx
 20238  	return c
 20239  }
 20240  
 20241  // Header returns a http.Header that can be modified by the caller to add
 20242  // headers to the request.
 20243  func (c *ConversionsBatchinsertCall) Header() http.Header {
 20244  	if c.header_ == nil {
 20245  		c.header_ = make(http.Header)
 20246  	}
 20247  	return c.header_
 20248  }
 20249  
 20250  func (c *ConversionsBatchinsertCall) doRequest(alt string) (*http.Response, error) {
 20251  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20252  	var body io.Reader = nil
 20253  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.conversionsbatchinsertrequest)
 20254  	if err != nil {
 20255  		return nil, err
 20256  	}
 20257  	c.urlParams_.Set("alt", alt)
 20258  	c.urlParams_.Set("prettyPrint", "false")
 20259  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/conversions/batchinsert")
 20260  	urls += "?" + c.urlParams_.Encode()
 20261  	req, err := http.NewRequest("POST", urls, body)
 20262  	if err != nil {
 20263  		return nil, err
 20264  	}
 20265  	req.Header = reqHeaders
 20266  	googleapi.Expand(req.URL, map[string]string{
 20267  		"profileId": strconv.FormatInt(c.profileId, 10),
 20268  	})
 20269  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20270  }
 20271  
 20272  // Do executes the "dfareporting.conversions.batchinsert" call.
 20273  // Any non-2xx status code is an error. Response headers are in either
 20274  // *ConversionsBatchInsertResponse.ServerResponse.Header or (if a response was
 20275  // returned at all) in error.(*googleapi.Error).Header. Use
 20276  // googleapi.IsNotModified to check whether the returned error was because
 20277  // http.StatusNotModified was returned.
 20278  func (c *ConversionsBatchinsertCall) Do(opts ...googleapi.CallOption) (*ConversionsBatchInsertResponse, error) {
 20279  	gensupport.SetOptions(c.urlParams_, opts...)
 20280  	res, err := c.doRequest("json")
 20281  	if res != nil && res.StatusCode == http.StatusNotModified {
 20282  		if res.Body != nil {
 20283  			res.Body.Close()
 20284  		}
 20285  		return nil, gensupport.WrapError(&googleapi.Error{
 20286  			Code:   res.StatusCode,
 20287  			Header: res.Header,
 20288  		})
 20289  	}
 20290  	if err != nil {
 20291  		return nil, err
 20292  	}
 20293  	defer googleapi.CloseBody(res)
 20294  	if err := googleapi.CheckResponse(res); err != nil {
 20295  		return nil, gensupport.WrapError(err)
 20296  	}
 20297  	ret := &ConversionsBatchInsertResponse{
 20298  		ServerResponse: googleapi.ServerResponse{
 20299  			Header:         res.Header,
 20300  			HTTPStatusCode: res.StatusCode,
 20301  		},
 20302  	}
 20303  	target := &ret
 20304  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20305  		return nil, err
 20306  	}
 20307  	return ret, nil
 20308  }
 20309  
 20310  type ConversionsBatchupdateCall struct {
 20311  	s                             *Service
 20312  	profileId                     int64
 20313  	conversionsbatchupdaterequest *ConversionsBatchUpdateRequest
 20314  	urlParams_                    gensupport.URLParams
 20315  	ctx_                          context.Context
 20316  	header_                       http.Header
 20317  }
 20318  
 20319  // Batchupdate: Updates existing conversions.
 20320  //
 20321  // - profileId: User profile ID associated with this request.
 20322  func (r *ConversionsService) Batchupdate(profileId int64, conversionsbatchupdaterequest *ConversionsBatchUpdateRequest) *ConversionsBatchupdateCall {
 20323  	c := &ConversionsBatchupdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20324  	c.profileId = profileId
 20325  	c.conversionsbatchupdaterequest = conversionsbatchupdaterequest
 20326  	return c
 20327  }
 20328  
 20329  // Fields allows partial responses to be retrieved. See
 20330  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20331  // details.
 20332  func (c *ConversionsBatchupdateCall) Fields(s ...googleapi.Field) *ConversionsBatchupdateCall {
 20333  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20334  	return c
 20335  }
 20336  
 20337  // Context sets the context to be used in this call's Do method.
 20338  func (c *ConversionsBatchupdateCall) Context(ctx context.Context) *ConversionsBatchupdateCall {
 20339  	c.ctx_ = ctx
 20340  	return c
 20341  }
 20342  
 20343  // Header returns a http.Header that can be modified by the caller to add
 20344  // headers to the request.
 20345  func (c *ConversionsBatchupdateCall) Header() http.Header {
 20346  	if c.header_ == nil {
 20347  		c.header_ = make(http.Header)
 20348  	}
 20349  	return c.header_
 20350  }
 20351  
 20352  func (c *ConversionsBatchupdateCall) doRequest(alt string) (*http.Response, error) {
 20353  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20354  	var body io.Reader = nil
 20355  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.conversionsbatchupdaterequest)
 20356  	if err != nil {
 20357  		return nil, err
 20358  	}
 20359  	c.urlParams_.Set("alt", alt)
 20360  	c.urlParams_.Set("prettyPrint", "false")
 20361  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/conversions/batchupdate")
 20362  	urls += "?" + c.urlParams_.Encode()
 20363  	req, err := http.NewRequest("POST", urls, body)
 20364  	if err != nil {
 20365  		return nil, err
 20366  	}
 20367  	req.Header = reqHeaders
 20368  	googleapi.Expand(req.URL, map[string]string{
 20369  		"profileId": strconv.FormatInt(c.profileId, 10),
 20370  	})
 20371  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20372  }
 20373  
 20374  // Do executes the "dfareporting.conversions.batchupdate" call.
 20375  // Any non-2xx status code is an error. Response headers are in either
 20376  // *ConversionsBatchUpdateResponse.ServerResponse.Header or (if a response was
 20377  // returned at all) in error.(*googleapi.Error).Header. Use
 20378  // googleapi.IsNotModified to check whether the returned error was because
 20379  // http.StatusNotModified was returned.
 20380  func (c *ConversionsBatchupdateCall) Do(opts ...googleapi.CallOption) (*ConversionsBatchUpdateResponse, error) {
 20381  	gensupport.SetOptions(c.urlParams_, opts...)
 20382  	res, err := c.doRequest("json")
 20383  	if res != nil && res.StatusCode == http.StatusNotModified {
 20384  		if res.Body != nil {
 20385  			res.Body.Close()
 20386  		}
 20387  		return nil, gensupport.WrapError(&googleapi.Error{
 20388  			Code:   res.StatusCode,
 20389  			Header: res.Header,
 20390  		})
 20391  	}
 20392  	if err != nil {
 20393  		return nil, err
 20394  	}
 20395  	defer googleapi.CloseBody(res)
 20396  	if err := googleapi.CheckResponse(res); err != nil {
 20397  		return nil, gensupport.WrapError(err)
 20398  	}
 20399  	ret := &ConversionsBatchUpdateResponse{
 20400  		ServerResponse: googleapi.ServerResponse{
 20401  			Header:         res.Header,
 20402  			HTTPStatusCode: res.StatusCode,
 20403  		},
 20404  	}
 20405  	target := &ret
 20406  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20407  		return nil, err
 20408  	}
 20409  	return ret, nil
 20410  }
 20411  
 20412  type CountriesGetCall struct {
 20413  	s            *Service
 20414  	profileId    int64
 20415  	dartId       int64
 20416  	urlParams_   gensupport.URLParams
 20417  	ifNoneMatch_ string
 20418  	ctx_         context.Context
 20419  	header_      http.Header
 20420  }
 20421  
 20422  // Get: Gets one country by ID.
 20423  //
 20424  // - dartId: Country DART ID.
 20425  // - profileId: User profile ID associated with this request.
 20426  func (r *CountriesService) Get(profileId int64, dartId int64) *CountriesGetCall {
 20427  	c := &CountriesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20428  	c.profileId = profileId
 20429  	c.dartId = dartId
 20430  	return c
 20431  }
 20432  
 20433  // Fields allows partial responses to be retrieved. See
 20434  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20435  // details.
 20436  func (c *CountriesGetCall) Fields(s ...googleapi.Field) *CountriesGetCall {
 20437  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20438  	return c
 20439  }
 20440  
 20441  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 20442  // object's ETag matches the given value. This is useful for getting updates
 20443  // only after the object has changed since the last request.
 20444  func (c *CountriesGetCall) IfNoneMatch(entityTag string) *CountriesGetCall {
 20445  	c.ifNoneMatch_ = entityTag
 20446  	return c
 20447  }
 20448  
 20449  // Context sets the context to be used in this call's Do method.
 20450  func (c *CountriesGetCall) Context(ctx context.Context) *CountriesGetCall {
 20451  	c.ctx_ = ctx
 20452  	return c
 20453  }
 20454  
 20455  // Header returns a http.Header that can be modified by the caller to add
 20456  // headers to the request.
 20457  func (c *CountriesGetCall) Header() http.Header {
 20458  	if c.header_ == nil {
 20459  		c.header_ = make(http.Header)
 20460  	}
 20461  	return c.header_
 20462  }
 20463  
 20464  func (c *CountriesGetCall) doRequest(alt string) (*http.Response, error) {
 20465  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20466  	if c.ifNoneMatch_ != "" {
 20467  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20468  	}
 20469  	var body io.Reader = nil
 20470  	c.urlParams_.Set("alt", alt)
 20471  	c.urlParams_.Set("prettyPrint", "false")
 20472  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/countries/{+dartId}")
 20473  	urls += "?" + c.urlParams_.Encode()
 20474  	req, err := http.NewRequest("GET", urls, body)
 20475  	if err != nil {
 20476  		return nil, err
 20477  	}
 20478  	req.Header = reqHeaders
 20479  	googleapi.Expand(req.URL, map[string]string{
 20480  		"profileId": strconv.FormatInt(c.profileId, 10),
 20481  		"dartId":    strconv.FormatInt(c.dartId, 10),
 20482  	})
 20483  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20484  }
 20485  
 20486  // Do executes the "dfareporting.countries.get" call.
 20487  // Any non-2xx status code is an error. Response headers are in either
 20488  // *Country.ServerResponse.Header or (if a response was returned at all) in
 20489  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 20490  // whether the returned error was because http.StatusNotModified was returned.
 20491  func (c *CountriesGetCall) Do(opts ...googleapi.CallOption) (*Country, error) {
 20492  	gensupport.SetOptions(c.urlParams_, opts...)
 20493  	res, err := c.doRequest("json")
 20494  	if res != nil && res.StatusCode == http.StatusNotModified {
 20495  		if res.Body != nil {
 20496  			res.Body.Close()
 20497  		}
 20498  		return nil, gensupport.WrapError(&googleapi.Error{
 20499  			Code:   res.StatusCode,
 20500  			Header: res.Header,
 20501  		})
 20502  	}
 20503  	if err != nil {
 20504  		return nil, err
 20505  	}
 20506  	defer googleapi.CloseBody(res)
 20507  	if err := googleapi.CheckResponse(res); err != nil {
 20508  		return nil, gensupport.WrapError(err)
 20509  	}
 20510  	ret := &Country{
 20511  		ServerResponse: googleapi.ServerResponse{
 20512  			Header:         res.Header,
 20513  			HTTPStatusCode: res.StatusCode,
 20514  		},
 20515  	}
 20516  	target := &ret
 20517  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20518  		return nil, err
 20519  	}
 20520  	return ret, nil
 20521  }
 20522  
 20523  type CountriesListCall struct {
 20524  	s            *Service
 20525  	profileId    int64
 20526  	urlParams_   gensupport.URLParams
 20527  	ifNoneMatch_ string
 20528  	ctx_         context.Context
 20529  	header_      http.Header
 20530  }
 20531  
 20532  // List: Retrieves a list of countries.
 20533  //
 20534  // - profileId: User profile ID associated with this request.
 20535  func (r *CountriesService) List(profileId int64) *CountriesListCall {
 20536  	c := &CountriesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20537  	c.profileId = profileId
 20538  	return c
 20539  }
 20540  
 20541  // Fields allows partial responses to be retrieved. See
 20542  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20543  // details.
 20544  func (c *CountriesListCall) Fields(s ...googleapi.Field) *CountriesListCall {
 20545  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20546  	return c
 20547  }
 20548  
 20549  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 20550  // object's ETag matches the given value. This is useful for getting updates
 20551  // only after the object has changed since the last request.
 20552  func (c *CountriesListCall) IfNoneMatch(entityTag string) *CountriesListCall {
 20553  	c.ifNoneMatch_ = entityTag
 20554  	return c
 20555  }
 20556  
 20557  // Context sets the context to be used in this call's Do method.
 20558  func (c *CountriesListCall) Context(ctx context.Context) *CountriesListCall {
 20559  	c.ctx_ = ctx
 20560  	return c
 20561  }
 20562  
 20563  // Header returns a http.Header that can be modified by the caller to add
 20564  // headers to the request.
 20565  func (c *CountriesListCall) Header() http.Header {
 20566  	if c.header_ == nil {
 20567  		c.header_ = make(http.Header)
 20568  	}
 20569  	return c.header_
 20570  }
 20571  
 20572  func (c *CountriesListCall) doRequest(alt string) (*http.Response, error) {
 20573  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20574  	if c.ifNoneMatch_ != "" {
 20575  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20576  	}
 20577  	var body io.Reader = nil
 20578  	c.urlParams_.Set("alt", alt)
 20579  	c.urlParams_.Set("prettyPrint", "false")
 20580  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/countries")
 20581  	urls += "?" + c.urlParams_.Encode()
 20582  	req, err := http.NewRequest("GET", urls, body)
 20583  	if err != nil {
 20584  		return nil, err
 20585  	}
 20586  	req.Header = reqHeaders
 20587  	googleapi.Expand(req.URL, map[string]string{
 20588  		"profileId": strconv.FormatInt(c.profileId, 10),
 20589  	})
 20590  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20591  }
 20592  
 20593  // Do executes the "dfareporting.countries.list" call.
 20594  // Any non-2xx status code is an error. Response headers are in either
 20595  // *CountriesListResponse.ServerResponse.Header or (if a response was returned
 20596  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 20597  // check whether the returned error was because http.StatusNotModified was
 20598  // returned.
 20599  func (c *CountriesListCall) Do(opts ...googleapi.CallOption) (*CountriesListResponse, error) {
 20600  	gensupport.SetOptions(c.urlParams_, opts...)
 20601  	res, err := c.doRequest("json")
 20602  	if res != nil && res.StatusCode == http.StatusNotModified {
 20603  		if res.Body != nil {
 20604  			res.Body.Close()
 20605  		}
 20606  		return nil, gensupport.WrapError(&googleapi.Error{
 20607  			Code:   res.StatusCode,
 20608  			Header: res.Header,
 20609  		})
 20610  	}
 20611  	if err != nil {
 20612  		return nil, err
 20613  	}
 20614  	defer googleapi.CloseBody(res)
 20615  	if err := googleapi.CheckResponse(res); err != nil {
 20616  		return nil, gensupport.WrapError(err)
 20617  	}
 20618  	ret := &CountriesListResponse{
 20619  		ServerResponse: googleapi.ServerResponse{
 20620  			Header:         res.Header,
 20621  			HTTPStatusCode: res.StatusCode,
 20622  		},
 20623  	}
 20624  	target := &ret
 20625  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20626  		return nil, err
 20627  	}
 20628  	return ret, nil
 20629  }
 20630  
 20631  type CreativeAssetsInsertCall struct {
 20632  	s                     *Service
 20633  	profileId             int64
 20634  	advertiserId          int64
 20635  	creativeassetmetadata *CreativeAssetMetadata
 20636  	urlParams_            gensupport.URLParams
 20637  	mediaInfo_            *gensupport.MediaInfo
 20638  	ctx_                  context.Context
 20639  	header_               http.Header
 20640  }
 20641  
 20642  // Insert: Inserts a new creative asset.
 20643  //
 20644  // - advertiserId: Advertiser ID of this creative. This is a required field.
 20645  // - profileId: User profile ID associated with this request.
 20646  func (r *CreativeAssetsService) Insert(profileId int64, advertiserId int64, creativeassetmetadata *CreativeAssetMetadata) *CreativeAssetsInsertCall {
 20647  	c := &CreativeAssetsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20648  	c.profileId = profileId
 20649  	c.advertiserId = advertiserId
 20650  	c.creativeassetmetadata = creativeassetmetadata
 20651  	return c
 20652  }
 20653  
 20654  // Media specifies the media to upload in one or more chunks. The chunk size
 20655  // may be controlled by supplying a MediaOption generated by
 20656  // googleapi.ChunkSize. The chunk size defaults to
 20657  // googleapi.DefaultUploadChunkSize.The Content-Type header used in the upload
 20658  // request will be determined by sniffing the contents of r, unless a
 20659  // MediaOption generated by googleapi.ContentType is supplied.
 20660  // At most one of Media and ResumableMedia may be set.
 20661  func (c *CreativeAssetsInsertCall) Media(r io.Reader, options ...googleapi.MediaOption) *CreativeAssetsInsertCall {
 20662  	c.mediaInfo_ = gensupport.NewInfoFromMedia(r, options)
 20663  	return c
 20664  }
 20665  
 20666  // ResumableMedia specifies the media to upload in chunks and can be canceled
 20667  // with ctx.
 20668  //
 20669  // Deprecated: use Media instead.
 20670  //
 20671  // At most one of Media and ResumableMedia may be set. mediaType identifies the
 20672  // MIME media type of the upload, such as "image/png". If mediaType is "", it
 20673  // will be auto-detected. The provided ctx will supersede any context
 20674  // previously provided to the Context method.
 20675  func (c *CreativeAssetsInsertCall) ResumableMedia(ctx context.Context, r io.ReaderAt, size int64, mediaType string) *CreativeAssetsInsertCall {
 20676  	c.ctx_ = ctx
 20677  	c.mediaInfo_ = gensupport.NewInfoFromResumableMedia(r, size, mediaType)
 20678  	return c
 20679  }
 20680  
 20681  // ProgressUpdater provides a callback function that will be called after every
 20682  // chunk. It should be a low-latency function in order to not slow down the
 20683  // upload operation. This should only be called when using ResumableMedia (as
 20684  // opposed to Media).
 20685  func (c *CreativeAssetsInsertCall) ProgressUpdater(pu googleapi.ProgressUpdater) *CreativeAssetsInsertCall {
 20686  	c.mediaInfo_.SetProgressUpdater(pu)
 20687  	return c
 20688  }
 20689  
 20690  // Fields allows partial responses to be retrieved. See
 20691  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20692  // details.
 20693  func (c *CreativeAssetsInsertCall) Fields(s ...googleapi.Field) *CreativeAssetsInsertCall {
 20694  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20695  	return c
 20696  }
 20697  
 20698  // Context sets the context to be used in this call's Do method.
 20699  // This context will supersede any context previously provided to the
 20700  // ResumableMedia method.
 20701  func (c *CreativeAssetsInsertCall) Context(ctx context.Context) *CreativeAssetsInsertCall {
 20702  	c.ctx_ = ctx
 20703  	return c
 20704  }
 20705  
 20706  // Header returns a http.Header that can be modified by the caller to add
 20707  // headers to the request.
 20708  func (c *CreativeAssetsInsertCall) Header() http.Header {
 20709  	if c.header_ == nil {
 20710  		c.header_ = make(http.Header)
 20711  	}
 20712  	return c.header_
 20713  }
 20714  
 20715  func (c *CreativeAssetsInsertCall) doRequest(alt string) (*http.Response, error) {
 20716  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 20717  	var body io.Reader = nil
 20718  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativeassetmetadata)
 20719  	if err != nil {
 20720  		return nil, err
 20721  	}
 20722  	c.urlParams_.Set("alt", alt)
 20723  	c.urlParams_.Set("prettyPrint", "false")
 20724  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeAssets/{+advertiserId}/creativeAssets")
 20725  	if c.mediaInfo_ != nil {
 20726  		urls = googleapi.ResolveRelative(c.s.BasePath, "/upload/dfareporting/v4/userprofiles/{+profileId}/creativeAssets/{+advertiserId}/creativeAssets")
 20727  		c.urlParams_.Set("uploadType", c.mediaInfo_.UploadType())
 20728  	}
 20729  	if body == nil {
 20730  		body = new(bytes.Buffer)
 20731  		reqHeaders.Set("Content-Type", "application/json")
 20732  	}
 20733  	body, getBody, cleanup := c.mediaInfo_.UploadRequest(reqHeaders, body)
 20734  	defer cleanup()
 20735  	urls += "?" + c.urlParams_.Encode()
 20736  	req, err := http.NewRequest("POST", urls, body)
 20737  	if err != nil {
 20738  		return nil, err
 20739  	}
 20740  	req.Header = reqHeaders
 20741  	req.GetBody = getBody
 20742  	googleapi.Expand(req.URL, map[string]string{
 20743  		"profileId":    strconv.FormatInt(c.profileId, 10),
 20744  		"advertiserId": strconv.FormatInt(c.advertiserId, 10),
 20745  	})
 20746  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20747  }
 20748  
 20749  // Do executes the "dfareporting.creativeAssets.insert" call.
 20750  // Any non-2xx status code is an error. Response headers are in either
 20751  // *CreativeAssetMetadata.ServerResponse.Header or (if a response was returned
 20752  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 20753  // check whether the returned error was because http.StatusNotModified was
 20754  // returned.
 20755  func (c *CreativeAssetsInsertCall) Do(opts ...googleapi.CallOption) (*CreativeAssetMetadata, error) {
 20756  	gensupport.SetOptions(c.urlParams_, opts...)
 20757  	res, err := c.doRequest("json")
 20758  	if res != nil && res.StatusCode == http.StatusNotModified {
 20759  		if res.Body != nil {
 20760  			res.Body.Close()
 20761  		}
 20762  		return nil, gensupport.WrapError(&googleapi.Error{
 20763  			Code:   res.StatusCode,
 20764  			Header: res.Header,
 20765  		})
 20766  	}
 20767  	if err != nil {
 20768  		return nil, err
 20769  	}
 20770  	defer googleapi.CloseBody(res)
 20771  	if err := googleapi.CheckResponse(res); err != nil {
 20772  		return nil, gensupport.WrapError(err)
 20773  	}
 20774  	rx := c.mediaInfo_.ResumableUpload(res.Header.Get("Location"))
 20775  	if rx != nil {
 20776  		rx.Client = c.s.client
 20777  		rx.UserAgent = c.s.userAgent()
 20778  		ctx := c.ctx_
 20779  		if ctx == nil {
 20780  			ctx = context.TODO()
 20781  		}
 20782  		res, err = rx.Upload(ctx)
 20783  		if err != nil {
 20784  			return nil, err
 20785  		}
 20786  		defer res.Body.Close()
 20787  		if err := googleapi.CheckResponse(res); err != nil {
 20788  			return nil, gensupport.WrapError(err)
 20789  		}
 20790  	}
 20791  	ret := &CreativeAssetMetadata{
 20792  		ServerResponse: googleapi.ServerResponse{
 20793  			Header:         res.Header,
 20794  			HTTPStatusCode: res.StatusCode,
 20795  		},
 20796  	}
 20797  	target := &ret
 20798  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20799  		return nil, err
 20800  	}
 20801  	return ret, nil
 20802  }
 20803  
 20804  type CreativeFieldValuesDeleteCall struct {
 20805  	s               *Service
 20806  	profileId       int64
 20807  	creativeFieldId int64
 20808  	id              int64
 20809  	urlParams_      gensupport.URLParams
 20810  	ctx_            context.Context
 20811  	header_         http.Header
 20812  }
 20813  
 20814  // Delete: Deletes an existing creative field value.
 20815  //
 20816  // - creativeFieldId: Creative field ID for this creative field value.
 20817  // - id: Creative Field Value ID.
 20818  // - profileId: User profile ID associated with this request.
 20819  func (r *CreativeFieldValuesService) Delete(profileId int64, creativeFieldId int64, id int64) *CreativeFieldValuesDeleteCall {
 20820  	c := &CreativeFieldValuesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20821  	c.profileId = profileId
 20822  	c.creativeFieldId = creativeFieldId
 20823  	c.id = id
 20824  	return c
 20825  }
 20826  
 20827  // Fields allows partial responses to be retrieved. See
 20828  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20829  // details.
 20830  func (c *CreativeFieldValuesDeleteCall) Fields(s ...googleapi.Field) *CreativeFieldValuesDeleteCall {
 20831  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20832  	return c
 20833  }
 20834  
 20835  // Context sets the context to be used in this call's Do method.
 20836  func (c *CreativeFieldValuesDeleteCall) Context(ctx context.Context) *CreativeFieldValuesDeleteCall {
 20837  	c.ctx_ = ctx
 20838  	return c
 20839  }
 20840  
 20841  // Header returns a http.Header that can be modified by the caller to add
 20842  // headers to the request.
 20843  func (c *CreativeFieldValuesDeleteCall) Header() http.Header {
 20844  	if c.header_ == nil {
 20845  		c.header_ = make(http.Header)
 20846  	}
 20847  	return c.header_
 20848  }
 20849  
 20850  func (c *CreativeFieldValuesDeleteCall) doRequest(alt string) (*http.Response, error) {
 20851  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20852  	var body io.Reader = nil
 20853  	c.urlParams_.Set("alt", alt)
 20854  	c.urlParams_.Set("prettyPrint", "false")
 20855  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields/{+creativeFieldId}/creativeFieldValues/{+id}")
 20856  	urls += "?" + c.urlParams_.Encode()
 20857  	req, err := http.NewRequest("DELETE", urls, body)
 20858  	if err != nil {
 20859  		return nil, err
 20860  	}
 20861  	req.Header = reqHeaders
 20862  	googleapi.Expand(req.URL, map[string]string{
 20863  		"profileId":       strconv.FormatInt(c.profileId, 10),
 20864  		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
 20865  		"id":              strconv.FormatInt(c.id, 10),
 20866  	})
 20867  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20868  }
 20869  
 20870  // Do executes the "dfareporting.creativeFieldValues.delete" call.
 20871  func (c *CreativeFieldValuesDeleteCall) Do(opts ...googleapi.CallOption) error {
 20872  	gensupport.SetOptions(c.urlParams_, opts...)
 20873  	res, err := c.doRequest("json")
 20874  	if err != nil {
 20875  		return err
 20876  	}
 20877  	defer googleapi.CloseBody(res)
 20878  	if err := googleapi.CheckResponse(res); err != nil {
 20879  		return gensupport.WrapError(err)
 20880  	}
 20881  	return nil
 20882  }
 20883  
 20884  type CreativeFieldValuesGetCall struct {
 20885  	s               *Service
 20886  	profileId       int64
 20887  	creativeFieldId int64
 20888  	id              int64
 20889  	urlParams_      gensupport.URLParams
 20890  	ifNoneMatch_    string
 20891  	ctx_            context.Context
 20892  	header_         http.Header
 20893  }
 20894  
 20895  // Get: Gets one creative field value by ID.
 20896  //
 20897  // - creativeFieldId: Creative field ID for this creative field value.
 20898  // - id: Creative Field Value ID.
 20899  // - profileId: User profile ID associated with this request.
 20900  func (r *CreativeFieldValuesService) Get(profileId int64, creativeFieldId int64, id int64) *CreativeFieldValuesGetCall {
 20901  	c := &CreativeFieldValuesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 20902  	c.profileId = profileId
 20903  	c.creativeFieldId = creativeFieldId
 20904  	c.id = id
 20905  	return c
 20906  }
 20907  
 20908  // Fields allows partial responses to be retrieved. See
 20909  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 20910  // details.
 20911  func (c *CreativeFieldValuesGetCall) Fields(s ...googleapi.Field) *CreativeFieldValuesGetCall {
 20912  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 20913  	return c
 20914  }
 20915  
 20916  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 20917  // object's ETag matches the given value. This is useful for getting updates
 20918  // only after the object has changed since the last request.
 20919  func (c *CreativeFieldValuesGetCall) IfNoneMatch(entityTag string) *CreativeFieldValuesGetCall {
 20920  	c.ifNoneMatch_ = entityTag
 20921  	return c
 20922  }
 20923  
 20924  // Context sets the context to be used in this call's Do method.
 20925  func (c *CreativeFieldValuesGetCall) Context(ctx context.Context) *CreativeFieldValuesGetCall {
 20926  	c.ctx_ = ctx
 20927  	return c
 20928  }
 20929  
 20930  // Header returns a http.Header that can be modified by the caller to add
 20931  // headers to the request.
 20932  func (c *CreativeFieldValuesGetCall) Header() http.Header {
 20933  	if c.header_ == nil {
 20934  		c.header_ = make(http.Header)
 20935  	}
 20936  	return c.header_
 20937  }
 20938  
 20939  func (c *CreativeFieldValuesGetCall) doRequest(alt string) (*http.Response, error) {
 20940  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 20941  	if c.ifNoneMatch_ != "" {
 20942  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 20943  	}
 20944  	var body io.Reader = nil
 20945  	c.urlParams_.Set("alt", alt)
 20946  	c.urlParams_.Set("prettyPrint", "false")
 20947  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields/{+creativeFieldId}/creativeFieldValues/{+id}")
 20948  	urls += "?" + c.urlParams_.Encode()
 20949  	req, err := http.NewRequest("GET", urls, body)
 20950  	if err != nil {
 20951  		return nil, err
 20952  	}
 20953  	req.Header = reqHeaders
 20954  	googleapi.Expand(req.URL, map[string]string{
 20955  		"profileId":       strconv.FormatInt(c.profileId, 10),
 20956  		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
 20957  		"id":              strconv.FormatInt(c.id, 10),
 20958  	})
 20959  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 20960  }
 20961  
 20962  // Do executes the "dfareporting.creativeFieldValues.get" call.
 20963  // Any non-2xx status code is an error. Response headers are in either
 20964  // *CreativeFieldValue.ServerResponse.Header or (if a response was returned at
 20965  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 20966  // check whether the returned error was because http.StatusNotModified was
 20967  // returned.
 20968  func (c *CreativeFieldValuesGetCall) Do(opts ...googleapi.CallOption) (*CreativeFieldValue, error) {
 20969  	gensupport.SetOptions(c.urlParams_, opts...)
 20970  	res, err := c.doRequest("json")
 20971  	if res != nil && res.StatusCode == http.StatusNotModified {
 20972  		if res.Body != nil {
 20973  			res.Body.Close()
 20974  		}
 20975  		return nil, gensupport.WrapError(&googleapi.Error{
 20976  			Code:   res.StatusCode,
 20977  			Header: res.Header,
 20978  		})
 20979  	}
 20980  	if err != nil {
 20981  		return nil, err
 20982  	}
 20983  	defer googleapi.CloseBody(res)
 20984  	if err := googleapi.CheckResponse(res); err != nil {
 20985  		return nil, gensupport.WrapError(err)
 20986  	}
 20987  	ret := &CreativeFieldValue{
 20988  		ServerResponse: googleapi.ServerResponse{
 20989  			Header:         res.Header,
 20990  			HTTPStatusCode: res.StatusCode,
 20991  		},
 20992  	}
 20993  	target := &ret
 20994  	if err := gensupport.DecodeResponse(target, res); err != nil {
 20995  		return nil, err
 20996  	}
 20997  	return ret, nil
 20998  }
 20999  
 21000  type CreativeFieldValuesInsertCall struct {
 21001  	s                  *Service
 21002  	profileId          int64
 21003  	creativeFieldId    int64
 21004  	creativefieldvalue *CreativeFieldValue
 21005  	urlParams_         gensupport.URLParams
 21006  	ctx_               context.Context
 21007  	header_            http.Header
 21008  }
 21009  
 21010  // Insert: Inserts a new creative field value.
 21011  //
 21012  // - creativeFieldId: Creative field ID for this creative field value.
 21013  // - profileId: User profile ID associated with this request.
 21014  func (r *CreativeFieldValuesService) Insert(profileId int64, creativeFieldId int64, creativefieldvalue *CreativeFieldValue) *CreativeFieldValuesInsertCall {
 21015  	c := &CreativeFieldValuesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21016  	c.profileId = profileId
 21017  	c.creativeFieldId = creativeFieldId
 21018  	c.creativefieldvalue = creativefieldvalue
 21019  	return c
 21020  }
 21021  
 21022  // Fields allows partial responses to be retrieved. See
 21023  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21024  // details.
 21025  func (c *CreativeFieldValuesInsertCall) Fields(s ...googleapi.Field) *CreativeFieldValuesInsertCall {
 21026  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21027  	return c
 21028  }
 21029  
 21030  // Context sets the context to be used in this call's Do method.
 21031  func (c *CreativeFieldValuesInsertCall) Context(ctx context.Context) *CreativeFieldValuesInsertCall {
 21032  	c.ctx_ = ctx
 21033  	return c
 21034  }
 21035  
 21036  // Header returns a http.Header that can be modified by the caller to add
 21037  // headers to the request.
 21038  func (c *CreativeFieldValuesInsertCall) Header() http.Header {
 21039  	if c.header_ == nil {
 21040  		c.header_ = make(http.Header)
 21041  	}
 21042  	return c.header_
 21043  }
 21044  
 21045  func (c *CreativeFieldValuesInsertCall) doRequest(alt string) (*http.Response, error) {
 21046  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 21047  	var body io.Reader = nil
 21048  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefieldvalue)
 21049  	if err != nil {
 21050  		return nil, err
 21051  	}
 21052  	c.urlParams_.Set("alt", alt)
 21053  	c.urlParams_.Set("prettyPrint", "false")
 21054  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields/{+creativeFieldId}/creativeFieldValues")
 21055  	urls += "?" + c.urlParams_.Encode()
 21056  	req, err := http.NewRequest("POST", urls, body)
 21057  	if err != nil {
 21058  		return nil, err
 21059  	}
 21060  	req.Header = reqHeaders
 21061  	googleapi.Expand(req.URL, map[string]string{
 21062  		"profileId":       strconv.FormatInt(c.profileId, 10),
 21063  		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
 21064  	})
 21065  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21066  }
 21067  
 21068  // Do executes the "dfareporting.creativeFieldValues.insert" call.
 21069  // Any non-2xx status code is an error. Response headers are in either
 21070  // *CreativeFieldValue.ServerResponse.Header or (if a response was returned at
 21071  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 21072  // check whether the returned error was because http.StatusNotModified was
 21073  // returned.
 21074  func (c *CreativeFieldValuesInsertCall) Do(opts ...googleapi.CallOption) (*CreativeFieldValue, error) {
 21075  	gensupport.SetOptions(c.urlParams_, opts...)
 21076  	res, err := c.doRequest("json")
 21077  	if res != nil && res.StatusCode == http.StatusNotModified {
 21078  		if res.Body != nil {
 21079  			res.Body.Close()
 21080  		}
 21081  		return nil, gensupport.WrapError(&googleapi.Error{
 21082  			Code:   res.StatusCode,
 21083  			Header: res.Header,
 21084  		})
 21085  	}
 21086  	if err != nil {
 21087  		return nil, err
 21088  	}
 21089  	defer googleapi.CloseBody(res)
 21090  	if err := googleapi.CheckResponse(res); err != nil {
 21091  		return nil, gensupport.WrapError(err)
 21092  	}
 21093  	ret := &CreativeFieldValue{
 21094  		ServerResponse: googleapi.ServerResponse{
 21095  			Header:         res.Header,
 21096  			HTTPStatusCode: res.StatusCode,
 21097  		},
 21098  	}
 21099  	target := &ret
 21100  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21101  		return nil, err
 21102  	}
 21103  	return ret, nil
 21104  }
 21105  
 21106  type CreativeFieldValuesListCall struct {
 21107  	s               *Service
 21108  	profileId       int64
 21109  	creativeFieldId int64
 21110  	urlParams_      gensupport.URLParams
 21111  	ifNoneMatch_    string
 21112  	ctx_            context.Context
 21113  	header_         http.Header
 21114  }
 21115  
 21116  // List: Retrieves a list of creative field values, possibly filtered. This
 21117  // method supports paging.
 21118  //
 21119  // - creativeFieldId: Creative field ID for this creative field value.
 21120  // - profileId: User profile ID associated with this request.
 21121  func (r *CreativeFieldValuesService) List(profileId int64, creativeFieldId int64) *CreativeFieldValuesListCall {
 21122  	c := &CreativeFieldValuesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21123  	c.profileId = profileId
 21124  	c.creativeFieldId = creativeFieldId
 21125  	return c
 21126  }
 21127  
 21128  // Ids sets the optional parameter "ids": Select only creative field values
 21129  // with these IDs.
 21130  func (c *CreativeFieldValuesListCall) Ids(ids ...int64) *CreativeFieldValuesListCall {
 21131  	var ids_ []string
 21132  	for _, v := range ids {
 21133  		ids_ = append(ids_, fmt.Sprint(v))
 21134  	}
 21135  	c.urlParams_.SetMulti("ids", ids_)
 21136  	return c
 21137  }
 21138  
 21139  // MaxResults sets the optional parameter "maxResults": Maximum number of
 21140  // results to return.
 21141  func (c *CreativeFieldValuesListCall) MaxResults(maxResults int64) *CreativeFieldValuesListCall {
 21142  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 21143  	return c
 21144  }
 21145  
 21146  // PageToken sets the optional parameter "pageToken": Value of the
 21147  // nextPageToken from the previous result page.
 21148  func (c *CreativeFieldValuesListCall) PageToken(pageToken string) *CreativeFieldValuesListCall {
 21149  	c.urlParams_.Set("pageToken", pageToken)
 21150  	return c
 21151  }
 21152  
 21153  // SearchString sets the optional parameter "searchString": Allows searching
 21154  // for creative field values by their values. Wildcards (e.g. *) are not
 21155  // allowed.
 21156  func (c *CreativeFieldValuesListCall) SearchString(searchString string) *CreativeFieldValuesListCall {
 21157  	c.urlParams_.Set("searchString", searchString)
 21158  	return c
 21159  }
 21160  
 21161  // SortField sets the optional parameter "sortField": Field by which to sort
 21162  // the list.
 21163  //
 21164  // Possible values:
 21165  //
 21166  //	"ID" (default)
 21167  //	"VALUE"
 21168  func (c *CreativeFieldValuesListCall) SortField(sortField string) *CreativeFieldValuesListCall {
 21169  	c.urlParams_.Set("sortField", sortField)
 21170  	return c
 21171  }
 21172  
 21173  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 21174  //
 21175  // Possible values:
 21176  //
 21177  //	"ASCENDING" (default) - Ascending order.
 21178  //	"DESCENDING" - Descending order.
 21179  func (c *CreativeFieldValuesListCall) SortOrder(sortOrder string) *CreativeFieldValuesListCall {
 21180  	c.urlParams_.Set("sortOrder", sortOrder)
 21181  	return c
 21182  }
 21183  
 21184  // Fields allows partial responses to be retrieved. See
 21185  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21186  // details.
 21187  func (c *CreativeFieldValuesListCall) Fields(s ...googleapi.Field) *CreativeFieldValuesListCall {
 21188  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21189  	return c
 21190  }
 21191  
 21192  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 21193  // object's ETag matches the given value. This is useful for getting updates
 21194  // only after the object has changed since the last request.
 21195  func (c *CreativeFieldValuesListCall) IfNoneMatch(entityTag string) *CreativeFieldValuesListCall {
 21196  	c.ifNoneMatch_ = entityTag
 21197  	return c
 21198  }
 21199  
 21200  // Context sets the context to be used in this call's Do method.
 21201  func (c *CreativeFieldValuesListCall) Context(ctx context.Context) *CreativeFieldValuesListCall {
 21202  	c.ctx_ = ctx
 21203  	return c
 21204  }
 21205  
 21206  // Header returns a http.Header that can be modified by the caller to add
 21207  // headers to the request.
 21208  func (c *CreativeFieldValuesListCall) Header() http.Header {
 21209  	if c.header_ == nil {
 21210  		c.header_ = make(http.Header)
 21211  	}
 21212  	return c.header_
 21213  }
 21214  
 21215  func (c *CreativeFieldValuesListCall) doRequest(alt string) (*http.Response, error) {
 21216  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21217  	if c.ifNoneMatch_ != "" {
 21218  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 21219  	}
 21220  	var body io.Reader = nil
 21221  	c.urlParams_.Set("alt", alt)
 21222  	c.urlParams_.Set("prettyPrint", "false")
 21223  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields/{+creativeFieldId}/creativeFieldValues")
 21224  	urls += "?" + c.urlParams_.Encode()
 21225  	req, err := http.NewRequest("GET", urls, body)
 21226  	if err != nil {
 21227  		return nil, err
 21228  	}
 21229  	req.Header = reqHeaders
 21230  	googleapi.Expand(req.URL, map[string]string{
 21231  		"profileId":       strconv.FormatInt(c.profileId, 10),
 21232  		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
 21233  	})
 21234  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21235  }
 21236  
 21237  // Do executes the "dfareporting.creativeFieldValues.list" call.
 21238  // Any non-2xx status code is an error. Response headers are in either
 21239  // *CreativeFieldValuesListResponse.ServerResponse.Header or (if a response was
 21240  // returned at all) in error.(*googleapi.Error).Header. Use
 21241  // googleapi.IsNotModified to check whether the returned error was because
 21242  // http.StatusNotModified was returned.
 21243  func (c *CreativeFieldValuesListCall) Do(opts ...googleapi.CallOption) (*CreativeFieldValuesListResponse, error) {
 21244  	gensupport.SetOptions(c.urlParams_, opts...)
 21245  	res, err := c.doRequest("json")
 21246  	if res != nil && res.StatusCode == http.StatusNotModified {
 21247  		if res.Body != nil {
 21248  			res.Body.Close()
 21249  		}
 21250  		return nil, gensupport.WrapError(&googleapi.Error{
 21251  			Code:   res.StatusCode,
 21252  			Header: res.Header,
 21253  		})
 21254  	}
 21255  	if err != nil {
 21256  		return nil, err
 21257  	}
 21258  	defer googleapi.CloseBody(res)
 21259  	if err := googleapi.CheckResponse(res); err != nil {
 21260  		return nil, gensupport.WrapError(err)
 21261  	}
 21262  	ret := &CreativeFieldValuesListResponse{
 21263  		ServerResponse: googleapi.ServerResponse{
 21264  			Header:         res.Header,
 21265  			HTTPStatusCode: res.StatusCode,
 21266  		},
 21267  	}
 21268  	target := &ret
 21269  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21270  		return nil, err
 21271  	}
 21272  	return ret, nil
 21273  }
 21274  
 21275  // Pages invokes f for each page of results.
 21276  // A non-nil error returned from f will halt the iteration.
 21277  // The provided context supersedes any context provided to the Context method.
 21278  func (c *CreativeFieldValuesListCall) Pages(ctx context.Context, f func(*CreativeFieldValuesListResponse) error) error {
 21279  	c.ctx_ = ctx
 21280  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 21281  	for {
 21282  		x, err := c.Do()
 21283  		if err != nil {
 21284  			return err
 21285  		}
 21286  		if err := f(x); err != nil {
 21287  			return err
 21288  		}
 21289  		if x.NextPageToken == "" {
 21290  			return nil
 21291  		}
 21292  		c.PageToken(x.NextPageToken)
 21293  	}
 21294  }
 21295  
 21296  type CreativeFieldValuesPatchCall struct {
 21297  	s                  *Service
 21298  	profileId          int64
 21299  	creativeFieldId    int64
 21300  	creativefieldvalue *CreativeFieldValue
 21301  	urlParams_         gensupport.URLParams
 21302  	ctx_               context.Context
 21303  	header_            http.Header
 21304  }
 21305  
 21306  // Patch: Updates an existing creative field value. This method supports patch
 21307  // semantics.
 21308  //
 21309  // - creativeFieldId: CreativeField ID.
 21310  // - id: CreativeFieldValue ID.
 21311  // - profileId: User profile ID associated with this request.
 21312  func (r *CreativeFieldValuesService) Patch(profileId int64, creativeFieldId int64, id int64, creativefieldvalue *CreativeFieldValue) *CreativeFieldValuesPatchCall {
 21313  	c := &CreativeFieldValuesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21314  	c.profileId = profileId
 21315  	c.creativeFieldId = creativeFieldId
 21316  	c.urlParams_.Set("id", fmt.Sprint(id))
 21317  	c.creativefieldvalue = creativefieldvalue
 21318  	return c
 21319  }
 21320  
 21321  // Fields allows partial responses to be retrieved. See
 21322  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21323  // details.
 21324  func (c *CreativeFieldValuesPatchCall) Fields(s ...googleapi.Field) *CreativeFieldValuesPatchCall {
 21325  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21326  	return c
 21327  }
 21328  
 21329  // Context sets the context to be used in this call's Do method.
 21330  func (c *CreativeFieldValuesPatchCall) Context(ctx context.Context) *CreativeFieldValuesPatchCall {
 21331  	c.ctx_ = ctx
 21332  	return c
 21333  }
 21334  
 21335  // Header returns a http.Header that can be modified by the caller to add
 21336  // headers to the request.
 21337  func (c *CreativeFieldValuesPatchCall) Header() http.Header {
 21338  	if c.header_ == nil {
 21339  		c.header_ = make(http.Header)
 21340  	}
 21341  	return c.header_
 21342  }
 21343  
 21344  func (c *CreativeFieldValuesPatchCall) doRequest(alt string) (*http.Response, error) {
 21345  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 21346  	var body io.Reader = nil
 21347  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefieldvalue)
 21348  	if err != nil {
 21349  		return nil, err
 21350  	}
 21351  	c.urlParams_.Set("alt", alt)
 21352  	c.urlParams_.Set("prettyPrint", "false")
 21353  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields/{+creativeFieldId}/creativeFieldValues")
 21354  	urls += "?" + c.urlParams_.Encode()
 21355  	req, err := http.NewRequest("PATCH", urls, body)
 21356  	if err != nil {
 21357  		return nil, err
 21358  	}
 21359  	req.Header = reqHeaders
 21360  	googleapi.Expand(req.URL, map[string]string{
 21361  		"profileId":       strconv.FormatInt(c.profileId, 10),
 21362  		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
 21363  	})
 21364  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21365  }
 21366  
 21367  // Do executes the "dfareporting.creativeFieldValues.patch" call.
 21368  // Any non-2xx status code is an error. Response headers are in either
 21369  // *CreativeFieldValue.ServerResponse.Header or (if a response was returned at
 21370  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 21371  // check whether the returned error was because http.StatusNotModified was
 21372  // returned.
 21373  func (c *CreativeFieldValuesPatchCall) Do(opts ...googleapi.CallOption) (*CreativeFieldValue, error) {
 21374  	gensupport.SetOptions(c.urlParams_, opts...)
 21375  	res, err := c.doRequest("json")
 21376  	if res != nil && res.StatusCode == http.StatusNotModified {
 21377  		if res.Body != nil {
 21378  			res.Body.Close()
 21379  		}
 21380  		return nil, gensupport.WrapError(&googleapi.Error{
 21381  			Code:   res.StatusCode,
 21382  			Header: res.Header,
 21383  		})
 21384  	}
 21385  	if err != nil {
 21386  		return nil, err
 21387  	}
 21388  	defer googleapi.CloseBody(res)
 21389  	if err := googleapi.CheckResponse(res); err != nil {
 21390  		return nil, gensupport.WrapError(err)
 21391  	}
 21392  	ret := &CreativeFieldValue{
 21393  		ServerResponse: googleapi.ServerResponse{
 21394  			Header:         res.Header,
 21395  			HTTPStatusCode: res.StatusCode,
 21396  		},
 21397  	}
 21398  	target := &ret
 21399  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21400  		return nil, err
 21401  	}
 21402  	return ret, nil
 21403  }
 21404  
 21405  type CreativeFieldValuesUpdateCall struct {
 21406  	s                  *Service
 21407  	profileId          int64
 21408  	creativeFieldId    int64
 21409  	creativefieldvalue *CreativeFieldValue
 21410  	urlParams_         gensupport.URLParams
 21411  	ctx_               context.Context
 21412  	header_            http.Header
 21413  }
 21414  
 21415  // Update: Updates an existing creative field value.
 21416  //
 21417  // - creativeFieldId: Creative field ID for this creative field value.
 21418  // - profileId: User profile ID associated with this request.
 21419  func (r *CreativeFieldValuesService) Update(profileId int64, creativeFieldId int64, creativefieldvalue *CreativeFieldValue) *CreativeFieldValuesUpdateCall {
 21420  	c := &CreativeFieldValuesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21421  	c.profileId = profileId
 21422  	c.creativeFieldId = creativeFieldId
 21423  	c.creativefieldvalue = creativefieldvalue
 21424  	return c
 21425  }
 21426  
 21427  // Fields allows partial responses to be retrieved. See
 21428  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21429  // details.
 21430  func (c *CreativeFieldValuesUpdateCall) Fields(s ...googleapi.Field) *CreativeFieldValuesUpdateCall {
 21431  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21432  	return c
 21433  }
 21434  
 21435  // Context sets the context to be used in this call's Do method.
 21436  func (c *CreativeFieldValuesUpdateCall) Context(ctx context.Context) *CreativeFieldValuesUpdateCall {
 21437  	c.ctx_ = ctx
 21438  	return c
 21439  }
 21440  
 21441  // Header returns a http.Header that can be modified by the caller to add
 21442  // headers to the request.
 21443  func (c *CreativeFieldValuesUpdateCall) Header() http.Header {
 21444  	if c.header_ == nil {
 21445  		c.header_ = make(http.Header)
 21446  	}
 21447  	return c.header_
 21448  }
 21449  
 21450  func (c *CreativeFieldValuesUpdateCall) doRequest(alt string) (*http.Response, error) {
 21451  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 21452  	var body io.Reader = nil
 21453  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefieldvalue)
 21454  	if err != nil {
 21455  		return nil, err
 21456  	}
 21457  	c.urlParams_.Set("alt", alt)
 21458  	c.urlParams_.Set("prettyPrint", "false")
 21459  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields/{+creativeFieldId}/creativeFieldValues")
 21460  	urls += "?" + c.urlParams_.Encode()
 21461  	req, err := http.NewRequest("PUT", urls, body)
 21462  	if err != nil {
 21463  		return nil, err
 21464  	}
 21465  	req.Header = reqHeaders
 21466  	googleapi.Expand(req.URL, map[string]string{
 21467  		"profileId":       strconv.FormatInt(c.profileId, 10),
 21468  		"creativeFieldId": strconv.FormatInt(c.creativeFieldId, 10),
 21469  	})
 21470  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21471  }
 21472  
 21473  // Do executes the "dfareporting.creativeFieldValues.update" call.
 21474  // Any non-2xx status code is an error. Response headers are in either
 21475  // *CreativeFieldValue.ServerResponse.Header or (if a response was returned at
 21476  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 21477  // check whether the returned error was because http.StatusNotModified was
 21478  // returned.
 21479  func (c *CreativeFieldValuesUpdateCall) Do(opts ...googleapi.CallOption) (*CreativeFieldValue, error) {
 21480  	gensupport.SetOptions(c.urlParams_, opts...)
 21481  	res, err := c.doRequest("json")
 21482  	if res != nil && res.StatusCode == http.StatusNotModified {
 21483  		if res.Body != nil {
 21484  			res.Body.Close()
 21485  		}
 21486  		return nil, gensupport.WrapError(&googleapi.Error{
 21487  			Code:   res.StatusCode,
 21488  			Header: res.Header,
 21489  		})
 21490  	}
 21491  	if err != nil {
 21492  		return nil, err
 21493  	}
 21494  	defer googleapi.CloseBody(res)
 21495  	if err := googleapi.CheckResponse(res); err != nil {
 21496  		return nil, gensupport.WrapError(err)
 21497  	}
 21498  	ret := &CreativeFieldValue{
 21499  		ServerResponse: googleapi.ServerResponse{
 21500  			Header:         res.Header,
 21501  			HTTPStatusCode: res.StatusCode,
 21502  		},
 21503  	}
 21504  	target := &ret
 21505  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21506  		return nil, err
 21507  	}
 21508  	return ret, nil
 21509  }
 21510  
 21511  type CreativeFieldsDeleteCall struct {
 21512  	s          *Service
 21513  	profileId  int64
 21514  	id         int64
 21515  	urlParams_ gensupport.URLParams
 21516  	ctx_       context.Context
 21517  	header_    http.Header
 21518  }
 21519  
 21520  // Delete: Deletes an existing creative field.
 21521  //
 21522  // - id: Creative Field ID.
 21523  // - profileId: User profile ID associated with this request.
 21524  func (r *CreativeFieldsService) Delete(profileId int64, id int64) *CreativeFieldsDeleteCall {
 21525  	c := &CreativeFieldsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21526  	c.profileId = profileId
 21527  	c.id = id
 21528  	return c
 21529  }
 21530  
 21531  // Fields allows partial responses to be retrieved. See
 21532  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21533  // details.
 21534  func (c *CreativeFieldsDeleteCall) Fields(s ...googleapi.Field) *CreativeFieldsDeleteCall {
 21535  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21536  	return c
 21537  }
 21538  
 21539  // Context sets the context to be used in this call's Do method.
 21540  func (c *CreativeFieldsDeleteCall) Context(ctx context.Context) *CreativeFieldsDeleteCall {
 21541  	c.ctx_ = ctx
 21542  	return c
 21543  }
 21544  
 21545  // Header returns a http.Header that can be modified by the caller to add
 21546  // headers to the request.
 21547  func (c *CreativeFieldsDeleteCall) Header() http.Header {
 21548  	if c.header_ == nil {
 21549  		c.header_ = make(http.Header)
 21550  	}
 21551  	return c.header_
 21552  }
 21553  
 21554  func (c *CreativeFieldsDeleteCall) doRequest(alt string) (*http.Response, error) {
 21555  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21556  	var body io.Reader = nil
 21557  	c.urlParams_.Set("alt", alt)
 21558  	c.urlParams_.Set("prettyPrint", "false")
 21559  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields/{+id}")
 21560  	urls += "?" + c.urlParams_.Encode()
 21561  	req, err := http.NewRequest("DELETE", urls, body)
 21562  	if err != nil {
 21563  		return nil, err
 21564  	}
 21565  	req.Header = reqHeaders
 21566  	googleapi.Expand(req.URL, map[string]string{
 21567  		"profileId": strconv.FormatInt(c.profileId, 10),
 21568  		"id":        strconv.FormatInt(c.id, 10),
 21569  	})
 21570  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21571  }
 21572  
 21573  // Do executes the "dfareporting.creativeFields.delete" call.
 21574  func (c *CreativeFieldsDeleteCall) Do(opts ...googleapi.CallOption) error {
 21575  	gensupport.SetOptions(c.urlParams_, opts...)
 21576  	res, err := c.doRequest("json")
 21577  	if err != nil {
 21578  		return err
 21579  	}
 21580  	defer googleapi.CloseBody(res)
 21581  	if err := googleapi.CheckResponse(res); err != nil {
 21582  		return gensupport.WrapError(err)
 21583  	}
 21584  	return nil
 21585  }
 21586  
 21587  type CreativeFieldsGetCall struct {
 21588  	s            *Service
 21589  	profileId    int64
 21590  	id           int64
 21591  	urlParams_   gensupport.URLParams
 21592  	ifNoneMatch_ string
 21593  	ctx_         context.Context
 21594  	header_      http.Header
 21595  }
 21596  
 21597  // Get: Gets one creative field by ID.
 21598  //
 21599  // - id: Creative Field ID.
 21600  // - profileId: User profile ID associated with this request.
 21601  func (r *CreativeFieldsService) Get(profileId int64, id int64) *CreativeFieldsGetCall {
 21602  	c := &CreativeFieldsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21603  	c.profileId = profileId
 21604  	c.id = id
 21605  	return c
 21606  }
 21607  
 21608  // Fields allows partial responses to be retrieved. See
 21609  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21610  // details.
 21611  func (c *CreativeFieldsGetCall) Fields(s ...googleapi.Field) *CreativeFieldsGetCall {
 21612  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21613  	return c
 21614  }
 21615  
 21616  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 21617  // object's ETag matches the given value. This is useful for getting updates
 21618  // only after the object has changed since the last request.
 21619  func (c *CreativeFieldsGetCall) IfNoneMatch(entityTag string) *CreativeFieldsGetCall {
 21620  	c.ifNoneMatch_ = entityTag
 21621  	return c
 21622  }
 21623  
 21624  // Context sets the context to be used in this call's Do method.
 21625  func (c *CreativeFieldsGetCall) Context(ctx context.Context) *CreativeFieldsGetCall {
 21626  	c.ctx_ = ctx
 21627  	return c
 21628  }
 21629  
 21630  // Header returns a http.Header that can be modified by the caller to add
 21631  // headers to the request.
 21632  func (c *CreativeFieldsGetCall) Header() http.Header {
 21633  	if c.header_ == nil {
 21634  		c.header_ = make(http.Header)
 21635  	}
 21636  	return c.header_
 21637  }
 21638  
 21639  func (c *CreativeFieldsGetCall) doRequest(alt string) (*http.Response, error) {
 21640  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21641  	if c.ifNoneMatch_ != "" {
 21642  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 21643  	}
 21644  	var body io.Reader = nil
 21645  	c.urlParams_.Set("alt", alt)
 21646  	c.urlParams_.Set("prettyPrint", "false")
 21647  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields/{+id}")
 21648  	urls += "?" + c.urlParams_.Encode()
 21649  	req, err := http.NewRequest("GET", urls, body)
 21650  	if err != nil {
 21651  		return nil, err
 21652  	}
 21653  	req.Header = reqHeaders
 21654  	googleapi.Expand(req.URL, map[string]string{
 21655  		"profileId": strconv.FormatInt(c.profileId, 10),
 21656  		"id":        strconv.FormatInt(c.id, 10),
 21657  	})
 21658  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21659  }
 21660  
 21661  // Do executes the "dfareporting.creativeFields.get" call.
 21662  // Any non-2xx status code is an error. Response headers are in either
 21663  // *CreativeField.ServerResponse.Header or (if a response was returned at all)
 21664  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 21665  // whether the returned error was because http.StatusNotModified was returned.
 21666  func (c *CreativeFieldsGetCall) Do(opts ...googleapi.CallOption) (*CreativeField, error) {
 21667  	gensupport.SetOptions(c.urlParams_, opts...)
 21668  	res, err := c.doRequest("json")
 21669  	if res != nil && res.StatusCode == http.StatusNotModified {
 21670  		if res.Body != nil {
 21671  			res.Body.Close()
 21672  		}
 21673  		return nil, gensupport.WrapError(&googleapi.Error{
 21674  			Code:   res.StatusCode,
 21675  			Header: res.Header,
 21676  		})
 21677  	}
 21678  	if err != nil {
 21679  		return nil, err
 21680  	}
 21681  	defer googleapi.CloseBody(res)
 21682  	if err := googleapi.CheckResponse(res); err != nil {
 21683  		return nil, gensupport.WrapError(err)
 21684  	}
 21685  	ret := &CreativeField{
 21686  		ServerResponse: googleapi.ServerResponse{
 21687  			Header:         res.Header,
 21688  			HTTPStatusCode: res.StatusCode,
 21689  		},
 21690  	}
 21691  	target := &ret
 21692  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21693  		return nil, err
 21694  	}
 21695  	return ret, nil
 21696  }
 21697  
 21698  type CreativeFieldsInsertCall struct {
 21699  	s             *Service
 21700  	profileId     int64
 21701  	creativefield *CreativeField
 21702  	urlParams_    gensupport.URLParams
 21703  	ctx_          context.Context
 21704  	header_       http.Header
 21705  }
 21706  
 21707  // Insert: Inserts a new creative field.
 21708  //
 21709  // - profileId: User profile ID associated with this request.
 21710  func (r *CreativeFieldsService) Insert(profileId int64, creativefield *CreativeField) *CreativeFieldsInsertCall {
 21711  	c := &CreativeFieldsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21712  	c.profileId = profileId
 21713  	c.creativefield = creativefield
 21714  	return c
 21715  }
 21716  
 21717  // Fields allows partial responses to be retrieved. See
 21718  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21719  // details.
 21720  func (c *CreativeFieldsInsertCall) Fields(s ...googleapi.Field) *CreativeFieldsInsertCall {
 21721  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21722  	return c
 21723  }
 21724  
 21725  // Context sets the context to be used in this call's Do method.
 21726  func (c *CreativeFieldsInsertCall) Context(ctx context.Context) *CreativeFieldsInsertCall {
 21727  	c.ctx_ = ctx
 21728  	return c
 21729  }
 21730  
 21731  // Header returns a http.Header that can be modified by the caller to add
 21732  // headers to the request.
 21733  func (c *CreativeFieldsInsertCall) Header() http.Header {
 21734  	if c.header_ == nil {
 21735  		c.header_ = make(http.Header)
 21736  	}
 21737  	return c.header_
 21738  }
 21739  
 21740  func (c *CreativeFieldsInsertCall) doRequest(alt string) (*http.Response, error) {
 21741  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 21742  	var body io.Reader = nil
 21743  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefield)
 21744  	if err != nil {
 21745  		return nil, err
 21746  	}
 21747  	c.urlParams_.Set("alt", alt)
 21748  	c.urlParams_.Set("prettyPrint", "false")
 21749  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields")
 21750  	urls += "?" + c.urlParams_.Encode()
 21751  	req, err := http.NewRequest("POST", urls, body)
 21752  	if err != nil {
 21753  		return nil, err
 21754  	}
 21755  	req.Header = reqHeaders
 21756  	googleapi.Expand(req.URL, map[string]string{
 21757  		"profileId": strconv.FormatInt(c.profileId, 10),
 21758  	})
 21759  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21760  }
 21761  
 21762  // Do executes the "dfareporting.creativeFields.insert" call.
 21763  // Any non-2xx status code is an error. Response headers are in either
 21764  // *CreativeField.ServerResponse.Header or (if a response was returned at all)
 21765  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 21766  // whether the returned error was because http.StatusNotModified was returned.
 21767  func (c *CreativeFieldsInsertCall) Do(opts ...googleapi.CallOption) (*CreativeField, error) {
 21768  	gensupport.SetOptions(c.urlParams_, opts...)
 21769  	res, err := c.doRequest("json")
 21770  	if res != nil && res.StatusCode == http.StatusNotModified {
 21771  		if res.Body != nil {
 21772  			res.Body.Close()
 21773  		}
 21774  		return nil, gensupport.WrapError(&googleapi.Error{
 21775  			Code:   res.StatusCode,
 21776  			Header: res.Header,
 21777  		})
 21778  	}
 21779  	if err != nil {
 21780  		return nil, err
 21781  	}
 21782  	defer googleapi.CloseBody(res)
 21783  	if err := googleapi.CheckResponse(res); err != nil {
 21784  		return nil, gensupport.WrapError(err)
 21785  	}
 21786  	ret := &CreativeField{
 21787  		ServerResponse: googleapi.ServerResponse{
 21788  			Header:         res.Header,
 21789  			HTTPStatusCode: res.StatusCode,
 21790  		},
 21791  	}
 21792  	target := &ret
 21793  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21794  		return nil, err
 21795  	}
 21796  	return ret, nil
 21797  }
 21798  
 21799  type CreativeFieldsListCall struct {
 21800  	s            *Service
 21801  	profileId    int64
 21802  	urlParams_   gensupport.URLParams
 21803  	ifNoneMatch_ string
 21804  	ctx_         context.Context
 21805  	header_      http.Header
 21806  }
 21807  
 21808  // List: Retrieves a list of creative fields, possibly filtered. This method
 21809  // supports paging.
 21810  //
 21811  // - profileId: User profile ID associated with this request.
 21812  func (r *CreativeFieldsService) List(profileId int64) *CreativeFieldsListCall {
 21813  	c := &CreativeFieldsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 21814  	c.profileId = profileId
 21815  	return c
 21816  }
 21817  
 21818  // AdvertiserIds sets the optional parameter "advertiserIds": Select only
 21819  // creative fields that belong to these advertisers.
 21820  func (c *CreativeFieldsListCall) AdvertiserIds(advertiserIds ...int64) *CreativeFieldsListCall {
 21821  	var advertiserIds_ []string
 21822  	for _, v := range advertiserIds {
 21823  		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
 21824  	}
 21825  	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
 21826  	return c
 21827  }
 21828  
 21829  // Ids sets the optional parameter "ids": Select only creative fields with
 21830  // these IDs.
 21831  func (c *CreativeFieldsListCall) Ids(ids ...int64) *CreativeFieldsListCall {
 21832  	var ids_ []string
 21833  	for _, v := range ids {
 21834  		ids_ = append(ids_, fmt.Sprint(v))
 21835  	}
 21836  	c.urlParams_.SetMulti("ids", ids_)
 21837  	return c
 21838  }
 21839  
 21840  // MaxResults sets the optional parameter "maxResults": Maximum number of
 21841  // results to return.
 21842  func (c *CreativeFieldsListCall) MaxResults(maxResults int64) *CreativeFieldsListCall {
 21843  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 21844  	return c
 21845  }
 21846  
 21847  // PageToken sets the optional parameter "pageToken": Value of the
 21848  // nextPageToken from the previous result page.
 21849  func (c *CreativeFieldsListCall) PageToken(pageToken string) *CreativeFieldsListCall {
 21850  	c.urlParams_.Set("pageToken", pageToken)
 21851  	return c
 21852  }
 21853  
 21854  // SearchString sets the optional parameter "searchString": Allows searching
 21855  // for creative fields by name or ID. Wildcards (*) are allowed. For example,
 21856  // "creativefield*2015" will return creative fields with names like
 21857  // "creativefield June 2015", "creativefield April 2015", or simply
 21858  // "creativefield 2015". Most of the searches also add wild-cards implicitly at
 21859  // the start and the end of the search string. For example, a search string of
 21860  // "creativefield" will match creative fields with the name "my creativefield",
 21861  // "creativefield 2015", or simply "creativefield".
 21862  func (c *CreativeFieldsListCall) SearchString(searchString string) *CreativeFieldsListCall {
 21863  	c.urlParams_.Set("searchString", searchString)
 21864  	return c
 21865  }
 21866  
 21867  // SortField sets the optional parameter "sortField": Field by which to sort
 21868  // the list.
 21869  //
 21870  // Possible values:
 21871  //
 21872  //	"ID" (default)
 21873  //	"NAME"
 21874  func (c *CreativeFieldsListCall) SortField(sortField string) *CreativeFieldsListCall {
 21875  	c.urlParams_.Set("sortField", sortField)
 21876  	return c
 21877  }
 21878  
 21879  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 21880  //
 21881  // Possible values:
 21882  //
 21883  //	"ASCENDING" (default) - Ascending order.
 21884  //	"DESCENDING" - Descending order.
 21885  func (c *CreativeFieldsListCall) SortOrder(sortOrder string) *CreativeFieldsListCall {
 21886  	c.urlParams_.Set("sortOrder", sortOrder)
 21887  	return c
 21888  }
 21889  
 21890  // Fields allows partial responses to be retrieved. See
 21891  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 21892  // details.
 21893  func (c *CreativeFieldsListCall) Fields(s ...googleapi.Field) *CreativeFieldsListCall {
 21894  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 21895  	return c
 21896  }
 21897  
 21898  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 21899  // object's ETag matches the given value. This is useful for getting updates
 21900  // only after the object has changed since the last request.
 21901  func (c *CreativeFieldsListCall) IfNoneMatch(entityTag string) *CreativeFieldsListCall {
 21902  	c.ifNoneMatch_ = entityTag
 21903  	return c
 21904  }
 21905  
 21906  // Context sets the context to be used in this call's Do method.
 21907  func (c *CreativeFieldsListCall) Context(ctx context.Context) *CreativeFieldsListCall {
 21908  	c.ctx_ = ctx
 21909  	return c
 21910  }
 21911  
 21912  // Header returns a http.Header that can be modified by the caller to add
 21913  // headers to the request.
 21914  func (c *CreativeFieldsListCall) Header() http.Header {
 21915  	if c.header_ == nil {
 21916  		c.header_ = make(http.Header)
 21917  	}
 21918  	return c.header_
 21919  }
 21920  
 21921  func (c *CreativeFieldsListCall) doRequest(alt string) (*http.Response, error) {
 21922  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 21923  	if c.ifNoneMatch_ != "" {
 21924  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 21925  	}
 21926  	var body io.Reader = nil
 21927  	c.urlParams_.Set("alt", alt)
 21928  	c.urlParams_.Set("prettyPrint", "false")
 21929  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields")
 21930  	urls += "?" + c.urlParams_.Encode()
 21931  	req, err := http.NewRequest("GET", urls, body)
 21932  	if err != nil {
 21933  		return nil, err
 21934  	}
 21935  	req.Header = reqHeaders
 21936  	googleapi.Expand(req.URL, map[string]string{
 21937  		"profileId": strconv.FormatInt(c.profileId, 10),
 21938  	})
 21939  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 21940  }
 21941  
 21942  // Do executes the "dfareporting.creativeFields.list" call.
 21943  // Any non-2xx status code is an error. Response headers are in either
 21944  // *CreativeFieldsListResponse.ServerResponse.Header or (if a response was
 21945  // returned at all) in error.(*googleapi.Error).Header. Use
 21946  // googleapi.IsNotModified to check whether the returned error was because
 21947  // http.StatusNotModified was returned.
 21948  func (c *CreativeFieldsListCall) Do(opts ...googleapi.CallOption) (*CreativeFieldsListResponse, error) {
 21949  	gensupport.SetOptions(c.urlParams_, opts...)
 21950  	res, err := c.doRequest("json")
 21951  	if res != nil && res.StatusCode == http.StatusNotModified {
 21952  		if res.Body != nil {
 21953  			res.Body.Close()
 21954  		}
 21955  		return nil, gensupport.WrapError(&googleapi.Error{
 21956  			Code:   res.StatusCode,
 21957  			Header: res.Header,
 21958  		})
 21959  	}
 21960  	if err != nil {
 21961  		return nil, err
 21962  	}
 21963  	defer googleapi.CloseBody(res)
 21964  	if err := googleapi.CheckResponse(res); err != nil {
 21965  		return nil, gensupport.WrapError(err)
 21966  	}
 21967  	ret := &CreativeFieldsListResponse{
 21968  		ServerResponse: googleapi.ServerResponse{
 21969  			Header:         res.Header,
 21970  			HTTPStatusCode: res.StatusCode,
 21971  		},
 21972  	}
 21973  	target := &ret
 21974  	if err := gensupport.DecodeResponse(target, res); err != nil {
 21975  		return nil, err
 21976  	}
 21977  	return ret, nil
 21978  }
 21979  
 21980  // Pages invokes f for each page of results.
 21981  // A non-nil error returned from f will halt the iteration.
 21982  // The provided context supersedes any context provided to the Context method.
 21983  func (c *CreativeFieldsListCall) Pages(ctx context.Context, f func(*CreativeFieldsListResponse) error) error {
 21984  	c.ctx_ = ctx
 21985  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 21986  	for {
 21987  		x, err := c.Do()
 21988  		if err != nil {
 21989  			return err
 21990  		}
 21991  		if err := f(x); err != nil {
 21992  			return err
 21993  		}
 21994  		if x.NextPageToken == "" {
 21995  			return nil
 21996  		}
 21997  		c.PageToken(x.NextPageToken)
 21998  	}
 21999  }
 22000  
 22001  type CreativeFieldsPatchCall struct {
 22002  	s             *Service
 22003  	profileId     int64
 22004  	creativefield *CreativeField
 22005  	urlParams_    gensupport.URLParams
 22006  	ctx_          context.Context
 22007  	header_       http.Header
 22008  }
 22009  
 22010  // Patch: Updates an existing creative field. This method supports patch
 22011  // semantics.
 22012  //
 22013  // - id: CreativeField ID.
 22014  // - profileId: User profile ID associated with this request.
 22015  func (r *CreativeFieldsService) Patch(profileId int64, id int64, creativefield *CreativeField) *CreativeFieldsPatchCall {
 22016  	c := &CreativeFieldsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22017  	c.profileId = profileId
 22018  	c.urlParams_.Set("id", fmt.Sprint(id))
 22019  	c.creativefield = creativefield
 22020  	return c
 22021  }
 22022  
 22023  // Fields allows partial responses to be retrieved. See
 22024  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22025  // details.
 22026  func (c *CreativeFieldsPatchCall) Fields(s ...googleapi.Field) *CreativeFieldsPatchCall {
 22027  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22028  	return c
 22029  }
 22030  
 22031  // Context sets the context to be used in this call's Do method.
 22032  func (c *CreativeFieldsPatchCall) Context(ctx context.Context) *CreativeFieldsPatchCall {
 22033  	c.ctx_ = ctx
 22034  	return c
 22035  }
 22036  
 22037  // Header returns a http.Header that can be modified by the caller to add
 22038  // headers to the request.
 22039  func (c *CreativeFieldsPatchCall) Header() http.Header {
 22040  	if c.header_ == nil {
 22041  		c.header_ = make(http.Header)
 22042  	}
 22043  	return c.header_
 22044  }
 22045  
 22046  func (c *CreativeFieldsPatchCall) doRequest(alt string) (*http.Response, error) {
 22047  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 22048  	var body io.Reader = nil
 22049  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefield)
 22050  	if err != nil {
 22051  		return nil, err
 22052  	}
 22053  	c.urlParams_.Set("alt", alt)
 22054  	c.urlParams_.Set("prettyPrint", "false")
 22055  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields")
 22056  	urls += "?" + c.urlParams_.Encode()
 22057  	req, err := http.NewRequest("PATCH", urls, body)
 22058  	if err != nil {
 22059  		return nil, err
 22060  	}
 22061  	req.Header = reqHeaders
 22062  	googleapi.Expand(req.URL, map[string]string{
 22063  		"profileId": strconv.FormatInt(c.profileId, 10),
 22064  	})
 22065  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22066  }
 22067  
 22068  // Do executes the "dfareporting.creativeFields.patch" call.
 22069  // Any non-2xx status code is an error. Response headers are in either
 22070  // *CreativeField.ServerResponse.Header or (if a response was returned at all)
 22071  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22072  // whether the returned error was because http.StatusNotModified was returned.
 22073  func (c *CreativeFieldsPatchCall) Do(opts ...googleapi.CallOption) (*CreativeField, error) {
 22074  	gensupport.SetOptions(c.urlParams_, opts...)
 22075  	res, err := c.doRequest("json")
 22076  	if res != nil && res.StatusCode == http.StatusNotModified {
 22077  		if res.Body != nil {
 22078  			res.Body.Close()
 22079  		}
 22080  		return nil, gensupport.WrapError(&googleapi.Error{
 22081  			Code:   res.StatusCode,
 22082  			Header: res.Header,
 22083  		})
 22084  	}
 22085  	if err != nil {
 22086  		return nil, err
 22087  	}
 22088  	defer googleapi.CloseBody(res)
 22089  	if err := googleapi.CheckResponse(res); err != nil {
 22090  		return nil, gensupport.WrapError(err)
 22091  	}
 22092  	ret := &CreativeField{
 22093  		ServerResponse: googleapi.ServerResponse{
 22094  			Header:         res.Header,
 22095  			HTTPStatusCode: res.StatusCode,
 22096  		},
 22097  	}
 22098  	target := &ret
 22099  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22100  		return nil, err
 22101  	}
 22102  	return ret, nil
 22103  }
 22104  
 22105  type CreativeFieldsUpdateCall struct {
 22106  	s             *Service
 22107  	profileId     int64
 22108  	creativefield *CreativeField
 22109  	urlParams_    gensupport.URLParams
 22110  	ctx_          context.Context
 22111  	header_       http.Header
 22112  }
 22113  
 22114  // Update: Updates an existing creative field.
 22115  //
 22116  // - profileId: User profile ID associated with this request.
 22117  func (r *CreativeFieldsService) Update(profileId int64, creativefield *CreativeField) *CreativeFieldsUpdateCall {
 22118  	c := &CreativeFieldsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22119  	c.profileId = profileId
 22120  	c.creativefield = creativefield
 22121  	return c
 22122  }
 22123  
 22124  // Fields allows partial responses to be retrieved. See
 22125  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22126  // details.
 22127  func (c *CreativeFieldsUpdateCall) Fields(s ...googleapi.Field) *CreativeFieldsUpdateCall {
 22128  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22129  	return c
 22130  }
 22131  
 22132  // Context sets the context to be used in this call's Do method.
 22133  func (c *CreativeFieldsUpdateCall) Context(ctx context.Context) *CreativeFieldsUpdateCall {
 22134  	c.ctx_ = ctx
 22135  	return c
 22136  }
 22137  
 22138  // Header returns a http.Header that can be modified by the caller to add
 22139  // headers to the request.
 22140  func (c *CreativeFieldsUpdateCall) Header() http.Header {
 22141  	if c.header_ == nil {
 22142  		c.header_ = make(http.Header)
 22143  	}
 22144  	return c.header_
 22145  }
 22146  
 22147  func (c *CreativeFieldsUpdateCall) doRequest(alt string) (*http.Response, error) {
 22148  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 22149  	var body io.Reader = nil
 22150  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativefield)
 22151  	if err != nil {
 22152  		return nil, err
 22153  	}
 22154  	c.urlParams_.Set("alt", alt)
 22155  	c.urlParams_.Set("prettyPrint", "false")
 22156  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeFields")
 22157  	urls += "?" + c.urlParams_.Encode()
 22158  	req, err := http.NewRequest("PUT", urls, body)
 22159  	if err != nil {
 22160  		return nil, err
 22161  	}
 22162  	req.Header = reqHeaders
 22163  	googleapi.Expand(req.URL, map[string]string{
 22164  		"profileId": strconv.FormatInt(c.profileId, 10),
 22165  	})
 22166  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22167  }
 22168  
 22169  // Do executes the "dfareporting.creativeFields.update" call.
 22170  // Any non-2xx status code is an error. Response headers are in either
 22171  // *CreativeField.ServerResponse.Header or (if a response was returned at all)
 22172  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22173  // whether the returned error was because http.StatusNotModified was returned.
 22174  func (c *CreativeFieldsUpdateCall) Do(opts ...googleapi.CallOption) (*CreativeField, error) {
 22175  	gensupport.SetOptions(c.urlParams_, opts...)
 22176  	res, err := c.doRequest("json")
 22177  	if res != nil && res.StatusCode == http.StatusNotModified {
 22178  		if res.Body != nil {
 22179  			res.Body.Close()
 22180  		}
 22181  		return nil, gensupport.WrapError(&googleapi.Error{
 22182  			Code:   res.StatusCode,
 22183  			Header: res.Header,
 22184  		})
 22185  	}
 22186  	if err != nil {
 22187  		return nil, err
 22188  	}
 22189  	defer googleapi.CloseBody(res)
 22190  	if err := googleapi.CheckResponse(res); err != nil {
 22191  		return nil, gensupport.WrapError(err)
 22192  	}
 22193  	ret := &CreativeField{
 22194  		ServerResponse: googleapi.ServerResponse{
 22195  			Header:         res.Header,
 22196  			HTTPStatusCode: res.StatusCode,
 22197  		},
 22198  	}
 22199  	target := &ret
 22200  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22201  		return nil, err
 22202  	}
 22203  	return ret, nil
 22204  }
 22205  
 22206  type CreativeGroupsGetCall struct {
 22207  	s            *Service
 22208  	profileId    int64
 22209  	id           int64
 22210  	urlParams_   gensupport.URLParams
 22211  	ifNoneMatch_ string
 22212  	ctx_         context.Context
 22213  	header_      http.Header
 22214  }
 22215  
 22216  // Get: Gets one creative group by ID.
 22217  //
 22218  // - id: Creative group ID.
 22219  // - profileId: User profile ID associated with this request.
 22220  func (r *CreativeGroupsService) Get(profileId int64, id int64) *CreativeGroupsGetCall {
 22221  	c := &CreativeGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22222  	c.profileId = profileId
 22223  	c.id = id
 22224  	return c
 22225  }
 22226  
 22227  // Fields allows partial responses to be retrieved. See
 22228  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22229  // details.
 22230  func (c *CreativeGroupsGetCall) Fields(s ...googleapi.Field) *CreativeGroupsGetCall {
 22231  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22232  	return c
 22233  }
 22234  
 22235  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 22236  // object's ETag matches the given value. This is useful for getting updates
 22237  // only after the object has changed since the last request.
 22238  func (c *CreativeGroupsGetCall) IfNoneMatch(entityTag string) *CreativeGroupsGetCall {
 22239  	c.ifNoneMatch_ = entityTag
 22240  	return c
 22241  }
 22242  
 22243  // Context sets the context to be used in this call's Do method.
 22244  func (c *CreativeGroupsGetCall) Context(ctx context.Context) *CreativeGroupsGetCall {
 22245  	c.ctx_ = ctx
 22246  	return c
 22247  }
 22248  
 22249  // Header returns a http.Header that can be modified by the caller to add
 22250  // headers to the request.
 22251  func (c *CreativeGroupsGetCall) Header() http.Header {
 22252  	if c.header_ == nil {
 22253  		c.header_ = make(http.Header)
 22254  	}
 22255  	return c.header_
 22256  }
 22257  
 22258  func (c *CreativeGroupsGetCall) doRequest(alt string) (*http.Response, error) {
 22259  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 22260  	if c.ifNoneMatch_ != "" {
 22261  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 22262  	}
 22263  	var body io.Reader = nil
 22264  	c.urlParams_.Set("alt", alt)
 22265  	c.urlParams_.Set("prettyPrint", "false")
 22266  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeGroups/{+id}")
 22267  	urls += "?" + c.urlParams_.Encode()
 22268  	req, err := http.NewRequest("GET", urls, body)
 22269  	if err != nil {
 22270  		return nil, err
 22271  	}
 22272  	req.Header = reqHeaders
 22273  	googleapi.Expand(req.URL, map[string]string{
 22274  		"profileId": strconv.FormatInt(c.profileId, 10),
 22275  		"id":        strconv.FormatInt(c.id, 10),
 22276  	})
 22277  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22278  }
 22279  
 22280  // Do executes the "dfareporting.creativeGroups.get" call.
 22281  // Any non-2xx status code is an error. Response headers are in either
 22282  // *CreativeGroup.ServerResponse.Header or (if a response was returned at all)
 22283  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22284  // whether the returned error was because http.StatusNotModified was returned.
 22285  func (c *CreativeGroupsGetCall) Do(opts ...googleapi.CallOption) (*CreativeGroup, error) {
 22286  	gensupport.SetOptions(c.urlParams_, opts...)
 22287  	res, err := c.doRequest("json")
 22288  	if res != nil && res.StatusCode == http.StatusNotModified {
 22289  		if res.Body != nil {
 22290  			res.Body.Close()
 22291  		}
 22292  		return nil, gensupport.WrapError(&googleapi.Error{
 22293  			Code:   res.StatusCode,
 22294  			Header: res.Header,
 22295  		})
 22296  	}
 22297  	if err != nil {
 22298  		return nil, err
 22299  	}
 22300  	defer googleapi.CloseBody(res)
 22301  	if err := googleapi.CheckResponse(res); err != nil {
 22302  		return nil, gensupport.WrapError(err)
 22303  	}
 22304  	ret := &CreativeGroup{
 22305  		ServerResponse: googleapi.ServerResponse{
 22306  			Header:         res.Header,
 22307  			HTTPStatusCode: res.StatusCode,
 22308  		},
 22309  	}
 22310  	target := &ret
 22311  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22312  		return nil, err
 22313  	}
 22314  	return ret, nil
 22315  }
 22316  
 22317  type CreativeGroupsInsertCall struct {
 22318  	s             *Service
 22319  	profileId     int64
 22320  	creativegroup *CreativeGroup
 22321  	urlParams_    gensupport.URLParams
 22322  	ctx_          context.Context
 22323  	header_       http.Header
 22324  }
 22325  
 22326  // Insert: Inserts a new creative group.
 22327  //
 22328  // - profileId: User profile ID associated with this request.
 22329  func (r *CreativeGroupsService) Insert(profileId int64, creativegroup *CreativeGroup) *CreativeGroupsInsertCall {
 22330  	c := &CreativeGroupsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22331  	c.profileId = profileId
 22332  	c.creativegroup = creativegroup
 22333  	return c
 22334  }
 22335  
 22336  // Fields allows partial responses to be retrieved. See
 22337  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22338  // details.
 22339  func (c *CreativeGroupsInsertCall) Fields(s ...googleapi.Field) *CreativeGroupsInsertCall {
 22340  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22341  	return c
 22342  }
 22343  
 22344  // Context sets the context to be used in this call's Do method.
 22345  func (c *CreativeGroupsInsertCall) Context(ctx context.Context) *CreativeGroupsInsertCall {
 22346  	c.ctx_ = ctx
 22347  	return c
 22348  }
 22349  
 22350  // Header returns a http.Header that can be modified by the caller to add
 22351  // headers to the request.
 22352  func (c *CreativeGroupsInsertCall) Header() http.Header {
 22353  	if c.header_ == nil {
 22354  		c.header_ = make(http.Header)
 22355  	}
 22356  	return c.header_
 22357  }
 22358  
 22359  func (c *CreativeGroupsInsertCall) doRequest(alt string) (*http.Response, error) {
 22360  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 22361  	var body io.Reader = nil
 22362  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativegroup)
 22363  	if err != nil {
 22364  		return nil, err
 22365  	}
 22366  	c.urlParams_.Set("alt", alt)
 22367  	c.urlParams_.Set("prettyPrint", "false")
 22368  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeGroups")
 22369  	urls += "?" + c.urlParams_.Encode()
 22370  	req, err := http.NewRequest("POST", urls, body)
 22371  	if err != nil {
 22372  		return nil, err
 22373  	}
 22374  	req.Header = reqHeaders
 22375  	googleapi.Expand(req.URL, map[string]string{
 22376  		"profileId": strconv.FormatInt(c.profileId, 10),
 22377  	})
 22378  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22379  }
 22380  
 22381  // Do executes the "dfareporting.creativeGroups.insert" call.
 22382  // Any non-2xx status code is an error. Response headers are in either
 22383  // *CreativeGroup.ServerResponse.Header or (if a response was returned at all)
 22384  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22385  // whether the returned error was because http.StatusNotModified was returned.
 22386  func (c *CreativeGroupsInsertCall) Do(opts ...googleapi.CallOption) (*CreativeGroup, error) {
 22387  	gensupport.SetOptions(c.urlParams_, opts...)
 22388  	res, err := c.doRequest("json")
 22389  	if res != nil && res.StatusCode == http.StatusNotModified {
 22390  		if res.Body != nil {
 22391  			res.Body.Close()
 22392  		}
 22393  		return nil, gensupport.WrapError(&googleapi.Error{
 22394  			Code:   res.StatusCode,
 22395  			Header: res.Header,
 22396  		})
 22397  	}
 22398  	if err != nil {
 22399  		return nil, err
 22400  	}
 22401  	defer googleapi.CloseBody(res)
 22402  	if err := googleapi.CheckResponse(res); err != nil {
 22403  		return nil, gensupport.WrapError(err)
 22404  	}
 22405  	ret := &CreativeGroup{
 22406  		ServerResponse: googleapi.ServerResponse{
 22407  			Header:         res.Header,
 22408  			HTTPStatusCode: res.StatusCode,
 22409  		},
 22410  	}
 22411  	target := &ret
 22412  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22413  		return nil, err
 22414  	}
 22415  	return ret, nil
 22416  }
 22417  
 22418  type CreativeGroupsListCall struct {
 22419  	s            *Service
 22420  	profileId    int64
 22421  	urlParams_   gensupport.URLParams
 22422  	ifNoneMatch_ string
 22423  	ctx_         context.Context
 22424  	header_      http.Header
 22425  }
 22426  
 22427  // List: Retrieves a list of creative groups, possibly filtered. This method
 22428  // supports paging.
 22429  //
 22430  // - profileId: User profile ID associated with this request.
 22431  func (r *CreativeGroupsService) List(profileId int64) *CreativeGroupsListCall {
 22432  	c := &CreativeGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22433  	c.profileId = profileId
 22434  	return c
 22435  }
 22436  
 22437  // AdvertiserIds sets the optional parameter "advertiserIds": Select only
 22438  // creative groups that belong to these advertisers.
 22439  func (c *CreativeGroupsListCall) AdvertiserIds(advertiserIds ...int64) *CreativeGroupsListCall {
 22440  	var advertiserIds_ []string
 22441  	for _, v := range advertiserIds {
 22442  		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
 22443  	}
 22444  	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
 22445  	return c
 22446  }
 22447  
 22448  // GroupNumber sets the optional parameter "groupNumber": Select only creative
 22449  // groups that belong to this subgroup.
 22450  func (c *CreativeGroupsListCall) GroupNumber(groupNumber int64) *CreativeGroupsListCall {
 22451  	c.urlParams_.Set("groupNumber", fmt.Sprint(groupNumber))
 22452  	return c
 22453  }
 22454  
 22455  // Ids sets the optional parameter "ids": Select only creative groups with
 22456  // these IDs.
 22457  func (c *CreativeGroupsListCall) Ids(ids ...int64) *CreativeGroupsListCall {
 22458  	var ids_ []string
 22459  	for _, v := range ids {
 22460  		ids_ = append(ids_, fmt.Sprint(v))
 22461  	}
 22462  	c.urlParams_.SetMulti("ids", ids_)
 22463  	return c
 22464  }
 22465  
 22466  // MaxResults sets the optional parameter "maxResults": Maximum number of
 22467  // results to return.
 22468  func (c *CreativeGroupsListCall) MaxResults(maxResults int64) *CreativeGroupsListCall {
 22469  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 22470  	return c
 22471  }
 22472  
 22473  // PageToken sets the optional parameter "pageToken": Value of the
 22474  // nextPageToken from the previous result page.
 22475  func (c *CreativeGroupsListCall) PageToken(pageToken string) *CreativeGroupsListCall {
 22476  	c.urlParams_.Set("pageToken", pageToken)
 22477  	return c
 22478  }
 22479  
 22480  // SearchString sets the optional parameter "searchString": Allows searching
 22481  // for creative groups by name or ID. Wildcards (*) are allowed. For example,
 22482  // "creativegroup*2015" will return creative groups with names like
 22483  // "creativegroup June 2015", "creativegroup April 2015", or simply
 22484  // "creativegroup 2015". Most of the searches also add wild-cards implicitly at
 22485  // the start and the end of the search string. For example, a search string of
 22486  // "creativegroup" will match creative groups with the name "my creativegroup",
 22487  // "creativegroup 2015", or simply "creativegroup".
 22488  func (c *CreativeGroupsListCall) SearchString(searchString string) *CreativeGroupsListCall {
 22489  	c.urlParams_.Set("searchString", searchString)
 22490  	return c
 22491  }
 22492  
 22493  // SortField sets the optional parameter "sortField": Field by which to sort
 22494  // the list.
 22495  //
 22496  // Possible values:
 22497  //
 22498  //	"ID" (default)
 22499  //	"NAME"
 22500  func (c *CreativeGroupsListCall) SortField(sortField string) *CreativeGroupsListCall {
 22501  	c.urlParams_.Set("sortField", sortField)
 22502  	return c
 22503  }
 22504  
 22505  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 22506  //
 22507  // Possible values:
 22508  //
 22509  //	"ASCENDING" (default) - Ascending order.
 22510  //	"DESCENDING" - Descending order.
 22511  func (c *CreativeGroupsListCall) SortOrder(sortOrder string) *CreativeGroupsListCall {
 22512  	c.urlParams_.Set("sortOrder", sortOrder)
 22513  	return c
 22514  }
 22515  
 22516  // Fields allows partial responses to be retrieved. See
 22517  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22518  // details.
 22519  func (c *CreativeGroupsListCall) Fields(s ...googleapi.Field) *CreativeGroupsListCall {
 22520  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22521  	return c
 22522  }
 22523  
 22524  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 22525  // object's ETag matches the given value. This is useful for getting updates
 22526  // only after the object has changed since the last request.
 22527  func (c *CreativeGroupsListCall) IfNoneMatch(entityTag string) *CreativeGroupsListCall {
 22528  	c.ifNoneMatch_ = entityTag
 22529  	return c
 22530  }
 22531  
 22532  // Context sets the context to be used in this call's Do method.
 22533  func (c *CreativeGroupsListCall) Context(ctx context.Context) *CreativeGroupsListCall {
 22534  	c.ctx_ = ctx
 22535  	return c
 22536  }
 22537  
 22538  // Header returns a http.Header that can be modified by the caller to add
 22539  // headers to the request.
 22540  func (c *CreativeGroupsListCall) Header() http.Header {
 22541  	if c.header_ == nil {
 22542  		c.header_ = make(http.Header)
 22543  	}
 22544  	return c.header_
 22545  }
 22546  
 22547  func (c *CreativeGroupsListCall) doRequest(alt string) (*http.Response, error) {
 22548  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 22549  	if c.ifNoneMatch_ != "" {
 22550  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 22551  	}
 22552  	var body io.Reader = nil
 22553  	c.urlParams_.Set("alt", alt)
 22554  	c.urlParams_.Set("prettyPrint", "false")
 22555  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeGroups")
 22556  	urls += "?" + c.urlParams_.Encode()
 22557  	req, err := http.NewRequest("GET", urls, body)
 22558  	if err != nil {
 22559  		return nil, err
 22560  	}
 22561  	req.Header = reqHeaders
 22562  	googleapi.Expand(req.URL, map[string]string{
 22563  		"profileId": strconv.FormatInt(c.profileId, 10),
 22564  	})
 22565  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22566  }
 22567  
 22568  // Do executes the "dfareporting.creativeGroups.list" call.
 22569  // Any non-2xx status code is an error. Response headers are in either
 22570  // *CreativeGroupsListResponse.ServerResponse.Header or (if a response was
 22571  // returned at all) in error.(*googleapi.Error).Header. Use
 22572  // googleapi.IsNotModified to check whether the returned error was because
 22573  // http.StatusNotModified was returned.
 22574  func (c *CreativeGroupsListCall) Do(opts ...googleapi.CallOption) (*CreativeGroupsListResponse, error) {
 22575  	gensupport.SetOptions(c.urlParams_, opts...)
 22576  	res, err := c.doRequest("json")
 22577  	if res != nil && res.StatusCode == http.StatusNotModified {
 22578  		if res.Body != nil {
 22579  			res.Body.Close()
 22580  		}
 22581  		return nil, gensupport.WrapError(&googleapi.Error{
 22582  			Code:   res.StatusCode,
 22583  			Header: res.Header,
 22584  		})
 22585  	}
 22586  	if err != nil {
 22587  		return nil, err
 22588  	}
 22589  	defer googleapi.CloseBody(res)
 22590  	if err := googleapi.CheckResponse(res); err != nil {
 22591  		return nil, gensupport.WrapError(err)
 22592  	}
 22593  	ret := &CreativeGroupsListResponse{
 22594  		ServerResponse: googleapi.ServerResponse{
 22595  			Header:         res.Header,
 22596  			HTTPStatusCode: res.StatusCode,
 22597  		},
 22598  	}
 22599  	target := &ret
 22600  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22601  		return nil, err
 22602  	}
 22603  	return ret, nil
 22604  }
 22605  
 22606  // Pages invokes f for each page of results.
 22607  // A non-nil error returned from f will halt the iteration.
 22608  // The provided context supersedes any context provided to the Context method.
 22609  func (c *CreativeGroupsListCall) Pages(ctx context.Context, f func(*CreativeGroupsListResponse) error) error {
 22610  	c.ctx_ = ctx
 22611  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 22612  	for {
 22613  		x, err := c.Do()
 22614  		if err != nil {
 22615  			return err
 22616  		}
 22617  		if err := f(x); err != nil {
 22618  			return err
 22619  		}
 22620  		if x.NextPageToken == "" {
 22621  			return nil
 22622  		}
 22623  		c.PageToken(x.NextPageToken)
 22624  	}
 22625  }
 22626  
 22627  type CreativeGroupsPatchCall struct {
 22628  	s             *Service
 22629  	profileId     int64
 22630  	creativegroup *CreativeGroup
 22631  	urlParams_    gensupport.URLParams
 22632  	ctx_          context.Context
 22633  	header_       http.Header
 22634  }
 22635  
 22636  // Patch: Updates an existing creative group. This method supports patch
 22637  // semantics.
 22638  //
 22639  // - id: Creative Group ID.
 22640  // - profileId: User profile ID associated with this request.
 22641  func (r *CreativeGroupsService) Patch(profileId int64, id int64, creativegroup *CreativeGroup) *CreativeGroupsPatchCall {
 22642  	c := &CreativeGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22643  	c.profileId = profileId
 22644  	c.urlParams_.Set("id", fmt.Sprint(id))
 22645  	c.creativegroup = creativegroup
 22646  	return c
 22647  }
 22648  
 22649  // Fields allows partial responses to be retrieved. See
 22650  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22651  // details.
 22652  func (c *CreativeGroupsPatchCall) Fields(s ...googleapi.Field) *CreativeGroupsPatchCall {
 22653  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22654  	return c
 22655  }
 22656  
 22657  // Context sets the context to be used in this call's Do method.
 22658  func (c *CreativeGroupsPatchCall) Context(ctx context.Context) *CreativeGroupsPatchCall {
 22659  	c.ctx_ = ctx
 22660  	return c
 22661  }
 22662  
 22663  // Header returns a http.Header that can be modified by the caller to add
 22664  // headers to the request.
 22665  func (c *CreativeGroupsPatchCall) Header() http.Header {
 22666  	if c.header_ == nil {
 22667  		c.header_ = make(http.Header)
 22668  	}
 22669  	return c.header_
 22670  }
 22671  
 22672  func (c *CreativeGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
 22673  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 22674  	var body io.Reader = nil
 22675  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativegroup)
 22676  	if err != nil {
 22677  		return nil, err
 22678  	}
 22679  	c.urlParams_.Set("alt", alt)
 22680  	c.urlParams_.Set("prettyPrint", "false")
 22681  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeGroups")
 22682  	urls += "?" + c.urlParams_.Encode()
 22683  	req, err := http.NewRequest("PATCH", urls, body)
 22684  	if err != nil {
 22685  		return nil, err
 22686  	}
 22687  	req.Header = reqHeaders
 22688  	googleapi.Expand(req.URL, map[string]string{
 22689  		"profileId": strconv.FormatInt(c.profileId, 10),
 22690  	})
 22691  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22692  }
 22693  
 22694  // Do executes the "dfareporting.creativeGroups.patch" call.
 22695  // Any non-2xx status code is an error. Response headers are in either
 22696  // *CreativeGroup.ServerResponse.Header or (if a response was returned at all)
 22697  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22698  // whether the returned error was because http.StatusNotModified was returned.
 22699  func (c *CreativeGroupsPatchCall) Do(opts ...googleapi.CallOption) (*CreativeGroup, error) {
 22700  	gensupport.SetOptions(c.urlParams_, opts...)
 22701  	res, err := c.doRequest("json")
 22702  	if res != nil && res.StatusCode == http.StatusNotModified {
 22703  		if res.Body != nil {
 22704  			res.Body.Close()
 22705  		}
 22706  		return nil, gensupport.WrapError(&googleapi.Error{
 22707  			Code:   res.StatusCode,
 22708  			Header: res.Header,
 22709  		})
 22710  	}
 22711  	if err != nil {
 22712  		return nil, err
 22713  	}
 22714  	defer googleapi.CloseBody(res)
 22715  	if err := googleapi.CheckResponse(res); err != nil {
 22716  		return nil, gensupport.WrapError(err)
 22717  	}
 22718  	ret := &CreativeGroup{
 22719  		ServerResponse: googleapi.ServerResponse{
 22720  			Header:         res.Header,
 22721  			HTTPStatusCode: res.StatusCode,
 22722  		},
 22723  	}
 22724  	target := &ret
 22725  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22726  		return nil, err
 22727  	}
 22728  	return ret, nil
 22729  }
 22730  
 22731  type CreativeGroupsUpdateCall struct {
 22732  	s             *Service
 22733  	profileId     int64
 22734  	creativegroup *CreativeGroup
 22735  	urlParams_    gensupport.URLParams
 22736  	ctx_          context.Context
 22737  	header_       http.Header
 22738  }
 22739  
 22740  // Update: Updates an existing creative group.
 22741  //
 22742  // - profileId: User profile ID associated with this request.
 22743  func (r *CreativeGroupsService) Update(profileId int64, creativegroup *CreativeGroup) *CreativeGroupsUpdateCall {
 22744  	c := &CreativeGroupsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22745  	c.profileId = profileId
 22746  	c.creativegroup = creativegroup
 22747  	return c
 22748  }
 22749  
 22750  // Fields allows partial responses to be retrieved. See
 22751  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22752  // details.
 22753  func (c *CreativeGroupsUpdateCall) Fields(s ...googleapi.Field) *CreativeGroupsUpdateCall {
 22754  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22755  	return c
 22756  }
 22757  
 22758  // Context sets the context to be used in this call's Do method.
 22759  func (c *CreativeGroupsUpdateCall) Context(ctx context.Context) *CreativeGroupsUpdateCall {
 22760  	c.ctx_ = ctx
 22761  	return c
 22762  }
 22763  
 22764  // Header returns a http.Header that can be modified by the caller to add
 22765  // headers to the request.
 22766  func (c *CreativeGroupsUpdateCall) Header() http.Header {
 22767  	if c.header_ == nil {
 22768  		c.header_ = make(http.Header)
 22769  	}
 22770  	return c.header_
 22771  }
 22772  
 22773  func (c *CreativeGroupsUpdateCall) doRequest(alt string) (*http.Response, error) {
 22774  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 22775  	var body io.Reader = nil
 22776  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creativegroup)
 22777  	if err != nil {
 22778  		return nil, err
 22779  	}
 22780  	c.urlParams_.Set("alt", alt)
 22781  	c.urlParams_.Set("prettyPrint", "false")
 22782  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creativeGroups")
 22783  	urls += "?" + c.urlParams_.Encode()
 22784  	req, err := http.NewRequest("PUT", urls, body)
 22785  	if err != nil {
 22786  		return nil, err
 22787  	}
 22788  	req.Header = reqHeaders
 22789  	googleapi.Expand(req.URL, map[string]string{
 22790  		"profileId": strconv.FormatInt(c.profileId, 10),
 22791  	})
 22792  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22793  }
 22794  
 22795  // Do executes the "dfareporting.creativeGroups.update" call.
 22796  // Any non-2xx status code is an error. Response headers are in either
 22797  // *CreativeGroup.ServerResponse.Header or (if a response was returned at all)
 22798  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22799  // whether the returned error was because http.StatusNotModified was returned.
 22800  func (c *CreativeGroupsUpdateCall) Do(opts ...googleapi.CallOption) (*CreativeGroup, error) {
 22801  	gensupport.SetOptions(c.urlParams_, opts...)
 22802  	res, err := c.doRequest("json")
 22803  	if res != nil && res.StatusCode == http.StatusNotModified {
 22804  		if res.Body != nil {
 22805  			res.Body.Close()
 22806  		}
 22807  		return nil, gensupport.WrapError(&googleapi.Error{
 22808  			Code:   res.StatusCode,
 22809  			Header: res.Header,
 22810  		})
 22811  	}
 22812  	if err != nil {
 22813  		return nil, err
 22814  	}
 22815  	defer googleapi.CloseBody(res)
 22816  	if err := googleapi.CheckResponse(res); err != nil {
 22817  		return nil, gensupport.WrapError(err)
 22818  	}
 22819  	ret := &CreativeGroup{
 22820  		ServerResponse: googleapi.ServerResponse{
 22821  			Header:         res.Header,
 22822  			HTTPStatusCode: res.StatusCode,
 22823  		},
 22824  	}
 22825  	target := &ret
 22826  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22827  		return nil, err
 22828  	}
 22829  	return ret, nil
 22830  }
 22831  
 22832  type CreativesGetCall struct {
 22833  	s            *Service
 22834  	profileId    int64
 22835  	id           int64
 22836  	urlParams_   gensupport.URLParams
 22837  	ifNoneMatch_ string
 22838  	ctx_         context.Context
 22839  	header_      http.Header
 22840  }
 22841  
 22842  // Get: Gets one creative by ID.
 22843  //
 22844  // - id: Creative ID.
 22845  // - profileId: User profile ID associated with this request.
 22846  func (r *CreativesService) Get(profileId int64, id int64) *CreativesGetCall {
 22847  	c := &CreativesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22848  	c.profileId = profileId
 22849  	c.id = id
 22850  	return c
 22851  }
 22852  
 22853  // Fields allows partial responses to be retrieved. See
 22854  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22855  // details.
 22856  func (c *CreativesGetCall) Fields(s ...googleapi.Field) *CreativesGetCall {
 22857  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22858  	return c
 22859  }
 22860  
 22861  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 22862  // object's ETag matches the given value. This is useful for getting updates
 22863  // only after the object has changed since the last request.
 22864  func (c *CreativesGetCall) IfNoneMatch(entityTag string) *CreativesGetCall {
 22865  	c.ifNoneMatch_ = entityTag
 22866  	return c
 22867  }
 22868  
 22869  // Context sets the context to be used in this call's Do method.
 22870  func (c *CreativesGetCall) Context(ctx context.Context) *CreativesGetCall {
 22871  	c.ctx_ = ctx
 22872  	return c
 22873  }
 22874  
 22875  // Header returns a http.Header that can be modified by the caller to add
 22876  // headers to the request.
 22877  func (c *CreativesGetCall) Header() http.Header {
 22878  	if c.header_ == nil {
 22879  		c.header_ = make(http.Header)
 22880  	}
 22881  	return c.header_
 22882  }
 22883  
 22884  func (c *CreativesGetCall) doRequest(alt string) (*http.Response, error) {
 22885  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 22886  	if c.ifNoneMatch_ != "" {
 22887  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 22888  	}
 22889  	var body io.Reader = nil
 22890  	c.urlParams_.Set("alt", alt)
 22891  	c.urlParams_.Set("prettyPrint", "false")
 22892  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creatives/{+id}")
 22893  	urls += "?" + c.urlParams_.Encode()
 22894  	req, err := http.NewRequest("GET", urls, body)
 22895  	if err != nil {
 22896  		return nil, err
 22897  	}
 22898  	req.Header = reqHeaders
 22899  	googleapi.Expand(req.URL, map[string]string{
 22900  		"profileId": strconv.FormatInt(c.profileId, 10),
 22901  		"id":        strconv.FormatInt(c.id, 10),
 22902  	})
 22903  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 22904  }
 22905  
 22906  // Do executes the "dfareporting.creatives.get" call.
 22907  // Any non-2xx status code is an error. Response headers are in either
 22908  // *Creative.ServerResponse.Header or (if a response was returned at all) in
 22909  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 22910  // whether the returned error was because http.StatusNotModified was returned.
 22911  func (c *CreativesGetCall) Do(opts ...googleapi.CallOption) (*Creative, error) {
 22912  	gensupport.SetOptions(c.urlParams_, opts...)
 22913  	res, err := c.doRequest("json")
 22914  	if res != nil && res.StatusCode == http.StatusNotModified {
 22915  		if res.Body != nil {
 22916  			res.Body.Close()
 22917  		}
 22918  		return nil, gensupport.WrapError(&googleapi.Error{
 22919  			Code:   res.StatusCode,
 22920  			Header: res.Header,
 22921  		})
 22922  	}
 22923  	if err != nil {
 22924  		return nil, err
 22925  	}
 22926  	defer googleapi.CloseBody(res)
 22927  	if err := googleapi.CheckResponse(res); err != nil {
 22928  		return nil, gensupport.WrapError(err)
 22929  	}
 22930  	ret := &Creative{
 22931  		ServerResponse: googleapi.ServerResponse{
 22932  			Header:         res.Header,
 22933  			HTTPStatusCode: res.StatusCode,
 22934  		},
 22935  	}
 22936  	target := &ret
 22937  	if err := gensupport.DecodeResponse(target, res); err != nil {
 22938  		return nil, err
 22939  	}
 22940  	return ret, nil
 22941  }
 22942  
 22943  type CreativesInsertCall struct {
 22944  	s          *Service
 22945  	profileId  int64
 22946  	creative   *Creative
 22947  	urlParams_ gensupport.URLParams
 22948  	ctx_       context.Context
 22949  	header_    http.Header
 22950  }
 22951  
 22952  // Insert: Inserts a new creative.
 22953  //
 22954  // - profileId: User profile ID associated with this request.
 22955  func (r *CreativesService) Insert(profileId int64, creative *Creative) *CreativesInsertCall {
 22956  	c := &CreativesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 22957  	c.profileId = profileId
 22958  	c.creative = creative
 22959  	return c
 22960  }
 22961  
 22962  // Fields allows partial responses to be retrieved. See
 22963  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 22964  // details.
 22965  func (c *CreativesInsertCall) Fields(s ...googleapi.Field) *CreativesInsertCall {
 22966  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 22967  	return c
 22968  }
 22969  
 22970  // Context sets the context to be used in this call's Do method.
 22971  func (c *CreativesInsertCall) Context(ctx context.Context) *CreativesInsertCall {
 22972  	c.ctx_ = ctx
 22973  	return c
 22974  }
 22975  
 22976  // Header returns a http.Header that can be modified by the caller to add
 22977  // headers to the request.
 22978  func (c *CreativesInsertCall) Header() http.Header {
 22979  	if c.header_ == nil {
 22980  		c.header_ = make(http.Header)
 22981  	}
 22982  	return c.header_
 22983  }
 22984  
 22985  func (c *CreativesInsertCall) doRequest(alt string) (*http.Response, error) {
 22986  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 22987  	var body io.Reader = nil
 22988  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creative)
 22989  	if err != nil {
 22990  		return nil, err
 22991  	}
 22992  	c.urlParams_.Set("alt", alt)
 22993  	c.urlParams_.Set("prettyPrint", "false")
 22994  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creatives")
 22995  	urls += "?" + c.urlParams_.Encode()
 22996  	req, err := http.NewRequest("POST", urls, body)
 22997  	if err != nil {
 22998  		return nil, err
 22999  	}
 23000  	req.Header = reqHeaders
 23001  	googleapi.Expand(req.URL, map[string]string{
 23002  		"profileId": strconv.FormatInt(c.profileId, 10),
 23003  	})
 23004  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23005  }
 23006  
 23007  // Do executes the "dfareporting.creatives.insert" call.
 23008  // Any non-2xx status code is an error. Response headers are in either
 23009  // *Creative.ServerResponse.Header or (if a response was returned at all) in
 23010  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 23011  // whether the returned error was because http.StatusNotModified was returned.
 23012  func (c *CreativesInsertCall) Do(opts ...googleapi.CallOption) (*Creative, error) {
 23013  	gensupport.SetOptions(c.urlParams_, opts...)
 23014  	res, err := c.doRequest("json")
 23015  	if res != nil && res.StatusCode == http.StatusNotModified {
 23016  		if res.Body != nil {
 23017  			res.Body.Close()
 23018  		}
 23019  		return nil, gensupport.WrapError(&googleapi.Error{
 23020  			Code:   res.StatusCode,
 23021  			Header: res.Header,
 23022  		})
 23023  	}
 23024  	if err != nil {
 23025  		return nil, err
 23026  	}
 23027  	defer googleapi.CloseBody(res)
 23028  	if err := googleapi.CheckResponse(res); err != nil {
 23029  		return nil, gensupport.WrapError(err)
 23030  	}
 23031  	ret := &Creative{
 23032  		ServerResponse: googleapi.ServerResponse{
 23033  			Header:         res.Header,
 23034  			HTTPStatusCode: res.StatusCode,
 23035  		},
 23036  	}
 23037  	target := &ret
 23038  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23039  		return nil, err
 23040  	}
 23041  	return ret, nil
 23042  }
 23043  
 23044  type CreativesListCall struct {
 23045  	s            *Service
 23046  	profileId    int64
 23047  	urlParams_   gensupport.URLParams
 23048  	ifNoneMatch_ string
 23049  	ctx_         context.Context
 23050  	header_      http.Header
 23051  }
 23052  
 23053  // List: Retrieves a list of creatives, possibly filtered. This method supports
 23054  // paging.
 23055  //
 23056  // - profileId: User profile ID associated with this request.
 23057  func (r *CreativesService) List(profileId int64) *CreativesListCall {
 23058  	c := &CreativesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23059  	c.profileId = profileId
 23060  	return c
 23061  }
 23062  
 23063  // Active sets the optional parameter "active": Select only active creatives.
 23064  // Leave blank to select active and inactive creatives.
 23065  func (c *CreativesListCall) Active(active bool) *CreativesListCall {
 23066  	c.urlParams_.Set("active", fmt.Sprint(active))
 23067  	return c
 23068  }
 23069  
 23070  // AdvertiserId sets the optional parameter "advertiserId": Select only
 23071  // creatives with this advertiser ID.
 23072  func (c *CreativesListCall) AdvertiserId(advertiserId int64) *CreativesListCall {
 23073  	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
 23074  	return c
 23075  }
 23076  
 23077  // Archived sets the optional parameter "archived": Select only archived
 23078  // creatives. Leave blank to select archived and unarchived creatives.
 23079  func (c *CreativesListCall) Archived(archived bool) *CreativesListCall {
 23080  	c.urlParams_.Set("archived", fmt.Sprint(archived))
 23081  	return c
 23082  }
 23083  
 23084  // CampaignId sets the optional parameter "campaignId": Select only creatives
 23085  // with this campaign ID.
 23086  func (c *CreativesListCall) CampaignId(campaignId int64) *CreativesListCall {
 23087  	c.urlParams_.Set("campaignId", fmt.Sprint(campaignId))
 23088  	return c
 23089  }
 23090  
 23091  // CompanionCreativeIds sets the optional parameter "companionCreativeIds":
 23092  // Select only in-stream video creatives with these companion IDs.
 23093  func (c *CreativesListCall) CompanionCreativeIds(companionCreativeIds ...int64) *CreativesListCall {
 23094  	var companionCreativeIds_ []string
 23095  	for _, v := range companionCreativeIds {
 23096  		companionCreativeIds_ = append(companionCreativeIds_, fmt.Sprint(v))
 23097  	}
 23098  	c.urlParams_.SetMulti("companionCreativeIds", companionCreativeIds_)
 23099  	return c
 23100  }
 23101  
 23102  // CreativeFieldIds sets the optional parameter "creativeFieldIds": Select only
 23103  // creatives with these creative field IDs.
 23104  func (c *CreativesListCall) CreativeFieldIds(creativeFieldIds ...int64) *CreativesListCall {
 23105  	var creativeFieldIds_ []string
 23106  	for _, v := range creativeFieldIds {
 23107  		creativeFieldIds_ = append(creativeFieldIds_, fmt.Sprint(v))
 23108  	}
 23109  	c.urlParams_.SetMulti("creativeFieldIds", creativeFieldIds_)
 23110  	return c
 23111  }
 23112  
 23113  // Ids sets the optional parameter "ids": Select only creatives with these IDs.
 23114  func (c *CreativesListCall) Ids(ids ...int64) *CreativesListCall {
 23115  	var ids_ []string
 23116  	for _, v := range ids {
 23117  		ids_ = append(ids_, fmt.Sprint(v))
 23118  	}
 23119  	c.urlParams_.SetMulti("ids", ids_)
 23120  	return c
 23121  }
 23122  
 23123  // MaxResults sets the optional parameter "maxResults": Maximum number of
 23124  // results to return.
 23125  func (c *CreativesListCall) MaxResults(maxResults int64) *CreativesListCall {
 23126  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 23127  	return c
 23128  }
 23129  
 23130  // PageToken sets the optional parameter "pageToken": Value of the
 23131  // nextPageToken from the previous result page.
 23132  func (c *CreativesListCall) PageToken(pageToken string) *CreativesListCall {
 23133  	c.urlParams_.Set("pageToken", pageToken)
 23134  	return c
 23135  }
 23136  
 23137  // RenderingIds sets the optional parameter "renderingIds": Select only
 23138  // creatives with these rendering IDs.
 23139  func (c *CreativesListCall) RenderingIds(renderingIds ...int64) *CreativesListCall {
 23140  	var renderingIds_ []string
 23141  	for _, v := range renderingIds {
 23142  		renderingIds_ = append(renderingIds_, fmt.Sprint(v))
 23143  	}
 23144  	c.urlParams_.SetMulti("renderingIds", renderingIds_)
 23145  	return c
 23146  }
 23147  
 23148  // SearchString sets the optional parameter "searchString": Allows searching
 23149  // for objects by name or ID. Wildcards (*) are allowed. For example,
 23150  // "creative*2015" will return objects with names like "creative June 2015",
 23151  // "creative April 2015", or simply "creative 2015". Most of the searches also
 23152  // add wildcards implicitly at the start and the end of the search string. For
 23153  // example, a search string of "creative" will match objects with name "my
 23154  // creative", "creative 2015", or simply "creative".
 23155  func (c *CreativesListCall) SearchString(searchString string) *CreativesListCall {
 23156  	c.urlParams_.Set("searchString", searchString)
 23157  	return c
 23158  }
 23159  
 23160  // SizeIds sets the optional parameter "sizeIds": Select only creatives with
 23161  // these size IDs.
 23162  func (c *CreativesListCall) SizeIds(sizeIds ...int64) *CreativesListCall {
 23163  	var sizeIds_ []string
 23164  	for _, v := range sizeIds {
 23165  		sizeIds_ = append(sizeIds_, fmt.Sprint(v))
 23166  	}
 23167  	c.urlParams_.SetMulti("sizeIds", sizeIds_)
 23168  	return c
 23169  }
 23170  
 23171  // SortField sets the optional parameter "sortField": Field by which to sort
 23172  // the list.
 23173  //
 23174  // Possible values:
 23175  //
 23176  //	"ID" (default)
 23177  //	"NAME"
 23178  func (c *CreativesListCall) SortField(sortField string) *CreativesListCall {
 23179  	c.urlParams_.Set("sortField", sortField)
 23180  	return c
 23181  }
 23182  
 23183  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 23184  //
 23185  // Possible values:
 23186  //
 23187  //	"ASCENDING" (default) - Ascending order.
 23188  //	"DESCENDING" - Descending order.
 23189  func (c *CreativesListCall) SortOrder(sortOrder string) *CreativesListCall {
 23190  	c.urlParams_.Set("sortOrder", sortOrder)
 23191  	return c
 23192  }
 23193  
 23194  // StudioCreativeId sets the optional parameter "studioCreativeId": Select only
 23195  // creatives corresponding to this Studio creative ID.
 23196  func (c *CreativesListCall) StudioCreativeId(studioCreativeId int64) *CreativesListCall {
 23197  	c.urlParams_.Set("studioCreativeId", fmt.Sprint(studioCreativeId))
 23198  	return c
 23199  }
 23200  
 23201  // Types sets the optional parameter "types": Select only creatives with these
 23202  // creative types.
 23203  //
 23204  // Possible values:
 23205  //
 23206  //	"IMAGE"
 23207  //	"DISPLAY_REDIRECT"
 23208  //	"CUSTOM_DISPLAY"
 23209  //	"INTERNAL_REDIRECT"
 23210  //	"CUSTOM_DISPLAY_INTERSTITIAL"
 23211  //	"INTERSTITIAL_INTERNAL_REDIRECT"
 23212  //	"TRACKING_TEXT"
 23213  //	"RICH_MEDIA_DISPLAY_BANNER"
 23214  //	"RICH_MEDIA_INPAGE_FLOATING"
 23215  //	"RICH_MEDIA_IM_EXPAND"
 23216  //	"RICH_MEDIA_DISPLAY_EXPANDING"
 23217  //	"RICH_MEDIA_DISPLAY_INTERSTITIAL"
 23218  //	"RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL"
 23219  //	"RICH_MEDIA_MOBILE_IN_APP"
 23220  //	"FLASH_INPAGE"
 23221  //	"INSTREAM_VIDEO"
 23222  //	"VPAID_LINEAR_VIDEO"
 23223  //	"VPAID_NON_LINEAR_VIDEO"
 23224  //	"INSTREAM_VIDEO_REDIRECT"
 23225  //	"RICH_MEDIA_PEEL_DOWN"
 23226  //	"HTML5_BANNER"
 23227  //	"DISPLAY"
 23228  //	"DISPLAY_IMAGE_GALLERY"
 23229  //	"BRAND_SAFE_DEFAULT_INSTREAM_VIDEO"
 23230  //	"INSTREAM_AUDIO"
 23231  func (c *CreativesListCall) Types(types ...string) *CreativesListCall {
 23232  	c.urlParams_.SetMulti("types", append([]string{}, types...))
 23233  	return c
 23234  }
 23235  
 23236  // Fields allows partial responses to be retrieved. See
 23237  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23238  // details.
 23239  func (c *CreativesListCall) Fields(s ...googleapi.Field) *CreativesListCall {
 23240  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23241  	return c
 23242  }
 23243  
 23244  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 23245  // object's ETag matches the given value. This is useful for getting updates
 23246  // only after the object has changed since the last request.
 23247  func (c *CreativesListCall) IfNoneMatch(entityTag string) *CreativesListCall {
 23248  	c.ifNoneMatch_ = entityTag
 23249  	return c
 23250  }
 23251  
 23252  // Context sets the context to be used in this call's Do method.
 23253  func (c *CreativesListCall) Context(ctx context.Context) *CreativesListCall {
 23254  	c.ctx_ = ctx
 23255  	return c
 23256  }
 23257  
 23258  // Header returns a http.Header that can be modified by the caller to add
 23259  // headers to the request.
 23260  func (c *CreativesListCall) Header() http.Header {
 23261  	if c.header_ == nil {
 23262  		c.header_ = make(http.Header)
 23263  	}
 23264  	return c.header_
 23265  }
 23266  
 23267  func (c *CreativesListCall) doRequest(alt string) (*http.Response, error) {
 23268  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 23269  	if c.ifNoneMatch_ != "" {
 23270  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 23271  	}
 23272  	var body io.Reader = nil
 23273  	c.urlParams_.Set("alt", alt)
 23274  	c.urlParams_.Set("prettyPrint", "false")
 23275  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creatives")
 23276  	urls += "?" + c.urlParams_.Encode()
 23277  	req, err := http.NewRequest("GET", urls, body)
 23278  	if err != nil {
 23279  		return nil, err
 23280  	}
 23281  	req.Header = reqHeaders
 23282  	googleapi.Expand(req.URL, map[string]string{
 23283  		"profileId": strconv.FormatInt(c.profileId, 10),
 23284  	})
 23285  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23286  }
 23287  
 23288  // Do executes the "dfareporting.creatives.list" call.
 23289  // Any non-2xx status code is an error. Response headers are in either
 23290  // *CreativesListResponse.ServerResponse.Header or (if a response was returned
 23291  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 23292  // check whether the returned error was because http.StatusNotModified was
 23293  // returned.
 23294  func (c *CreativesListCall) Do(opts ...googleapi.CallOption) (*CreativesListResponse, error) {
 23295  	gensupport.SetOptions(c.urlParams_, opts...)
 23296  	res, err := c.doRequest("json")
 23297  	if res != nil && res.StatusCode == http.StatusNotModified {
 23298  		if res.Body != nil {
 23299  			res.Body.Close()
 23300  		}
 23301  		return nil, gensupport.WrapError(&googleapi.Error{
 23302  			Code:   res.StatusCode,
 23303  			Header: res.Header,
 23304  		})
 23305  	}
 23306  	if err != nil {
 23307  		return nil, err
 23308  	}
 23309  	defer googleapi.CloseBody(res)
 23310  	if err := googleapi.CheckResponse(res); err != nil {
 23311  		return nil, gensupport.WrapError(err)
 23312  	}
 23313  	ret := &CreativesListResponse{
 23314  		ServerResponse: googleapi.ServerResponse{
 23315  			Header:         res.Header,
 23316  			HTTPStatusCode: res.StatusCode,
 23317  		},
 23318  	}
 23319  	target := &ret
 23320  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23321  		return nil, err
 23322  	}
 23323  	return ret, nil
 23324  }
 23325  
 23326  // Pages invokes f for each page of results.
 23327  // A non-nil error returned from f will halt the iteration.
 23328  // The provided context supersedes any context provided to the Context method.
 23329  func (c *CreativesListCall) Pages(ctx context.Context, f func(*CreativesListResponse) error) error {
 23330  	c.ctx_ = ctx
 23331  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 23332  	for {
 23333  		x, err := c.Do()
 23334  		if err != nil {
 23335  			return err
 23336  		}
 23337  		if err := f(x); err != nil {
 23338  			return err
 23339  		}
 23340  		if x.NextPageToken == "" {
 23341  			return nil
 23342  		}
 23343  		c.PageToken(x.NextPageToken)
 23344  	}
 23345  }
 23346  
 23347  type CreativesPatchCall struct {
 23348  	s          *Service
 23349  	profileId  int64
 23350  	creative   *Creative
 23351  	urlParams_ gensupport.URLParams
 23352  	ctx_       context.Context
 23353  	header_    http.Header
 23354  }
 23355  
 23356  // Patch: Updates an existing creative. This method supports patch semantics.
 23357  //
 23358  // - id: Creative ID.
 23359  // - profileId: User profile ID associated with this request.
 23360  func (r *CreativesService) Patch(profileId int64, id int64, creative *Creative) *CreativesPatchCall {
 23361  	c := &CreativesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23362  	c.profileId = profileId
 23363  	c.urlParams_.Set("id", fmt.Sprint(id))
 23364  	c.creative = creative
 23365  	return c
 23366  }
 23367  
 23368  // Fields allows partial responses to be retrieved. See
 23369  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23370  // details.
 23371  func (c *CreativesPatchCall) Fields(s ...googleapi.Field) *CreativesPatchCall {
 23372  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23373  	return c
 23374  }
 23375  
 23376  // Context sets the context to be used in this call's Do method.
 23377  func (c *CreativesPatchCall) Context(ctx context.Context) *CreativesPatchCall {
 23378  	c.ctx_ = ctx
 23379  	return c
 23380  }
 23381  
 23382  // Header returns a http.Header that can be modified by the caller to add
 23383  // headers to the request.
 23384  func (c *CreativesPatchCall) Header() http.Header {
 23385  	if c.header_ == nil {
 23386  		c.header_ = make(http.Header)
 23387  	}
 23388  	return c.header_
 23389  }
 23390  
 23391  func (c *CreativesPatchCall) doRequest(alt string) (*http.Response, error) {
 23392  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 23393  	var body io.Reader = nil
 23394  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creative)
 23395  	if err != nil {
 23396  		return nil, err
 23397  	}
 23398  	c.urlParams_.Set("alt", alt)
 23399  	c.urlParams_.Set("prettyPrint", "false")
 23400  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creatives")
 23401  	urls += "?" + c.urlParams_.Encode()
 23402  	req, err := http.NewRequest("PATCH", urls, body)
 23403  	if err != nil {
 23404  		return nil, err
 23405  	}
 23406  	req.Header = reqHeaders
 23407  	googleapi.Expand(req.URL, map[string]string{
 23408  		"profileId": strconv.FormatInt(c.profileId, 10),
 23409  	})
 23410  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23411  }
 23412  
 23413  // Do executes the "dfareporting.creatives.patch" call.
 23414  // Any non-2xx status code is an error. Response headers are in either
 23415  // *Creative.ServerResponse.Header or (if a response was returned at all) in
 23416  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 23417  // whether the returned error was because http.StatusNotModified was returned.
 23418  func (c *CreativesPatchCall) Do(opts ...googleapi.CallOption) (*Creative, error) {
 23419  	gensupport.SetOptions(c.urlParams_, opts...)
 23420  	res, err := c.doRequest("json")
 23421  	if res != nil && res.StatusCode == http.StatusNotModified {
 23422  		if res.Body != nil {
 23423  			res.Body.Close()
 23424  		}
 23425  		return nil, gensupport.WrapError(&googleapi.Error{
 23426  			Code:   res.StatusCode,
 23427  			Header: res.Header,
 23428  		})
 23429  	}
 23430  	if err != nil {
 23431  		return nil, err
 23432  	}
 23433  	defer googleapi.CloseBody(res)
 23434  	if err := googleapi.CheckResponse(res); err != nil {
 23435  		return nil, gensupport.WrapError(err)
 23436  	}
 23437  	ret := &Creative{
 23438  		ServerResponse: googleapi.ServerResponse{
 23439  			Header:         res.Header,
 23440  			HTTPStatusCode: res.StatusCode,
 23441  		},
 23442  	}
 23443  	target := &ret
 23444  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23445  		return nil, err
 23446  	}
 23447  	return ret, nil
 23448  }
 23449  
 23450  type CreativesUpdateCall struct {
 23451  	s          *Service
 23452  	profileId  int64
 23453  	creative   *Creative
 23454  	urlParams_ gensupport.URLParams
 23455  	ctx_       context.Context
 23456  	header_    http.Header
 23457  }
 23458  
 23459  // Update: Updates an existing creative.
 23460  //
 23461  // - profileId: User profile ID associated with this request.
 23462  func (r *CreativesService) Update(profileId int64, creative *Creative) *CreativesUpdateCall {
 23463  	c := &CreativesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23464  	c.profileId = profileId
 23465  	c.creative = creative
 23466  	return c
 23467  }
 23468  
 23469  // Fields allows partial responses to be retrieved. See
 23470  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23471  // details.
 23472  func (c *CreativesUpdateCall) Fields(s ...googleapi.Field) *CreativesUpdateCall {
 23473  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23474  	return c
 23475  }
 23476  
 23477  // Context sets the context to be used in this call's Do method.
 23478  func (c *CreativesUpdateCall) Context(ctx context.Context) *CreativesUpdateCall {
 23479  	c.ctx_ = ctx
 23480  	return c
 23481  }
 23482  
 23483  // Header returns a http.Header that can be modified by the caller to add
 23484  // headers to the request.
 23485  func (c *CreativesUpdateCall) Header() http.Header {
 23486  	if c.header_ == nil {
 23487  		c.header_ = make(http.Header)
 23488  	}
 23489  	return c.header_
 23490  }
 23491  
 23492  func (c *CreativesUpdateCall) doRequest(alt string) (*http.Response, error) {
 23493  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 23494  	var body io.Reader = nil
 23495  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.creative)
 23496  	if err != nil {
 23497  		return nil, err
 23498  	}
 23499  	c.urlParams_.Set("alt", alt)
 23500  	c.urlParams_.Set("prettyPrint", "false")
 23501  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/creatives")
 23502  	urls += "?" + c.urlParams_.Encode()
 23503  	req, err := http.NewRequest("PUT", urls, body)
 23504  	if err != nil {
 23505  		return nil, err
 23506  	}
 23507  	req.Header = reqHeaders
 23508  	googleapi.Expand(req.URL, map[string]string{
 23509  		"profileId": strconv.FormatInt(c.profileId, 10),
 23510  	})
 23511  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23512  }
 23513  
 23514  // Do executes the "dfareporting.creatives.update" call.
 23515  // Any non-2xx status code is an error. Response headers are in either
 23516  // *Creative.ServerResponse.Header or (if a response was returned at all) in
 23517  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 23518  // whether the returned error was because http.StatusNotModified was returned.
 23519  func (c *CreativesUpdateCall) Do(opts ...googleapi.CallOption) (*Creative, error) {
 23520  	gensupport.SetOptions(c.urlParams_, opts...)
 23521  	res, err := c.doRequest("json")
 23522  	if res != nil && res.StatusCode == http.StatusNotModified {
 23523  		if res.Body != nil {
 23524  			res.Body.Close()
 23525  		}
 23526  		return nil, gensupport.WrapError(&googleapi.Error{
 23527  			Code:   res.StatusCode,
 23528  			Header: res.Header,
 23529  		})
 23530  	}
 23531  	if err != nil {
 23532  		return nil, err
 23533  	}
 23534  	defer googleapi.CloseBody(res)
 23535  	if err := googleapi.CheckResponse(res); err != nil {
 23536  		return nil, gensupport.WrapError(err)
 23537  	}
 23538  	ret := &Creative{
 23539  		ServerResponse: googleapi.ServerResponse{
 23540  			Header:         res.Header,
 23541  			HTTPStatusCode: res.StatusCode,
 23542  		},
 23543  	}
 23544  	target := &ret
 23545  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23546  		return nil, err
 23547  	}
 23548  	return ret, nil
 23549  }
 23550  
 23551  type DimensionValuesQueryCall struct {
 23552  	s                     *Service
 23553  	profileId             int64
 23554  	dimensionvaluerequest *DimensionValueRequest
 23555  	urlParams_            gensupport.URLParams
 23556  	ctx_                  context.Context
 23557  	header_               http.Header
 23558  }
 23559  
 23560  // Query: Retrieves list of report dimension values for a list of filters.
 23561  //
 23562  // - profileId: The Campaign Manager 360 user profile ID.
 23563  func (r *DimensionValuesService) Query(profileId int64, dimensionvaluerequest *DimensionValueRequest) *DimensionValuesQueryCall {
 23564  	c := &DimensionValuesQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23565  	c.profileId = profileId
 23566  	c.dimensionvaluerequest = dimensionvaluerequest
 23567  	return c
 23568  }
 23569  
 23570  // MaxResults sets the optional parameter "maxResults": Maximum number of
 23571  // results to return.
 23572  func (c *DimensionValuesQueryCall) MaxResults(maxResults int64) *DimensionValuesQueryCall {
 23573  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 23574  	return c
 23575  }
 23576  
 23577  // PageToken sets the optional parameter "pageToken": The value of the
 23578  // nextToken from the previous result page.
 23579  func (c *DimensionValuesQueryCall) PageToken(pageToken string) *DimensionValuesQueryCall {
 23580  	c.urlParams_.Set("pageToken", pageToken)
 23581  	return c
 23582  }
 23583  
 23584  // Fields allows partial responses to be retrieved. See
 23585  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23586  // details.
 23587  func (c *DimensionValuesQueryCall) Fields(s ...googleapi.Field) *DimensionValuesQueryCall {
 23588  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23589  	return c
 23590  }
 23591  
 23592  // Context sets the context to be used in this call's Do method.
 23593  func (c *DimensionValuesQueryCall) Context(ctx context.Context) *DimensionValuesQueryCall {
 23594  	c.ctx_ = ctx
 23595  	return c
 23596  }
 23597  
 23598  // Header returns a http.Header that can be modified by the caller to add
 23599  // headers to the request.
 23600  func (c *DimensionValuesQueryCall) Header() http.Header {
 23601  	if c.header_ == nil {
 23602  		c.header_ = make(http.Header)
 23603  	}
 23604  	return c.header_
 23605  }
 23606  
 23607  func (c *DimensionValuesQueryCall) doRequest(alt string) (*http.Response, error) {
 23608  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 23609  	var body io.Reader = nil
 23610  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dimensionvaluerequest)
 23611  	if err != nil {
 23612  		return nil, err
 23613  	}
 23614  	c.urlParams_.Set("alt", alt)
 23615  	c.urlParams_.Set("prettyPrint", "false")
 23616  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/dimensionvalues/query")
 23617  	urls += "?" + c.urlParams_.Encode()
 23618  	req, err := http.NewRequest("POST", urls, body)
 23619  	if err != nil {
 23620  		return nil, err
 23621  	}
 23622  	req.Header = reqHeaders
 23623  	googleapi.Expand(req.URL, map[string]string{
 23624  		"profileId": strconv.FormatInt(c.profileId, 10),
 23625  	})
 23626  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23627  }
 23628  
 23629  // Do executes the "dfareporting.dimensionValues.query" call.
 23630  // Any non-2xx status code is an error. Response headers are in either
 23631  // *DimensionValueList.ServerResponse.Header or (if a response was returned at
 23632  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 23633  // check whether the returned error was because http.StatusNotModified was
 23634  // returned.
 23635  func (c *DimensionValuesQueryCall) Do(opts ...googleapi.CallOption) (*DimensionValueList, error) {
 23636  	gensupport.SetOptions(c.urlParams_, opts...)
 23637  	res, err := c.doRequest("json")
 23638  	if res != nil && res.StatusCode == http.StatusNotModified {
 23639  		if res.Body != nil {
 23640  			res.Body.Close()
 23641  		}
 23642  		return nil, gensupport.WrapError(&googleapi.Error{
 23643  			Code:   res.StatusCode,
 23644  			Header: res.Header,
 23645  		})
 23646  	}
 23647  	if err != nil {
 23648  		return nil, err
 23649  	}
 23650  	defer googleapi.CloseBody(res)
 23651  	if err := googleapi.CheckResponse(res); err != nil {
 23652  		return nil, gensupport.WrapError(err)
 23653  	}
 23654  	ret := &DimensionValueList{
 23655  		ServerResponse: googleapi.ServerResponse{
 23656  			Header:         res.Header,
 23657  			HTTPStatusCode: res.StatusCode,
 23658  		},
 23659  	}
 23660  	target := &ret
 23661  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23662  		return nil, err
 23663  	}
 23664  	return ret, nil
 23665  }
 23666  
 23667  // Pages invokes f for each page of results.
 23668  // A non-nil error returned from f will halt the iteration.
 23669  // The provided context supersedes any context provided to the Context method.
 23670  func (c *DimensionValuesQueryCall) Pages(ctx context.Context, f func(*DimensionValueList) error) error {
 23671  	c.ctx_ = ctx
 23672  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 23673  	for {
 23674  		x, err := c.Do()
 23675  		if err != nil {
 23676  			return err
 23677  		}
 23678  		if err := f(x); err != nil {
 23679  			return err
 23680  		}
 23681  		if x.NextPageToken == "" {
 23682  			return nil
 23683  		}
 23684  		c.PageToken(x.NextPageToken)
 23685  	}
 23686  }
 23687  
 23688  type DirectorySitesGetCall struct {
 23689  	s            *Service
 23690  	profileId    int64
 23691  	id           int64
 23692  	urlParams_   gensupport.URLParams
 23693  	ifNoneMatch_ string
 23694  	ctx_         context.Context
 23695  	header_      http.Header
 23696  }
 23697  
 23698  // Get: Gets one directory site by ID.
 23699  //
 23700  // - id: Directory site ID.
 23701  // - profileId: User profile ID associated with this request.
 23702  func (r *DirectorySitesService) Get(profileId int64, id int64) *DirectorySitesGetCall {
 23703  	c := &DirectorySitesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23704  	c.profileId = profileId
 23705  	c.id = id
 23706  	return c
 23707  }
 23708  
 23709  // Fields allows partial responses to be retrieved. See
 23710  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23711  // details.
 23712  func (c *DirectorySitesGetCall) Fields(s ...googleapi.Field) *DirectorySitesGetCall {
 23713  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23714  	return c
 23715  }
 23716  
 23717  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 23718  // object's ETag matches the given value. This is useful for getting updates
 23719  // only after the object has changed since the last request.
 23720  func (c *DirectorySitesGetCall) IfNoneMatch(entityTag string) *DirectorySitesGetCall {
 23721  	c.ifNoneMatch_ = entityTag
 23722  	return c
 23723  }
 23724  
 23725  // Context sets the context to be used in this call's Do method.
 23726  func (c *DirectorySitesGetCall) Context(ctx context.Context) *DirectorySitesGetCall {
 23727  	c.ctx_ = ctx
 23728  	return c
 23729  }
 23730  
 23731  // Header returns a http.Header that can be modified by the caller to add
 23732  // headers to the request.
 23733  func (c *DirectorySitesGetCall) Header() http.Header {
 23734  	if c.header_ == nil {
 23735  		c.header_ = make(http.Header)
 23736  	}
 23737  	return c.header_
 23738  }
 23739  
 23740  func (c *DirectorySitesGetCall) doRequest(alt string) (*http.Response, error) {
 23741  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 23742  	if c.ifNoneMatch_ != "" {
 23743  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 23744  	}
 23745  	var body io.Reader = nil
 23746  	c.urlParams_.Set("alt", alt)
 23747  	c.urlParams_.Set("prettyPrint", "false")
 23748  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/directorySites/{+id}")
 23749  	urls += "?" + c.urlParams_.Encode()
 23750  	req, err := http.NewRequest("GET", urls, body)
 23751  	if err != nil {
 23752  		return nil, err
 23753  	}
 23754  	req.Header = reqHeaders
 23755  	googleapi.Expand(req.URL, map[string]string{
 23756  		"profileId": strconv.FormatInt(c.profileId, 10),
 23757  		"id":        strconv.FormatInt(c.id, 10),
 23758  	})
 23759  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23760  }
 23761  
 23762  // Do executes the "dfareporting.directorySites.get" call.
 23763  // Any non-2xx status code is an error. Response headers are in either
 23764  // *DirectorySite.ServerResponse.Header or (if a response was returned at all)
 23765  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 23766  // whether the returned error was because http.StatusNotModified was returned.
 23767  func (c *DirectorySitesGetCall) Do(opts ...googleapi.CallOption) (*DirectorySite, error) {
 23768  	gensupport.SetOptions(c.urlParams_, opts...)
 23769  	res, err := c.doRequest("json")
 23770  	if res != nil && res.StatusCode == http.StatusNotModified {
 23771  		if res.Body != nil {
 23772  			res.Body.Close()
 23773  		}
 23774  		return nil, gensupport.WrapError(&googleapi.Error{
 23775  			Code:   res.StatusCode,
 23776  			Header: res.Header,
 23777  		})
 23778  	}
 23779  	if err != nil {
 23780  		return nil, err
 23781  	}
 23782  	defer googleapi.CloseBody(res)
 23783  	if err := googleapi.CheckResponse(res); err != nil {
 23784  		return nil, gensupport.WrapError(err)
 23785  	}
 23786  	ret := &DirectorySite{
 23787  		ServerResponse: googleapi.ServerResponse{
 23788  			Header:         res.Header,
 23789  			HTTPStatusCode: res.StatusCode,
 23790  		},
 23791  	}
 23792  	target := &ret
 23793  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23794  		return nil, err
 23795  	}
 23796  	return ret, nil
 23797  }
 23798  
 23799  type DirectorySitesInsertCall struct {
 23800  	s             *Service
 23801  	profileId     int64
 23802  	directorysite *DirectorySite
 23803  	urlParams_    gensupport.URLParams
 23804  	ctx_          context.Context
 23805  	header_       http.Header
 23806  }
 23807  
 23808  // Insert: Inserts a new directory site.
 23809  //
 23810  // - profileId: User profile ID associated with this request.
 23811  func (r *DirectorySitesService) Insert(profileId int64, directorysite *DirectorySite) *DirectorySitesInsertCall {
 23812  	c := &DirectorySitesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23813  	c.profileId = profileId
 23814  	c.directorysite = directorysite
 23815  	return c
 23816  }
 23817  
 23818  // Fields allows partial responses to be retrieved. See
 23819  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 23820  // details.
 23821  func (c *DirectorySitesInsertCall) Fields(s ...googleapi.Field) *DirectorySitesInsertCall {
 23822  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 23823  	return c
 23824  }
 23825  
 23826  // Context sets the context to be used in this call's Do method.
 23827  func (c *DirectorySitesInsertCall) Context(ctx context.Context) *DirectorySitesInsertCall {
 23828  	c.ctx_ = ctx
 23829  	return c
 23830  }
 23831  
 23832  // Header returns a http.Header that can be modified by the caller to add
 23833  // headers to the request.
 23834  func (c *DirectorySitesInsertCall) Header() http.Header {
 23835  	if c.header_ == nil {
 23836  		c.header_ = make(http.Header)
 23837  	}
 23838  	return c.header_
 23839  }
 23840  
 23841  func (c *DirectorySitesInsertCall) doRequest(alt string) (*http.Response, error) {
 23842  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 23843  	var body io.Reader = nil
 23844  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.directorysite)
 23845  	if err != nil {
 23846  		return nil, err
 23847  	}
 23848  	c.urlParams_.Set("alt", alt)
 23849  	c.urlParams_.Set("prettyPrint", "false")
 23850  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/directorySites")
 23851  	urls += "?" + c.urlParams_.Encode()
 23852  	req, err := http.NewRequest("POST", urls, body)
 23853  	if err != nil {
 23854  		return nil, err
 23855  	}
 23856  	req.Header = reqHeaders
 23857  	googleapi.Expand(req.URL, map[string]string{
 23858  		"profileId": strconv.FormatInt(c.profileId, 10),
 23859  	})
 23860  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 23861  }
 23862  
 23863  // Do executes the "dfareporting.directorySites.insert" call.
 23864  // Any non-2xx status code is an error. Response headers are in either
 23865  // *DirectorySite.ServerResponse.Header or (if a response was returned at all)
 23866  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 23867  // whether the returned error was because http.StatusNotModified was returned.
 23868  func (c *DirectorySitesInsertCall) Do(opts ...googleapi.CallOption) (*DirectorySite, error) {
 23869  	gensupport.SetOptions(c.urlParams_, opts...)
 23870  	res, err := c.doRequest("json")
 23871  	if res != nil && res.StatusCode == http.StatusNotModified {
 23872  		if res.Body != nil {
 23873  			res.Body.Close()
 23874  		}
 23875  		return nil, gensupport.WrapError(&googleapi.Error{
 23876  			Code:   res.StatusCode,
 23877  			Header: res.Header,
 23878  		})
 23879  	}
 23880  	if err != nil {
 23881  		return nil, err
 23882  	}
 23883  	defer googleapi.CloseBody(res)
 23884  	if err := googleapi.CheckResponse(res); err != nil {
 23885  		return nil, gensupport.WrapError(err)
 23886  	}
 23887  	ret := &DirectorySite{
 23888  		ServerResponse: googleapi.ServerResponse{
 23889  			Header:         res.Header,
 23890  			HTTPStatusCode: res.StatusCode,
 23891  		},
 23892  	}
 23893  	target := &ret
 23894  	if err := gensupport.DecodeResponse(target, res); err != nil {
 23895  		return nil, err
 23896  	}
 23897  	return ret, nil
 23898  }
 23899  
 23900  type DirectorySitesListCall struct {
 23901  	s            *Service
 23902  	profileId    int64
 23903  	urlParams_   gensupport.URLParams
 23904  	ifNoneMatch_ string
 23905  	ctx_         context.Context
 23906  	header_      http.Header
 23907  }
 23908  
 23909  // List: Retrieves a list of directory sites, possibly filtered. This method
 23910  // supports paging.
 23911  //
 23912  // - profileId: User profile ID associated with this request.
 23913  func (r *DirectorySitesService) List(profileId int64) *DirectorySitesListCall {
 23914  	c := &DirectorySitesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 23915  	c.profileId = profileId
 23916  	return c
 23917  }
 23918  
 23919  // AcceptsInStreamVideoPlacements sets the optional parameter
 23920  // "acceptsInStreamVideoPlacements": This search filter is no longer supported
 23921  // and will have no effect on the results returned.
 23922  func (c *DirectorySitesListCall) AcceptsInStreamVideoPlacements(acceptsInStreamVideoPlacements bool) *DirectorySitesListCall {
 23923  	c.urlParams_.Set("acceptsInStreamVideoPlacements", fmt.Sprint(acceptsInStreamVideoPlacements))
 23924  	return c
 23925  }
 23926  
 23927  // AcceptsInterstitialPlacements sets the optional parameter
 23928  // "acceptsInterstitialPlacements": This search filter is no longer supported
 23929  // and will have no effect on the results returned.
 23930  func (c *DirectorySitesListCall) AcceptsInterstitialPlacements(acceptsInterstitialPlacements bool) *DirectorySitesListCall {
 23931  	c.urlParams_.Set("acceptsInterstitialPlacements", fmt.Sprint(acceptsInterstitialPlacements))
 23932  	return c
 23933  }
 23934  
 23935  // AcceptsPublisherPaidPlacements sets the optional parameter
 23936  // "acceptsPublisherPaidPlacements": Select only directory sites that accept
 23937  // publisher paid placements. This field can be left blank.
 23938  func (c *DirectorySitesListCall) AcceptsPublisherPaidPlacements(acceptsPublisherPaidPlacements bool) *DirectorySitesListCall {
 23939  	c.urlParams_.Set("acceptsPublisherPaidPlacements", fmt.Sprint(acceptsPublisherPaidPlacements))
 23940  	return c
 23941  }
 23942  
 23943  // Active sets the optional parameter "active": Select only active directory
 23944  // sites. Leave blank to retrieve both active and inactive directory sites.
 23945  func (c *DirectorySitesListCall) Active(active bool) *DirectorySitesListCall {
 23946  	c.urlParams_.Set("active", fmt.Sprint(active))
 23947  	return c
 23948  }
 23949  
 23950  // DfpNetworkCode sets the optional parameter "dfpNetworkCode": Select only
 23951  // directory sites with this Ad Manager network code.
 23952  func (c *DirectorySitesListCall) DfpNetworkCode(dfpNetworkCode string) *DirectorySitesListCall {
 23953  	c.urlParams_.Set("dfpNetworkCode", dfpNetworkCode)
 23954  	return c
 23955  }
 23956  
 23957  // Ids sets the optional parameter "ids": Select only directory sites with
 23958  // these IDs.
 23959  func (c *DirectorySitesListCall) Ids(ids ...int64) *DirectorySitesListCall {
 23960  	var ids_ []string
 23961  	for _, v := range ids {
 23962  		ids_ = append(ids_, fmt.Sprint(v))
 23963  	}
 23964  	c.urlParams_.SetMulti("ids", ids_)
 23965  	return c
 23966  }
 23967  
 23968  // MaxResults sets the optional parameter "maxResults": Maximum number of
 23969  // results to return.
 23970  func (c *DirectorySitesListCall) MaxResults(maxResults int64) *DirectorySitesListCall {
 23971  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 23972  	return c
 23973  }
 23974  
 23975  // PageToken sets the optional parameter "pageToken": Value of the
 23976  // nextPageToken from the previous result page.
 23977  func (c *DirectorySitesListCall) PageToken(pageToken string) *DirectorySitesListCall {
 23978  	c.urlParams_.Set("pageToken", pageToken)
 23979  	return c
 23980  }
 23981  
 23982  // SearchString sets the optional parameter "searchString": Allows searching
 23983  // for objects by name, ID or URL. Wildcards (*) are allowed. For example,
 23984  // "directory site*2015" will return objects with names like "directory site
 23985  // June 2015", "directory site April 2015", or simply "directory site 2015".
 23986  // Most of the searches also add wildcards implicitly at the start and the end
 23987  // of the search string. For example, a search string of "directory site" will
 23988  // match objects with name "my directory site", "directory site 2015" or
 23989  // simply, "directory site".
 23990  func (c *DirectorySitesListCall) SearchString(searchString string) *DirectorySitesListCall {
 23991  	c.urlParams_.Set("searchString", searchString)
 23992  	return c
 23993  }
 23994  
 23995  // SortField sets the optional parameter "sortField": Field by which to sort
 23996  // the list.
 23997  //
 23998  // Possible values:
 23999  //
 24000  //	"ID" (default)
 24001  //	"NAME"
 24002  func (c *DirectorySitesListCall) SortField(sortField string) *DirectorySitesListCall {
 24003  	c.urlParams_.Set("sortField", sortField)
 24004  	return c
 24005  }
 24006  
 24007  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 24008  //
 24009  // Possible values:
 24010  //
 24011  //	"ASCENDING" (default) - Ascending order.
 24012  //	"DESCENDING" - Descending order.
 24013  func (c *DirectorySitesListCall) SortOrder(sortOrder string) *DirectorySitesListCall {
 24014  	c.urlParams_.Set("sortOrder", sortOrder)
 24015  	return c
 24016  }
 24017  
 24018  // Fields allows partial responses to be retrieved. See
 24019  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24020  // details.
 24021  func (c *DirectorySitesListCall) Fields(s ...googleapi.Field) *DirectorySitesListCall {
 24022  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24023  	return c
 24024  }
 24025  
 24026  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 24027  // object's ETag matches the given value. This is useful for getting updates
 24028  // only after the object has changed since the last request.
 24029  func (c *DirectorySitesListCall) IfNoneMatch(entityTag string) *DirectorySitesListCall {
 24030  	c.ifNoneMatch_ = entityTag
 24031  	return c
 24032  }
 24033  
 24034  // Context sets the context to be used in this call's Do method.
 24035  func (c *DirectorySitesListCall) Context(ctx context.Context) *DirectorySitesListCall {
 24036  	c.ctx_ = ctx
 24037  	return c
 24038  }
 24039  
 24040  // Header returns a http.Header that can be modified by the caller to add
 24041  // headers to the request.
 24042  func (c *DirectorySitesListCall) Header() http.Header {
 24043  	if c.header_ == nil {
 24044  		c.header_ = make(http.Header)
 24045  	}
 24046  	return c.header_
 24047  }
 24048  
 24049  func (c *DirectorySitesListCall) doRequest(alt string) (*http.Response, error) {
 24050  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24051  	if c.ifNoneMatch_ != "" {
 24052  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24053  	}
 24054  	var body io.Reader = nil
 24055  	c.urlParams_.Set("alt", alt)
 24056  	c.urlParams_.Set("prettyPrint", "false")
 24057  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/directorySites")
 24058  	urls += "?" + c.urlParams_.Encode()
 24059  	req, err := http.NewRequest("GET", urls, body)
 24060  	if err != nil {
 24061  		return nil, err
 24062  	}
 24063  	req.Header = reqHeaders
 24064  	googleapi.Expand(req.URL, map[string]string{
 24065  		"profileId": strconv.FormatInt(c.profileId, 10),
 24066  	})
 24067  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24068  }
 24069  
 24070  // Do executes the "dfareporting.directorySites.list" call.
 24071  // Any non-2xx status code is an error. Response headers are in either
 24072  // *DirectorySitesListResponse.ServerResponse.Header or (if a response was
 24073  // returned at all) in error.(*googleapi.Error).Header. Use
 24074  // googleapi.IsNotModified to check whether the returned error was because
 24075  // http.StatusNotModified was returned.
 24076  func (c *DirectorySitesListCall) Do(opts ...googleapi.CallOption) (*DirectorySitesListResponse, error) {
 24077  	gensupport.SetOptions(c.urlParams_, opts...)
 24078  	res, err := c.doRequest("json")
 24079  	if res != nil && res.StatusCode == http.StatusNotModified {
 24080  		if res.Body != nil {
 24081  			res.Body.Close()
 24082  		}
 24083  		return nil, gensupport.WrapError(&googleapi.Error{
 24084  			Code:   res.StatusCode,
 24085  			Header: res.Header,
 24086  		})
 24087  	}
 24088  	if err != nil {
 24089  		return nil, err
 24090  	}
 24091  	defer googleapi.CloseBody(res)
 24092  	if err := googleapi.CheckResponse(res); err != nil {
 24093  		return nil, gensupport.WrapError(err)
 24094  	}
 24095  	ret := &DirectorySitesListResponse{
 24096  		ServerResponse: googleapi.ServerResponse{
 24097  			Header:         res.Header,
 24098  			HTTPStatusCode: res.StatusCode,
 24099  		},
 24100  	}
 24101  	target := &ret
 24102  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24103  		return nil, err
 24104  	}
 24105  	return ret, nil
 24106  }
 24107  
 24108  // Pages invokes f for each page of results.
 24109  // A non-nil error returned from f will halt the iteration.
 24110  // The provided context supersedes any context provided to the Context method.
 24111  func (c *DirectorySitesListCall) Pages(ctx context.Context, f func(*DirectorySitesListResponse) error) error {
 24112  	c.ctx_ = ctx
 24113  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 24114  	for {
 24115  		x, err := c.Do()
 24116  		if err != nil {
 24117  			return err
 24118  		}
 24119  		if err := f(x); err != nil {
 24120  			return err
 24121  		}
 24122  		if x.NextPageToken == "" {
 24123  			return nil
 24124  		}
 24125  		c.PageToken(x.NextPageToken)
 24126  	}
 24127  }
 24128  
 24129  type DynamicTargetingKeysDeleteCall struct {
 24130  	s          *Service
 24131  	profileId  int64
 24132  	objectId   int64
 24133  	urlParams_ gensupport.URLParams
 24134  	ctx_       context.Context
 24135  	header_    http.Header
 24136  }
 24137  
 24138  // Delete: Deletes an existing dynamic targeting key.
 24139  //
 24140  //   - name: Name of this dynamic targeting key. This is a required field. Must
 24141  //     be less than 256 characters long and cannot contain commas. All characters
 24142  //     are converted to lowercase.
 24143  //   - objectId: ID of the object of this dynamic targeting key. This is a
 24144  //     required field.
 24145  //   - objectType: Type of the object of this dynamic targeting key. This is a
 24146  //     required field.
 24147  //   - profileId: User profile ID associated with this request.
 24148  func (r *DynamicTargetingKeysService) Delete(profileId int64, objectId int64, name string, objectType string) *DynamicTargetingKeysDeleteCall {
 24149  	c := &DynamicTargetingKeysDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24150  	c.profileId = profileId
 24151  	c.objectId = objectId
 24152  	c.urlParams_.Set("name", name)
 24153  	c.urlParams_.Set("objectType", objectType)
 24154  	return c
 24155  }
 24156  
 24157  // Fields allows partial responses to be retrieved. See
 24158  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24159  // details.
 24160  func (c *DynamicTargetingKeysDeleteCall) Fields(s ...googleapi.Field) *DynamicTargetingKeysDeleteCall {
 24161  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24162  	return c
 24163  }
 24164  
 24165  // Context sets the context to be used in this call's Do method.
 24166  func (c *DynamicTargetingKeysDeleteCall) Context(ctx context.Context) *DynamicTargetingKeysDeleteCall {
 24167  	c.ctx_ = ctx
 24168  	return c
 24169  }
 24170  
 24171  // Header returns a http.Header that can be modified by the caller to add
 24172  // headers to the request.
 24173  func (c *DynamicTargetingKeysDeleteCall) Header() http.Header {
 24174  	if c.header_ == nil {
 24175  		c.header_ = make(http.Header)
 24176  	}
 24177  	return c.header_
 24178  }
 24179  
 24180  func (c *DynamicTargetingKeysDeleteCall) doRequest(alt string) (*http.Response, error) {
 24181  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24182  	var body io.Reader = nil
 24183  	c.urlParams_.Set("alt", alt)
 24184  	c.urlParams_.Set("prettyPrint", "false")
 24185  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/dynamicTargetingKeys/{+objectId}")
 24186  	urls += "?" + c.urlParams_.Encode()
 24187  	req, err := http.NewRequest("DELETE", urls, body)
 24188  	if err != nil {
 24189  		return nil, err
 24190  	}
 24191  	req.Header = reqHeaders
 24192  	googleapi.Expand(req.URL, map[string]string{
 24193  		"profileId": strconv.FormatInt(c.profileId, 10),
 24194  		"objectId":  strconv.FormatInt(c.objectId, 10),
 24195  	})
 24196  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24197  }
 24198  
 24199  // Do executes the "dfareporting.dynamicTargetingKeys.delete" call.
 24200  func (c *DynamicTargetingKeysDeleteCall) Do(opts ...googleapi.CallOption) error {
 24201  	gensupport.SetOptions(c.urlParams_, opts...)
 24202  	res, err := c.doRequest("json")
 24203  	if err != nil {
 24204  		return err
 24205  	}
 24206  	defer googleapi.CloseBody(res)
 24207  	if err := googleapi.CheckResponse(res); err != nil {
 24208  		return gensupport.WrapError(err)
 24209  	}
 24210  	return nil
 24211  }
 24212  
 24213  type DynamicTargetingKeysInsertCall struct {
 24214  	s                   *Service
 24215  	profileId           int64
 24216  	dynamictargetingkey *DynamicTargetingKey
 24217  	urlParams_          gensupport.URLParams
 24218  	ctx_                context.Context
 24219  	header_             http.Header
 24220  }
 24221  
 24222  // Insert: Inserts a new dynamic targeting key. Keys must be created at the
 24223  // advertiser level before being assigned to the advertiser's ads, creatives,
 24224  // or placements. There is a maximum of 1000 keys per advertiser, out of which
 24225  // a maximum of 20 keys can be assigned per ad, creative, or placement.
 24226  //
 24227  // - profileId: User profile ID associated with this request.
 24228  func (r *DynamicTargetingKeysService) Insert(profileId int64, dynamictargetingkey *DynamicTargetingKey) *DynamicTargetingKeysInsertCall {
 24229  	c := &DynamicTargetingKeysInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24230  	c.profileId = profileId
 24231  	c.dynamictargetingkey = dynamictargetingkey
 24232  	return c
 24233  }
 24234  
 24235  // Fields allows partial responses to be retrieved. See
 24236  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24237  // details.
 24238  func (c *DynamicTargetingKeysInsertCall) Fields(s ...googleapi.Field) *DynamicTargetingKeysInsertCall {
 24239  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24240  	return c
 24241  }
 24242  
 24243  // Context sets the context to be used in this call's Do method.
 24244  func (c *DynamicTargetingKeysInsertCall) Context(ctx context.Context) *DynamicTargetingKeysInsertCall {
 24245  	c.ctx_ = ctx
 24246  	return c
 24247  }
 24248  
 24249  // Header returns a http.Header that can be modified by the caller to add
 24250  // headers to the request.
 24251  func (c *DynamicTargetingKeysInsertCall) Header() http.Header {
 24252  	if c.header_ == nil {
 24253  		c.header_ = make(http.Header)
 24254  	}
 24255  	return c.header_
 24256  }
 24257  
 24258  func (c *DynamicTargetingKeysInsertCall) doRequest(alt string) (*http.Response, error) {
 24259  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 24260  	var body io.Reader = nil
 24261  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dynamictargetingkey)
 24262  	if err != nil {
 24263  		return nil, err
 24264  	}
 24265  	c.urlParams_.Set("alt", alt)
 24266  	c.urlParams_.Set("prettyPrint", "false")
 24267  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/dynamicTargetingKeys")
 24268  	urls += "?" + c.urlParams_.Encode()
 24269  	req, err := http.NewRequest("POST", urls, body)
 24270  	if err != nil {
 24271  		return nil, err
 24272  	}
 24273  	req.Header = reqHeaders
 24274  	googleapi.Expand(req.URL, map[string]string{
 24275  		"profileId": strconv.FormatInt(c.profileId, 10),
 24276  	})
 24277  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24278  }
 24279  
 24280  // Do executes the "dfareporting.dynamicTargetingKeys.insert" call.
 24281  // Any non-2xx status code is an error. Response headers are in either
 24282  // *DynamicTargetingKey.ServerResponse.Header or (if a response was returned at
 24283  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 24284  // check whether the returned error was because http.StatusNotModified was
 24285  // returned.
 24286  func (c *DynamicTargetingKeysInsertCall) Do(opts ...googleapi.CallOption) (*DynamicTargetingKey, error) {
 24287  	gensupport.SetOptions(c.urlParams_, opts...)
 24288  	res, err := c.doRequest("json")
 24289  	if res != nil && res.StatusCode == http.StatusNotModified {
 24290  		if res.Body != nil {
 24291  			res.Body.Close()
 24292  		}
 24293  		return nil, gensupport.WrapError(&googleapi.Error{
 24294  			Code:   res.StatusCode,
 24295  			Header: res.Header,
 24296  		})
 24297  	}
 24298  	if err != nil {
 24299  		return nil, err
 24300  	}
 24301  	defer googleapi.CloseBody(res)
 24302  	if err := googleapi.CheckResponse(res); err != nil {
 24303  		return nil, gensupport.WrapError(err)
 24304  	}
 24305  	ret := &DynamicTargetingKey{
 24306  		ServerResponse: googleapi.ServerResponse{
 24307  			Header:         res.Header,
 24308  			HTTPStatusCode: res.StatusCode,
 24309  		},
 24310  	}
 24311  	target := &ret
 24312  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24313  		return nil, err
 24314  	}
 24315  	return ret, nil
 24316  }
 24317  
 24318  type DynamicTargetingKeysListCall struct {
 24319  	s            *Service
 24320  	profileId    int64
 24321  	urlParams_   gensupport.URLParams
 24322  	ifNoneMatch_ string
 24323  	ctx_         context.Context
 24324  	header_      http.Header
 24325  }
 24326  
 24327  // List: Retrieves a list of dynamic targeting keys.
 24328  //
 24329  // - profileId: User profile ID associated with this request.
 24330  func (r *DynamicTargetingKeysService) List(profileId int64) *DynamicTargetingKeysListCall {
 24331  	c := &DynamicTargetingKeysListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24332  	c.profileId = profileId
 24333  	return c
 24334  }
 24335  
 24336  // AdvertiserId sets the optional parameter "advertiserId": Select only dynamic
 24337  // targeting keys whose object has this advertiser ID.
 24338  func (c *DynamicTargetingKeysListCall) AdvertiserId(advertiserId int64) *DynamicTargetingKeysListCall {
 24339  	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
 24340  	return c
 24341  }
 24342  
 24343  // Names sets the optional parameter "names": Select only dynamic targeting
 24344  // keys exactly matching these names.
 24345  func (c *DynamicTargetingKeysListCall) Names(names ...string) *DynamicTargetingKeysListCall {
 24346  	c.urlParams_.SetMulti("names", append([]string{}, names...))
 24347  	return c
 24348  }
 24349  
 24350  // ObjectId sets the optional parameter "objectId": Select only dynamic
 24351  // targeting keys with this object ID.
 24352  func (c *DynamicTargetingKeysListCall) ObjectId(objectId int64) *DynamicTargetingKeysListCall {
 24353  	c.urlParams_.Set("objectId", fmt.Sprint(objectId))
 24354  	return c
 24355  }
 24356  
 24357  // ObjectType sets the optional parameter "objectType": Select only dynamic
 24358  // targeting keys with this object type.
 24359  //
 24360  // Possible values:
 24361  //
 24362  //	"OBJECT_ADVERTISER"
 24363  //	"OBJECT_AD"
 24364  //	"OBJECT_CREATIVE"
 24365  //	"OBJECT_PLACEMENT"
 24366  func (c *DynamicTargetingKeysListCall) ObjectType(objectType string) *DynamicTargetingKeysListCall {
 24367  	c.urlParams_.Set("objectType", objectType)
 24368  	return c
 24369  }
 24370  
 24371  // Fields allows partial responses to be retrieved. See
 24372  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24373  // details.
 24374  func (c *DynamicTargetingKeysListCall) Fields(s ...googleapi.Field) *DynamicTargetingKeysListCall {
 24375  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24376  	return c
 24377  }
 24378  
 24379  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 24380  // object's ETag matches the given value. This is useful for getting updates
 24381  // only after the object has changed since the last request.
 24382  func (c *DynamicTargetingKeysListCall) IfNoneMatch(entityTag string) *DynamicTargetingKeysListCall {
 24383  	c.ifNoneMatch_ = entityTag
 24384  	return c
 24385  }
 24386  
 24387  // Context sets the context to be used in this call's Do method.
 24388  func (c *DynamicTargetingKeysListCall) Context(ctx context.Context) *DynamicTargetingKeysListCall {
 24389  	c.ctx_ = ctx
 24390  	return c
 24391  }
 24392  
 24393  // Header returns a http.Header that can be modified by the caller to add
 24394  // headers to the request.
 24395  func (c *DynamicTargetingKeysListCall) Header() http.Header {
 24396  	if c.header_ == nil {
 24397  		c.header_ = make(http.Header)
 24398  	}
 24399  	return c.header_
 24400  }
 24401  
 24402  func (c *DynamicTargetingKeysListCall) doRequest(alt string) (*http.Response, error) {
 24403  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24404  	if c.ifNoneMatch_ != "" {
 24405  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24406  	}
 24407  	var body io.Reader = nil
 24408  	c.urlParams_.Set("alt", alt)
 24409  	c.urlParams_.Set("prettyPrint", "false")
 24410  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/dynamicTargetingKeys")
 24411  	urls += "?" + c.urlParams_.Encode()
 24412  	req, err := http.NewRequest("GET", urls, body)
 24413  	if err != nil {
 24414  		return nil, err
 24415  	}
 24416  	req.Header = reqHeaders
 24417  	googleapi.Expand(req.URL, map[string]string{
 24418  		"profileId": strconv.FormatInt(c.profileId, 10),
 24419  	})
 24420  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24421  }
 24422  
 24423  // Do executes the "dfareporting.dynamicTargetingKeys.list" call.
 24424  // Any non-2xx status code is an error. Response headers are in either
 24425  // *DynamicTargetingKeysListResponse.ServerResponse.Header or (if a response
 24426  // was returned at all) in error.(*googleapi.Error).Header. Use
 24427  // googleapi.IsNotModified to check whether the returned error was because
 24428  // http.StatusNotModified was returned.
 24429  func (c *DynamicTargetingKeysListCall) Do(opts ...googleapi.CallOption) (*DynamicTargetingKeysListResponse, error) {
 24430  	gensupport.SetOptions(c.urlParams_, opts...)
 24431  	res, err := c.doRequest("json")
 24432  	if res != nil && res.StatusCode == http.StatusNotModified {
 24433  		if res.Body != nil {
 24434  			res.Body.Close()
 24435  		}
 24436  		return nil, gensupport.WrapError(&googleapi.Error{
 24437  			Code:   res.StatusCode,
 24438  			Header: res.Header,
 24439  		})
 24440  	}
 24441  	if err != nil {
 24442  		return nil, err
 24443  	}
 24444  	defer googleapi.CloseBody(res)
 24445  	if err := googleapi.CheckResponse(res); err != nil {
 24446  		return nil, gensupport.WrapError(err)
 24447  	}
 24448  	ret := &DynamicTargetingKeysListResponse{
 24449  		ServerResponse: googleapi.ServerResponse{
 24450  			Header:         res.Header,
 24451  			HTTPStatusCode: res.StatusCode,
 24452  		},
 24453  	}
 24454  	target := &ret
 24455  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24456  		return nil, err
 24457  	}
 24458  	return ret, nil
 24459  }
 24460  
 24461  type EventTagsDeleteCall struct {
 24462  	s          *Service
 24463  	profileId  int64
 24464  	id         int64
 24465  	urlParams_ gensupport.URLParams
 24466  	ctx_       context.Context
 24467  	header_    http.Header
 24468  }
 24469  
 24470  // Delete: Deletes an existing event tag.
 24471  //
 24472  // - id: Event tag ID.
 24473  // - profileId: User profile ID associated with this request.
 24474  func (r *EventTagsService) Delete(profileId int64, id int64) *EventTagsDeleteCall {
 24475  	c := &EventTagsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24476  	c.profileId = profileId
 24477  	c.id = id
 24478  	return c
 24479  }
 24480  
 24481  // Fields allows partial responses to be retrieved. See
 24482  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24483  // details.
 24484  func (c *EventTagsDeleteCall) Fields(s ...googleapi.Field) *EventTagsDeleteCall {
 24485  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24486  	return c
 24487  }
 24488  
 24489  // Context sets the context to be used in this call's Do method.
 24490  func (c *EventTagsDeleteCall) Context(ctx context.Context) *EventTagsDeleteCall {
 24491  	c.ctx_ = ctx
 24492  	return c
 24493  }
 24494  
 24495  // Header returns a http.Header that can be modified by the caller to add
 24496  // headers to the request.
 24497  func (c *EventTagsDeleteCall) Header() http.Header {
 24498  	if c.header_ == nil {
 24499  		c.header_ = make(http.Header)
 24500  	}
 24501  	return c.header_
 24502  }
 24503  
 24504  func (c *EventTagsDeleteCall) doRequest(alt string) (*http.Response, error) {
 24505  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24506  	var body io.Reader = nil
 24507  	c.urlParams_.Set("alt", alt)
 24508  	c.urlParams_.Set("prettyPrint", "false")
 24509  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/eventTags/{+id}")
 24510  	urls += "?" + c.urlParams_.Encode()
 24511  	req, err := http.NewRequest("DELETE", urls, body)
 24512  	if err != nil {
 24513  		return nil, err
 24514  	}
 24515  	req.Header = reqHeaders
 24516  	googleapi.Expand(req.URL, map[string]string{
 24517  		"profileId": strconv.FormatInt(c.profileId, 10),
 24518  		"id":        strconv.FormatInt(c.id, 10),
 24519  	})
 24520  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24521  }
 24522  
 24523  // Do executes the "dfareporting.eventTags.delete" call.
 24524  func (c *EventTagsDeleteCall) Do(opts ...googleapi.CallOption) error {
 24525  	gensupport.SetOptions(c.urlParams_, opts...)
 24526  	res, err := c.doRequest("json")
 24527  	if err != nil {
 24528  		return err
 24529  	}
 24530  	defer googleapi.CloseBody(res)
 24531  	if err := googleapi.CheckResponse(res); err != nil {
 24532  		return gensupport.WrapError(err)
 24533  	}
 24534  	return nil
 24535  }
 24536  
 24537  type EventTagsGetCall struct {
 24538  	s            *Service
 24539  	profileId    int64
 24540  	id           int64
 24541  	urlParams_   gensupport.URLParams
 24542  	ifNoneMatch_ string
 24543  	ctx_         context.Context
 24544  	header_      http.Header
 24545  }
 24546  
 24547  // Get: Gets one event tag by ID.
 24548  //
 24549  // - id: Event tag ID.
 24550  // - profileId: User profile ID associated with this request.
 24551  func (r *EventTagsService) Get(profileId int64, id int64) *EventTagsGetCall {
 24552  	c := &EventTagsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24553  	c.profileId = profileId
 24554  	c.id = id
 24555  	return c
 24556  }
 24557  
 24558  // Fields allows partial responses to be retrieved. See
 24559  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24560  // details.
 24561  func (c *EventTagsGetCall) Fields(s ...googleapi.Field) *EventTagsGetCall {
 24562  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24563  	return c
 24564  }
 24565  
 24566  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 24567  // object's ETag matches the given value. This is useful for getting updates
 24568  // only after the object has changed since the last request.
 24569  func (c *EventTagsGetCall) IfNoneMatch(entityTag string) *EventTagsGetCall {
 24570  	c.ifNoneMatch_ = entityTag
 24571  	return c
 24572  }
 24573  
 24574  // Context sets the context to be used in this call's Do method.
 24575  func (c *EventTagsGetCall) Context(ctx context.Context) *EventTagsGetCall {
 24576  	c.ctx_ = ctx
 24577  	return c
 24578  }
 24579  
 24580  // Header returns a http.Header that can be modified by the caller to add
 24581  // headers to the request.
 24582  func (c *EventTagsGetCall) Header() http.Header {
 24583  	if c.header_ == nil {
 24584  		c.header_ = make(http.Header)
 24585  	}
 24586  	return c.header_
 24587  }
 24588  
 24589  func (c *EventTagsGetCall) doRequest(alt string) (*http.Response, error) {
 24590  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24591  	if c.ifNoneMatch_ != "" {
 24592  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24593  	}
 24594  	var body io.Reader = nil
 24595  	c.urlParams_.Set("alt", alt)
 24596  	c.urlParams_.Set("prettyPrint", "false")
 24597  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/eventTags/{+id}")
 24598  	urls += "?" + c.urlParams_.Encode()
 24599  	req, err := http.NewRequest("GET", urls, body)
 24600  	if err != nil {
 24601  		return nil, err
 24602  	}
 24603  	req.Header = reqHeaders
 24604  	googleapi.Expand(req.URL, map[string]string{
 24605  		"profileId": strconv.FormatInt(c.profileId, 10),
 24606  		"id":        strconv.FormatInt(c.id, 10),
 24607  	})
 24608  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24609  }
 24610  
 24611  // Do executes the "dfareporting.eventTags.get" call.
 24612  // Any non-2xx status code is an error. Response headers are in either
 24613  // *EventTag.ServerResponse.Header or (if a response was returned at all) in
 24614  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 24615  // whether the returned error was because http.StatusNotModified was returned.
 24616  func (c *EventTagsGetCall) Do(opts ...googleapi.CallOption) (*EventTag, error) {
 24617  	gensupport.SetOptions(c.urlParams_, opts...)
 24618  	res, err := c.doRequest("json")
 24619  	if res != nil && res.StatusCode == http.StatusNotModified {
 24620  		if res.Body != nil {
 24621  			res.Body.Close()
 24622  		}
 24623  		return nil, gensupport.WrapError(&googleapi.Error{
 24624  			Code:   res.StatusCode,
 24625  			Header: res.Header,
 24626  		})
 24627  	}
 24628  	if err != nil {
 24629  		return nil, err
 24630  	}
 24631  	defer googleapi.CloseBody(res)
 24632  	if err := googleapi.CheckResponse(res); err != nil {
 24633  		return nil, gensupport.WrapError(err)
 24634  	}
 24635  	ret := &EventTag{
 24636  		ServerResponse: googleapi.ServerResponse{
 24637  			Header:         res.Header,
 24638  			HTTPStatusCode: res.StatusCode,
 24639  		},
 24640  	}
 24641  	target := &ret
 24642  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24643  		return nil, err
 24644  	}
 24645  	return ret, nil
 24646  }
 24647  
 24648  type EventTagsInsertCall struct {
 24649  	s          *Service
 24650  	profileId  int64
 24651  	eventtag   *EventTag
 24652  	urlParams_ gensupport.URLParams
 24653  	ctx_       context.Context
 24654  	header_    http.Header
 24655  }
 24656  
 24657  // Insert: Inserts a new event tag.
 24658  //
 24659  // - profileId: User profile ID associated with this request.
 24660  func (r *EventTagsService) Insert(profileId int64, eventtag *EventTag) *EventTagsInsertCall {
 24661  	c := &EventTagsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24662  	c.profileId = profileId
 24663  	c.eventtag = eventtag
 24664  	return c
 24665  }
 24666  
 24667  // Fields allows partial responses to be retrieved. See
 24668  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24669  // details.
 24670  func (c *EventTagsInsertCall) Fields(s ...googleapi.Field) *EventTagsInsertCall {
 24671  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24672  	return c
 24673  }
 24674  
 24675  // Context sets the context to be used in this call's Do method.
 24676  func (c *EventTagsInsertCall) Context(ctx context.Context) *EventTagsInsertCall {
 24677  	c.ctx_ = ctx
 24678  	return c
 24679  }
 24680  
 24681  // Header returns a http.Header that can be modified by the caller to add
 24682  // headers to the request.
 24683  func (c *EventTagsInsertCall) Header() http.Header {
 24684  	if c.header_ == nil {
 24685  		c.header_ = make(http.Header)
 24686  	}
 24687  	return c.header_
 24688  }
 24689  
 24690  func (c *EventTagsInsertCall) doRequest(alt string) (*http.Response, error) {
 24691  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 24692  	var body io.Reader = nil
 24693  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventtag)
 24694  	if err != nil {
 24695  		return nil, err
 24696  	}
 24697  	c.urlParams_.Set("alt", alt)
 24698  	c.urlParams_.Set("prettyPrint", "false")
 24699  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/eventTags")
 24700  	urls += "?" + c.urlParams_.Encode()
 24701  	req, err := http.NewRequest("POST", urls, body)
 24702  	if err != nil {
 24703  		return nil, err
 24704  	}
 24705  	req.Header = reqHeaders
 24706  	googleapi.Expand(req.URL, map[string]string{
 24707  		"profileId": strconv.FormatInt(c.profileId, 10),
 24708  	})
 24709  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24710  }
 24711  
 24712  // Do executes the "dfareporting.eventTags.insert" call.
 24713  // Any non-2xx status code is an error. Response headers are in either
 24714  // *EventTag.ServerResponse.Header or (if a response was returned at all) in
 24715  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 24716  // whether the returned error was because http.StatusNotModified was returned.
 24717  func (c *EventTagsInsertCall) Do(opts ...googleapi.CallOption) (*EventTag, error) {
 24718  	gensupport.SetOptions(c.urlParams_, opts...)
 24719  	res, err := c.doRequest("json")
 24720  	if res != nil && res.StatusCode == http.StatusNotModified {
 24721  		if res.Body != nil {
 24722  			res.Body.Close()
 24723  		}
 24724  		return nil, gensupport.WrapError(&googleapi.Error{
 24725  			Code:   res.StatusCode,
 24726  			Header: res.Header,
 24727  		})
 24728  	}
 24729  	if err != nil {
 24730  		return nil, err
 24731  	}
 24732  	defer googleapi.CloseBody(res)
 24733  	if err := googleapi.CheckResponse(res); err != nil {
 24734  		return nil, gensupport.WrapError(err)
 24735  	}
 24736  	ret := &EventTag{
 24737  		ServerResponse: googleapi.ServerResponse{
 24738  			Header:         res.Header,
 24739  			HTTPStatusCode: res.StatusCode,
 24740  		},
 24741  	}
 24742  	target := &ret
 24743  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24744  		return nil, err
 24745  	}
 24746  	return ret, nil
 24747  }
 24748  
 24749  type EventTagsListCall struct {
 24750  	s            *Service
 24751  	profileId    int64
 24752  	urlParams_   gensupport.URLParams
 24753  	ifNoneMatch_ string
 24754  	ctx_         context.Context
 24755  	header_      http.Header
 24756  }
 24757  
 24758  // List: Retrieves a list of event tags, possibly filtered.
 24759  //
 24760  // - profileId: User profile ID associated with this request.
 24761  func (r *EventTagsService) List(profileId int64) *EventTagsListCall {
 24762  	c := &EventTagsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24763  	c.profileId = profileId
 24764  	return c
 24765  }
 24766  
 24767  // AdId sets the optional parameter "adId": Select only event tags that belong
 24768  // to this ad.
 24769  func (c *EventTagsListCall) AdId(adId int64) *EventTagsListCall {
 24770  	c.urlParams_.Set("adId", fmt.Sprint(adId))
 24771  	return c
 24772  }
 24773  
 24774  // AdvertiserId sets the optional parameter "advertiserId": Select only event
 24775  // tags that belong to this advertiser.
 24776  func (c *EventTagsListCall) AdvertiserId(advertiserId int64) *EventTagsListCall {
 24777  	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
 24778  	return c
 24779  }
 24780  
 24781  // CampaignId sets the optional parameter "campaignId": Select only event tags
 24782  // that belong to this campaign.
 24783  func (c *EventTagsListCall) CampaignId(campaignId int64) *EventTagsListCall {
 24784  	c.urlParams_.Set("campaignId", fmt.Sprint(campaignId))
 24785  	return c
 24786  }
 24787  
 24788  // DefinitionsOnly sets the optional parameter "definitionsOnly": Examine only
 24789  // the specified campaign or advertiser's event tags for matching selector
 24790  // criteria. When set to false, the parent advertiser and parent campaign of
 24791  // the specified ad or campaign is examined as well. In addition, when set to
 24792  // false, the status field is examined as well, along with the enabledByDefault
 24793  // field. This parameter can not be set to true when adId is specified as ads
 24794  // do not define their own even tags.
 24795  func (c *EventTagsListCall) DefinitionsOnly(definitionsOnly bool) *EventTagsListCall {
 24796  	c.urlParams_.Set("definitionsOnly", fmt.Sprint(definitionsOnly))
 24797  	return c
 24798  }
 24799  
 24800  // Enabled sets the optional parameter "enabled": Select only enabled event
 24801  // tags. What is considered enabled or disabled depends on the definitionsOnly
 24802  // parameter. When definitionsOnly is set to true, only the specified
 24803  // advertiser or campaign's event tags' enabledByDefault field is examined.
 24804  // When definitionsOnly is set to false, the specified ad or specified
 24805  // campaign's parent advertiser's or parent campaign's event tags'
 24806  // enabledByDefault and status fields are examined as well.
 24807  func (c *EventTagsListCall) Enabled(enabled bool) *EventTagsListCall {
 24808  	c.urlParams_.Set("enabled", fmt.Sprint(enabled))
 24809  	return c
 24810  }
 24811  
 24812  // EventTagTypes sets the optional parameter "eventTagTypes": Select only event
 24813  // tags with the specified event tag types. Event tag types can be used to
 24814  // specify whether to use a third-party pixel, a third-party JavaScript URL, or
 24815  // a third-party click-through URL for either impression or click tracking.
 24816  //
 24817  // Possible values:
 24818  //
 24819  //	"IMPRESSION_IMAGE_EVENT_TAG" - A third-party pixel for impression
 24820  //
 24821  // tracking.
 24822  //
 24823  //	"IMPRESSION_JAVASCRIPT_EVENT_TAG" - A third-party JavaScript URL for
 24824  //
 24825  // impression tracking.
 24826  //
 24827  //	"CLICK_THROUGH_EVENT_TAG" - A third-party URL for click tracking that
 24828  //
 24829  // redirects to the landing page.
 24830  func (c *EventTagsListCall) EventTagTypes(eventTagTypes ...string) *EventTagsListCall {
 24831  	c.urlParams_.SetMulti("eventTagTypes", append([]string{}, eventTagTypes...))
 24832  	return c
 24833  }
 24834  
 24835  // Ids sets the optional parameter "ids": Select only event tags with these
 24836  // IDs.
 24837  func (c *EventTagsListCall) Ids(ids ...int64) *EventTagsListCall {
 24838  	var ids_ []string
 24839  	for _, v := range ids {
 24840  		ids_ = append(ids_, fmt.Sprint(v))
 24841  	}
 24842  	c.urlParams_.SetMulti("ids", ids_)
 24843  	return c
 24844  }
 24845  
 24846  // SearchString sets the optional parameter "searchString": Allows searching
 24847  // for objects by name or ID. Wildcards (*) are allowed. For example,
 24848  // "eventtag*2015" will return objects with names like "eventtag June 2015",
 24849  // "eventtag April 2015", or simply "eventtag 2015". Most of the searches also
 24850  // add wildcards implicitly at the start and the end of the search string. For
 24851  // example, a search string of "eventtag" will match objects with name "my
 24852  // eventtag", "eventtag 2015", or simply "eventtag".
 24853  func (c *EventTagsListCall) SearchString(searchString string) *EventTagsListCall {
 24854  	c.urlParams_.Set("searchString", searchString)
 24855  	return c
 24856  }
 24857  
 24858  // SortField sets the optional parameter "sortField": Field by which to sort
 24859  // the list.
 24860  //
 24861  // Possible values:
 24862  //
 24863  //	"ID" (default)
 24864  //	"NAME"
 24865  func (c *EventTagsListCall) SortField(sortField string) *EventTagsListCall {
 24866  	c.urlParams_.Set("sortField", sortField)
 24867  	return c
 24868  }
 24869  
 24870  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 24871  //
 24872  // Possible values:
 24873  //
 24874  //	"ASCENDING" (default) - Ascending order.
 24875  //	"DESCENDING" - Descending order.
 24876  func (c *EventTagsListCall) SortOrder(sortOrder string) *EventTagsListCall {
 24877  	c.urlParams_.Set("sortOrder", sortOrder)
 24878  	return c
 24879  }
 24880  
 24881  // Fields allows partial responses to be retrieved. See
 24882  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24883  // details.
 24884  func (c *EventTagsListCall) Fields(s ...googleapi.Field) *EventTagsListCall {
 24885  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24886  	return c
 24887  }
 24888  
 24889  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 24890  // object's ETag matches the given value. This is useful for getting updates
 24891  // only after the object has changed since the last request.
 24892  func (c *EventTagsListCall) IfNoneMatch(entityTag string) *EventTagsListCall {
 24893  	c.ifNoneMatch_ = entityTag
 24894  	return c
 24895  }
 24896  
 24897  // Context sets the context to be used in this call's Do method.
 24898  func (c *EventTagsListCall) Context(ctx context.Context) *EventTagsListCall {
 24899  	c.ctx_ = ctx
 24900  	return c
 24901  }
 24902  
 24903  // Header returns a http.Header that can be modified by the caller to add
 24904  // headers to the request.
 24905  func (c *EventTagsListCall) Header() http.Header {
 24906  	if c.header_ == nil {
 24907  		c.header_ = make(http.Header)
 24908  	}
 24909  	return c.header_
 24910  }
 24911  
 24912  func (c *EventTagsListCall) doRequest(alt string) (*http.Response, error) {
 24913  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 24914  	if c.ifNoneMatch_ != "" {
 24915  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 24916  	}
 24917  	var body io.Reader = nil
 24918  	c.urlParams_.Set("alt", alt)
 24919  	c.urlParams_.Set("prettyPrint", "false")
 24920  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/eventTags")
 24921  	urls += "?" + c.urlParams_.Encode()
 24922  	req, err := http.NewRequest("GET", urls, body)
 24923  	if err != nil {
 24924  		return nil, err
 24925  	}
 24926  	req.Header = reqHeaders
 24927  	googleapi.Expand(req.URL, map[string]string{
 24928  		"profileId": strconv.FormatInt(c.profileId, 10),
 24929  	})
 24930  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 24931  }
 24932  
 24933  // Do executes the "dfareporting.eventTags.list" call.
 24934  // Any non-2xx status code is an error. Response headers are in either
 24935  // *EventTagsListResponse.ServerResponse.Header or (if a response was returned
 24936  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 24937  // check whether the returned error was because http.StatusNotModified was
 24938  // returned.
 24939  func (c *EventTagsListCall) Do(opts ...googleapi.CallOption) (*EventTagsListResponse, error) {
 24940  	gensupport.SetOptions(c.urlParams_, opts...)
 24941  	res, err := c.doRequest("json")
 24942  	if res != nil && res.StatusCode == http.StatusNotModified {
 24943  		if res.Body != nil {
 24944  			res.Body.Close()
 24945  		}
 24946  		return nil, gensupport.WrapError(&googleapi.Error{
 24947  			Code:   res.StatusCode,
 24948  			Header: res.Header,
 24949  		})
 24950  	}
 24951  	if err != nil {
 24952  		return nil, err
 24953  	}
 24954  	defer googleapi.CloseBody(res)
 24955  	if err := googleapi.CheckResponse(res); err != nil {
 24956  		return nil, gensupport.WrapError(err)
 24957  	}
 24958  	ret := &EventTagsListResponse{
 24959  		ServerResponse: googleapi.ServerResponse{
 24960  			Header:         res.Header,
 24961  			HTTPStatusCode: res.StatusCode,
 24962  		},
 24963  	}
 24964  	target := &ret
 24965  	if err := gensupport.DecodeResponse(target, res); err != nil {
 24966  		return nil, err
 24967  	}
 24968  	return ret, nil
 24969  }
 24970  
 24971  type EventTagsPatchCall struct {
 24972  	s          *Service
 24973  	profileId  int64
 24974  	eventtag   *EventTag
 24975  	urlParams_ gensupport.URLParams
 24976  	ctx_       context.Context
 24977  	header_    http.Header
 24978  }
 24979  
 24980  // Patch: Updates an existing event tag. This method supports patch semantics.
 24981  //
 24982  // - id: EventTag ID.
 24983  // - profileId: User profile ID associated with this request.
 24984  func (r *EventTagsService) Patch(profileId int64, id int64, eventtag *EventTag) *EventTagsPatchCall {
 24985  	c := &EventTagsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 24986  	c.profileId = profileId
 24987  	c.urlParams_.Set("id", fmt.Sprint(id))
 24988  	c.eventtag = eventtag
 24989  	return c
 24990  }
 24991  
 24992  // Fields allows partial responses to be retrieved. See
 24993  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 24994  // details.
 24995  func (c *EventTagsPatchCall) Fields(s ...googleapi.Field) *EventTagsPatchCall {
 24996  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 24997  	return c
 24998  }
 24999  
 25000  // Context sets the context to be used in this call's Do method.
 25001  func (c *EventTagsPatchCall) Context(ctx context.Context) *EventTagsPatchCall {
 25002  	c.ctx_ = ctx
 25003  	return c
 25004  }
 25005  
 25006  // Header returns a http.Header that can be modified by the caller to add
 25007  // headers to the request.
 25008  func (c *EventTagsPatchCall) Header() http.Header {
 25009  	if c.header_ == nil {
 25010  		c.header_ = make(http.Header)
 25011  	}
 25012  	return c.header_
 25013  }
 25014  
 25015  func (c *EventTagsPatchCall) doRequest(alt string) (*http.Response, error) {
 25016  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 25017  	var body io.Reader = nil
 25018  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventtag)
 25019  	if err != nil {
 25020  		return nil, err
 25021  	}
 25022  	c.urlParams_.Set("alt", alt)
 25023  	c.urlParams_.Set("prettyPrint", "false")
 25024  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/eventTags")
 25025  	urls += "?" + c.urlParams_.Encode()
 25026  	req, err := http.NewRequest("PATCH", urls, body)
 25027  	if err != nil {
 25028  		return nil, err
 25029  	}
 25030  	req.Header = reqHeaders
 25031  	googleapi.Expand(req.URL, map[string]string{
 25032  		"profileId": strconv.FormatInt(c.profileId, 10),
 25033  	})
 25034  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25035  }
 25036  
 25037  // Do executes the "dfareporting.eventTags.patch" call.
 25038  // Any non-2xx status code is an error. Response headers are in either
 25039  // *EventTag.ServerResponse.Header or (if a response was returned at all) in
 25040  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25041  // whether the returned error was because http.StatusNotModified was returned.
 25042  func (c *EventTagsPatchCall) Do(opts ...googleapi.CallOption) (*EventTag, error) {
 25043  	gensupport.SetOptions(c.urlParams_, opts...)
 25044  	res, err := c.doRequest("json")
 25045  	if res != nil && res.StatusCode == http.StatusNotModified {
 25046  		if res.Body != nil {
 25047  			res.Body.Close()
 25048  		}
 25049  		return nil, gensupport.WrapError(&googleapi.Error{
 25050  			Code:   res.StatusCode,
 25051  			Header: res.Header,
 25052  		})
 25053  	}
 25054  	if err != nil {
 25055  		return nil, err
 25056  	}
 25057  	defer googleapi.CloseBody(res)
 25058  	if err := googleapi.CheckResponse(res); err != nil {
 25059  		return nil, gensupport.WrapError(err)
 25060  	}
 25061  	ret := &EventTag{
 25062  		ServerResponse: googleapi.ServerResponse{
 25063  			Header:         res.Header,
 25064  			HTTPStatusCode: res.StatusCode,
 25065  		},
 25066  	}
 25067  	target := &ret
 25068  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25069  		return nil, err
 25070  	}
 25071  	return ret, nil
 25072  }
 25073  
 25074  type EventTagsUpdateCall struct {
 25075  	s          *Service
 25076  	profileId  int64
 25077  	eventtag   *EventTag
 25078  	urlParams_ gensupport.URLParams
 25079  	ctx_       context.Context
 25080  	header_    http.Header
 25081  }
 25082  
 25083  // Update: Updates an existing event tag.
 25084  //
 25085  // - profileId: User profile ID associated with this request.
 25086  func (r *EventTagsService) Update(profileId int64, eventtag *EventTag) *EventTagsUpdateCall {
 25087  	c := &EventTagsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25088  	c.profileId = profileId
 25089  	c.eventtag = eventtag
 25090  	return c
 25091  }
 25092  
 25093  // Fields allows partial responses to be retrieved. See
 25094  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25095  // details.
 25096  func (c *EventTagsUpdateCall) Fields(s ...googleapi.Field) *EventTagsUpdateCall {
 25097  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25098  	return c
 25099  }
 25100  
 25101  // Context sets the context to be used in this call's Do method.
 25102  func (c *EventTagsUpdateCall) Context(ctx context.Context) *EventTagsUpdateCall {
 25103  	c.ctx_ = ctx
 25104  	return c
 25105  }
 25106  
 25107  // Header returns a http.Header that can be modified by the caller to add
 25108  // headers to the request.
 25109  func (c *EventTagsUpdateCall) Header() http.Header {
 25110  	if c.header_ == nil {
 25111  		c.header_ = make(http.Header)
 25112  	}
 25113  	return c.header_
 25114  }
 25115  
 25116  func (c *EventTagsUpdateCall) doRequest(alt string) (*http.Response, error) {
 25117  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 25118  	var body io.Reader = nil
 25119  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.eventtag)
 25120  	if err != nil {
 25121  		return nil, err
 25122  	}
 25123  	c.urlParams_.Set("alt", alt)
 25124  	c.urlParams_.Set("prettyPrint", "false")
 25125  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/eventTags")
 25126  	urls += "?" + c.urlParams_.Encode()
 25127  	req, err := http.NewRequest("PUT", urls, body)
 25128  	if err != nil {
 25129  		return nil, err
 25130  	}
 25131  	req.Header = reqHeaders
 25132  	googleapi.Expand(req.URL, map[string]string{
 25133  		"profileId": strconv.FormatInt(c.profileId, 10),
 25134  	})
 25135  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25136  }
 25137  
 25138  // Do executes the "dfareporting.eventTags.update" call.
 25139  // Any non-2xx status code is an error. Response headers are in either
 25140  // *EventTag.ServerResponse.Header or (if a response was returned at all) in
 25141  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25142  // whether the returned error was because http.StatusNotModified was returned.
 25143  func (c *EventTagsUpdateCall) Do(opts ...googleapi.CallOption) (*EventTag, error) {
 25144  	gensupport.SetOptions(c.urlParams_, opts...)
 25145  	res, err := c.doRequest("json")
 25146  	if res != nil && res.StatusCode == http.StatusNotModified {
 25147  		if res.Body != nil {
 25148  			res.Body.Close()
 25149  		}
 25150  		return nil, gensupport.WrapError(&googleapi.Error{
 25151  			Code:   res.StatusCode,
 25152  			Header: res.Header,
 25153  		})
 25154  	}
 25155  	if err != nil {
 25156  		return nil, err
 25157  	}
 25158  	defer googleapi.CloseBody(res)
 25159  	if err := googleapi.CheckResponse(res); err != nil {
 25160  		return nil, gensupport.WrapError(err)
 25161  	}
 25162  	ret := &EventTag{
 25163  		ServerResponse: googleapi.ServerResponse{
 25164  			Header:         res.Header,
 25165  			HTTPStatusCode: res.StatusCode,
 25166  		},
 25167  	}
 25168  	target := &ret
 25169  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25170  		return nil, err
 25171  	}
 25172  	return ret, nil
 25173  }
 25174  
 25175  type FilesGetCall struct {
 25176  	s            *Service
 25177  	reportId     int64
 25178  	fileId       int64
 25179  	urlParams_   gensupport.URLParams
 25180  	ifNoneMatch_ string
 25181  	ctx_         context.Context
 25182  	header_      http.Header
 25183  }
 25184  
 25185  // Get: Retrieves a report file by its report ID and file ID. This method
 25186  // supports media download.
 25187  //
 25188  // - fileId: The ID of the report file.
 25189  // - reportId: The ID of the report.
 25190  func (r *FilesService) Get(reportId int64, fileId int64) *FilesGetCall {
 25191  	c := &FilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25192  	c.reportId = reportId
 25193  	c.fileId = fileId
 25194  	return c
 25195  }
 25196  
 25197  // Fields allows partial responses to be retrieved. See
 25198  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25199  // details.
 25200  func (c *FilesGetCall) Fields(s ...googleapi.Field) *FilesGetCall {
 25201  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25202  	return c
 25203  }
 25204  
 25205  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 25206  // object's ETag matches the given value. This is useful for getting updates
 25207  // only after the object has changed since the last request.
 25208  func (c *FilesGetCall) IfNoneMatch(entityTag string) *FilesGetCall {
 25209  	c.ifNoneMatch_ = entityTag
 25210  	return c
 25211  }
 25212  
 25213  // Context sets the context to be used in this call's Do and Download methods.
 25214  func (c *FilesGetCall) Context(ctx context.Context) *FilesGetCall {
 25215  	c.ctx_ = ctx
 25216  	return c
 25217  }
 25218  
 25219  // Header returns a http.Header that can be modified by the caller to add
 25220  // headers to the request.
 25221  func (c *FilesGetCall) Header() http.Header {
 25222  	if c.header_ == nil {
 25223  		c.header_ = make(http.Header)
 25224  	}
 25225  	return c.header_
 25226  }
 25227  
 25228  func (c *FilesGetCall) doRequest(alt string) (*http.Response, error) {
 25229  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 25230  	if c.ifNoneMatch_ != "" {
 25231  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 25232  	}
 25233  	var body io.Reader = nil
 25234  	c.urlParams_.Set("alt", alt)
 25235  	c.urlParams_.Set("prettyPrint", "false")
 25236  	urls := googleapi.ResolveRelative(c.s.BasePath, "reports/{reportId}/files/{fileId}")
 25237  	urls += "?" + c.urlParams_.Encode()
 25238  	req, err := http.NewRequest("GET", urls, body)
 25239  	if err != nil {
 25240  		return nil, err
 25241  	}
 25242  	req.Header = reqHeaders
 25243  	googleapi.Expand(req.URL, map[string]string{
 25244  		"reportId": strconv.FormatInt(c.reportId, 10),
 25245  		"fileId":   strconv.FormatInt(c.fileId, 10),
 25246  	})
 25247  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25248  }
 25249  
 25250  // Download fetches the API endpoint's "media" value, instead of the normal
 25251  // API response value. If the returned error is nil, the Response is guaranteed to
 25252  // have a 2xx status code. Callers must close the Response.Body as usual.
 25253  func (c *FilesGetCall) Download(opts ...googleapi.CallOption) (*http.Response, error) {
 25254  	gensupport.SetOptions(c.urlParams_, opts...)
 25255  	res, err := c.doRequest("media")
 25256  	if err != nil {
 25257  		return nil, err
 25258  	}
 25259  	if err := googleapi.CheckResponse(res); err != nil {
 25260  		res.Body.Close()
 25261  		return nil, gensupport.WrapError(err)
 25262  	}
 25263  	return res, nil
 25264  }
 25265  
 25266  // Do executes the "dfareporting.files.get" call.
 25267  // Any non-2xx status code is an error. Response headers are in either
 25268  // *File.ServerResponse.Header or (if a response was returned at all) in
 25269  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25270  // whether the returned error was because http.StatusNotModified was returned.
 25271  func (c *FilesGetCall) Do(opts ...googleapi.CallOption) (*File, error) {
 25272  	gensupport.SetOptions(c.urlParams_, opts...)
 25273  	res, err := c.doRequest("json")
 25274  	if res != nil && res.StatusCode == http.StatusNotModified {
 25275  		if res.Body != nil {
 25276  			res.Body.Close()
 25277  		}
 25278  		return nil, gensupport.WrapError(&googleapi.Error{
 25279  			Code:   res.StatusCode,
 25280  			Header: res.Header,
 25281  		})
 25282  	}
 25283  	if err != nil {
 25284  		return nil, err
 25285  	}
 25286  	defer googleapi.CloseBody(res)
 25287  	if err := googleapi.CheckResponse(res); err != nil {
 25288  		return nil, gensupport.WrapError(err)
 25289  	}
 25290  	ret := &File{
 25291  		ServerResponse: googleapi.ServerResponse{
 25292  			Header:         res.Header,
 25293  			HTTPStatusCode: res.StatusCode,
 25294  		},
 25295  	}
 25296  	target := &ret
 25297  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25298  		return nil, err
 25299  	}
 25300  	return ret, nil
 25301  }
 25302  
 25303  type FilesListCall struct {
 25304  	s            *Service
 25305  	profileId    int64
 25306  	urlParams_   gensupport.URLParams
 25307  	ifNoneMatch_ string
 25308  	ctx_         context.Context
 25309  	header_      http.Header
 25310  }
 25311  
 25312  // List: Lists files for a user profile.
 25313  //
 25314  // - profileId: The Campaign Manager 360 user profile ID.
 25315  func (r *FilesService) List(profileId int64) *FilesListCall {
 25316  	c := &FilesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25317  	c.profileId = profileId
 25318  	return c
 25319  }
 25320  
 25321  // MaxResults sets the optional parameter "maxResults": Maximum number of
 25322  // results to return.
 25323  func (c *FilesListCall) MaxResults(maxResults int64) *FilesListCall {
 25324  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 25325  	return c
 25326  }
 25327  
 25328  // PageToken sets the optional parameter "pageToken": The value of the
 25329  // nextToken from the previous result page.
 25330  func (c *FilesListCall) PageToken(pageToken string) *FilesListCall {
 25331  	c.urlParams_.Set("pageToken", pageToken)
 25332  	return c
 25333  }
 25334  
 25335  // Scope sets the optional parameter "scope": The scope that defines which
 25336  // results are returned.
 25337  //
 25338  // Possible values:
 25339  //
 25340  //	"ALL" - All files in account.
 25341  //	"MINE" (default) - My files.
 25342  //	"SHARED_WITH_ME" - Files shared with me.
 25343  func (c *FilesListCall) Scope(scope string) *FilesListCall {
 25344  	c.urlParams_.Set("scope", scope)
 25345  	return c
 25346  }
 25347  
 25348  // SortField sets the optional parameter "sortField": The field by which to
 25349  // sort the list.
 25350  //
 25351  // Possible values:
 25352  //
 25353  //	"ID" - Sort by file ID.
 25354  //	"LAST_MODIFIED_TIME" (default) - Sort by 'lastmodifiedAt' field.
 25355  func (c *FilesListCall) SortField(sortField string) *FilesListCall {
 25356  	c.urlParams_.Set("sortField", sortField)
 25357  	return c
 25358  }
 25359  
 25360  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 25361  //
 25362  // Possible values:
 25363  //
 25364  //	"ASCENDING" - Ascending order.
 25365  //	"DESCENDING" (default) - Descending order.
 25366  func (c *FilesListCall) SortOrder(sortOrder string) *FilesListCall {
 25367  	c.urlParams_.Set("sortOrder", sortOrder)
 25368  	return c
 25369  }
 25370  
 25371  // Fields allows partial responses to be retrieved. See
 25372  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25373  // details.
 25374  func (c *FilesListCall) Fields(s ...googleapi.Field) *FilesListCall {
 25375  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25376  	return c
 25377  }
 25378  
 25379  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 25380  // object's ETag matches the given value. This is useful for getting updates
 25381  // only after the object has changed since the last request.
 25382  func (c *FilesListCall) IfNoneMatch(entityTag string) *FilesListCall {
 25383  	c.ifNoneMatch_ = entityTag
 25384  	return c
 25385  }
 25386  
 25387  // Context sets the context to be used in this call's Do method.
 25388  func (c *FilesListCall) Context(ctx context.Context) *FilesListCall {
 25389  	c.ctx_ = ctx
 25390  	return c
 25391  }
 25392  
 25393  // Header returns a http.Header that can be modified by the caller to add
 25394  // headers to the request.
 25395  func (c *FilesListCall) Header() http.Header {
 25396  	if c.header_ == nil {
 25397  		c.header_ = make(http.Header)
 25398  	}
 25399  	return c.header_
 25400  }
 25401  
 25402  func (c *FilesListCall) doRequest(alt string) (*http.Response, error) {
 25403  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 25404  	if c.ifNoneMatch_ != "" {
 25405  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 25406  	}
 25407  	var body io.Reader = nil
 25408  	c.urlParams_.Set("alt", alt)
 25409  	c.urlParams_.Set("prettyPrint", "false")
 25410  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/files")
 25411  	urls += "?" + c.urlParams_.Encode()
 25412  	req, err := http.NewRequest("GET", urls, body)
 25413  	if err != nil {
 25414  		return nil, err
 25415  	}
 25416  	req.Header = reqHeaders
 25417  	googleapi.Expand(req.URL, map[string]string{
 25418  		"profileId": strconv.FormatInt(c.profileId, 10),
 25419  	})
 25420  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25421  }
 25422  
 25423  // Do executes the "dfareporting.files.list" call.
 25424  // Any non-2xx status code is an error. Response headers are in either
 25425  // *FileList.ServerResponse.Header or (if a response was returned at all) in
 25426  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 25427  // whether the returned error was because http.StatusNotModified was returned.
 25428  func (c *FilesListCall) Do(opts ...googleapi.CallOption) (*FileList, error) {
 25429  	gensupport.SetOptions(c.urlParams_, opts...)
 25430  	res, err := c.doRequest("json")
 25431  	if res != nil && res.StatusCode == http.StatusNotModified {
 25432  		if res.Body != nil {
 25433  			res.Body.Close()
 25434  		}
 25435  		return nil, gensupport.WrapError(&googleapi.Error{
 25436  			Code:   res.StatusCode,
 25437  			Header: res.Header,
 25438  		})
 25439  	}
 25440  	if err != nil {
 25441  		return nil, err
 25442  	}
 25443  	defer googleapi.CloseBody(res)
 25444  	if err := googleapi.CheckResponse(res); err != nil {
 25445  		return nil, gensupport.WrapError(err)
 25446  	}
 25447  	ret := &FileList{
 25448  		ServerResponse: googleapi.ServerResponse{
 25449  			Header:         res.Header,
 25450  			HTTPStatusCode: res.StatusCode,
 25451  		},
 25452  	}
 25453  	target := &ret
 25454  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25455  		return nil, err
 25456  	}
 25457  	return ret, nil
 25458  }
 25459  
 25460  // Pages invokes f for each page of results.
 25461  // A non-nil error returned from f will halt the iteration.
 25462  // The provided context supersedes any context provided to the Context method.
 25463  func (c *FilesListCall) Pages(ctx context.Context, f func(*FileList) error) error {
 25464  	c.ctx_ = ctx
 25465  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 25466  	for {
 25467  		x, err := c.Do()
 25468  		if err != nil {
 25469  			return err
 25470  		}
 25471  		if err := f(x); err != nil {
 25472  			return err
 25473  		}
 25474  		if x.NextPageToken == "" {
 25475  			return nil
 25476  		}
 25477  		c.PageToken(x.NextPageToken)
 25478  	}
 25479  }
 25480  
 25481  type FloodlightActivitiesDeleteCall struct {
 25482  	s          *Service
 25483  	profileId  int64
 25484  	id         int64
 25485  	urlParams_ gensupport.URLParams
 25486  	ctx_       context.Context
 25487  	header_    http.Header
 25488  }
 25489  
 25490  // Delete: Deletes an existing floodlight activity.
 25491  //
 25492  // - id: Floodlight activity ID.
 25493  // - profileId: User profile ID associated with this request.
 25494  func (r *FloodlightActivitiesService) Delete(profileId int64, id int64) *FloodlightActivitiesDeleteCall {
 25495  	c := &FloodlightActivitiesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25496  	c.profileId = profileId
 25497  	c.id = id
 25498  	return c
 25499  }
 25500  
 25501  // Fields allows partial responses to be retrieved. See
 25502  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25503  // details.
 25504  func (c *FloodlightActivitiesDeleteCall) Fields(s ...googleapi.Field) *FloodlightActivitiesDeleteCall {
 25505  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25506  	return c
 25507  }
 25508  
 25509  // Context sets the context to be used in this call's Do method.
 25510  func (c *FloodlightActivitiesDeleteCall) Context(ctx context.Context) *FloodlightActivitiesDeleteCall {
 25511  	c.ctx_ = ctx
 25512  	return c
 25513  }
 25514  
 25515  // Header returns a http.Header that can be modified by the caller to add
 25516  // headers to the request.
 25517  func (c *FloodlightActivitiesDeleteCall) Header() http.Header {
 25518  	if c.header_ == nil {
 25519  		c.header_ = make(http.Header)
 25520  	}
 25521  	return c.header_
 25522  }
 25523  
 25524  func (c *FloodlightActivitiesDeleteCall) doRequest(alt string) (*http.Response, error) {
 25525  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 25526  	var body io.Reader = nil
 25527  	c.urlParams_.Set("alt", alt)
 25528  	c.urlParams_.Set("prettyPrint", "false")
 25529  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivities/{+id}")
 25530  	urls += "?" + c.urlParams_.Encode()
 25531  	req, err := http.NewRequest("DELETE", urls, body)
 25532  	if err != nil {
 25533  		return nil, err
 25534  	}
 25535  	req.Header = reqHeaders
 25536  	googleapi.Expand(req.URL, map[string]string{
 25537  		"profileId": strconv.FormatInt(c.profileId, 10),
 25538  		"id":        strconv.FormatInt(c.id, 10),
 25539  	})
 25540  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25541  }
 25542  
 25543  // Do executes the "dfareporting.floodlightActivities.delete" call.
 25544  func (c *FloodlightActivitiesDeleteCall) Do(opts ...googleapi.CallOption) error {
 25545  	gensupport.SetOptions(c.urlParams_, opts...)
 25546  	res, err := c.doRequest("json")
 25547  	if err != nil {
 25548  		return err
 25549  	}
 25550  	defer googleapi.CloseBody(res)
 25551  	if err := googleapi.CheckResponse(res); err != nil {
 25552  		return gensupport.WrapError(err)
 25553  	}
 25554  	return nil
 25555  }
 25556  
 25557  type FloodlightActivitiesGeneratetagCall struct {
 25558  	s          *Service
 25559  	profileId  int64
 25560  	urlParams_ gensupport.URLParams
 25561  	ctx_       context.Context
 25562  	header_    http.Header
 25563  }
 25564  
 25565  // Generatetag: Generates a tag for a floodlight activity.
 25566  //
 25567  // - profileId: User profile ID associated with this request.
 25568  func (r *FloodlightActivitiesService) Generatetag(profileId int64) *FloodlightActivitiesGeneratetagCall {
 25569  	c := &FloodlightActivitiesGeneratetagCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25570  	c.profileId = profileId
 25571  	return c
 25572  }
 25573  
 25574  // FloodlightActivityId sets the optional parameter "floodlightActivityId":
 25575  // Floodlight activity ID for which we want to generate a tag.
 25576  func (c *FloodlightActivitiesGeneratetagCall) FloodlightActivityId(floodlightActivityId int64) *FloodlightActivitiesGeneratetagCall {
 25577  	c.urlParams_.Set("floodlightActivityId", fmt.Sprint(floodlightActivityId))
 25578  	return c
 25579  }
 25580  
 25581  // Fields allows partial responses to be retrieved. See
 25582  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25583  // details.
 25584  func (c *FloodlightActivitiesGeneratetagCall) Fields(s ...googleapi.Field) *FloodlightActivitiesGeneratetagCall {
 25585  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25586  	return c
 25587  }
 25588  
 25589  // Context sets the context to be used in this call's Do method.
 25590  func (c *FloodlightActivitiesGeneratetagCall) Context(ctx context.Context) *FloodlightActivitiesGeneratetagCall {
 25591  	c.ctx_ = ctx
 25592  	return c
 25593  }
 25594  
 25595  // Header returns a http.Header that can be modified by the caller to add
 25596  // headers to the request.
 25597  func (c *FloodlightActivitiesGeneratetagCall) Header() http.Header {
 25598  	if c.header_ == nil {
 25599  		c.header_ = make(http.Header)
 25600  	}
 25601  	return c.header_
 25602  }
 25603  
 25604  func (c *FloodlightActivitiesGeneratetagCall) doRequest(alt string) (*http.Response, error) {
 25605  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 25606  	var body io.Reader = nil
 25607  	c.urlParams_.Set("alt", alt)
 25608  	c.urlParams_.Set("prettyPrint", "false")
 25609  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivities/generatetag")
 25610  	urls += "?" + c.urlParams_.Encode()
 25611  	req, err := http.NewRequest("POST", urls, body)
 25612  	if err != nil {
 25613  		return nil, err
 25614  	}
 25615  	req.Header = reqHeaders
 25616  	googleapi.Expand(req.URL, map[string]string{
 25617  		"profileId": strconv.FormatInt(c.profileId, 10),
 25618  	})
 25619  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25620  }
 25621  
 25622  // Do executes the "dfareporting.floodlightActivities.generatetag" call.
 25623  // Any non-2xx status code is an error. Response headers are in either
 25624  // *FloodlightActivitiesGenerateTagResponse.ServerResponse.Header or (if a
 25625  // response was returned at all) in error.(*googleapi.Error).Header. Use
 25626  // googleapi.IsNotModified to check whether the returned error was because
 25627  // http.StatusNotModified was returned.
 25628  func (c *FloodlightActivitiesGeneratetagCall) Do(opts ...googleapi.CallOption) (*FloodlightActivitiesGenerateTagResponse, error) {
 25629  	gensupport.SetOptions(c.urlParams_, opts...)
 25630  	res, err := c.doRequest("json")
 25631  	if res != nil && res.StatusCode == http.StatusNotModified {
 25632  		if res.Body != nil {
 25633  			res.Body.Close()
 25634  		}
 25635  		return nil, gensupport.WrapError(&googleapi.Error{
 25636  			Code:   res.StatusCode,
 25637  			Header: res.Header,
 25638  		})
 25639  	}
 25640  	if err != nil {
 25641  		return nil, err
 25642  	}
 25643  	defer googleapi.CloseBody(res)
 25644  	if err := googleapi.CheckResponse(res); err != nil {
 25645  		return nil, gensupport.WrapError(err)
 25646  	}
 25647  	ret := &FloodlightActivitiesGenerateTagResponse{
 25648  		ServerResponse: googleapi.ServerResponse{
 25649  			Header:         res.Header,
 25650  			HTTPStatusCode: res.StatusCode,
 25651  		},
 25652  	}
 25653  	target := &ret
 25654  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25655  		return nil, err
 25656  	}
 25657  	return ret, nil
 25658  }
 25659  
 25660  type FloodlightActivitiesGetCall struct {
 25661  	s            *Service
 25662  	profileId    int64
 25663  	id           int64
 25664  	urlParams_   gensupport.URLParams
 25665  	ifNoneMatch_ string
 25666  	ctx_         context.Context
 25667  	header_      http.Header
 25668  }
 25669  
 25670  // Get: Gets one floodlight activity by ID.
 25671  //
 25672  // - id: Floodlight activity ID.
 25673  // - profileId: User profile ID associated with this request.
 25674  func (r *FloodlightActivitiesService) Get(profileId int64, id int64) *FloodlightActivitiesGetCall {
 25675  	c := &FloodlightActivitiesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25676  	c.profileId = profileId
 25677  	c.id = id
 25678  	return c
 25679  }
 25680  
 25681  // Fields allows partial responses to be retrieved. See
 25682  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25683  // details.
 25684  func (c *FloodlightActivitiesGetCall) Fields(s ...googleapi.Field) *FloodlightActivitiesGetCall {
 25685  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25686  	return c
 25687  }
 25688  
 25689  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 25690  // object's ETag matches the given value. This is useful for getting updates
 25691  // only after the object has changed since the last request.
 25692  func (c *FloodlightActivitiesGetCall) IfNoneMatch(entityTag string) *FloodlightActivitiesGetCall {
 25693  	c.ifNoneMatch_ = entityTag
 25694  	return c
 25695  }
 25696  
 25697  // Context sets the context to be used in this call's Do method.
 25698  func (c *FloodlightActivitiesGetCall) Context(ctx context.Context) *FloodlightActivitiesGetCall {
 25699  	c.ctx_ = ctx
 25700  	return c
 25701  }
 25702  
 25703  // Header returns a http.Header that can be modified by the caller to add
 25704  // headers to the request.
 25705  func (c *FloodlightActivitiesGetCall) Header() http.Header {
 25706  	if c.header_ == nil {
 25707  		c.header_ = make(http.Header)
 25708  	}
 25709  	return c.header_
 25710  }
 25711  
 25712  func (c *FloodlightActivitiesGetCall) doRequest(alt string) (*http.Response, error) {
 25713  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 25714  	if c.ifNoneMatch_ != "" {
 25715  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 25716  	}
 25717  	var body io.Reader = nil
 25718  	c.urlParams_.Set("alt", alt)
 25719  	c.urlParams_.Set("prettyPrint", "false")
 25720  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivities/{+id}")
 25721  	urls += "?" + c.urlParams_.Encode()
 25722  	req, err := http.NewRequest("GET", urls, body)
 25723  	if err != nil {
 25724  		return nil, err
 25725  	}
 25726  	req.Header = reqHeaders
 25727  	googleapi.Expand(req.URL, map[string]string{
 25728  		"profileId": strconv.FormatInt(c.profileId, 10),
 25729  		"id":        strconv.FormatInt(c.id, 10),
 25730  	})
 25731  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25732  }
 25733  
 25734  // Do executes the "dfareporting.floodlightActivities.get" call.
 25735  // Any non-2xx status code is an error. Response headers are in either
 25736  // *FloodlightActivity.ServerResponse.Header or (if a response was returned at
 25737  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 25738  // check whether the returned error was because http.StatusNotModified was
 25739  // returned.
 25740  func (c *FloodlightActivitiesGetCall) Do(opts ...googleapi.CallOption) (*FloodlightActivity, error) {
 25741  	gensupport.SetOptions(c.urlParams_, opts...)
 25742  	res, err := c.doRequest("json")
 25743  	if res != nil && res.StatusCode == http.StatusNotModified {
 25744  		if res.Body != nil {
 25745  			res.Body.Close()
 25746  		}
 25747  		return nil, gensupport.WrapError(&googleapi.Error{
 25748  			Code:   res.StatusCode,
 25749  			Header: res.Header,
 25750  		})
 25751  	}
 25752  	if err != nil {
 25753  		return nil, err
 25754  	}
 25755  	defer googleapi.CloseBody(res)
 25756  	if err := googleapi.CheckResponse(res); err != nil {
 25757  		return nil, gensupport.WrapError(err)
 25758  	}
 25759  	ret := &FloodlightActivity{
 25760  		ServerResponse: googleapi.ServerResponse{
 25761  			Header:         res.Header,
 25762  			HTTPStatusCode: res.StatusCode,
 25763  		},
 25764  	}
 25765  	target := &ret
 25766  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25767  		return nil, err
 25768  	}
 25769  	return ret, nil
 25770  }
 25771  
 25772  type FloodlightActivitiesInsertCall struct {
 25773  	s                  *Service
 25774  	profileId          int64
 25775  	floodlightactivity *FloodlightActivity
 25776  	urlParams_         gensupport.URLParams
 25777  	ctx_               context.Context
 25778  	header_            http.Header
 25779  }
 25780  
 25781  // Insert: Inserts a new floodlight activity.
 25782  //
 25783  // - profileId: User profile ID associated with this request.
 25784  func (r *FloodlightActivitiesService) Insert(profileId int64, floodlightactivity *FloodlightActivity) *FloodlightActivitiesInsertCall {
 25785  	c := &FloodlightActivitiesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25786  	c.profileId = profileId
 25787  	c.floodlightactivity = floodlightactivity
 25788  	return c
 25789  }
 25790  
 25791  // Fields allows partial responses to be retrieved. See
 25792  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 25793  // details.
 25794  func (c *FloodlightActivitiesInsertCall) Fields(s ...googleapi.Field) *FloodlightActivitiesInsertCall {
 25795  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 25796  	return c
 25797  }
 25798  
 25799  // Context sets the context to be used in this call's Do method.
 25800  func (c *FloodlightActivitiesInsertCall) Context(ctx context.Context) *FloodlightActivitiesInsertCall {
 25801  	c.ctx_ = ctx
 25802  	return c
 25803  }
 25804  
 25805  // Header returns a http.Header that can be modified by the caller to add
 25806  // headers to the request.
 25807  func (c *FloodlightActivitiesInsertCall) Header() http.Header {
 25808  	if c.header_ == nil {
 25809  		c.header_ = make(http.Header)
 25810  	}
 25811  	return c.header_
 25812  }
 25813  
 25814  func (c *FloodlightActivitiesInsertCall) doRequest(alt string) (*http.Response, error) {
 25815  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 25816  	var body io.Reader = nil
 25817  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivity)
 25818  	if err != nil {
 25819  		return nil, err
 25820  	}
 25821  	c.urlParams_.Set("alt", alt)
 25822  	c.urlParams_.Set("prettyPrint", "false")
 25823  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivities")
 25824  	urls += "?" + c.urlParams_.Encode()
 25825  	req, err := http.NewRequest("POST", urls, body)
 25826  	if err != nil {
 25827  		return nil, err
 25828  	}
 25829  	req.Header = reqHeaders
 25830  	googleapi.Expand(req.URL, map[string]string{
 25831  		"profileId": strconv.FormatInt(c.profileId, 10),
 25832  	})
 25833  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 25834  }
 25835  
 25836  // Do executes the "dfareporting.floodlightActivities.insert" call.
 25837  // Any non-2xx status code is an error. Response headers are in either
 25838  // *FloodlightActivity.ServerResponse.Header or (if a response was returned at
 25839  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 25840  // check whether the returned error was because http.StatusNotModified was
 25841  // returned.
 25842  func (c *FloodlightActivitiesInsertCall) Do(opts ...googleapi.CallOption) (*FloodlightActivity, error) {
 25843  	gensupport.SetOptions(c.urlParams_, opts...)
 25844  	res, err := c.doRequest("json")
 25845  	if res != nil && res.StatusCode == http.StatusNotModified {
 25846  		if res.Body != nil {
 25847  			res.Body.Close()
 25848  		}
 25849  		return nil, gensupport.WrapError(&googleapi.Error{
 25850  			Code:   res.StatusCode,
 25851  			Header: res.Header,
 25852  		})
 25853  	}
 25854  	if err != nil {
 25855  		return nil, err
 25856  	}
 25857  	defer googleapi.CloseBody(res)
 25858  	if err := googleapi.CheckResponse(res); err != nil {
 25859  		return nil, gensupport.WrapError(err)
 25860  	}
 25861  	ret := &FloodlightActivity{
 25862  		ServerResponse: googleapi.ServerResponse{
 25863  			Header:         res.Header,
 25864  			HTTPStatusCode: res.StatusCode,
 25865  		},
 25866  	}
 25867  	target := &ret
 25868  	if err := gensupport.DecodeResponse(target, res); err != nil {
 25869  		return nil, err
 25870  	}
 25871  	return ret, nil
 25872  }
 25873  
 25874  type FloodlightActivitiesListCall struct {
 25875  	s            *Service
 25876  	profileId    int64
 25877  	urlParams_   gensupport.URLParams
 25878  	ifNoneMatch_ string
 25879  	ctx_         context.Context
 25880  	header_      http.Header
 25881  }
 25882  
 25883  // List: Retrieves a list of floodlight activities, possibly filtered. This
 25884  // method supports paging.
 25885  //
 25886  // - profileId: User profile ID associated with this request.
 25887  func (r *FloodlightActivitiesService) List(profileId int64) *FloodlightActivitiesListCall {
 25888  	c := &FloodlightActivitiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 25889  	c.profileId = profileId
 25890  	return c
 25891  }
 25892  
 25893  // AdvertiserId sets the optional parameter "advertiserId": Select only
 25894  // floodlight activities for the specified advertiser ID. Must specify either
 25895  // ids, advertiserId, or floodlightConfigurationId for a non-empty result.
 25896  func (c *FloodlightActivitiesListCall) AdvertiserId(advertiserId int64) *FloodlightActivitiesListCall {
 25897  	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
 25898  	return c
 25899  }
 25900  
 25901  // FloodlightActivityGroupIds sets the optional parameter
 25902  // "floodlightActivityGroupIds": Select only floodlight activities with the
 25903  // specified floodlight activity group IDs.
 25904  func (c *FloodlightActivitiesListCall) FloodlightActivityGroupIds(floodlightActivityGroupIds ...int64) *FloodlightActivitiesListCall {
 25905  	var floodlightActivityGroupIds_ []string
 25906  	for _, v := range floodlightActivityGroupIds {
 25907  		floodlightActivityGroupIds_ = append(floodlightActivityGroupIds_, fmt.Sprint(v))
 25908  	}
 25909  	c.urlParams_.SetMulti("floodlightActivityGroupIds", floodlightActivityGroupIds_)
 25910  	return c
 25911  }
 25912  
 25913  // FloodlightActivityGroupName sets the optional parameter
 25914  // "floodlightActivityGroupName": Select only floodlight activities with the
 25915  // specified floodlight activity group name.
 25916  func (c *FloodlightActivitiesListCall) FloodlightActivityGroupName(floodlightActivityGroupName string) *FloodlightActivitiesListCall {
 25917  	c.urlParams_.Set("floodlightActivityGroupName", floodlightActivityGroupName)
 25918  	return c
 25919  }
 25920  
 25921  // FloodlightActivityGroupTagString sets the optional parameter
 25922  // "floodlightActivityGroupTagString": Select only floodlight activities with
 25923  // the specified floodlight activity group tag string.
 25924  func (c *FloodlightActivitiesListCall) FloodlightActivityGroupTagString(floodlightActivityGroupTagString string) *FloodlightActivitiesListCall {
 25925  	c.urlParams_.Set("floodlightActivityGroupTagString", floodlightActivityGroupTagString)
 25926  	return c
 25927  }
 25928  
 25929  // FloodlightActivityGroupType sets the optional parameter
 25930  // "floodlightActivityGroupType": Select only floodlight activities with the
 25931  // specified floodlight activity group type.
 25932  //
 25933  // Possible values:
 25934  //
 25935  //	"COUNTER"
 25936  //	"SALE"
 25937  func (c *FloodlightActivitiesListCall) FloodlightActivityGroupType(floodlightActivityGroupType string) *FloodlightActivitiesListCall {
 25938  	c.urlParams_.Set("floodlightActivityGroupType", floodlightActivityGroupType)
 25939  	return c
 25940  }
 25941  
 25942  // FloodlightConfigurationId sets the optional parameter
 25943  // "floodlightConfigurationId": Select only floodlight activities for the
 25944  // specified floodlight configuration ID. Must specify either ids,
 25945  // advertiserId, or floodlightConfigurationId for a non-empty result.
 25946  func (c *FloodlightActivitiesListCall) FloodlightConfigurationId(floodlightConfigurationId int64) *FloodlightActivitiesListCall {
 25947  	c.urlParams_.Set("floodlightConfigurationId", fmt.Sprint(floodlightConfigurationId))
 25948  	return c
 25949  }
 25950  
 25951  // Ids sets the optional parameter "ids": Select only floodlight activities
 25952  // with the specified IDs. Must specify either ids, advertiserId, or
 25953  // floodlightConfigurationId for a non-empty result.
 25954  func (c *FloodlightActivitiesListCall) Ids(ids ...int64) *FloodlightActivitiesListCall {
 25955  	var ids_ []string
 25956  	for _, v := range ids {
 25957  		ids_ = append(ids_, fmt.Sprint(v))
 25958  	}
 25959  	c.urlParams_.SetMulti("ids", ids_)
 25960  	return c
 25961  }
 25962  
 25963  // MaxResults sets the optional parameter "maxResults": Maximum number of
 25964  // results to return.
 25965  func (c *FloodlightActivitiesListCall) MaxResults(maxResults int64) *FloodlightActivitiesListCall {
 25966  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 25967  	return c
 25968  }
 25969  
 25970  // PageToken sets the optional parameter "pageToken": Value of the
 25971  // nextPageToken from the previous result page.
 25972  func (c *FloodlightActivitiesListCall) PageToken(pageToken string) *FloodlightActivitiesListCall {
 25973  	c.urlParams_.Set("pageToken", pageToken)
 25974  	return c
 25975  }
 25976  
 25977  // SearchString sets the optional parameter "searchString": Allows searching
 25978  // for objects by name or ID. Wildcards (*) are allowed. For example,
 25979  // "floodlightactivity*2015" will return objects with names like
 25980  // "floodlightactivity June 2015", "floodlightactivity April 2015", or simply
 25981  // "floodlightactivity 2015". Most of the searches also add wildcards
 25982  // implicitly at the start and the end of the search string. For example, a
 25983  // search string of "floodlightactivity" will match objects with name "my
 25984  // floodlightactivity activity", "floodlightactivity 2015", or simply
 25985  // "floodlightactivity".
 25986  func (c *FloodlightActivitiesListCall) SearchString(searchString string) *FloodlightActivitiesListCall {
 25987  	c.urlParams_.Set("searchString", searchString)
 25988  	return c
 25989  }
 25990  
 25991  // SortField sets the optional parameter "sortField": Field by which to sort
 25992  // the list.
 25993  //
 25994  // Possible values:
 25995  //
 25996  //	"ID" (default)
 25997  //	"NAME"
 25998  func (c *FloodlightActivitiesListCall) SortField(sortField string) *FloodlightActivitiesListCall {
 25999  	c.urlParams_.Set("sortField", sortField)
 26000  	return c
 26001  }
 26002  
 26003  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 26004  //
 26005  // Possible values:
 26006  //
 26007  //	"ASCENDING" (default) - Ascending order.
 26008  //	"DESCENDING" - Descending order.
 26009  func (c *FloodlightActivitiesListCall) SortOrder(sortOrder string) *FloodlightActivitiesListCall {
 26010  	c.urlParams_.Set("sortOrder", sortOrder)
 26011  	return c
 26012  }
 26013  
 26014  // TagString sets the optional parameter "tagString": Select only floodlight
 26015  // activities with the specified tag string.
 26016  func (c *FloodlightActivitiesListCall) TagString(tagString string) *FloodlightActivitiesListCall {
 26017  	c.urlParams_.Set("tagString", tagString)
 26018  	return c
 26019  }
 26020  
 26021  // Fields allows partial responses to be retrieved. See
 26022  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26023  // details.
 26024  func (c *FloodlightActivitiesListCall) Fields(s ...googleapi.Field) *FloodlightActivitiesListCall {
 26025  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26026  	return c
 26027  }
 26028  
 26029  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 26030  // object's ETag matches the given value. This is useful for getting updates
 26031  // only after the object has changed since the last request.
 26032  func (c *FloodlightActivitiesListCall) IfNoneMatch(entityTag string) *FloodlightActivitiesListCall {
 26033  	c.ifNoneMatch_ = entityTag
 26034  	return c
 26035  }
 26036  
 26037  // Context sets the context to be used in this call's Do method.
 26038  func (c *FloodlightActivitiesListCall) Context(ctx context.Context) *FloodlightActivitiesListCall {
 26039  	c.ctx_ = ctx
 26040  	return c
 26041  }
 26042  
 26043  // Header returns a http.Header that can be modified by the caller to add
 26044  // headers to the request.
 26045  func (c *FloodlightActivitiesListCall) Header() http.Header {
 26046  	if c.header_ == nil {
 26047  		c.header_ = make(http.Header)
 26048  	}
 26049  	return c.header_
 26050  }
 26051  
 26052  func (c *FloodlightActivitiesListCall) doRequest(alt string) (*http.Response, error) {
 26053  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 26054  	if c.ifNoneMatch_ != "" {
 26055  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 26056  	}
 26057  	var body io.Reader = nil
 26058  	c.urlParams_.Set("alt", alt)
 26059  	c.urlParams_.Set("prettyPrint", "false")
 26060  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivities")
 26061  	urls += "?" + c.urlParams_.Encode()
 26062  	req, err := http.NewRequest("GET", urls, body)
 26063  	if err != nil {
 26064  		return nil, err
 26065  	}
 26066  	req.Header = reqHeaders
 26067  	googleapi.Expand(req.URL, map[string]string{
 26068  		"profileId": strconv.FormatInt(c.profileId, 10),
 26069  	})
 26070  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26071  }
 26072  
 26073  // Do executes the "dfareporting.floodlightActivities.list" call.
 26074  // Any non-2xx status code is an error. Response headers are in either
 26075  // *FloodlightActivitiesListResponse.ServerResponse.Header or (if a response
 26076  // was returned at all) in error.(*googleapi.Error).Header. Use
 26077  // googleapi.IsNotModified to check whether the returned error was because
 26078  // http.StatusNotModified was returned.
 26079  func (c *FloodlightActivitiesListCall) Do(opts ...googleapi.CallOption) (*FloodlightActivitiesListResponse, error) {
 26080  	gensupport.SetOptions(c.urlParams_, opts...)
 26081  	res, err := c.doRequest("json")
 26082  	if res != nil && res.StatusCode == http.StatusNotModified {
 26083  		if res.Body != nil {
 26084  			res.Body.Close()
 26085  		}
 26086  		return nil, gensupport.WrapError(&googleapi.Error{
 26087  			Code:   res.StatusCode,
 26088  			Header: res.Header,
 26089  		})
 26090  	}
 26091  	if err != nil {
 26092  		return nil, err
 26093  	}
 26094  	defer googleapi.CloseBody(res)
 26095  	if err := googleapi.CheckResponse(res); err != nil {
 26096  		return nil, gensupport.WrapError(err)
 26097  	}
 26098  	ret := &FloodlightActivitiesListResponse{
 26099  		ServerResponse: googleapi.ServerResponse{
 26100  			Header:         res.Header,
 26101  			HTTPStatusCode: res.StatusCode,
 26102  		},
 26103  	}
 26104  	target := &ret
 26105  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26106  		return nil, err
 26107  	}
 26108  	return ret, nil
 26109  }
 26110  
 26111  // Pages invokes f for each page of results.
 26112  // A non-nil error returned from f will halt the iteration.
 26113  // The provided context supersedes any context provided to the Context method.
 26114  func (c *FloodlightActivitiesListCall) Pages(ctx context.Context, f func(*FloodlightActivitiesListResponse) error) error {
 26115  	c.ctx_ = ctx
 26116  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 26117  	for {
 26118  		x, err := c.Do()
 26119  		if err != nil {
 26120  			return err
 26121  		}
 26122  		if err := f(x); err != nil {
 26123  			return err
 26124  		}
 26125  		if x.NextPageToken == "" {
 26126  			return nil
 26127  		}
 26128  		c.PageToken(x.NextPageToken)
 26129  	}
 26130  }
 26131  
 26132  type FloodlightActivitiesPatchCall struct {
 26133  	s                  *Service
 26134  	profileId          int64
 26135  	floodlightactivity *FloodlightActivity
 26136  	urlParams_         gensupport.URLParams
 26137  	ctx_               context.Context
 26138  	header_            http.Header
 26139  }
 26140  
 26141  // Patch: Updates an existing event tag. This method supports patch semantics.
 26142  //
 26143  // - id: EventTag ID.
 26144  // - profileId: User profile ID associated with this request.
 26145  func (r *FloodlightActivitiesService) Patch(profileId int64, id int64, floodlightactivity *FloodlightActivity) *FloodlightActivitiesPatchCall {
 26146  	c := &FloodlightActivitiesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26147  	c.profileId = profileId
 26148  	c.urlParams_.Set("id", fmt.Sprint(id))
 26149  	c.floodlightactivity = floodlightactivity
 26150  	return c
 26151  }
 26152  
 26153  // Fields allows partial responses to be retrieved. See
 26154  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26155  // details.
 26156  func (c *FloodlightActivitiesPatchCall) Fields(s ...googleapi.Field) *FloodlightActivitiesPatchCall {
 26157  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26158  	return c
 26159  }
 26160  
 26161  // Context sets the context to be used in this call's Do method.
 26162  func (c *FloodlightActivitiesPatchCall) Context(ctx context.Context) *FloodlightActivitiesPatchCall {
 26163  	c.ctx_ = ctx
 26164  	return c
 26165  }
 26166  
 26167  // Header returns a http.Header that can be modified by the caller to add
 26168  // headers to the request.
 26169  func (c *FloodlightActivitiesPatchCall) Header() http.Header {
 26170  	if c.header_ == nil {
 26171  		c.header_ = make(http.Header)
 26172  	}
 26173  	return c.header_
 26174  }
 26175  
 26176  func (c *FloodlightActivitiesPatchCall) doRequest(alt string) (*http.Response, error) {
 26177  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 26178  	var body io.Reader = nil
 26179  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivity)
 26180  	if err != nil {
 26181  		return nil, err
 26182  	}
 26183  	c.urlParams_.Set("alt", alt)
 26184  	c.urlParams_.Set("prettyPrint", "false")
 26185  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivities")
 26186  	urls += "?" + c.urlParams_.Encode()
 26187  	req, err := http.NewRequest("PATCH", urls, body)
 26188  	if err != nil {
 26189  		return nil, err
 26190  	}
 26191  	req.Header = reqHeaders
 26192  	googleapi.Expand(req.URL, map[string]string{
 26193  		"profileId": strconv.FormatInt(c.profileId, 10),
 26194  	})
 26195  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26196  }
 26197  
 26198  // Do executes the "dfareporting.floodlightActivities.patch" call.
 26199  // Any non-2xx status code is an error. Response headers are in either
 26200  // *FloodlightActivity.ServerResponse.Header or (if a response was returned at
 26201  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 26202  // check whether the returned error was because http.StatusNotModified was
 26203  // returned.
 26204  func (c *FloodlightActivitiesPatchCall) Do(opts ...googleapi.CallOption) (*FloodlightActivity, error) {
 26205  	gensupport.SetOptions(c.urlParams_, opts...)
 26206  	res, err := c.doRequest("json")
 26207  	if res != nil && res.StatusCode == http.StatusNotModified {
 26208  		if res.Body != nil {
 26209  			res.Body.Close()
 26210  		}
 26211  		return nil, gensupport.WrapError(&googleapi.Error{
 26212  			Code:   res.StatusCode,
 26213  			Header: res.Header,
 26214  		})
 26215  	}
 26216  	if err != nil {
 26217  		return nil, err
 26218  	}
 26219  	defer googleapi.CloseBody(res)
 26220  	if err := googleapi.CheckResponse(res); err != nil {
 26221  		return nil, gensupport.WrapError(err)
 26222  	}
 26223  	ret := &FloodlightActivity{
 26224  		ServerResponse: googleapi.ServerResponse{
 26225  			Header:         res.Header,
 26226  			HTTPStatusCode: res.StatusCode,
 26227  		},
 26228  	}
 26229  	target := &ret
 26230  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26231  		return nil, err
 26232  	}
 26233  	return ret, nil
 26234  }
 26235  
 26236  type FloodlightActivitiesUpdateCall struct {
 26237  	s                  *Service
 26238  	profileId          int64
 26239  	floodlightactivity *FloodlightActivity
 26240  	urlParams_         gensupport.URLParams
 26241  	ctx_               context.Context
 26242  	header_            http.Header
 26243  }
 26244  
 26245  // Update: Updates an existing floodlight activity.
 26246  //
 26247  // - profileId: User profile ID associated with this request.
 26248  func (r *FloodlightActivitiesService) Update(profileId int64, floodlightactivity *FloodlightActivity) *FloodlightActivitiesUpdateCall {
 26249  	c := &FloodlightActivitiesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26250  	c.profileId = profileId
 26251  	c.floodlightactivity = floodlightactivity
 26252  	return c
 26253  }
 26254  
 26255  // Fields allows partial responses to be retrieved. See
 26256  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26257  // details.
 26258  func (c *FloodlightActivitiesUpdateCall) Fields(s ...googleapi.Field) *FloodlightActivitiesUpdateCall {
 26259  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26260  	return c
 26261  }
 26262  
 26263  // Context sets the context to be used in this call's Do method.
 26264  func (c *FloodlightActivitiesUpdateCall) Context(ctx context.Context) *FloodlightActivitiesUpdateCall {
 26265  	c.ctx_ = ctx
 26266  	return c
 26267  }
 26268  
 26269  // Header returns a http.Header that can be modified by the caller to add
 26270  // headers to the request.
 26271  func (c *FloodlightActivitiesUpdateCall) Header() http.Header {
 26272  	if c.header_ == nil {
 26273  		c.header_ = make(http.Header)
 26274  	}
 26275  	return c.header_
 26276  }
 26277  
 26278  func (c *FloodlightActivitiesUpdateCall) doRequest(alt string) (*http.Response, error) {
 26279  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 26280  	var body io.Reader = nil
 26281  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivity)
 26282  	if err != nil {
 26283  		return nil, err
 26284  	}
 26285  	c.urlParams_.Set("alt", alt)
 26286  	c.urlParams_.Set("prettyPrint", "false")
 26287  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivities")
 26288  	urls += "?" + c.urlParams_.Encode()
 26289  	req, err := http.NewRequest("PUT", urls, body)
 26290  	if err != nil {
 26291  		return nil, err
 26292  	}
 26293  	req.Header = reqHeaders
 26294  	googleapi.Expand(req.URL, map[string]string{
 26295  		"profileId": strconv.FormatInt(c.profileId, 10),
 26296  	})
 26297  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26298  }
 26299  
 26300  // Do executes the "dfareporting.floodlightActivities.update" call.
 26301  // Any non-2xx status code is an error. Response headers are in either
 26302  // *FloodlightActivity.ServerResponse.Header or (if a response was returned at
 26303  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 26304  // check whether the returned error was because http.StatusNotModified was
 26305  // returned.
 26306  func (c *FloodlightActivitiesUpdateCall) Do(opts ...googleapi.CallOption) (*FloodlightActivity, error) {
 26307  	gensupport.SetOptions(c.urlParams_, opts...)
 26308  	res, err := c.doRequest("json")
 26309  	if res != nil && res.StatusCode == http.StatusNotModified {
 26310  		if res.Body != nil {
 26311  			res.Body.Close()
 26312  		}
 26313  		return nil, gensupport.WrapError(&googleapi.Error{
 26314  			Code:   res.StatusCode,
 26315  			Header: res.Header,
 26316  		})
 26317  	}
 26318  	if err != nil {
 26319  		return nil, err
 26320  	}
 26321  	defer googleapi.CloseBody(res)
 26322  	if err := googleapi.CheckResponse(res); err != nil {
 26323  		return nil, gensupport.WrapError(err)
 26324  	}
 26325  	ret := &FloodlightActivity{
 26326  		ServerResponse: googleapi.ServerResponse{
 26327  			Header:         res.Header,
 26328  			HTTPStatusCode: res.StatusCode,
 26329  		},
 26330  	}
 26331  	target := &ret
 26332  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26333  		return nil, err
 26334  	}
 26335  	return ret, nil
 26336  }
 26337  
 26338  type FloodlightActivityGroupsGetCall struct {
 26339  	s            *Service
 26340  	profileId    int64
 26341  	id           int64
 26342  	urlParams_   gensupport.URLParams
 26343  	ifNoneMatch_ string
 26344  	ctx_         context.Context
 26345  	header_      http.Header
 26346  }
 26347  
 26348  // Get: Gets one floodlight activity group by ID.
 26349  //
 26350  // - id: Floodlight activity Group ID.
 26351  // - profileId: User profile ID associated with this request.
 26352  func (r *FloodlightActivityGroupsService) Get(profileId int64, id int64) *FloodlightActivityGroupsGetCall {
 26353  	c := &FloodlightActivityGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26354  	c.profileId = profileId
 26355  	c.id = id
 26356  	return c
 26357  }
 26358  
 26359  // Fields allows partial responses to be retrieved. See
 26360  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26361  // details.
 26362  func (c *FloodlightActivityGroupsGetCall) Fields(s ...googleapi.Field) *FloodlightActivityGroupsGetCall {
 26363  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26364  	return c
 26365  }
 26366  
 26367  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 26368  // object's ETag matches the given value. This is useful for getting updates
 26369  // only after the object has changed since the last request.
 26370  func (c *FloodlightActivityGroupsGetCall) IfNoneMatch(entityTag string) *FloodlightActivityGroupsGetCall {
 26371  	c.ifNoneMatch_ = entityTag
 26372  	return c
 26373  }
 26374  
 26375  // Context sets the context to be used in this call's Do method.
 26376  func (c *FloodlightActivityGroupsGetCall) Context(ctx context.Context) *FloodlightActivityGroupsGetCall {
 26377  	c.ctx_ = ctx
 26378  	return c
 26379  }
 26380  
 26381  // Header returns a http.Header that can be modified by the caller to add
 26382  // headers to the request.
 26383  func (c *FloodlightActivityGroupsGetCall) Header() http.Header {
 26384  	if c.header_ == nil {
 26385  		c.header_ = make(http.Header)
 26386  	}
 26387  	return c.header_
 26388  }
 26389  
 26390  func (c *FloodlightActivityGroupsGetCall) doRequest(alt string) (*http.Response, error) {
 26391  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 26392  	if c.ifNoneMatch_ != "" {
 26393  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 26394  	}
 26395  	var body io.Reader = nil
 26396  	c.urlParams_.Set("alt", alt)
 26397  	c.urlParams_.Set("prettyPrint", "false")
 26398  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivityGroups/{+id}")
 26399  	urls += "?" + c.urlParams_.Encode()
 26400  	req, err := http.NewRequest("GET", urls, body)
 26401  	if err != nil {
 26402  		return nil, err
 26403  	}
 26404  	req.Header = reqHeaders
 26405  	googleapi.Expand(req.URL, map[string]string{
 26406  		"profileId": strconv.FormatInt(c.profileId, 10),
 26407  		"id":        strconv.FormatInt(c.id, 10),
 26408  	})
 26409  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26410  }
 26411  
 26412  // Do executes the "dfareporting.floodlightActivityGroups.get" call.
 26413  // Any non-2xx status code is an error. Response headers are in either
 26414  // *FloodlightActivityGroup.ServerResponse.Header or (if a response was
 26415  // returned at all) in error.(*googleapi.Error).Header. Use
 26416  // googleapi.IsNotModified to check whether the returned error was because
 26417  // http.StatusNotModified was returned.
 26418  func (c *FloodlightActivityGroupsGetCall) Do(opts ...googleapi.CallOption) (*FloodlightActivityGroup, error) {
 26419  	gensupport.SetOptions(c.urlParams_, opts...)
 26420  	res, err := c.doRequest("json")
 26421  	if res != nil && res.StatusCode == http.StatusNotModified {
 26422  		if res.Body != nil {
 26423  			res.Body.Close()
 26424  		}
 26425  		return nil, gensupport.WrapError(&googleapi.Error{
 26426  			Code:   res.StatusCode,
 26427  			Header: res.Header,
 26428  		})
 26429  	}
 26430  	if err != nil {
 26431  		return nil, err
 26432  	}
 26433  	defer googleapi.CloseBody(res)
 26434  	if err := googleapi.CheckResponse(res); err != nil {
 26435  		return nil, gensupport.WrapError(err)
 26436  	}
 26437  	ret := &FloodlightActivityGroup{
 26438  		ServerResponse: googleapi.ServerResponse{
 26439  			Header:         res.Header,
 26440  			HTTPStatusCode: res.StatusCode,
 26441  		},
 26442  	}
 26443  	target := &ret
 26444  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26445  		return nil, err
 26446  	}
 26447  	return ret, nil
 26448  }
 26449  
 26450  type FloodlightActivityGroupsInsertCall struct {
 26451  	s                       *Service
 26452  	profileId               int64
 26453  	floodlightactivitygroup *FloodlightActivityGroup
 26454  	urlParams_              gensupport.URLParams
 26455  	ctx_                    context.Context
 26456  	header_                 http.Header
 26457  }
 26458  
 26459  // Insert: Inserts a new floodlight activity group.
 26460  //
 26461  // - profileId: User profile ID associated with this request.
 26462  func (r *FloodlightActivityGroupsService) Insert(profileId int64, floodlightactivitygroup *FloodlightActivityGroup) *FloodlightActivityGroupsInsertCall {
 26463  	c := &FloodlightActivityGroupsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26464  	c.profileId = profileId
 26465  	c.floodlightactivitygroup = floodlightactivitygroup
 26466  	return c
 26467  }
 26468  
 26469  // Fields allows partial responses to be retrieved. See
 26470  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26471  // details.
 26472  func (c *FloodlightActivityGroupsInsertCall) Fields(s ...googleapi.Field) *FloodlightActivityGroupsInsertCall {
 26473  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26474  	return c
 26475  }
 26476  
 26477  // Context sets the context to be used in this call's Do method.
 26478  func (c *FloodlightActivityGroupsInsertCall) Context(ctx context.Context) *FloodlightActivityGroupsInsertCall {
 26479  	c.ctx_ = ctx
 26480  	return c
 26481  }
 26482  
 26483  // Header returns a http.Header that can be modified by the caller to add
 26484  // headers to the request.
 26485  func (c *FloodlightActivityGroupsInsertCall) Header() http.Header {
 26486  	if c.header_ == nil {
 26487  		c.header_ = make(http.Header)
 26488  	}
 26489  	return c.header_
 26490  }
 26491  
 26492  func (c *FloodlightActivityGroupsInsertCall) doRequest(alt string) (*http.Response, error) {
 26493  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 26494  	var body io.Reader = nil
 26495  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivitygroup)
 26496  	if err != nil {
 26497  		return nil, err
 26498  	}
 26499  	c.urlParams_.Set("alt", alt)
 26500  	c.urlParams_.Set("prettyPrint", "false")
 26501  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivityGroups")
 26502  	urls += "?" + c.urlParams_.Encode()
 26503  	req, err := http.NewRequest("POST", urls, body)
 26504  	if err != nil {
 26505  		return nil, err
 26506  	}
 26507  	req.Header = reqHeaders
 26508  	googleapi.Expand(req.URL, map[string]string{
 26509  		"profileId": strconv.FormatInt(c.profileId, 10),
 26510  	})
 26511  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26512  }
 26513  
 26514  // Do executes the "dfareporting.floodlightActivityGroups.insert" call.
 26515  // Any non-2xx status code is an error. Response headers are in either
 26516  // *FloodlightActivityGroup.ServerResponse.Header or (if a response was
 26517  // returned at all) in error.(*googleapi.Error).Header. Use
 26518  // googleapi.IsNotModified to check whether the returned error was because
 26519  // http.StatusNotModified was returned.
 26520  func (c *FloodlightActivityGroupsInsertCall) Do(opts ...googleapi.CallOption) (*FloodlightActivityGroup, error) {
 26521  	gensupport.SetOptions(c.urlParams_, opts...)
 26522  	res, err := c.doRequest("json")
 26523  	if res != nil && res.StatusCode == http.StatusNotModified {
 26524  		if res.Body != nil {
 26525  			res.Body.Close()
 26526  		}
 26527  		return nil, gensupport.WrapError(&googleapi.Error{
 26528  			Code:   res.StatusCode,
 26529  			Header: res.Header,
 26530  		})
 26531  	}
 26532  	if err != nil {
 26533  		return nil, err
 26534  	}
 26535  	defer googleapi.CloseBody(res)
 26536  	if err := googleapi.CheckResponse(res); err != nil {
 26537  		return nil, gensupport.WrapError(err)
 26538  	}
 26539  	ret := &FloodlightActivityGroup{
 26540  		ServerResponse: googleapi.ServerResponse{
 26541  			Header:         res.Header,
 26542  			HTTPStatusCode: res.StatusCode,
 26543  		},
 26544  	}
 26545  	target := &ret
 26546  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26547  		return nil, err
 26548  	}
 26549  	return ret, nil
 26550  }
 26551  
 26552  type FloodlightActivityGroupsListCall struct {
 26553  	s            *Service
 26554  	profileId    int64
 26555  	urlParams_   gensupport.URLParams
 26556  	ifNoneMatch_ string
 26557  	ctx_         context.Context
 26558  	header_      http.Header
 26559  }
 26560  
 26561  // List: Retrieves a list of floodlight activity groups, possibly filtered.
 26562  // This method supports paging.
 26563  //
 26564  // - profileId: User profile ID associated with this request.
 26565  func (r *FloodlightActivityGroupsService) List(profileId int64) *FloodlightActivityGroupsListCall {
 26566  	c := &FloodlightActivityGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26567  	c.profileId = profileId
 26568  	return c
 26569  }
 26570  
 26571  // AdvertiserId sets the optional parameter "advertiserId": Select only
 26572  // floodlight activity groups with the specified advertiser ID. Must specify
 26573  // either advertiserId or floodlightConfigurationId for a non-empty result.
 26574  func (c *FloodlightActivityGroupsListCall) AdvertiserId(advertiserId int64) *FloodlightActivityGroupsListCall {
 26575  	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
 26576  	return c
 26577  }
 26578  
 26579  // FloodlightConfigurationId sets the optional parameter
 26580  // "floodlightConfigurationId": Select only floodlight activity groups with the
 26581  // specified floodlight configuration ID. Must specify either advertiserId, or
 26582  // floodlightConfigurationId for a non-empty result.
 26583  func (c *FloodlightActivityGroupsListCall) FloodlightConfigurationId(floodlightConfigurationId int64) *FloodlightActivityGroupsListCall {
 26584  	c.urlParams_.Set("floodlightConfigurationId", fmt.Sprint(floodlightConfigurationId))
 26585  	return c
 26586  }
 26587  
 26588  // Ids sets the optional parameter "ids": Select only floodlight activity
 26589  // groups with the specified IDs. Must specify either advertiserId or
 26590  // floodlightConfigurationId for a non-empty result.
 26591  func (c *FloodlightActivityGroupsListCall) Ids(ids ...int64) *FloodlightActivityGroupsListCall {
 26592  	var ids_ []string
 26593  	for _, v := range ids {
 26594  		ids_ = append(ids_, fmt.Sprint(v))
 26595  	}
 26596  	c.urlParams_.SetMulti("ids", ids_)
 26597  	return c
 26598  }
 26599  
 26600  // MaxResults sets the optional parameter "maxResults": Maximum number of
 26601  // results to return.
 26602  func (c *FloodlightActivityGroupsListCall) MaxResults(maxResults int64) *FloodlightActivityGroupsListCall {
 26603  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 26604  	return c
 26605  }
 26606  
 26607  // PageToken sets the optional parameter "pageToken": Value of the
 26608  // nextPageToken from the previous result page.
 26609  func (c *FloodlightActivityGroupsListCall) PageToken(pageToken string) *FloodlightActivityGroupsListCall {
 26610  	c.urlParams_.Set("pageToken", pageToken)
 26611  	return c
 26612  }
 26613  
 26614  // SearchString sets the optional parameter "searchString": Allows searching
 26615  // for objects by name or ID. Wildcards (*) are allowed. For example,
 26616  // "floodlightactivitygroup*2015" will return objects with names like
 26617  // "floodlightactivitygroup June 2015", "floodlightactivitygroup April 2015",
 26618  // or simply "floodlightactivitygroup 2015". Most of the searches also add
 26619  // wildcards implicitly at the start and the end of the search string. For
 26620  // example, a search string of "floodlightactivitygroup" will match objects
 26621  // with name "my floodlightactivitygroup activity", "floodlightactivitygroup
 26622  // 2015", or simply "floodlightactivitygroup".
 26623  func (c *FloodlightActivityGroupsListCall) SearchString(searchString string) *FloodlightActivityGroupsListCall {
 26624  	c.urlParams_.Set("searchString", searchString)
 26625  	return c
 26626  }
 26627  
 26628  // SortField sets the optional parameter "sortField": Field by which to sort
 26629  // the list.
 26630  //
 26631  // Possible values:
 26632  //
 26633  //	"ID" (default)
 26634  //	"NAME"
 26635  func (c *FloodlightActivityGroupsListCall) SortField(sortField string) *FloodlightActivityGroupsListCall {
 26636  	c.urlParams_.Set("sortField", sortField)
 26637  	return c
 26638  }
 26639  
 26640  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 26641  //
 26642  // Possible values:
 26643  //
 26644  //	"ASCENDING" (default) - Ascending order.
 26645  //	"DESCENDING" - Descending order.
 26646  func (c *FloodlightActivityGroupsListCall) SortOrder(sortOrder string) *FloodlightActivityGroupsListCall {
 26647  	c.urlParams_.Set("sortOrder", sortOrder)
 26648  	return c
 26649  }
 26650  
 26651  // Type sets the optional parameter "type": Select only floodlight activity
 26652  // groups with the specified floodlight activity group type.
 26653  //
 26654  // Possible values:
 26655  //
 26656  //	"COUNTER"
 26657  //	"SALE"
 26658  func (c *FloodlightActivityGroupsListCall) Type(type_ string) *FloodlightActivityGroupsListCall {
 26659  	c.urlParams_.Set("type", type_)
 26660  	return c
 26661  }
 26662  
 26663  // Fields allows partial responses to be retrieved. See
 26664  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26665  // details.
 26666  func (c *FloodlightActivityGroupsListCall) Fields(s ...googleapi.Field) *FloodlightActivityGroupsListCall {
 26667  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26668  	return c
 26669  }
 26670  
 26671  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 26672  // object's ETag matches the given value. This is useful for getting updates
 26673  // only after the object has changed since the last request.
 26674  func (c *FloodlightActivityGroupsListCall) IfNoneMatch(entityTag string) *FloodlightActivityGroupsListCall {
 26675  	c.ifNoneMatch_ = entityTag
 26676  	return c
 26677  }
 26678  
 26679  // Context sets the context to be used in this call's Do method.
 26680  func (c *FloodlightActivityGroupsListCall) Context(ctx context.Context) *FloodlightActivityGroupsListCall {
 26681  	c.ctx_ = ctx
 26682  	return c
 26683  }
 26684  
 26685  // Header returns a http.Header that can be modified by the caller to add
 26686  // headers to the request.
 26687  func (c *FloodlightActivityGroupsListCall) Header() http.Header {
 26688  	if c.header_ == nil {
 26689  		c.header_ = make(http.Header)
 26690  	}
 26691  	return c.header_
 26692  }
 26693  
 26694  func (c *FloodlightActivityGroupsListCall) doRequest(alt string) (*http.Response, error) {
 26695  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 26696  	if c.ifNoneMatch_ != "" {
 26697  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 26698  	}
 26699  	var body io.Reader = nil
 26700  	c.urlParams_.Set("alt", alt)
 26701  	c.urlParams_.Set("prettyPrint", "false")
 26702  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivityGroups")
 26703  	urls += "?" + c.urlParams_.Encode()
 26704  	req, err := http.NewRequest("GET", urls, body)
 26705  	if err != nil {
 26706  		return nil, err
 26707  	}
 26708  	req.Header = reqHeaders
 26709  	googleapi.Expand(req.URL, map[string]string{
 26710  		"profileId": strconv.FormatInt(c.profileId, 10),
 26711  	})
 26712  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26713  }
 26714  
 26715  // Do executes the "dfareporting.floodlightActivityGroups.list" call.
 26716  // Any non-2xx status code is an error. Response headers are in either
 26717  // *FloodlightActivityGroupsListResponse.ServerResponse.Header or (if a
 26718  // response was returned at all) in error.(*googleapi.Error).Header. Use
 26719  // googleapi.IsNotModified to check whether the returned error was because
 26720  // http.StatusNotModified was returned.
 26721  func (c *FloodlightActivityGroupsListCall) Do(opts ...googleapi.CallOption) (*FloodlightActivityGroupsListResponse, error) {
 26722  	gensupport.SetOptions(c.urlParams_, opts...)
 26723  	res, err := c.doRequest("json")
 26724  	if res != nil && res.StatusCode == http.StatusNotModified {
 26725  		if res.Body != nil {
 26726  			res.Body.Close()
 26727  		}
 26728  		return nil, gensupport.WrapError(&googleapi.Error{
 26729  			Code:   res.StatusCode,
 26730  			Header: res.Header,
 26731  		})
 26732  	}
 26733  	if err != nil {
 26734  		return nil, err
 26735  	}
 26736  	defer googleapi.CloseBody(res)
 26737  	if err := googleapi.CheckResponse(res); err != nil {
 26738  		return nil, gensupport.WrapError(err)
 26739  	}
 26740  	ret := &FloodlightActivityGroupsListResponse{
 26741  		ServerResponse: googleapi.ServerResponse{
 26742  			Header:         res.Header,
 26743  			HTTPStatusCode: res.StatusCode,
 26744  		},
 26745  	}
 26746  	target := &ret
 26747  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26748  		return nil, err
 26749  	}
 26750  	return ret, nil
 26751  }
 26752  
 26753  // Pages invokes f for each page of results.
 26754  // A non-nil error returned from f will halt the iteration.
 26755  // The provided context supersedes any context provided to the Context method.
 26756  func (c *FloodlightActivityGroupsListCall) Pages(ctx context.Context, f func(*FloodlightActivityGroupsListResponse) error) error {
 26757  	c.ctx_ = ctx
 26758  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 26759  	for {
 26760  		x, err := c.Do()
 26761  		if err != nil {
 26762  			return err
 26763  		}
 26764  		if err := f(x); err != nil {
 26765  			return err
 26766  		}
 26767  		if x.NextPageToken == "" {
 26768  			return nil
 26769  		}
 26770  		c.PageToken(x.NextPageToken)
 26771  	}
 26772  }
 26773  
 26774  type FloodlightActivityGroupsPatchCall struct {
 26775  	s                       *Service
 26776  	profileId               int64
 26777  	floodlightactivitygroup *FloodlightActivityGroup
 26778  	urlParams_              gensupport.URLParams
 26779  	ctx_                    context.Context
 26780  	header_                 http.Header
 26781  }
 26782  
 26783  // Patch: Updates an existing event tag. This method supports patch semantics.
 26784  //
 26785  // - id: EventTag ID.
 26786  // - profileId: User profile ID associated with this request.
 26787  func (r *FloodlightActivityGroupsService) Patch(profileId int64, id int64, floodlightactivitygroup *FloodlightActivityGroup) *FloodlightActivityGroupsPatchCall {
 26788  	c := &FloodlightActivityGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26789  	c.profileId = profileId
 26790  	c.urlParams_.Set("id", fmt.Sprint(id))
 26791  	c.floodlightactivitygroup = floodlightactivitygroup
 26792  	return c
 26793  }
 26794  
 26795  // Fields allows partial responses to be retrieved. See
 26796  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26797  // details.
 26798  func (c *FloodlightActivityGroupsPatchCall) Fields(s ...googleapi.Field) *FloodlightActivityGroupsPatchCall {
 26799  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26800  	return c
 26801  }
 26802  
 26803  // Context sets the context to be used in this call's Do method.
 26804  func (c *FloodlightActivityGroupsPatchCall) Context(ctx context.Context) *FloodlightActivityGroupsPatchCall {
 26805  	c.ctx_ = ctx
 26806  	return c
 26807  }
 26808  
 26809  // Header returns a http.Header that can be modified by the caller to add
 26810  // headers to the request.
 26811  func (c *FloodlightActivityGroupsPatchCall) Header() http.Header {
 26812  	if c.header_ == nil {
 26813  		c.header_ = make(http.Header)
 26814  	}
 26815  	return c.header_
 26816  }
 26817  
 26818  func (c *FloodlightActivityGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
 26819  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 26820  	var body io.Reader = nil
 26821  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivitygroup)
 26822  	if err != nil {
 26823  		return nil, err
 26824  	}
 26825  	c.urlParams_.Set("alt", alt)
 26826  	c.urlParams_.Set("prettyPrint", "false")
 26827  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivityGroups")
 26828  	urls += "?" + c.urlParams_.Encode()
 26829  	req, err := http.NewRequest("PATCH", urls, body)
 26830  	if err != nil {
 26831  		return nil, err
 26832  	}
 26833  	req.Header = reqHeaders
 26834  	googleapi.Expand(req.URL, map[string]string{
 26835  		"profileId": strconv.FormatInt(c.profileId, 10),
 26836  	})
 26837  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26838  }
 26839  
 26840  // Do executes the "dfareporting.floodlightActivityGroups.patch" call.
 26841  // Any non-2xx status code is an error. Response headers are in either
 26842  // *FloodlightActivityGroup.ServerResponse.Header or (if a response was
 26843  // returned at all) in error.(*googleapi.Error).Header. Use
 26844  // googleapi.IsNotModified to check whether the returned error was because
 26845  // http.StatusNotModified was returned.
 26846  func (c *FloodlightActivityGroupsPatchCall) Do(opts ...googleapi.CallOption) (*FloodlightActivityGroup, error) {
 26847  	gensupport.SetOptions(c.urlParams_, opts...)
 26848  	res, err := c.doRequest("json")
 26849  	if res != nil && res.StatusCode == http.StatusNotModified {
 26850  		if res.Body != nil {
 26851  			res.Body.Close()
 26852  		}
 26853  		return nil, gensupport.WrapError(&googleapi.Error{
 26854  			Code:   res.StatusCode,
 26855  			Header: res.Header,
 26856  		})
 26857  	}
 26858  	if err != nil {
 26859  		return nil, err
 26860  	}
 26861  	defer googleapi.CloseBody(res)
 26862  	if err := googleapi.CheckResponse(res); err != nil {
 26863  		return nil, gensupport.WrapError(err)
 26864  	}
 26865  	ret := &FloodlightActivityGroup{
 26866  		ServerResponse: googleapi.ServerResponse{
 26867  			Header:         res.Header,
 26868  			HTTPStatusCode: res.StatusCode,
 26869  		},
 26870  	}
 26871  	target := &ret
 26872  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26873  		return nil, err
 26874  	}
 26875  	return ret, nil
 26876  }
 26877  
 26878  type FloodlightActivityGroupsUpdateCall struct {
 26879  	s                       *Service
 26880  	profileId               int64
 26881  	floodlightactivitygroup *FloodlightActivityGroup
 26882  	urlParams_              gensupport.URLParams
 26883  	ctx_                    context.Context
 26884  	header_                 http.Header
 26885  }
 26886  
 26887  // Update: Updates an existing floodlight activity group.
 26888  //
 26889  // - profileId: User profile ID associated with this request.
 26890  func (r *FloodlightActivityGroupsService) Update(profileId int64, floodlightactivitygroup *FloodlightActivityGroup) *FloodlightActivityGroupsUpdateCall {
 26891  	c := &FloodlightActivityGroupsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26892  	c.profileId = profileId
 26893  	c.floodlightactivitygroup = floodlightactivitygroup
 26894  	return c
 26895  }
 26896  
 26897  // Fields allows partial responses to be retrieved. See
 26898  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 26899  // details.
 26900  func (c *FloodlightActivityGroupsUpdateCall) Fields(s ...googleapi.Field) *FloodlightActivityGroupsUpdateCall {
 26901  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 26902  	return c
 26903  }
 26904  
 26905  // Context sets the context to be used in this call's Do method.
 26906  func (c *FloodlightActivityGroupsUpdateCall) Context(ctx context.Context) *FloodlightActivityGroupsUpdateCall {
 26907  	c.ctx_ = ctx
 26908  	return c
 26909  }
 26910  
 26911  // Header returns a http.Header that can be modified by the caller to add
 26912  // headers to the request.
 26913  func (c *FloodlightActivityGroupsUpdateCall) Header() http.Header {
 26914  	if c.header_ == nil {
 26915  		c.header_ = make(http.Header)
 26916  	}
 26917  	return c.header_
 26918  }
 26919  
 26920  func (c *FloodlightActivityGroupsUpdateCall) doRequest(alt string) (*http.Response, error) {
 26921  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 26922  	var body io.Reader = nil
 26923  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightactivitygroup)
 26924  	if err != nil {
 26925  		return nil, err
 26926  	}
 26927  	c.urlParams_.Set("alt", alt)
 26928  	c.urlParams_.Set("prettyPrint", "false")
 26929  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightActivityGroups")
 26930  	urls += "?" + c.urlParams_.Encode()
 26931  	req, err := http.NewRequest("PUT", urls, body)
 26932  	if err != nil {
 26933  		return nil, err
 26934  	}
 26935  	req.Header = reqHeaders
 26936  	googleapi.Expand(req.URL, map[string]string{
 26937  		"profileId": strconv.FormatInt(c.profileId, 10),
 26938  	})
 26939  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 26940  }
 26941  
 26942  // Do executes the "dfareporting.floodlightActivityGroups.update" call.
 26943  // Any non-2xx status code is an error. Response headers are in either
 26944  // *FloodlightActivityGroup.ServerResponse.Header or (if a response was
 26945  // returned at all) in error.(*googleapi.Error).Header. Use
 26946  // googleapi.IsNotModified to check whether the returned error was because
 26947  // http.StatusNotModified was returned.
 26948  func (c *FloodlightActivityGroupsUpdateCall) Do(opts ...googleapi.CallOption) (*FloodlightActivityGroup, error) {
 26949  	gensupport.SetOptions(c.urlParams_, opts...)
 26950  	res, err := c.doRequest("json")
 26951  	if res != nil && res.StatusCode == http.StatusNotModified {
 26952  		if res.Body != nil {
 26953  			res.Body.Close()
 26954  		}
 26955  		return nil, gensupport.WrapError(&googleapi.Error{
 26956  			Code:   res.StatusCode,
 26957  			Header: res.Header,
 26958  		})
 26959  	}
 26960  	if err != nil {
 26961  		return nil, err
 26962  	}
 26963  	defer googleapi.CloseBody(res)
 26964  	if err := googleapi.CheckResponse(res); err != nil {
 26965  		return nil, gensupport.WrapError(err)
 26966  	}
 26967  	ret := &FloodlightActivityGroup{
 26968  		ServerResponse: googleapi.ServerResponse{
 26969  			Header:         res.Header,
 26970  			HTTPStatusCode: res.StatusCode,
 26971  		},
 26972  	}
 26973  	target := &ret
 26974  	if err := gensupport.DecodeResponse(target, res); err != nil {
 26975  		return nil, err
 26976  	}
 26977  	return ret, nil
 26978  }
 26979  
 26980  type FloodlightConfigurationsGetCall struct {
 26981  	s            *Service
 26982  	profileId    int64
 26983  	id           int64
 26984  	urlParams_   gensupport.URLParams
 26985  	ifNoneMatch_ string
 26986  	ctx_         context.Context
 26987  	header_      http.Header
 26988  }
 26989  
 26990  // Get: Gets one floodlight configuration by ID.
 26991  //
 26992  // - id: Floodlight configuration ID.
 26993  // - profileId: User profile ID associated with this request.
 26994  func (r *FloodlightConfigurationsService) Get(profileId int64, id int64) *FloodlightConfigurationsGetCall {
 26995  	c := &FloodlightConfigurationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 26996  	c.profileId = profileId
 26997  	c.id = id
 26998  	return c
 26999  }
 27000  
 27001  // Fields allows partial responses to be retrieved. See
 27002  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27003  // details.
 27004  func (c *FloodlightConfigurationsGetCall) Fields(s ...googleapi.Field) *FloodlightConfigurationsGetCall {
 27005  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27006  	return c
 27007  }
 27008  
 27009  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 27010  // object's ETag matches the given value. This is useful for getting updates
 27011  // only after the object has changed since the last request.
 27012  func (c *FloodlightConfigurationsGetCall) IfNoneMatch(entityTag string) *FloodlightConfigurationsGetCall {
 27013  	c.ifNoneMatch_ = entityTag
 27014  	return c
 27015  }
 27016  
 27017  // Context sets the context to be used in this call's Do method.
 27018  func (c *FloodlightConfigurationsGetCall) Context(ctx context.Context) *FloodlightConfigurationsGetCall {
 27019  	c.ctx_ = ctx
 27020  	return c
 27021  }
 27022  
 27023  // Header returns a http.Header that can be modified by the caller to add
 27024  // headers to the request.
 27025  func (c *FloodlightConfigurationsGetCall) Header() http.Header {
 27026  	if c.header_ == nil {
 27027  		c.header_ = make(http.Header)
 27028  	}
 27029  	return c.header_
 27030  }
 27031  
 27032  func (c *FloodlightConfigurationsGetCall) doRequest(alt string) (*http.Response, error) {
 27033  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27034  	if c.ifNoneMatch_ != "" {
 27035  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 27036  	}
 27037  	var body io.Reader = nil
 27038  	c.urlParams_.Set("alt", alt)
 27039  	c.urlParams_.Set("prettyPrint", "false")
 27040  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightConfigurations/{+id}")
 27041  	urls += "?" + c.urlParams_.Encode()
 27042  	req, err := http.NewRequest("GET", urls, body)
 27043  	if err != nil {
 27044  		return nil, err
 27045  	}
 27046  	req.Header = reqHeaders
 27047  	googleapi.Expand(req.URL, map[string]string{
 27048  		"profileId": strconv.FormatInt(c.profileId, 10),
 27049  		"id":        strconv.FormatInt(c.id, 10),
 27050  	})
 27051  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27052  }
 27053  
 27054  // Do executes the "dfareporting.floodlightConfigurations.get" call.
 27055  // Any non-2xx status code is an error. Response headers are in either
 27056  // *FloodlightConfiguration.ServerResponse.Header or (if a response was
 27057  // returned at all) in error.(*googleapi.Error).Header. Use
 27058  // googleapi.IsNotModified to check whether the returned error was because
 27059  // http.StatusNotModified was returned.
 27060  func (c *FloodlightConfigurationsGetCall) Do(opts ...googleapi.CallOption) (*FloodlightConfiguration, error) {
 27061  	gensupport.SetOptions(c.urlParams_, opts...)
 27062  	res, err := c.doRequest("json")
 27063  	if res != nil && res.StatusCode == http.StatusNotModified {
 27064  		if res.Body != nil {
 27065  			res.Body.Close()
 27066  		}
 27067  		return nil, gensupport.WrapError(&googleapi.Error{
 27068  			Code:   res.StatusCode,
 27069  			Header: res.Header,
 27070  		})
 27071  	}
 27072  	if err != nil {
 27073  		return nil, err
 27074  	}
 27075  	defer googleapi.CloseBody(res)
 27076  	if err := googleapi.CheckResponse(res); err != nil {
 27077  		return nil, gensupport.WrapError(err)
 27078  	}
 27079  	ret := &FloodlightConfiguration{
 27080  		ServerResponse: googleapi.ServerResponse{
 27081  			Header:         res.Header,
 27082  			HTTPStatusCode: res.StatusCode,
 27083  		},
 27084  	}
 27085  	target := &ret
 27086  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27087  		return nil, err
 27088  	}
 27089  	return ret, nil
 27090  }
 27091  
 27092  type FloodlightConfigurationsListCall struct {
 27093  	s            *Service
 27094  	profileId    int64
 27095  	urlParams_   gensupport.URLParams
 27096  	ifNoneMatch_ string
 27097  	ctx_         context.Context
 27098  	header_      http.Header
 27099  }
 27100  
 27101  // List: Retrieves a list of floodlight configurations, possibly filtered.
 27102  //
 27103  // - profileId: User profile ID associated with this request.
 27104  func (r *FloodlightConfigurationsService) List(profileId int64) *FloodlightConfigurationsListCall {
 27105  	c := &FloodlightConfigurationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27106  	c.profileId = profileId
 27107  	return c
 27108  }
 27109  
 27110  // Ids sets the optional parameter "ids": Set of IDs of floodlight
 27111  // configurations to retrieve. Required field; otherwise an empty list will be
 27112  // returned.
 27113  func (c *FloodlightConfigurationsListCall) Ids(ids ...int64) *FloodlightConfigurationsListCall {
 27114  	var ids_ []string
 27115  	for _, v := range ids {
 27116  		ids_ = append(ids_, fmt.Sprint(v))
 27117  	}
 27118  	c.urlParams_.SetMulti("ids", ids_)
 27119  	return c
 27120  }
 27121  
 27122  // Fields allows partial responses to be retrieved. See
 27123  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27124  // details.
 27125  func (c *FloodlightConfigurationsListCall) Fields(s ...googleapi.Field) *FloodlightConfigurationsListCall {
 27126  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27127  	return c
 27128  }
 27129  
 27130  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 27131  // object's ETag matches the given value. This is useful for getting updates
 27132  // only after the object has changed since the last request.
 27133  func (c *FloodlightConfigurationsListCall) IfNoneMatch(entityTag string) *FloodlightConfigurationsListCall {
 27134  	c.ifNoneMatch_ = entityTag
 27135  	return c
 27136  }
 27137  
 27138  // Context sets the context to be used in this call's Do method.
 27139  func (c *FloodlightConfigurationsListCall) Context(ctx context.Context) *FloodlightConfigurationsListCall {
 27140  	c.ctx_ = ctx
 27141  	return c
 27142  }
 27143  
 27144  // Header returns a http.Header that can be modified by the caller to add
 27145  // headers to the request.
 27146  func (c *FloodlightConfigurationsListCall) Header() http.Header {
 27147  	if c.header_ == nil {
 27148  		c.header_ = make(http.Header)
 27149  	}
 27150  	return c.header_
 27151  }
 27152  
 27153  func (c *FloodlightConfigurationsListCall) doRequest(alt string) (*http.Response, error) {
 27154  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27155  	if c.ifNoneMatch_ != "" {
 27156  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 27157  	}
 27158  	var body io.Reader = nil
 27159  	c.urlParams_.Set("alt", alt)
 27160  	c.urlParams_.Set("prettyPrint", "false")
 27161  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightConfigurations")
 27162  	urls += "?" + c.urlParams_.Encode()
 27163  	req, err := http.NewRequest("GET", urls, body)
 27164  	if err != nil {
 27165  		return nil, err
 27166  	}
 27167  	req.Header = reqHeaders
 27168  	googleapi.Expand(req.URL, map[string]string{
 27169  		"profileId": strconv.FormatInt(c.profileId, 10),
 27170  	})
 27171  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27172  }
 27173  
 27174  // Do executes the "dfareporting.floodlightConfigurations.list" call.
 27175  // Any non-2xx status code is an error. Response headers are in either
 27176  // *FloodlightConfigurationsListResponse.ServerResponse.Header or (if a
 27177  // response was returned at all) in error.(*googleapi.Error).Header. Use
 27178  // googleapi.IsNotModified to check whether the returned error was because
 27179  // http.StatusNotModified was returned.
 27180  func (c *FloodlightConfigurationsListCall) Do(opts ...googleapi.CallOption) (*FloodlightConfigurationsListResponse, error) {
 27181  	gensupport.SetOptions(c.urlParams_, opts...)
 27182  	res, err := c.doRequest("json")
 27183  	if res != nil && res.StatusCode == http.StatusNotModified {
 27184  		if res.Body != nil {
 27185  			res.Body.Close()
 27186  		}
 27187  		return nil, gensupport.WrapError(&googleapi.Error{
 27188  			Code:   res.StatusCode,
 27189  			Header: res.Header,
 27190  		})
 27191  	}
 27192  	if err != nil {
 27193  		return nil, err
 27194  	}
 27195  	defer googleapi.CloseBody(res)
 27196  	if err := googleapi.CheckResponse(res); err != nil {
 27197  		return nil, gensupport.WrapError(err)
 27198  	}
 27199  	ret := &FloodlightConfigurationsListResponse{
 27200  		ServerResponse: googleapi.ServerResponse{
 27201  			Header:         res.Header,
 27202  			HTTPStatusCode: res.StatusCode,
 27203  		},
 27204  	}
 27205  	target := &ret
 27206  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27207  		return nil, err
 27208  	}
 27209  	return ret, nil
 27210  }
 27211  
 27212  type FloodlightConfigurationsPatchCall struct {
 27213  	s                       *Service
 27214  	profileId               int64
 27215  	floodlightconfiguration *FloodlightConfiguration
 27216  	urlParams_              gensupport.URLParams
 27217  	ctx_                    context.Context
 27218  	header_                 http.Header
 27219  }
 27220  
 27221  // Patch: Updates an existing event tag. This method supports patch semantics.
 27222  //
 27223  // - id: EventTag ID.
 27224  // - profileId: User profile ID associated with this request.
 27225  func (r *FloodlightConfigurationsService) Patch(profileId int64, id int64, floodlightconfiguration *FloodlightConfiguration) *FloodlightConfigurationsPatchCall {
 27226  	c := &FloodlightConfigurationsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27227  	c.profileId = profileId
 27228  	c.urlParams_.Set("id", fmt.Sprint(id))
 27229  	c.floodlightconfiguration = floodlightconfiguration
 27230  	return c
 27231  }
 27232  
 27233  // Fields allows partial responses to be retrieved. See
 27234  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27235  // details.
 27236  func (c *FloodlightConfigurationsPatchCall) Fields(s ...googleapi.Field) *FloodlightConfigurationsPatchCall {
 27237  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27238  	return c
 27239  }
 27240  
 27241  // Context sets the context to be used in this call's Do method.
 27242  func (c *FloodlightConfigurationsPatchCall) Context(ctx context.Context) *FloodlightConfigurationsPatchCall {
 27243  	c.ctx_ = ctx
 27244  	return c
 27245  }
 27246  
 27247  // Header returns a http.Header that can be modified by the caller to add
 27248  // headers to the request.
 27249  func (c *FloodlightConfigurationsPatchCall) Header() http.Header {
 27250  	if c.header_ == nil {
 27251  		c.header_ = make(http.Header)
 27252  	}
 27253  	return c.header_
 27254  }
 27255  
 27256  func (c *FloodlightConfigurationsPatchCall) doRequest(alt string) (*http.Response, error) {
 27257  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 27258  	var body io.Reader = nil
 27259  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightconfiguration)
 27260  	if err != nil {
 27261  		return nil, err
 27262  	}
 27263  	c.urlParams_.Set("alt", alt)
 27264  	c.urlParams_.Set("prettyPrint", "false")
 27265  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightConfigurations")
 27266  	urls += "?" + c.urlParams_.Encode()
 27267  	req, err := http.NewRequest("PATCH", urls, body)
 27268  	if err != nil {
 27269  		return nil, err
 27270  	}
 27271  	req.Header = reqHeaders
 27272  	googleapi.Expand(req.URL, map[string]string{
 27273  		"profileId": strconv.FormatInt(c.profileId, 10),
 27274  	})
 27275  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27276  }
 27277  
 27278  // Do executes the "dfareporting.floodlightConfigurations.patch" call.
 27279  // Any non-2xx status code is an error. Response headers are in either
 27280  // *FloodlightConfiguration.ServerResponse.Header or (if a response was
 27281  // returned at all) in error.(*googleapi.Error).Header. Use
 27282  // googleapi.IsNotModified to check whether the returned error was because
 27283  // http.StatusNotModified was returned.
 27284  func (c *FloodlightConfigurationsPatchCall) Do(opts ...googleapi.CallOption) (*FloodlightConfiguration, error) {
 27285  	gensupport.SetOptions(c.urlParams_, opts...)
 27286  	res, err := c.doRequest("json")
 27287  	if res != nil && res.StatusCode == http.StatusNotModified {
 27288  		if res.Body != nil {
 27289  			res.Body.Close()
 27290  		}
 27291  		return nil, gensupport.WrapError(&googleapi.Error{
 27292  			Code:   res.StatusCode,
 27293  			Header: res.Header,
 27294  		})
 27295  	}
 27296  	if err != nil {
 27297  		return nil, err
 27298  	}
 27299  	defer googleapi.CloseBody(res)
 27300  	if err := googleapi.CheckResponse(res); err != nil {
 27301  		return nil, gensupport.WrapError(err)
 27302  	}
 27303  	ret := &FloodlightConfiguration{
 27304  		ServerResponse: googleapi.ServerResponse{
 27305  			Header:         res.Header,
 27306  			HTTPStatusCode: res.StatusCode,
 27307  		},
 27308  	}
 27309  	target := &ret
 27310  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27311  		return nil, err
 27312  	}
 27313  	return ret, nil
 27314  }
 27315  
 27316  type FloodlightConfigurationsUpdateCall struct {
 27317  	s                       *Service
 27318  	profileId               int64
 27319  	floodlightconfiguration *FloodlightConfiguration
 27320  	urlParams_              gensupport.URLParams
 27321  	ctx_                    context.Context
 27322  	header_                 http.Header
 27323  }
 27324  
 27325  // Update: Updates an existing floodlight configuration.
 27326  //
 27327  // - profileId: User profile ID associated with this request.
 27328  func (r *FloodlightConfigurationsService) Update(profileId int64, floodlightconfiguration *FloodlightConfiguration) *FloodlightConfigurationsUpdateCall {
 27329  	c := &FloodlightConfigurationsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27330  	c.profileId = profileId
 27331  	c.floodlightconfiguration = floodlightconfiguration
 27332  	return c
 27333  }
 27334  
 27335  // Fields allows partial responses to be retrieved. See
 27336  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27337  // details.
 27338  func (c *FloodlightConfigurationsUpdateCall) Fields(s ...googleapi.Field) *FloodlightConfigurationsUpdateCall {
 27339  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27340  	return c
 27341  }
 27342  
 27343  // Context sets the context to be used in this call's Do method.
 27344  func (c *FloodlightConfigurationsUpdateCall) Context(ctx context.Context) *FloodlightConfigurationsUpdateCall {
 27345  	c.ctx_ = ctx
 27346  	return c
 27347  }
 27348  
 27349  // Header returns a http.Header that can be modified by the caller to add
 27350  // headers to the request.
 27351  func (c *FloodlightConfigurationsUpdateCall) Header() http.Header {
 27352  	if c.header_ == nil {
 27353  		c.header_ = make(http.Header)
 27354  	}
 27355  	return c.header_
 27356  }
 27357  
 27358  func (c *FloodlightConfigurationsUpdateCall) doRequest(alt string) (*http.Response, error) {
 27359  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 27360  	var body io.Reader = nil
 27361  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.floodlightconfiguration)
 27362  	if err != nil {
 27363  		return nil, err
 27364  	}
 27365  	c.urlParams_.Set("alt", alt)
 27366  	c.urlParams_.Set("prettyPrint", "false")
 27367  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/floodlightConfigurations")
 27368  	urls += "?" + c.urlParams_.Encode()
 27369  	req, err := http.NewRequest("PUT", urls, body)
 27370  	if err != nil {
 27371  		return nil, err
 27372  	}
 27373  	req.Header = reqHeaders
 27374  	googleapi.Expand(req.URL, map[string]string{
 27375  		"profileId": strconv.FormatInt(c.profileId, 10),
 27376  	})
 27377  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27378  }
 27379  
 27380  // Do executes the "dfareporting.floodlightConfigurations.update" call.
 27381  // Any non-2xx status code is an error. Response headers are in either
 27382  // *FloodlightConfiguration.ServerResponse.Header or (if a response was
 27383  // returned at all) in error.(*googleapi.Error).Header. Use
 27384  // googleapi.IsNotModified to check whether the returned error was because
 27385  // http.StatusNotModified was returned.
 27386  func (c *FloodlightConfigurationsUpdateCall) Do(opts ...googleapi.CallOption) (*FloodlightConfiguration, error) {
 27387  	gensupport.SetOptions(c.urlParams_, opts...)
 27388  	res, err := c.doRequest("json")
 27389  	if res != nil && res.StatusCode == http.StatusNotModified {
 27390  		if res.Body != nil {
 27391  			res.Body.Close()
 27392  		}
 27393  		return nil, gensupport.WrapError(&googleapi.Error{
 27394  			Code:   res.StatusCode,
 27395  			Header: res.Header,
 27396  		})
 27397  	}
 27398  	if err != nil {
 27399  		return nil, err
 27400  	}
 27401  	defer googleapi.CloseBody(res)
 27402  	if err := googleapi.CheckResponse(res); err != nil {
 27403  		return nil, gensupport.WrapError(err)
 27404  	}
 27405  	ret := &FloodlightConfiguration{
 27406  		ServerResponse: googleapi.ServerResponse{
 27407  			Header:         res.Header,
 27408  			HTTPStatusCode: res.StatusCode,
 27409  		},
 27410  	}
 27411  	target := &ret
 27412  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27413  		return nil, err
 27414  	}
 27415  	return ret, nil
 27416  }
 27417  
 27418  type InventoryItemsGetCall struct {
 27419  	s            *Service
 27420  	profileId    int64
 27421  	projectId    int64
 27422  	id           int64
 27423  	urlParams_   gensupport.URLParams
 27424  	ifNoneMatch_ string
 27425  	ctx_         context.Context
 27426  	header_      http.Header
 27427  }
 27428  
 27429  // Get: Gets one inventory item by ID.
 27430  //
 27431  // - id: Inventory item ID.
 27432  // - profileId: User profile ID associated with this request.
 27433  // - projectId: Project ID for order documents.
 27434  func (r *InventoryItemsService) Get(profileId int64, projectId int64, id int64) *InventoryItemsGetCall {
 27435  	c := &InventoryItemsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27436  	c.profileId = profileId
 27437  	c.projectId = projectId
 27438  	c.id = id
 27439  	return c
 27440  }
 27441  
 27442  // Fields allows partial responses to be retrieved. See
 27443  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27444  // details.
 27445  func (c *InventoryItemsGetCall) Fields(s ...googleapi.Field) *InventoryItemsGetCall {
 27446  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27447  	return c
 27448  }
 27449  
 27450  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 27451  // object's ETag matches the given value. This is useful for getting updates
 27452  // only after the object has changed since the last request.
 27453  func (c *InventoryItemsGetCall) IfNoneMatch(entityTag string) *InventoryItemsGetCall {
 27454  	c.ifNoneMatch_ = entityTag
 27455  	return c
 27456  }
 27457  
 27458  // Context sets the context to be used in this call's Do method.
 27459  func (c *InventoryItemsGetCall) Context(ctx context.Context) *InventoryItemsGetCall {
 27460  	c.ctx_ = ctx
 27461  	return c
 27462  }
 27463  
 27464  // Header returns a http.Header that can be modified by the caller to add
 27465  // headers to the request.
 27466  func (c *InventoryItemsGetCall) Header() http.Header {
 27467  	if c.header_ == nil {
 27468  		c.header_ = make(http.Header)
 27469  	}
 27470  	return c.header_
 27471  }
 27472  
 27473  func (c *InventoryItemsGetCall) doRequest(alt string) (*http.Response, error) {
 27474  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27475  	if c.ifNoneMatch_ != "" {
 27476  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 27477  	}
 27478  	var body io.Reader = nil
 27479  	c.urlParams_.Set("alt", alt)
 27480  	c.urlParams_.Set("prettyPrint", "false")
 27481  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/projects/{projectId}/inventoryItems/{+id}")
 27482  	urls += "?" + c.urlParams_.Encode()
 27483  	req, err := http.NewRequest("GET", urls, body)
 27484  	if err != nil {
 27485  		return nil, err
 27486  	}
 27487  	req.Header = reqHeaders
 27488  	googleapi.Expand(req.URL, map[string]string{
 27489  		"profileId": strconv.FormatInt(c.profileId, 10),
 27490  		"projectId": strconv.FormatInt(c.projectId, 10),
 27491  		"id":        strconv.FormatInt(c.id, 10),
 27492  	})
 27493  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27494  }
 27495  
 27496  // Do executes the "dfareporting.inventoryItems.get" call.
 27497  // Any non-2xx status code is an error. Response headers are in either
 27498  // *InventoryItem.ServerResponse.Header or (if a response was returned at all)
 27499  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 27500  // whether the returned error was because http.StatusNotModified was returned.
 27501  func (c *InventoryItemsGetCall) Do(opts ...googleapi.CallOption) (*InventoryItem, error) {
 27502  	gensupport.SetOptions(c.urlParams_, opts...)
 27503  	res, err := c.doRequest("json")
 27504  	if res != nil && res.StatusCode == http.StatusNotModified {
 27505  		if res.Body != nil {
 27506  			res.Body.Close()
 27507  		}
 27508  		return nil, gensupport.WrapError(&googleapi.Error{
 27509  			Code:   res.StatusCode,
 27510  			Header: res.Header,
 27511  		})
 27512  	}
 27513  	if err != nil {
 27514  		return nil, err
 27515  	}
 27516  	defer googleapi.CloseBody(res)
 27517  	if err := googleapi.CheckResponse(res); err != nil {
 27518  		return nil, gensupport.WrapError(err)
 27519  	}
 27520  	ret := &InventoryItem{
 27521  		ServerResponse: googleapi.ServerResponse{
 27522  			Header:         res.Header,
 27523  			HTTPStatusCode: res.StatusCode,
 27524  		},
 27525  	}
 27526  	target := &ret
 27527  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27528  		return nil, err
 27529  	}
 27530  	return ret, nil
 27531  }
 27532  
 27533  type InventoryItemsListCall struct {
 27534  	s            *Service
 27535  	profileId    int64
 27536  	projectId    int64
 27537  	urlParams_   gensupport.URLParams
 27538  	ifNoneMatch_ string
 27539  	ctx_         context.Context
 27540  	header_      http.Header
 27541  }
 27542  
 27543  // List: Retrieves a list of inventory items, possibly filtered. This method
 27544  // supports paging.
 27545  //
 27546  // - profileId: User profile ID associated with this request.
 27547  // - projectId: Project ID for order documents.
 27548  func (r *InventoryItemsService) List(profileId int64, projectId int64) *InventoryItemsListCall {
 27549  	c := &InventoryItemsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27550  	c.profileId = profileId
 27551  	c.projectId = projectId
 27552  	return c
 27553  }
 27554  
 27555  // Ids sets the optional parameter "ids": Select only inventory items with
 27556  // these IDs.
 27557  func (c *InventoryItemsListCall) Ids(ids ...int64) *InventoryItemsListCall {
 27558  	var ids_ []string
 27559  	for _, v := range ids {
 27560  		ids_ = append(ids_, fmt.Sprint(v))
 27561  	}
 27562  	c.urlParams_.SetMulti("ids", ids_)
 27563  	return c
 27564  }
 27565  
 27566  // InPlan sets the optional parameter "inPlan": Select only inventory items
 27567  // that are in plan.
 27568  func (c *InventoryItemsListCall) InPlan(inPlan bool) *InventoryItemsListCall {
 27569  	c.urlParams_.Set("inPlan", fmt.Sprint(inPlan))
 27570  	return c
 27571  }
 27572  
 27573  // MaxResults sets the optional parameter "maxResults": Maximum number of
 27574  // results to return.
 27575  func (c *InventoryItemsListCall) MaxResults(maxResults int64) *InventoryItemsListCall {
 27576  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 27577  	return c
 27578  }
 27579  
 27580  // OrderId sets the optional parameter "orderId": Select only inventory items
 27581  // that belong to specified orders.
 27582  func (c *InventoryItemsListCall) OrderId(orderId ...int64) *InventoryItemsListCall {
 27583  	var orderId_ []string
 27584  	for _, v := range orderId {
 27585  		orderId_ = append(orderId_, fmt.Sprint(v))
 27586  	}
 27587  	c.urlParams_.SetMulti("orderId", orderId_)
 27588  	return c
 27589  }
 27590  
 27591  // PageToken sets the optional parameter "pageToken": Value of the
 27592  // nextPageToken from the previous result page.
 27593  func (c *InventoryItemsListCall) PageToken(pageToken string) *InventoryItemsListCall {
 27594  	c.urlParams_.Set("pageToken", pageToken)
 27595  	return c
 27596  }
 27597  
 27598  // SiteId sets the optional parameter "siteId": Select only inventory items
 27599  // that are associated with these sites.
 27600  func (c *InventoryItemsListCall) SiteId(siteId ...int64) *InventoryItemsListCall {
 27601  	var siteId_ []string
 27602  	for _, v := range siteId {
 27603  		siteId_ = append(siteId_, fmt.Sprint(v))
 27604  	}
 27605  	c.urlParams_.SetMulti("siteId", siteId_)
 27606  	return c
 27607  }
 27608  
 27609  // SortField sets the optional parameter "sortField": Field by which to sort
 27610  // the list.
 27611  //
 27612  // Possible values:
 27613  //
 27614  //	"ID" (default)
 27615  //	"NAME"
 27616  func (c *InventoryItemsListCall) SortField(sortField string) *InventoryItemsListCall {
 27617  	c.urlParams_.Set("sortField", sortField)
 27618  	return c
 27619  }
 27620  
 27621  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 27622  //
 27623  // Possible values:
 27624  //
 27625  //	"ASCENDING" (default) - Ascending order.
 27626  //	"DESCENDING" - Descending order.
 27627  func (c *InventoryItemsListCall) SortOrder(sortOrder string) *InventoryItemsListCall {
 27628  	c.urlParams_.Set("sortOrder", sortOrder)
 27629  	return c
 27630  }
 27631  
 27632  // Type sets the optional parameter "type": Select only inventory items with
 27633  // this type.
 27634  //
 27635  // Possible values:
 27636  //
 27637  //	"PLANNING_PLACEMENT_TYPE_REGULAR"
 27638  //	"PLANNING_PLACEMENT_TYPE_CREDIT"
 27639  func (c *InventoryItemsListCall) Type(type_ string) *InventoryItemsListCall {
 27640  	c.urlParams_.Set("type", type_)
 27641  	return c
 27642  }
 27643  
 27644  // Fields allows partial responses to be retrieved. See
 27645  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27646  // details.
 27647  func (c *InventoryItemsListCall) Fields(s ...googleapi.Field) *InventoryItemsListCall {
 27648  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27649  	return c
 27650  }
 27651  
 27652  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 27653  // object's ETag matches the given value. This is useful for getting updates
 27654  // only after the object has changed since the last request.
 27655  func (c *InventoryItemsListCall) IfNoneMatch(entityTag string) *InventoryItemsListCall {
 27656  	c.ifNoneMatch_ = entityTag
 27657  	return c
 27658  }
 27659  
 27660  // Context sets the context to be used in this call's Do method.
 27661  func (c *InventoryItemsListCall) Context(ctx context.Context) *InventoryItemsListCall {
 27662  	c.ctx_ = ctx
 27663  	return c
 27664  }
 27665  
 27666  // Header returns a http.Header that can be modified by the caller to add
 27667  // headers to the request.
 27668  func (c *InventoryItemsListCall) Header() http.Header {
 27669  	if c.header_ == nil {
 27670  		c.header_ = make(http.Header)
 27671  	}
 27672  	return c.header_
 27673  }
 27674  
 27675  func (c *InventoryItemsListCall) doRequest(alt string) (*http.Response, error) {
 27676  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27677  	if c.ifNoneMatch_ != "" {
 27678  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 27679  	}
 27680  	var body io.Reader = nil
 27681  	c.urlParams_.Set("alt", alt)
 27682  	c.urlParams_.Set("prettyPrint", "false")
 27683  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/projects/{projectId}/inventoryItems")
 27684  	urls += "?" + c.urlParams_.Encode()
 27685  	req, err := http.NewRequest("GET", urls, body)
 27686  	if err != nil {
 27687  		return nil, err
 27688  	}
 27689  	req.Header = reqHeaders
 27690  	googleapi.Expand(req.URL, map[string]string{
 27691  		"profileId": strconv.FormatInt(c.profileId, 10),
 27692  		"projectId": strconv.FormatInt(c.projectId, 10),
 27693  	})
 27694  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27695  }
 27696  
 27697  // Do executes the "dfareporting.inventoryItems.list" call.
 27698  // Any non-2xx status code is an error. Response headers are in either
 27699  // *InventoryItemsListResponse.ServerResponse.Header or (if a response was
 27700  // returned at all) in error.(*googleapi.Error).Header. Use
 27701  // googleapi.IsNotModified to check whether the returned error was because
 27702  // http.StatusNotModified was returned.
 27703  func (c *InventoryItemsListCall) Do(opts ...googleapi.CallOption) (*InventoryItemsListResponse, error) {
 27704  	gensupport.SetOptions(c.urlParams_, opts...)
 27705  	res, err := c.doRequest("json")
 27706  	if res != nil && res.StatusCode == http.StatusNotModified {
 27707  		if res.Body != nil {
 27708  			res.Body.Close()
 27709  		}
 27710  		return nil, gensupport.WrapError(&googleapi.Error{
 27711  			Code:   res.StatusCode,
 27712  			Header: res.Header,
 27713  		})
 27714  	}
 27715  	if err != nil {
 27716  		return nil, err
 27717  	}
 27718  	defer googleapi.CloseBody(res)
 27719  	if err := googleapi.CheckResponse(res); err != nil {
 27720  		return nil, gensupport.WrapError(err)
 27721  	}
 27722  	ret := &InventoryItemsListResponse{
 27723  		ServerResponse: googleapi.ServerResponse{
 27724  			Header:         res.Header,
 27725  			HTTPStatusCode: res.StatusCode,
 27726  		},
 27727  	}
 27728  	target := &ret
 27729  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27730  		return nil, err
 27731  	}
 27732  	return ret, nil
 27733  }
 27734  
 27735  // Pages invokes f for each page of results.
 27736  // A non-nil error returned from f will halt the iteration.
 27737  // The provided context supersedes any context provided to the Context method.
 27738  func (c *InventoryItemsListCall) Pages(ctx context.Context, f func(*InventoryItemsListResponse) error) error {
 27739  	c.ctx_ = ctx
 27740  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 27741  	for {
 27742  		x, err := c.Do()
 27743  		if err != nil {
 27744  			return err
 27745  		}
 27746  		if err := f(x); err != nil {
 27747  			return err
 27748  		}
 27749  		if x.NextPageToken == "" {
 27750  			return nil
 27751  		}
 27752  		c.PageToken(x.NextPageToken)
 27753  	}
 27754  }
 27755  
 27756  type LanguagesListCall struct {
 27757  	s            *Service
 27758  	profileId    int64
 27759  	urlParams_   gensupport.URLParams
 27760  	ifNoneMatch_ string
 27761  	ctx_         context.Context
 27762  	header_      http.Header
 27763  }
 27764  
 27765  // List: Retrieves a list of languages.
 27766  //
 27767  // - profileId: User profile ID associated with this request.
 27768  func (r *LanguagesService) List(profileId int64) *LanguagesListCall {
 27769  	c := &LanguagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27770  	c.profileId = profileId
 27771  	return c
 27772  }
 27773  
 27774  // Fields allows partial responses to be retrieved. See
 27775  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27776  // details.
 27777  func (c *LanguagesListCall) Fields(s ...googleapi.Field) *LanguagesListCall {
 27778  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27779  	return c
 27780  }
 27781  
 27782  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 27783  // object's ETag matches the given value. This is useful for getting updates
 27784  // only after the object has changed since the last request.
 27785  func (c *LanguagesListCall) IfNoneMatch(entityTag string) *LanguagesListCall {
 27786  	c.ifNoneMatch_ = entityTag
 27787  	return c
 27788  }
 27789  
 27790  // Context sets the context to be used in this call's Do method.
 27791  func (c *LanguagesListCall) Context(ctx context.Context) *LanguagesListCall {
 27792  	c.ctx_ = ctx
 27793  	return c
 27794  }
 27795  
 27796  // Header returns a http.Header that can be modified by the caller to add
 27797  // headers to the request.
 27798  func (c *LanguagesListCall) Header() http.Header {
 27799  	if c.header_ == nil {
 27800  		c.header_ = make(http.Header)
 27801  	}
 27802  	return c.header_
 27803  }
 27804  
 27805  func (c *LanguagesListCall) doRequest(alt string) (*http.Response, error) {
 27806  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27807  	if c.ifNoneMatch_ != "" {
 27808  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 27809  	}
 27810  	var body io.Reader = nil
 27811  	c.urlParams_.Set("alt", alt)
 27812  	c.urlParams_.Set("prettyPrint", "false")
 27813  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/languages")
 27814  	urls += "?" + c.urlParams_.Encode()
 27815  	req, err := http.NewRequest("GET", urls, body)
 27816  	if err != nil {
 27817  		return nil, err
 27818  	}
 27819  	req.Header = reqHeaders
 27820  	googleapi.Expand(req.URL, map[string]string{
 27821  		"profileId": strconv.FormatInt(c.profileId, 10),
 27822  	})
 27823  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27824  }
 27825  
 27826  // Do executes the "dfareporting.languages.list" call.
 27827  // Any non-2xx status code is an error. Response headers are in either
 27828  // *LanguagesListResponse.ServerResponse.Header or (if a response was returned
 27829  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 27830  // check whether the returned error was because http.StatusNotModified was
 27831  // returned.
 27832  func (c *LanguagesListCall) Do(opts ...googleapi.CallOption) (*LanguagesListResponse, error) {
 27833  	gensupport.SetOptions(c.urlParams_, opts...)
 27834  	res, err := c.doRequest("json")
 27835  	if res != nil && res.StatusCode == http.StatusNotModified {
 27836  		if res.Body != nil {
 27837  			res.Body.Close()
 27838  		}
 27839  		return nil, gensupport.WrapError(&googleapi.Error{
 27840  			Code:   res.StatusCode,
 27841  			Header: res.Header,
 27842  		})
 27843  	}
 27844  	if err != nil {
 27845  		return nil, err
 27846  	}
 27847  	defer googleapi.CloseBody(res)
 27848  	if err := googleapi.CheckResponse(res); err != nil {
 27849  		return nil, gensupport.WrapError(err)
 27850  	}
 27851  	ret := &LanguagesListResponse{
 27852  		ServerResponse: googleapi.ServerResponse{
 27853  			Header:         res.Header,
 27854  			HTTPStatusCode: res.StatusCode,
 27855  		},
 27856  	}
 27857  	target := &ret
 27858  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27859  		return nil, err
 27860  	}
 27861  	return ret, nil
 27862  }
 27863  
 27864  type MetrosListCall struct {
 27865  	s            *Service
 27866  	profileId    int64
 27867  	urlParams_   gensupport.URLParams
 27868  	ifNoneMatch_ string
 27869  	ctx_         context.Context
 27870  	header_      http.Header
 27871  }
 27872  
 27873  // List: Retrieves a list of metros.
 27874  //
 27875  // - profileId: User profile ID associated with this request.
 27876  func (r *MetrosService) List(profileId int64) *MetrosListCall {
 27877  	c := &MetrosListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27878  	c.profileId = profileId
 27879  	return c
 27880  }
 27881  
 27882  // Fields allows partial responses to be retrieved. See
 27883  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27884  // details.
 27885  func (c *MetrosListCall) Fields(s ...googleapi.Field) *MetrosListCall {
 27886  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27887  	return c
 27888  }
 27889  
 27890  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 27891  // object's ETag matches the given value. This is useful for getting updates
 27892  // only after the object has changed since the last request.
 27893  func (c *MetrosListCall) IfNoneMatch(entityTag string) *MetrosListCall {
 27894  	c.ifNoneMatch_ = entityTag
 27895  	return c
 27896  }
 27897  
 27898  // Context sets the context to be used in this call's Do method.
 27899  func (c *MetrosListCall) Context(ctx context.Context) *MetrosListCall {
 27900  	c.ctx_ = ctx
 27901  	return c
 27902  }
 27903  
 27904  // Header returns a http.Header that can be modified by the caller to add
 27905  // headers to the request.
 27906  func (c *MetrosListCall) Header() http.Header {
 27907  	if c.header_ == nil {
 27908  		c.header_ = make(http.Header)
 27909  	}
 27910  	return c.header_
 27911  }
 27912  
 27913  func (c *MetrosListCall) doRequest(alt string) (*http.Response, error) {
 27914  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 27915  	if c.ifNoneMatch_ != "" {
 27916  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 27917  	}
 27918  	var body io.Reader = nil
 27919  	c.urlParams_.Set("alt", alt)
 27920  	c.urlParams_.Set("prettyPrint", "false")
 27921  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/metros")
 27922  	urls += "?" + c.urlParams_.Encode()
 27923  	req, err := http.NewRequest("GET", urls, body)
 27924  	if err != nil {
 27925  		return nil, err
 27926  	}
 27927  	req.Header = reqHeaders
 27928  	googleapi.Expand(req.URL, map[string]string{
 27929  		"profileId": strconv.FormatInt(c.profileId, 10),
 27930  	})
 27931  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 27932  }
 27933  
 27934  // Do executes the "dfareporting.metros.list" call.
 27935  // Any non-2xx status code is an error. Response headers are in either
 27936  // *MetrosListResponse.ServerResponse.Header or (if a response was returned at
 27937  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 27938  // check whether the returned error was because http.StatusNotModified was
 27939  // returned.
 27940  func (c *MetrosListCall) Do(opts ...googleapi.CallOption) (*MetrosListResponse, error) {
 27941  	gensupport.SetOptions(c.urlParams_, opts...)
 27942  	res, err := c.doRequest("json")
 27943  	if res != nil && res.StatusCode == http.StatusNotModified {
 27944  		if res.Body != nil {
 27945  			res.Body.Close()
 27946  		}
 27947  		return nil, gensupport.WrapError(&googleapi.Error{
 27948  			Code:   res.StatusCode,
 27949  			Header: res.Header,
 27950  		})
 27951  	}
 27952  	if err != nil {
 27953  		return nil, err
 27954  	}
 27955  	defer googleapi.CloseBody(res)
 27956  	if err := googleapi.CheckResponse(res); err != nil {
 27957  		return nil, gensupport.WrapError(err)
 27958  	}
 27959  	ret := &MetrosListResponse{
 27960  		ServerResponse: googleapi.ServerResponse{
 27961  			Header:         res.Header,
 27962  			HTTPStatusCode: res.StatusCode,
 27963  		},
 27964  	}
 27965  	target := &ret
 27966  	if err := gensupport.DecodeResponse(target, res); err != nil {
 27967  		return nil, err
 27968  	}
 27969  	return ret, nil
 27970  }
 27971  
 27972  type MobileAppsGetCall struct {
 27973  	s            *Service
 27974  	profileId    int64
 27975  	id           string
 27976  	urlParams_   gensupport.URLParams
 27977  	ifNoneMatch_ string
 27978  	ctx_         context.Context
 27979  	header_      http.Header
 27980  }
 27981  
 27982  // Get: Gets one mobile app by ID.
 27983  //
 27984  // - id: Mobile app ID.
 27985  // - profileId: User profile ID associated with this request.
 27986  func (r *MobileAppsService) Get(profileId int64, id string) *MobileAppsGetCall {
 27987  	c := &MobileAppsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 27988  	c.profileId = profileId
 27989  	c.id = id
 27990  	return c
 27991  }
 27992  
 27993  // Fields allows partial responses to be retrieved. See
 27994  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 27995  // details.
 27996  func (c *MobileAppsGetCall) Fields(s ...googleapi.Field) *MobileAppsGetCall {
 27997  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 27998  	return c
 27999  }
 28000  
 28001  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28002  // object's ETag matches the given value. This is useful for getting updates
 28003  // only after the object has changed since the last request.
 28004  func (c *MobileAppsGetCall) IfNoneMatch(entityTag string) *MobileAppsGetCall {
 28005  	c.ifNoneMatch_ = entityTag
 28006  	return c
 28007  }
 28008  
 28009  // Context sets the context to be used in this call's Do method.
 28010  func (c *MobileAppsGetCall) Context(ctx context.Context) *MobileAppsGetCall {
 28011  	c.ctx_ = ctx
 28012  	return c
 28013  }
 28014  
 28015  // Header returns a http.Header that can be modified by the caller to add
 28016  // headers to the request.
 28017  func (c *MobileAppsGetCall) Header() http.Header {
 28018  	if c.header_ == nil {
 28019  		c.header_ = make(http.Header)
 28020  	}
 28021  	return c.header_
 28022  }
 28023  
 28024  func (c *MobileAppsGetCall) doRequest(alt string) (*http.Response, error) {
 28025  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28026  	if c.ifNoneMatch_ != "" {
 28027  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28028  	}
 28029  	var body io.Reader = nil
 28030  	c.urlParams_.Set("alt", alt)
 28031  	c.urlParams_.Set("prettyPrint", "false")
 28032  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/mobileApps/{+id}")
 28033  	urls += "?" + c.urlParams_.Encode()
 28034  	req, err := http.NewRequest("GET", urls, body)
 28035  	if err != nil {
 28036  		return nil, err
 28037  	}
 28038  	req.Header = reqHeaders
 28039  	googleapi.Expand(req.URL, map[string]string{
 28040  		"profileId": strconv.FormatInt(c.profileId, 10),
 28041  		"id":        c.id,
 28042  	})
 28043  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28044  }
 28045  
 28046  // Do executes the "dfareporting.mobileApps.get" call.
 28047  // Any non-2xx status code is an error. Response headers are in either
 28048  // *MobileApp.ServerResponse.Header or (if a response was returned at all) in
 28049  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 28050  // whether the returned error was because http.StatusNotModified was returned.
 28051  func (c *MobileAppsGetCall) Do(opts ...googleapi.CallOption) (*MobileApp, error) {
 28052  	gensupport.SetOptions(c.urlParams_, opts...)
 28053  	res, err := c.doRequest("json")
 28054  	if res != nil && res.StatusCode == http.StatusNotModified {
 28055  		if res.Body != nil {
 28056  			res.Body.Close()
 28057  		}
 28058  		return nil, gensupport.WrapError(&googleapi.Error{
 28059  			Code:   res.StatusCode,
 28060  			Header: res.Header,
 28061  		})
 28062  	}
 28063  	if err != nil {
 28064  		return nil, err
 28065  	}
 28066  	defer googleapi.CloseBody(res)
 28067  	if err := googleapi.CheckResponse(res); err != nil {
 28068  		return nil, gensupport.WrapError(err)
 28069  	}
 28070  	ret := &MobileApp{
 28071  		ServerResponse: googleapi.ServerResponse{
 28072  			Header:         res.Header,
 28073  			HTTPStatusCode: res.StatusCode,
 28074  		},
 28075  	}
 28076  	target := &ret
 28077  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28078  		return nil, err
 28079  	}
 28080  	return ret, nil
 28081  }
 28082  
 28083  type MobileAppsListCall struct {
 28084  	s            *Service
 28085  	profileId    int64
 28086  	urlParams_   gensupport.URLParams
 28087  	ifNoneMatch_ string
 28088  	ctx_         context.Context
 28089  	header_      http.Header
 28090  }
 28091  
 28092  // List: Retrieves list of available mobile apps.
 28093  //
 28094  // - profileId: User profile ID associated with this request.
 28095  func (r *MobileAppsService) List(profileId int64) *MobileAppsListCall {
 28096  	c := &MobileAppsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28097  	c.profileId = profileId
 28098  	return c
 28099  }
 28100  
 28101  // Directories sets the optional parameter "directories": Select only apps from
 28102  // these directories.
 28103  //
 28104  // Possible values:
 28105  //
 28106  //	"UNKNOWN"
 28107  //	"APPLE_APP_STORE"
 28108  //	"GOOGLE_PLAY_STORE"
 28109  //	"ROKU_APP_STORE"
 28110  //	"AMAZON_FIRETV_APP_STORE"
 28111  //	"PLAYSTATION_APP_STORE"
 28112  //	"APPLE_TV_APP_STORE"
 28113  //	"XBOX_APP_STORE"
 28114  //	"SAMSUNG_TV_APP_STORE"
 28115  //	"ANDROID_TV_APP_STORE"
 28116  //	"GENERIC_CTV_APP_STORE"
 28117  func (c *MobileAppsListCall) Directories(directories ...string) *MobileAppsListCall {
 28118  	c.urlParams_.SetMulti("directories", append([]string{}, directories...))
 28119  	return c
 28120  }
 28121  
 28122  // Ids sets the optional parameter "ids": Select only apps with these IDs.
 28123  func (c *MobileAppsListCall) Ids(ids ...string) *MobileAppsListCall {
 28124  	c.urlParams_.SetMulti("ids", append([]string{}, ids...))
 28125  	return c
 28126  }
 28127  
 28128  // MaxResults sets the optional parameter "maxResults": Maximum number of
 28129  // results to return.
 28130  func (c *MobileAppsListCall) MaxResults(maxResults int64) *MobileAppsListCall {
 28131  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 28132  	return c
 28133  }
 28134  
 28135  // PageToken sets the optional parameter "pageToken": Value of the
 28136  // nextPageToken from the previous result page.
 28137  func (c *MobileAppsListCall) PageToken(pageToken string) *MobileAppsListCall {
 28138  	c.urlParams_.Set("pageToken", pageToken)
 28139  	return c
 28140  }
 28141  
 28142  // SearchString sets the optional parameter "searchString": Allows searching
 28143  // for objects by name or ID. Wildcards (*) are allowed. For example,
 28144  // "app*2015" will return objects with names like "app Jan 2018", "app Jan
 28145  // 2018", or simply "app 2018". Most of the searches also add wildcards
 28146  // implicitly at the start and the end of the search string. For example, a
 28147  // search string of "app" will match objects with name "my app", "app 2018", or
 28148  // simply "app".
 28149  func (c *MobileAppsListCall) SearchString(searchString string) *MobileAppsListCall {
 28150  	c.urlParams_.Set("searchString", searchString)
 28151  	return c
 28152  }
 28153  
 28154  // Fields allows partial responses to be retrieved. See
 28155  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28156  // details.
 28157  func (c *MobileAppsListCall) Fields(s ...googleapi.Field) *MobileAppsListCall {
 28158  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28159  	return c
 28160  }
 28161  
 28162  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28163  // object's ETag matches the given value. This is useful for getting updates
 28164  // only after the object has changed since the last request.
 28165  func (c *MobileAppsListCall) IfNoneMatch(entityTag string) *MobileAppsListCall {
 28166  	c.ifNoneMatch_ = entityTag
 28167  	return c
 28168  }
 28169  
 28170  // Context sets the context to be used in this call's Do method.
 28171  func (c *MobileAppsListCall) Context(ctx context.Context) *MobileAppsListCall {
 28172  	c.ctx_ = ctx
 28173  	return c
 28174  }
 28175  
 28176  // Header returns a http.Header that can be modified by the caller to add
 28177  // headers to the request.
 28178  func (c *MobileAppsListCall) Header() http.Header {
 28179  	if c.header_ == nil {
 28180  		c.header_ = make(http.Header)
 28181  	}
 28182  	return c.header_
 28183  }
 28184  
 28185  func (c *MobileAppsListCall) doRequest(alt string) (*http.Response, error) {
 28186  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28187  	if c.ifNoneMatch_ != "" {
 28188  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28189  	}
 28190  	var body io.Reader = nil
 28191  	c.urlParams_.Set("alt", alt)
 28192  	c.urlParams_.Set("prettyPrint", "false")
 28193  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/mobileApps")
 28194  	urls += "?" + c.urlParams_.Encode()
 28195  	req, err := http.NewRequest("GET", urls, body)
 28196  	if err != nil {
 28197  		return nil, err
 28198  	}
 28199  	req.Header = reqHeaders
 28200  	googleapi.Expand(req.URL, map[string]string{
 28201  		"profileId": strconv.FormatInt(c.profileId, 10),
 28202  	})
 28203  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28204  }
 28205  
 28206  // Do executes the "dfareporting.mobileApps.list" call.
 28207  // Any non-2xx status code is an error. Response headers are in either
 28208  // *MobileAppsListResponse.ServerResponse.Header or (if a response was returned
 28209  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 28210  // check whether the returned error was because http.StatusNotModified was
 28211  // returned.
 28212  func (c *MobileAppsListCall) Do(opts ...googleapi.CallOption) (*MobileAppsListResponse, error) {
 28213  	gensupport.SetOptions(c.urlParams_, opts...)
 28214  	res, err := c.doRequest("json")
 28215  	if res != nil && res.StatusCode == http.StatusNotModified {
 28216  		if res.Body != nil {
 28217  			res.Body.Close()
 28218  		}
 28219  		return nil, gensupport.WrapError(&googleapi.Error{
 28220  			Code:   res.StatusCode,
 28221  			Header: res.Header,
 28222  		})
 28223  	}
 28224  	if err != nil {
 28225  		return nil, err
 28226  	}
 28227  	defer googleapi.CloseBody(res)
 28228  	if err := googleapi.CheckResponse(res); err != nil {
 28229  		return nil, gensupport.WrapError(err)
 28230  	}
 28231  	ret := &MobileAppsListResponse{
 28232  		ServerResponse: googleapi.ServerResponse{
 28233  			Header:         res.Header,
 28234  			HTTPStatusCode: res.StatusCode,
 28235  		},
 28236  	}
 28237  	target := &ret
 28238  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28239  		return nil, err
 28240  	}
 28241  	return ret, nil
 28242  }
 28243  
 28244  // Pages invokes f for each page of results.
 28245  // A non-nil error returned from f will halt the iteration.
 28246  // The provided context supersedes any context provided to the Context method.
 28247  func (c *MobileAppsListCall) Pages(ctx context.Context, f func(*MobileAppsListResponse) error) error {
 28248  	c.ctx_ = ctx
 28249  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 28250  	for {
 28251  		x, err := c.Do()
 28252  		if err != nil {
 28253  			return err
 28254  		}
 28255  		if err := f(x); err != nil {
 28256  			return err
 28257  		}
 28258  		if x.NextPageToken == "" {
 28259  			return nil
 28260  		}
 28261  		c.PageToken(x.NextPageToken)
 28262  	}
 28263  }
 28264  
 28265  type MobileCarriersGetCall struct {
 28266  	s            *Service
 28267  	profileId    int64
 28268  	id           int64
 28269  	urlParams_   gensupport.URLParams
 28270  	ifNoneMatch_ string
 28271  	ctx_         context.Context
 28272  	header_      http.Header
 28273  }
 28274  
 28275  // Get: Gets one mobile carrier by ID.
 28276  //
 28277  // - id: Mobile carrier ID.
 28278  // - profileId: User profile ID associated with this request.
 28279  func (r *MobileCarriersService) Get(profileId int64, id int64) *MobileCarriersGetCall {
 28280  	c := &MobileCarriersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28281  	c.profileId = profileId
 28282  	c.id = id
 28283  	return c
 28284  }
 28285  
 28286  // Fields allows partial responses to be retrieved. See
 28287  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28288  // details.
 28289  func (c *MobileCarriersGetCall) Fields(s ...googleapi.Field) *MobileCarriersGetCall {
 28290  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28291  	return c
 28292  }
 28293  
 28294  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28295  // object's ETag matches the given value. This is useful for getting updates
 28296  // only after the object has changed since the last request.
 28297  func (c *MobileCarriersGetCall) IfNoneMatch(entityTag string) *MobileCarriersGetCall {
 28298  	c.ifNoneMatch_ = entityTag
 28299  	return c
 28300  }
 28301  
 28302  // Context sets the context to be used in this call's Do method.
 28303  func (c *MobileCarriersGetCall) Context(ctx context.Context) *MobileCarriersGetCall {
 28304  	c.ctx_ = ctx
 28305  	return c
 28306  }
 28307  
 28308  // Header returns a http.Header that can be modified by the caller to add
 28309  // headers to the request.
 28310  func (c *MobileCarriersGetCall) Header() http.Header {
 28311  	if c.header_ == nil {
 28312  		c.header_ = make(http.Header)
 28313  	}
 28314  	return c.header_
 28315  }
 28316  
 28317  func (c *MobileCarriersGetCall) doRequest(alt string) (*http.Response, error) {
 28318  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28319  	if c.ifNoneMatch_ != "" {
 28320  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28321  	}
 28322  	var body io.Reader = nil
 28323  	c.urlParams_.Set("alt", alt)
 28324  	c.urlParams_.Set("prettyPrint", "false")
 28325  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/mobileCarriers/{+id}")
 28326  	urls += "?" + c.urlParams_.Encode()
 28327  	req, err := http.NewRequest("GET", urls, body)
 28328  	if err != nil {
 28329  		return nil, err
 28330  	}
 28331  	req.Header = reqHeaders
 28332  	googleapi.Expand(req.URL, map[string]string{
 28333  		"profileId": strconv.FormatInt(c.profileId, 10),
 28334  		"id":        strconv.FormatInt(c.id, 10),
 28335  	})
 28336  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28337  }
 28338  
 28339  // Do executes the "dfareporting.mobileCarriers.get" call.
 28340  // Any non-2xx status code is an error. Response headers are in either
 28341  // *MobileCarrier.ServerResponse.Header or (if a response was returned at all)
 28342  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 28343  // whether the returned error was because http.StatusNotModified was returned.
 28344  func (c *MobileCarriersGetCall) Do(opts ...googleapi.CallOption) (*MobileCarrier, error) {
 28345  	gensupport.SetOptions(c.urlParams_, opts...)
 28346  	res, err := c.doRequest("json")
 28347  	if res != nil && res.StatusCode == http.StatusNotModified {
 28348  		if res.Body != nil {
 28349  			res.Body.Close()
 28350  		}
 28351  		return nil, gensupport.WrapError(&googleapi.Error{
 28352  			Code:   res.StatusCode,
 28353  			Header: res.Header,
 28354  		})
 28355  	}
 28356  	if err != nil {
 28357  		return nil, err
 28358  	}
 28359  	defer googleapi.CloseBody(res)
 28360  	if err := googleapi.CheckResponse(res); err != nil {
 28361  		return nil, gensupport.WrapError(err)
 28362  	}
 28363  	ret := &MobileCarrier{
 28364  		ServerResponse: googleapi.ServerResponse{
 28365  			Header:         res.Header,
 28366  			HTTPStatusCode: res.StatusCode,
 28367  		},
 28368  	}
 28369  	target := &ret
 28370  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28371  		return nil, err
 28372  	}
 28373  	return ret, nil
 28374  }
 28375  
 28376  type MobileCarriersListCall struct {
 28377  	s            *Service
 28378  	profileId    int64
 28379  	urlParams_   gensupport.URLParams
 28380  	ifNoneMatch_ string
 28381  	ctx_         context.Context
 28382  	header_      http.Header
 28383  }
 28384  
 28385  // List: Retrieves a list of mobile carriers.
 28386  //
 28387  // - profileId: User profile ID associated with this request.
 28388  func (r *MobileCarriersService) List(profileId int64) *MobileCarriersListCall {
 28389  	c := &MobileCarriersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28390  	c.profileId = profileId
 28391  	return c
 28392  }
 28393  
 28394  // Fields allows partial responses to be retrieved. See
 28395  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28396  // details.
 28397  func (c *MobileCarriersListCall) Fields(s ...googleapi.Field) *MobileCarriersListCall {
 28398  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28399  	return c
 28400  }
 28401  
 28402  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28403  // object's ETag matches the given value. This is useful for getting updates
 28404  // only after the object has changed since the last request.
 28405  func (c *MobileCarriersListCall) IfNoneMatch(entityTag string) *MobileCarriersListCall {
 28406  	c.ifNoneMatch_ = entityTag
 28407  	return c
 28408  }
 28409  
 28410  // Context sets the context to be used in this call's Do method.
 28411  func (c *MobileCarriersListCall) Context(ctx context.Context) *MobileCarriersListCall {
 28412  	c.ctx_ = ctx
 28413  	return c
 28414  }
 28415  
 28416  // Header returns a http.Header that can be modified by the caller to add
 28417  // headers to the request.
 28418  func (c *MobileCarriersListCall) Header() http.Header {
 28419  	if c.header_ == nil {
 28420  		c.header_ = make(http.Header)
 28421  	}
 28422  	return c.header_
 28423  }
 28424  
 28425  func (c *MobileCarriersListCall) doRequest(alt string) (*http.Response, error) {
 28426  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28427  	if c.ifNoneMatch_ != "" {
 28428  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28429  	}
 28430  	var body io.Reader = nil
 28431  	c.urlParams_.Set("alt", alt)
 28432  	c.urlParams_.Set("prettyPrint", "false")
 28433  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/mobileCarriers")
 28434  	urls += "?" + c.urlParams_.Encode()
 28435  	req, err := http.NewRequest("GET", urls, body)
 28436  	if err != nil {
 28437  		return nil, err
 28438  	}
 28439  	req.Header = reqHeaders
 28440  	googleapi.Expand(req.URL, map[string]string{
 28441  		"profileId": strconv.FormatInt(c.profileId, 10),
 28442  	})
 28443  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28444  }
 28445  
 28446  // Do executes the "dfareporting.mobileCarriers.list" call.
 28447  // Any non-2xx status code is an error. Response headers are in either
 28448  // *MobileCarriersListResponse.ServerResponse.Header or (if a response was
 28449  // returned at all) in error.(*googleapi.Error).Header. Use
 28450  // googleapi.IsNotModified to check whether the returned error was because
 28451  // http.StatusNotModified was returned.
 28452  func (c *MobileCarriersListCall) Do(opts ...googleapi.CallOption) (*MobileCarriersListResponse, error) {
 28453  	gensupport.SetOptions(c.urlParams_, opts...)
 28454  	res, err := c.doRequest("json")
 28455  	if res != nil && res.StatusCode == http.StatusNotModified {
 28456  		if res.Body != nil {
 28457  			res.Body.Close()
 28458  		}
 28459  		return nil, gensupport.WrapError(&googleapi.Error{
 28460  			Code:   res.StatusCode,
 28461  			Header: res.Header,
 28462  		})
 28463  	}
 28464  	if err != nil {
 28465  		return nil, err
 28466  	}
 28467  	defer googleapi.CloseBody(res)
 28468  	if err := googleapi.CheckResponse(res); err != nil {
 28469  		return nil, gensupport.WrapError(err)
 28470  	}
 28471  	ret := &MobileCarriersListResponse{
 28472  		ServerResponse: googleapi.ServerResponse{
 28473  			Header:         res.Header,
 28474  			HTTPStatusCode: res.StatusCode,
 28475  		},
 28476  	}
 28477  	target := &ret
 28478  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28479  		return nil, err
 28480  	}
 28481  	return ret, nil
 28482  }
 28483  
 28484  type OperatingSystemVersionsGetCall struct {
 28485  	s            *Service
 28486  	profileId    int64
 28487  	id           int64
 28488  	urlParams_   gensupport.URLParams
 28489  	ifNoneMatch_ string
 28490  	ctx_         context.Context
 28491  	header_      http.Header
 28492  }
 28493  
 28494  // Get: Gets one operating system version by ID.
 28495  //
 28496  // - id: Operating system version ID.
 28497  // - profileId: User profile ID associated with this request.
 28498  func (r *OperatingSystemVersionsService) Get(profileId int64, id int64) *OperatingSystemVersionsGetCall {
 28499  	c := &OperatingSystemVersionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28500  	c.profileId = profileId
 28501  	c.id = id
 28502  	return c
 28503  }
 28504  
 28505  // Fields allows partial responses to be retrieved. See
 28506  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28507  // details.
 28508  func (c *OperatingSystemVersionsGetCall) Fields(s ...googleapi.Field) *OperatingSystemVersionsGetCall {
 28509  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28510  	return c
 28511  }
 28512  
 28513  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28514  // object's ETag matches the given value. This is useful for getting updates
 28515  // only after the object has changed since the last request.
 28516  func (c *OperatingSystemVersionsGetCall) IfNoneMatch(entityTag string) *OperatingSystemVersionsGetCall {
 28517  	c.ifNoneMatch_ = entityTag
 28518  	return c
 28519  }
 28520  
 28521  // Context sets the context to be used in this call's Do method.
 28522  func (c *OperatingSystemVersionsGetCall) Context(ctx context.Context) *OperatingSystemVersionsGetCall {
 28523  	c.ctx_ = ctx
 28524  	return c
 28525  }
 28526  
 28527  // Header returns a http.Header that can be modified by the caller to add
 28528  // headers to the request.
 28529  func (c *OperatingSystemVersionsGetCall) Header() http.Header {
 28530  	if c.header_ == nil {
 28531  		c.header_ = make(http.Header)
 28532  	}
 28533  	return c.header_
 28534  }
 28535  
 28536  func (c *OperatingSystemVersionsGetCall) doRequest(alt string) (*http.Response, error) {
 28537  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28538  	if c.ifNoneMatch_ != "" {
 28539  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28540  	}
 28541  	var body io.Reader = nil
 28542  	c.urlParams_.Set("alt", alt)
 28543  	c.urlParams_.Set("prettyPrint", "false")
 28544  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/operatingSystemVersions/{+id}")
 28545  	urls += "?" + c.urlParams_.Encode()
 28546  	req, err := http.NewRequest("GET", urls, body)
 28547  	if err != nil {
 28548  		return nil, err
 28549  	}
 28550  	req.Header = reqHeaders
 28551  	googleapi.Expand(req.URL, map[string]string{
 28552  		"profileId": strconv.FormatInt(c.profileId, 10),
 28553  		"id":        strconv.FormatInt(c.id, 10),
 28554  	})
 28555  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28556  }
 28557  
 28558  // Do executes the "dfareporting.operatingSystemVersions.get" call.
 28559  // Any non-2xx status code is an error. Response headers are in either
 28560  // *OperatingSystemVersion.ServerResponse.Header or (if a response was returned
 28561  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 28562  // check whether the returned error was because http.StatusNotModified was
 28563  // returned.
 28564  func (c *OperatingSystemVersionsGetCall) Do(opts ...googleapi.CallOption) (*OperatingSystemVersion, error) {
 28565  	gensupport.SetOptions(c.urlParams_, opts...)
 28566  	res, err := c.doRequest("json")
 28567  	if res != nil && res.StatusCode == http.StatusNotModified {
 28568  		if res.Body != nil {
 28569  			res.Body.Close()
 28570  		}
 28571  		return nil, gensupport.WrapError(&googleapi.Error{
 28572  			Code:   res.StatusCode,
 28573  			Header: res.Header,
 28574  		})
 28575  	}
 28576  	if err != nil {
 28577  		return nil, err
 28578  	}
 28579  	defer googleapi.CloseBody(res)
 28580  	if err := googleapi.CheckResponse(res); err != nil {
 28581  		return nil, gensupport.WrapError(err)
 28582  	}
 28583  	ret := &OperatingSystemVersion{
 28584  		ServerResponse: googleapi.ServerResponse{
 28585  			Header:         res.Header,
 28586  			HTTPStatusCode: res.StatusCode,
 28587  		},
 28588  	}
 28589  	target := &ret
 28590  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28591  		return nil, err
 28592  	}
 28593  	return ret, nil
 28594  }
 28595  
 28596  type OperatingSystemVersionsListCall struct {
 28597  	s            *Service
 28598  	profileId    int64
 28599  	urlParams_   gensupport.URLParams
 28600  	ifNoneMatch_ string
 28601  	ctx_         context.Context
 28602  	header_      http.Header
 28603  }
 28604  
 28605  // List: Retrieves a list of operating system versions.
 28606  //
 28607  // - profileId: User profile ID associated with this request.
 28608  func (r *OperatingSystemVersionsService) List(profileId int64) *OperatingSystemVersionsListCall {
 28609  	c := &OperatingSystemVersionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28610  	c.profileId = profileId
 28611  	return c
 28612  }
 28613  
 28614  // Fields allows partial responses to be retrieved. See
 28615  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28616  // details.
 28617  func (c *OperatingSystemVersionsListCall) Fields(s ...googleapi.Field) *OperatingSystemVersionsListCall {
 28618  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28619  	return c
 28620  }
 28621  
 28622  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28623  // object's ETag matches the given value. This is useful for getting updates
 28624  // only after the object has changed since the last request.
 28625  func (c *OperatingSystemVersionsListCall) IfNoneMatch(entityTag string) *OperatingSystemVersionsListCall {
 28626  	c.ifNoneMatch_ = entityTag
 28627  	return c
 28628  }
 28629  
 28630  // Context sets the context to be used in this call's Do method.
 28631  func (c *OperatingSystemVersionsListCall) Context(ctx context.Context) *OperatingSystemVersionsListCall {
 28632  	c.ctx_ = ctx
 28633  	return c
 28634  }
 28635  
 28636  // Header returns a http.Header that can be modified by the caller to add
 28637  // headers to the request.
 28638  func (c *OperatingSystemVersionsListCall) Header() http.Header {
 28639  	if c.header_ == nil {
 28640  		c.header_ = make(http.Header)
 28641  	}
 28642  	return c.header_
 28643  }
 28644  
 28645  func (c *OperatingSystemVersionsListCall) doRequest(alt string) (*http.Response, error) {
 28646  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28647  	if c.ifNoneMatch_ != "" {
 28648  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28649  	}
 28650  	var body io.Reader = nil
 28651  	c.urlParams_.Set("alt", alt)
 28652  	c.urlParams_.Set("prettyPrint", "false")
 28653  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/operatingSystemVersions")
 28654  	urls += "?" + c.urlParams_.Encode()
 28655  	req, err := http.NewRequest("GET", urls, body)
 28656  	if err != nil {
 28657  		return nil, err
 28658  	}
 28659  	req.Header = reqHeaders
 28660  	googleapi.Expand(req.URL, map[string]string{
 28661  		"profileId": strconv.FormatInt(c.profileId, 10),
 28662  	})
 28663  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28664  }
 28665  
 28666  // Do executes the "dfareporting.operatingSystemVersions.list" call.
 28667  // Any non-2xx status code is an error. Response headers are in either
 28668  // *OperatingSystemVersionsListResponse.ServerResponse.Header or (if a response
 28669  // was returned at all) in error.(*googleapi.Error).Header. Use
 28670  // googleapi.IsNotModified to check whether the returned error was because
 28671  // http.StatusNotModified was returned.
 28672  func (c *OperatingSystemVersionsListCall) Do(opts ...googleapi.CallOption) (*OperatingSystemVersionsListResponse, error) {
 28673  	gensupport.SetOptions(c.urlParams_, opts...)
 28674  	res, err := c.doRequest("json")
 28675  	if res != nil && res.StatusCode == http.StatusNotModified {
 28676  		if res.Body != nil {
 28677  			res.Body.Close()
 28678  		}
 28679  		return nil, gensupport.WrapError(&googleapi.Error{
 28680  			Code:   res.StatusCode,
 28681  			Header: res.Header,
 28682  		})
 28683  	}
 28684  	if err != nil {
 28685  		return nil, err
 28686  	}
 28687  	defer googleapi.CloseBody(res)
 28688  	if err := googleapi.CheckResponse(res); err != nil {
 28689  		return nil, gensupport.WrapError(err)
 28690  	}
 28691  	ret := &OperatingSystemVersionsListResponse{
 28692  		ServerResponse: googleapi.ServerResponse{
 28693  			Header:         res.Header,
 28694  			HTTPStatusCode: res.StatusCode,
 28695  		},
 28696  	}
 28697  	target := &ret
 28698  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28699  		return nil, err
 28700  	}
 28701  	return ret, nil
 28702  }
 28703  
 28704  type OperatingSystemsGetCall struct {
 28705  	s            *Service
 28706  	profileId    int64
 28707  	dartId       int64
 28708  	urlParams_   gensupport.URLParams
 28709  	ifNoneMatch_ string
 28710  	ctx_         context.Context
 28711  	header_      http.Header
 28712  }
 28713  
 28714  // Get: Gets one operating system by DART ID.
 28715  //
 28716  // - dartId: Operating system DART ID.
 28717  // - profileId: User profile ID associated with this request.
 28718  func (r *OperatingSystemsService) Get(profileId int64, dartId int64) *OperatingSystemsGetCall {
 28719  	c := &OperatingSystemsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28720  	c.profileId = profileId
 28721  	c.dartId = dartId
 28722  	return c
 28723  }
 28724  
 28725  // Fields allows partial responses to be retrieved. See
 28726  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28727  // details.
 28728  func (c *OperatingSystemsGetCall) Fields(s ...googleapi.Field) *OperatingSystemsGetCall {
 28729  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28730  	return c
 28731  }
 28732  
 28733  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28734  // object's ETag matches the given value. This is useful for getting updates
 28735  // only after the object has changed since the last request.
 28736  func (c *OperatingSystemsGetCall) IfNoneMatch(entityTag string) *OperatingSystemsGetCall {
 28737  	c.ifNoneMatch_ = entityTag
 28738  	return c
 28739  }
 28740  
 28741  // Context sets the context to be used in this call's Do method.
 28742  func (c *OperatingSystemsGetCall) Context(ctx context.Context) *OperatingSystemsGetCall {
 28743  	c.ctx_ = ctx
 28744  	return c
 28745  }
 28746  
 28747  // Header returns a http.Header that can be modified by the caller to add
 28748  // headers to the request.
 28749  func (c *OperatingSystemsGetCall) Header() http.Header {
 28750  	if c.header_ == nil {
 28751  		c.header_ = make(http.Header)
 28752  	}
 28753  	return c.header_
 28754  }
 28755  
 28756  func (c *OperatingSystemsGetCall) doRequest(alt string) (*http.Response, error) {
 28757  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28758  	if c.ifNoneMatch_ != "" {
 28759  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28760  	}
 28761  	var body io.Reader = nil
 28762  	c.urlParams_.Set("alt", alt)
 28763  	c.urlParams_.Set("prettyPrint", "false")
 28764  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/operatingSystems/{+dartId}")
 28765  	urls += "?" + c.urlParams_.Encode()
 28766  	req, err := http.NewRequest("GET", urls, body)
 28767  	if err != nil {
 28768  		return nil, err
 28769  	}
 28770  	req.Header = reqHeaders
 28771  	googleapi.Expand(req.URL, map[string]string{
 28772  		"profileId": strconv.FormatInt(c.profileId, 10),
 28773  		"dartId":    strconv.FormatInt(c.dartId, 10),
 28774  	})
 28775  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28776  }
 28777  
 28778  // Do executes the "dfareporting.operatingSystems.get" call.
 28779  // Any non-2xx status code is an error. Response headers are in either
 28780  // *OperatingSystem.ServerResponse.Header or (if a response was returned at
 28781  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 28782  // check whether the returned error was because http.StatusNotModified was
 28783  // returned.
 28784  func (c *OperatingSystemsGetCall) Do(opts ...googleapi.CallOption) (*OperatingSystem, error) {
 28785  	gensupport.SetOptions(c.urlParams_, opts...)
 28786  	res, err := c.doRequest("json")
 28787  	if res != nil && res.StatusCode == http.StatusNotModified {
 28788  		if res.Body != nil {
 28789  			res.Body.Close()
 28790  		}
 28791  		return nil, gensupport.WrapError(&googleapi.Error{
 28792  			Code:   res.StatusCode,
 28793  			Header: res.Header,
 28794  		})
 28795  	}
 28796  	if err != nil {
 28797  		return nil, err
 28798  	}
 28799  	defer googleapi.CloseBody(res)
 28800  	if err := googleapi.CheckResponse(res); err != nil {
 28801  		return nil, gensupport.WrapError(err)
 28802  	}
 28803  	ret := &OperatingSystem{
 28804  		ServerResponse: googleapi.ServerResponse{
 28805  			Header:         res.Header,
 28806  			HTTPStatusCode: res.StatusCode,
 28807  		},
 28808  	}
 28809  	target := &ret
 28810  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28811  		return nil, err
 28812  	}
 28813  	return ret, nil
 28814  }
 28815  
 28816  type OperatingSystemsListCall struct {
 28817  	s            *Service
 28818  	profileId    int64
 28819  	urlParams_   gensupport.URLParams
 28820  	ifNoneMatch_ string
 28821  	ctx_         context.Context
 28822  	header_      http.Header
 28823  }
 28824  
 28825  // List: Retrieves a list of operating systems.
 28826  //
 28827  // - profileId: User profile ID associated with this request.
 28828  func (r *OperatingSystemsService) List(profileId int64) *OperatingSystemsListCall {
 28829  	c := &OperatingSystemsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28830  	c.profileId = profileId
 28831  	return c
 28832  }
 28833  
 28834  // Fields allows partial responses to be retrieved. See
 28835  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28836  // details.
 28837  func (c *OperatingSystemsListCall) Fields(s ...googleapi.Field) *OperatingSystemsListCall {
 28838  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28839  	return c
 28840  }
 28841  
 28842  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28843  // object's ETag matches the given value. This is useful for getting updates
 28844  // only after the object has changed since the last request.
 28845  func (c *OperatingSystemsListCall) IfNoneMatch(entityTag string) *OperatingSystemsListCall {
 28846  	c.ifNoneMatch_ = entityTag
 28847  	return c
 28848  }
 28849  
 28850  // Context sets the context to be used in this call's Do method.
 28851  func (c *OperatingSystemsListCall) Context(ctx context.Context) *OperatingSystemsListCall {
 28852  	c.ctx_ = ctx
 28853  	return c
 28854  }
 28855  
 28856  // Header returns a http.Header that can be modified by the caller to add
 28857  // headers to the request.
 28858  func (c *OperatingSystemsListCall) Header() http.Header {
 28859  	if c.header_ == nil {
 28860  		c.header_ = make(http.Header)
 28861  	}
 28862  	return c.header_
 28863  }
 28864  
 28865  func (c *OperatingSystemsListCall) doRequest(alt string) (*http.Response, error) {
 28866  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28867  	if c.ifNoneMatch_ != "" {
 28868  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28869  	}
 28870  	var body io.Reader = nil
 28871  	c.urlParams_.Set("alt", alt)
 28872  	c.urlParams_.Set("prettyPrint", "false")
 28873  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/operatingSystems")
 28874  	urls += "?" + c.urlParams_.Encode()
 28875  	req, err := http.NewRequest("GET", urls, body)
 28876  	if err != nil {
 28877  		return nil, err
 28878  	}
 28879  	req.Header = reqHeaders
 28880  	googleapi.Expand(req.URL, map[string]string{
 28881  		"profileId": strconv.FormatInt(c.profileId, 10),
 28882  	})
 28883  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 28884  }
 28885  
 28886  // Do executes the "dfareporting.operatingSystems.list" call.
 28887  // Any non-2xx status code is an error. Response headers are in either
 28888  // *OperatingSystemsListResponse.ServerResponse.Header or (if a response was
 28889  // returned at all) in error.(*googleapi.Error).Header. Use
 28890  // googleapi.IsNotModified to check whether the returned error was because
 28891  // http.StatusNotModified was returned.
 28892  func (c *OperatingSystemsListCall) Do(opts ...googleapi.CallOption) (*OperatingSystemsListResponse, error) {
 28893  	gensupport.SetOptions(c.urlParams_, opts...)
 28894  	res, err := c.doRequest("json")
 28895  	if res != nil && res.StatusCode == http.StatusNotModified {
 28896  		if res.Body != nil {
 28897  			res.Body.Close()
 28898  		}
 28899  		return nil, gensupport.WrapError(&googleapi.Error{
 28900  			Code:   res.StatusCode,
 28901  			Header: res.Header,
 28902  		})
 28903  	}
 28904  	if err != nil {
 28905  		return nil, err
 28906  	}
 28907  	defer googleapi.CloseBody(res)
 28908  	if err := googleapi.CheckResponse(res); err != nil {
 28909  		return nil, gensupport.WrapError(err)
 28910  	}
 28911  	ret := &OperatingSystemsListResponse{
 28912  		ServerResponse: googleapi.ServerResponse{
 28913  			Header:         res.Header,
 28914  			HTTPStatusCode: res.StatusCode,
 28915  		},
 28916  	}
 28917  	target := &ret
 28918  	if err := gensupport.DecodeResponse(target, res); err != nil {
 28919  		return nil, err
 28920  	}
 28921  	return ret, nil
 28922  }
 28923  
 28924  type OrdersGetCall struct {
 28925  	s            *Service
 28926  	profileId    int64
 28927  	projectId    int64
 28928  	id           int64
 28929  	urlParams_   gensupport.URLParams
 28930  	ifNoneMatch_ string
 28931  	ctx_         context.Context
 28932  	header_      http.Header
 28933  }
 28934  
 28935  // Get: Gets one order by ID.
 28936  //
 28937  // - id: Order ID.
 28938  // - profileId: User profile ID associated with this request.
 28939  // - projectId: Project ID for orders.
 28940  func (r *OrdersService) Get(profileId int64, projectId int64, id int64) *OrdersGetCall {
 28941  	c := &OrdersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 28942  	c.profileId = profileId
 28943  	c.projectId = projectId
 28944  	c.id = id
 28945  	return c
 28946  }
 28947  
 28948  // Fields allows partial responses to be retrieved. See
 28949  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 28950  // details.
 28951  func (c *OrdersGetCall) Fields(s ...googleapi.Field) *OrdersGetCall {
 28952  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 28953  	return c
 28954  }
 28955  
 28956  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 28957  // object's ETag matches the given value. This is useful for getting updates
 28958  // only after the object has changed since the last request.
 28959  func (c *OrdersGetCall) IfNoneMatch(entityTag string) *OrdersGetCall {
 28960  	c.ifNoneMatch_ = entityTag
 28961  	return c
 28962  }
 28963  
 28964  // Context sets the context to be used in this call's Do method.
 28965  func (c *OrdersGetCall) Context(ctx context.Context) *OrdersGetCall {
 28966  	c.ctx_ = ctx
 28967  	return c
 28968  }
 28969  
 28970  // Header returns a http.Header that can be modified by the caller to add
 28971  // headers to the request.
 28972  func (c *OrdersGetCall) Header() http.Header {
 28973  	if c.header_ == nil {
 28974  		c.header_ = make(http.Header)
 28975  	}
 28976  	return c.header_
 28977  }
 28978  
 28979  func (c *OrdersGetCall) doRequest(alt string) (*http.Response, error) {
 28980  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 28981  	if c.ifNoneMatch_ != "" {
 28982  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 28983  	}
 28984  	var body io.Reader = nil
 28985  	c.urlParams_.Set("alt", alt)
 28986  	c.urlParams_.Set("prettyPrint", "false")
 28987  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/projects/{projectId}/orders/{+id}")
 28988  	urls += "?" + c.urlParams_.Encode()
 28989  	req, err := http.NewRequest("GET", urls, body)
 28990  	if err != nil {
 28991  		return nil, err
 28992  	}
 28993  	req.Header = reqHeaders
 28994  	googleapi.Expand(req.URL, map[string]string{
 28995  		"profileId": strconv.FormatInt(c.profileId, 10),
 28996  		"projectId": strconv.FormatInt(c.projectId, 10),
 28997  		"id":        strconv.FormatInt(c.id, 10),
 28998  	})
 28999  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29000  }
 29001  
 29002  // Do executes the "dfareporting.orders.get" call.
 29003  // Any non-2xx status code is an error. Response headers are in either
 29004  // *Order.ServerResponse.Header or (if a response was returned at all) in
 29005  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 29006  // whether the returned error was because http.StatusNotModified was returned.
 29007  func (c *OrdersGetCall) Do(opts ...googleapi.CallOption) (*Order, error) {
 29008  	gensupport.SetOptions(c.urlParams_, opts...)
 29009  	res, err := c.doRequest("json")
 29010  	if res != nil && res.StatusCode == http.StatusNotModified {
 29011  		if res.Body != nil {
 29012  			res.Body.Close()
 29013  		}
 29014  		return nil, gensupport.WrapError(&googleapi.Error{
 29015  			Code:   res.StatusCode,
 29016  			Header: res.Header,
 29017  		})
 29018  	}
 29019  	if err != nil {
 29020  		return nil, err
 29021  	}
 29022  	defer googleapi.CloseBody(res)
 29023  	if err := googleapi.CheckResponse(res); err != nil {
 29024  		return nil, gensupport.WrapError(err)
 29025  	}
 29026  	ret := &Order{
 29027  		ServerResponse: googleapi.ServerResponse{
 29028  			Header:         res.Header,
 29029  			HTTPStatusCode: res.StatusCode,
 29030  		},
 29031  	}
 29032  	target := &ret
 29033  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29034  		return nil, err
 29035  	}
 29036  	return ret, nil
 29037  }
 29038  
 29039  type OrdersListCall struct {
 29040  	s            *Service
 29041  	profileId    int64
 29042  	projectId    int64
 29043  	urlParams_   gensupport.URLParams
 29044  	ifNoneMatch_ string
 29045  	ctx_         context.Context
 29046  	header_      http.Header
 29047  }
 29048  
 29049  // List: Retrieves a list of orders, possibly filtered. This method supports
 29050  // paging.
 29051  //
 29052  // - profileId: User profile ID associated with this request.
 29053  // - projectId: Project ID for orders.
 29054  func (r *OrdersService) List(profileId int64, projectId int64) *OrdersListCall {
 29055  	c := &OrdersListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29056  	c.profileId = profileId
 29057  	c.projectId = projectId
 29058  	return c
 29059  }
 29060  
 29061  // Ids sets the optional parameter "ids": Select only orders with these IDs.
 29062  func (c *OrdersListCall) Ids(ids ...int64) *OrdersListCall {
 29063  	var ids_ []string
 29064  	for _, v := range ids {
 29065  		ids_ = append(ids_, fmt.Sprint(v))
 29066  	}
 29067  	c.urlParams_.SetMulti("ids", ids_)
 29068  	return c
 29069  }
 29070  
 29071  // MaxResults sets the optional parameter "maxResults": Maximum number of
 29072  // results to return.
 29073  func (c *OrdersListCall) MaxResults(maxResults int64) *OrdersListCall {
 29074  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 29075  	return c
 29076  }
 29077  
 29078  // PageToken sets the optional parameter "pageToken": Value of the
 29079  // nextPageToken from the previous result page.
 29080  func (c *OrdersListCall) PageToken(pageToken string) *OrdersListCall {
 29081  	c.urlParams_.Set("pageToken", pageToken)
 29082  	return c
 29083  }
 29084  
 29085  // SearchString sets the optional parameter "searchString": Allows searching
 29086  // for orders by name or ID. Wildcards (*) are allowed. For example,
 29087  // "order*2015" will return orders with names like "order June 2015", "order
 29088  // April 2015", or simply "order 2015". Most of the searches also add wildcards
 29089  // implicitly at the start and the end of the search string. For example, a
 29090  // search string of "order" will match orders with name "my order", "order
 29091  // 2015", or simply "order".
 29092  func (c *OrdersListCall) SearchString(searchString string) *OrdersListCall {
 29093  	c.urlParams_.Set("searchString", searchString)
 29094  	return c
 29095  }
 29096  
 29097  // SiteId sets the optional parameter "siteId": Select only orders that are
 29098  // associated with these site IDs.
 29099  func (c *OrdersListCall) SiteId(siteId ...int64) *OrdersListCall {
 29100  	var siteId_ []string
 29101  	for _, v := range siteId {
 29102  		siteId_ = append(siteId_, fmt.Sprint(v))
 29103  	}
 29104  	c.urlParams_.SetMulti("siteId", siteId_)
 29105  	return c
 29106  }
 29107  
 29108  // SortField sets the optional parameter "sortField": Field by which to sort
 29109  // the list.
 29110  //
 29111  // Possible values:
 29112  //
 29113  //	"ID" (default)
 29114  //	"NAME"
 29115  func (c *OrdersListCall) SortField(sortField string) *OrdersListCall {
 29116  	c.urlParams_.Set("sortField", sortField)
 29117  	return c
 29118  }
 29119  
 29120  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 29121  //
 29122  // Possible values:
 29123  //
 29124  //	"ASCENDING" (default) - Ascending order.
 29125  //	"DESCENDING" - Descending order.
 29126  func (c *OrdersListCall) SortOrder(sortOrder string) *OrdersListCall {
 29127  	c.urlParams_.Set("sortOrder", sortOrder)
 29128  	return c
 29129  }
 29130  
 29131  // Fields allows partial responses to be retrieved. See
 29132  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29133  // details.
 29134  func (c *OrdersListCall) Fields(s ...googleapi.Field) *OrdersListCall {
 29135  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29136  	return c
 29137  }
 29138  
 29139  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 29140  // object's ETag matches the given value. This is useful for getting updates
 29141  // only after the object has changed since the last request.
 29142  func (c *OrdersListCall) IfNoneMatch(entityTag string) *OrdersListCall {
 29143  	c.ifNoneMatch_ = entityTag
 29144  	return c
 29145  }
 29146  
 29147  // Context sets the context to be used in this call's Do method.
 29148  func (c *OrdersListCall) Context(ctx context.Context) *OrdersListCall {
 29149  	c.ctx_ = ctx
 29150  	return c
 29151  }
 29152  
 29153  // Header returns a http.Header that can be modified by the caller to add
 29154  // headers to the request.
 29155  func (c *OrdersListCall) Header() http.Header {
 29156  	if c.header_ == nil {
 29157  		c.header_ = make(http.Header)
 29158  	}
 29159  	return c.header_
 29160  }
 29161  
 29162  func (c *OrdersListCall) doRequest(alt string) (*http.Response, error) {
 29163  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 29164  	if c.ifNoneMatch_ != "" {
 29165  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 29166  	}
 29167  	var body io.Reader = nil
 29168  	c.urlParams_.Set("alt", alt)
 29169  	c.urlParams_.Set("prettyPrint", "false")
 29170  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/projects/{projectId}/orders")
 29171  	urls += "?" + c.urlParams_.Encode()
 29172  	req, err := http.NewRequest("GET", urls, body)
 29173  	if err != nil {
 29174  		return nil, err
 29175  	}
 29176  	req.Header = reqHeaders
 29177  	googleapi.Expand(req.URL, map[string]string{
 29178  		"profileId": strconv.FormatInt(c.profileId, 10),
 29179  		"projectId": strconv.FormatInt(c.projectId, 10),
 29180  	})
 29181  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29182  }
 29183  
 29184  // Do executes the "dfareporting.orders.list" call.
 29185  // Any non-2xx status code is an error. Response headers are in either
 29186  // *OrdersListResponse.ServerResponse.Header or (if a response was returned at
 29187  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 29188  // check whether the returned error was because http.StatusNotModified was
 29189  // returned.
 29190  func (c *OrdersListCall) Do(opts ...googleapi.CallOption) (*OrdersListResponse, error) {
 29191  	gensupport.SetOptions(c.urlParams_, opts...)
 29192  	res, err := c.doRequest("json")
 29193  	if res != nil && res.StatusCode == http.StatusNotModified {
 29194  		if res.Body != nil {
 29195  			res.Body.Close()
 29196  		}
 29197  		return nil, gensupport.WrapError(&googleapi.Error{
 29198  			Code:   res.StatusCode,
 29199  			Header: res.Header,
 29200  		})
 29201  	}
 29202  	if err != nil {
 29203  		return nil, err
 29204  	}
 29205  	defer googleapi.CloseBody(res)
 29206  	if err := googleapi.CheckResponse(res); err != nil {
 29207  		return nil, gensupport.WrapError(err)
 29208  	}
 29209  	ret := &OrdersListResponse{
 29210  		ServerResponse: googleapi.ServerResponse{
 29211  			Header:         res.Header,
 29212  			HTTPStatusCode: res.StatusCode,
 29213  		},
 29214  	}
 29215  	target := &ret
 29216  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29217  		return nil, err
 29218  	}
 29219  	return ret, nil
 29220  }
 29221  
 29222  // Pages invokes f for each page of results.
 29223  // A non-nil error returned from f will halt the iteration.
 29224  // The provided context supersedes any context provided to the Context method.
 29225  func (c *OrdersListCall) Pages(ctx context.Context, f func(*OrdersListResponse) error) error {
 29226  	c.ctx_ = ctx
 29227  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 29228  	for {
 29229  		x, err := c.Do()
 29230  		if err != nil {
 29231  			return err
 29232  		}
 29233  		if err := f(x); err != nil {
 29234  			return err
 29235  		}
 29236  		if x.NextPageToken == "" {
 29237  			return nil
 29238  		}
 29239  		c.PageToken(x.NextPageToken)
 29240  	}
 29241  }
 29242  
 29243  type PlacementGroupsGetCall struct {
 29244  	s            *Service
 29245  	profileId    int64
 29246  	id           int64
 29247  	urlParams_   gensupport.URLParams
 29248  	ifNoneMatch_ string
 29249  	ctx_         context.Context
 29250  	header_      http.Header
 29251  }
 29252  
 29253  // Get: Gets one placement group by ID.
 29254  //
 29255  // - id: Placement group ID.
 29256  // - profileId: User profile ID associated with this request.
 29257  func (r *PlacementGroupsService) Get(profileId int64, id int64) *PlacementGroupsGetCall {
 29258  	c := &PlacementGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29259  	c.profileId = profileId
 29260  	c.id = id
 29261  	return c
 29262  }
 29263  
 29264  // Fields allows partial responses to be retrieved. See
 29265  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29266  // details.
 29267  func (c *PlacementGroupsGetCall) Fields(s ...googleapi.Field) *PlacementGroupsGetCall {
 29268  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29269  	return c
 29270  }
 29271  
 29272  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 29273  // object's ETag matches the given value. This is useful for getting updates
 29274  // only after the object has changed since the last request.
 29275  func (c *PlacementGroupsGetCall) IfNoneMatch(entityTag string) *PlacementGroupsGetCall {
 29276  	c.ifNoneMatch_ = entityTag
 29277  	return c
 29278  }
 29279  
 29280  // Context sets the context to be used in this call's Do method.
 29281  func (c *PlacementGroupsGetCall) Context(ctx context.Context) *PlacementGroupsGetCall {
 29282  	c.ctx_ = ctx
 29283  	return c
 29284  }
 29285  
 29286  // Header returns a http.Header that can be modified by the caller to add
 29287  // headers to the request.
 29288  func (c *PlacementGroupsGetCall) Header() http.Header {
 29289  	if c.header_ == nil {
 29290  		c.header_ = make(http.Header)
 29291  	}
 29292  	return c.header_
 29293  }
 29294  
 29295  func (c *PlacementGroupsGetCall) doRequest(alt string) (*http.Response, error) {
 29296  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 29297  	if c.ifNoneMatch_ != "" {
 29298  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 29299  	}
 29300  	var body io.Reader = nil
 29301  	c.urlParams_.Set("alt", alt)
 29302  	c.urlParams_.Set("prettyPrint", "false")
 29303  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementGroups/{+id}")
 29304  	urls += "?" + c.urlParams_.Encode()
 29305  	req, err := http.NewRequest("GET", urls, body)
 29306  	if err != nil {
 29307  		return nil, err
 29308  	}
 29309  	req.Header = reqHeaders
 29310  	googleapi.Expand(req.URL, map[string]string{
 29311  		"profileId": strconv.FormatInt(c.profileId, 10),
 29312  		"id":        strconv.FormatInt(c.id, 10),
 29313  	})
 29314  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29315  }
 29316  
 29317  // Do executes the "dfareporting.placementGroups.get" call.
 29318  // Any non-2xx status code is an error. Response headers are in either
 29319  // *PlacementGroup.ServerResponse.Header or (if a response was returned at all)
 29320  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 29321  // whether the returned error was because http.StatusNotModified was returned.
 29322  func (c *PlacementGroupsGetCall) Do(opts ...googleapi.CallOption) (*PlacementGroup, error) {
 29323  	gensupport.SetOptions(c.urlParams_, opts...)
 29324  	res, err := c.doRequest("json")
 29325  	if res != nil && res.StatusCode == http.StatusNotModified {
 29326  		if res.Body != nil {
 29327  			res.Body.Close()
 29328  		}
 29329  		return nil, gensupport.WrapError(&googleapi.Error{
 29330  			Code:   res.StatusCode,
 29331  			Header: res.Header,
 29332  		})
 29333  	}
 29334  	if err != nil {
 29335  		return nil, err
 29336  	}
 29337  	defer googleapi.CloseBody(res)
 29338  	if err := googleapi.CheckResponse(res); err != nil {
 29339  		return nil, gensupport.WrapError(err)
 29340  	}
 29341  	ret := &PlacementGroup{
 29342  		ServerResponse: googleapi.ServerResponse{
 29343  			Header:         res.Header,
 29344  			HTTPStatusCode: res.StatusCode,
 29345  		},
 29346  	}
 29347  	target := &ret
 29348  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29349  		return nil, err
 29350  	}
 29351  	return ret, nil
 29352  }
 29353  
 29354  type PlacementGroupsInsertCall struct {
 29355  	s              *Service
 29356  	profileId      int64
 29357  	placementgroup *PlacementGroup
 29358  	urlParams_     gensupport.URLParams
 29359  	ctx_           context.Context
 29360  	header_        http.Header
 29361  }
 29362  
 29363  // Insert: Inserts a new placement group.
 29364  //
 29365  // - profileId: User profile ID associated with this request.
 29366  func (r *PlacementGroupsService) Insert(profileId int64, placementgroup *PlacementGroup) *PlacementGroupsInsertCall {
 29367  	c := &PlacementGroupsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29368  	c.profileId = profileId
 29369  	c.placementgroup = placementgroup
 29370  	return c
 29371  }
 29372  
 29373  // Fields allows partial responses to be retrieved. See
 29374  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29375  // details.
 29376  func (c *PlacementGroupsInsertCall) Fields(s ...googleapi.Field) *PlacementGroupsInsertCall {
 29377  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29378  	return c
 29379  }
 29380  
 29381  // Context sets the context to be used in this call's Do method.
 29382  func (c *PlacementGroupsInsertCall) Context(ctx context.Context) *PlacementGroupsInsertCall {
 29383  	c.ctx_ = ctx
 29384  	return c
 29385  }
 29386  
 29387  // Header returns a http.Header that can be modified by the caller to add
 29388  // headers to the request.
 29389  func (c *PlacementGroupsInsertCall) Header() http.Header {
 29390  	if c.header_ == nil {
 29391  		c.header_ = make(http.Header)
 29392  	}
 29393  	return c.header_
 29394  }
 29395  
 29396  func (c *PlacementGroupsInsertCall) doRequest(alt string) (*http.Response, error) {
 29397  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 29398  	var body io.Reader = nil
 29399  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementgroup)
 29400  	if err != nil {
 29401  		return nil, err
 29402  	}
 29403  	c.urlParams_.Set("alt", alt)
 29404  	c.urlParams_.Set("prettyPrint", "false")
 29405  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementGroups")
 29406  	urls += "?" + c.urlParams_.Encode()
 29407  	req, err := http.NewRequest("POST", urls, body)
 29408  	if err != nil {
 29409  		return nil, err
 29410  	}
 29411  	req.Header = reqHeaders
 29412  	googleapi.Expand(req.URL, map[string]string{
 29413  		"profileId": strconv.FormatInt(c.profileId, 10),
 29414  	})
 29415  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29416  }
 29417  
 29418  // Do executes the "dfareporting.placementGroups.insert" call.
 29419  // Any non-2xx status code is an error. Response headers are in either
 29420  // *PlacementGroup.ServerResponse.Header or (if a response was returned at all)
 29421  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 29422  // whether the returned error was because http.StatusNotModified was returned.
 29423  func (c *PlacementGroupsInsertCall) Do(opts ...googleapi.CallOption) (*PlacementGroup, error) {
 29424  	gensupport.SetOptions(c.urlParams_, opts...)
 29425  	res, err := c.doRequest("json")
 29426  	if res != nil && res.StatusCode == http.StatusNotModified {
 29427  		if res.Body != nil {
 29428  			res.Body.Close()
 29429  		}
 29430  		return nil, gensupport.WrapError(&googleapi.Error{
 29431  			Code:   res.StatusCode,
 29432  			Header: res.Header,
 29433  		})
 29434  	}
 29435  	if err != nil {
 29436  		return nil, err
 29437  	}
 29438  	defer googleapi.CloseBody(res)
 29439  	if err := googleapi.CheckResponse(res); err != nil {
 29440  		return nil, gensupport.WrapError(err)
 29441  	}
 29442  	ret := &PlacementGroup{
 29443  		ServerResponse: googleapi.ServerResponse{
 29444  			Header:         res.Header,
 29445  			HTTPStatusCode: res.StatusCode,
 29446  		},
 29447  	}
 29448  	target := &ret
 29449  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29450  		return nil, err
 29451  	}
 29452  	return ret, nil
 29453  }
 29454  
 29455  type PlacementGroupsListCall struct {
 29456  	s            *Service
 29457  	profileId    int64
 29458  	urlParams_   gensupport.URLParams
 29459  	ifNoneMatch_ string
 29460  	ctx_         context.Context
 29461  	header_      http.Header
 29462  }
 29463  
 29464  // List: Retrieves a list of placement groups, possibly filtered. This method
 29465  // supports paging.
 29466  //
 29467  // - profileId: User profile ID associated with this request.
 29468  func (r *PlacementGroupsService) List(profileId int64) *PlacementGroupsListCall {
 29469  	c := &PlacementGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29470  	c.profileId = profileId
 29471  	return c
 29472  }
 29473  
 29474  // ActiveStatus sets the optional parameter "activeStatus": Select only
 29475  // placements with these active statuses.
 29476  //
 29477  // Possible values:
 29478  //
 29479  //	"PLACEMENT_STATUS_UNKNOWN"
 29480  //	"PLACEMENT_STATUS_ACTIVE"
 29481  //	"PLACEMENT_STATUS_INACTIVE"
 29482  //	"PLACEMENT_STATUS_ARCHIVED"
 29483  //	"PLACEMENT_STATUS_PERMANENTLY_ARCHIVED"
 29484  func (c *PlacementGroupsListCall) ActiveStatus(activeStatus ...string) *PlacementGroupsListCall {
 29485  	c.urlParams_.SetMulti("activeStatus", append([]string{}, activeStatus...))
 29486  	return c
 29487  }
 29488  
 29489  // AdvertiserIds sets the optional parameter "advertiserIds": Select only
 29490  // placement groups that belong to these advertisers.
 29491  func (c *PlacementGroupsListCall) AdvertiserIds(advertiserIds ...int64) *PlacementGroupsListCall {
 29492  	var advertiserIds_ []string
 29493  	for _, v := range advertiserIds {
 29494  		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
 29495  	}
 29496  	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
 29497  	return c
 29498  }
 29499  
 29500  // CampaignIds sets the optional parameter "campaignIds": Select only placement
 29501  // groups that belong to these campaigns.
 29502  func (c *PlacementGroupsListCall) CampaignIds(campaignIds ...int64) *PlacementGroupsListCall {
 29503  	var campaignIds_ []string
 29504  	for _, v := range campaignIds {
 29505  		campaignIds_ = append(campaignIds_, fmt.Sprint(v))
 29506  	}
 29507  	c.urlParams_.SetMulti("campaignIds", campaignIds_)
 29508  	return c
 29509  }
 29510  
 29511  // ContentCategoryIds sets the optional parameter "contentCategoryIds": Select
 29512  // only placement groups that are associated with these content categories.
 29513  func (c *PlacementGroupsListCall) ContentCategoryIds(contentCategoryIds ...int64) *PlacementGroupsListCall {
 29514  	var contentCategoryIds_ []string
 29515  	for _, v := range contentCategoryIds {
 29516  		contentCategoryIds_ = append(contentCategoryIds_, fmt.Sprint(v))
 29517  	}
 29518  	c.urlParams_.SetMulti("contentCategoryIds", contentCategoryIds_)
 29519  	return c
 29520  }
 29521  
 29522  // DirectorySiteIds sets the optional parameter "directorySiteIds": Select only
 29523  // placement groups that are associated with these directory sites.
 29524  func (c *PlacementGroupsListCall) DirectorySiteIds(directorySiteIds ...int64) *PlacementGroupsListCall {
 29525  	var directorySiteIds_ []string
 29526  	for _, v := range directorySiteIds {
 29527  		directorySiteIds_ = append(directorySiteIds_, fmt.Sprint(v))
 29528  	}
 29529  	c.urlParams_.SetMulti("directorySiteIds", directorySiteIds_)
 29530  	return c
 29531  }
 29532  
 29533  // Ids sets the optional parameter "ids": Select only placement groups with
 29534  // these IDs.
 29535  func (c *PlacementGroupsListCall) Ids(ids ...int64) *PlacementGroupsListCall {
 29536  	var ids_ []string
 29537  	for _, v := range ids {
 29538  		ids_ = append(ids_, fmt.Sprint(v))
 29539  	}
 29540  	c.urlParams_.SetMulti("ids", ids_)
 29541  	return c
 29542  }
 29543  
 29544  // MaxEndDate sets the optional parameter "maxEndDate": Select only placements
 29545  // or placement groups whose end date is on or before the specified maxEndDate.
 29546  // The date should be formatted as "yyyy-MM-dd".
 29547  func (c *PlacementGroupsListCall) MaxEndDate(maxEndDate string) *PlacementGroupsListCall {
 29548  	c.urlParams_.Set("maxEndDate", maxEndDate)
 29549  	return c
 29550  }
 29551  
 29552  // MaxResults sets the optional parameter "maxResults": Maximum number of
 29553  // results to return.
 29554  func (c *PlacementGroupsListCall) MaxResults(maxResults int64) *PlacementGroupsListCall {
 29555  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 29556  	return c
 29557  }
 29558  
 29559  // MaxStartDate sets the optional parameter "maxStartDate": Select only
 29560  // placements or placement groups whose start date is on or before the
 29561  // specified maxStartDate. The date should be formatted as "yyyy-MM-dd".
 29562  func (c *PlacementGroupsListCall) MaxStartDate(maxStartDate string) *PlacementGroupsListCall {
 29563  	c.urlParams_.Set("maxStartDate", maxStartDate)
 29564  	return c
 29565  }
 29566  
 29567  // MinEndDate sets the optional parameter "minEndDate": Select only placements
 29568  // or placement groups whose end date is on or after the specified minEndDate.
 29569  // The date should be formatted as "yyyy-MM-dd".
 29570  func (c *PlacementGroupsListCall) MinEndDate(minEndDate string) *PlacementGroupsListCall {
 29571  	c.urlParams_.Set("minEndDate", minEndDate)
 29572  	return c
 29573  }
 29574  
 29575  // MinStartDate sets the optional parameter "minStartDate": Select only
 29576  // placements or placement groups whose start date is on or after the specified
 29577  // minStartDate. The date should be formatted as "yyyy-MM-dd".
 29578  func (c *PlacementGroupsListCall) MinStartDate(minStartDate string) *PlacementGroupsListCall {
 29579  	c.urlParams_.Set("minStartDate", minStartDate)
 29580  	return c
 29581  }
 29582  
 29583  // PageToken sets the optional parameter "pageToken": Value of the
 29584  // nextPageToken from the previous result page.
 29585  func (c *PlacementGroupsListCall) PageToken(pageToken string) *PlacementGroupsListCall {
 29586  	c.urlParams_.Set("pageToken", pageToken)
 29587  	return c
 29588  }
 29589  
 29590  // PlacementGroupType sets the optional parameter "placementGroupType": Select
 29591  // only placement groups belonging with this group type. A package is a simple
 29592  // group of placements that acts as a single pricing point for a group of tags.
 29593  // A roadblock is a group of placements that not only acts as a single pricing
 29594  // point but also assumes that all the tags in it will be served at the same
 29595  // time. A roadblock requires one of its assigned placements to be marked as
 29596  // primary for reporting.
 29597  //
 29598  // Possible values:
 29599  //
 29600  //	"PLACEMENT_PACKAGE" - A simple group of site-placements (tags). Basically
 29601  //
 29602  // acts as a single pricing point for a group of tags.
 29603  //
 29604  //	"PLACEMENT_ROADBLOCK" - A group of site-placements (tags) that not only
 29605  //
 29606  // acts as a single pricing point but also assumes that all the tags in it will
 29607  // be served at the same time. This kind of group requires one of its assigned
 29608  // site-placements to be marked as primary for reporting purposes.
 29609  func (c *PlacementGroupsListCall) PlacementGroupType(placementGroupType string) *PlacementGroupsListCall {
 29610  	c.urlParams_.Set("placementGroupType", placementGroupType)
 29611  	return c
 29612  }
 29613  
 29614  // PlacementStrategyIds sets the optional parameter "placementStrategyIds":
 29615  // Select only placement groups that are associated with these placement
 29616  // strategies.
 29617  func (c *PlacementGroupsListCall) PlacementStrategyIds(placementStrategyIds ...int64) *PlacementGroupsListCall {
 29618  	var placementStrategyIds_ []string
 29619  	for _, v := range placementStrategyIds {
 29620  		placementStrategyIds_ = append(placementStrategyIds_, fmt.Sprint(v))
 29621  	}
 29622  	c.urlParams_.SetMulti("placementStrategyIds", placementStrategyIds_)
 29623  	return c
 29624  }
 29625  
 29626  // PricingTypes sets the optional parameter "pricingTypes": Select only
 29627  // placement groups with these pricing types.
 29628  //
 29629  // Possible values:
 29630  //
 29631  //	"PRICING_TYPE_CPM"
 29632  //	"PRICING_TYPE_CPC"
 29633  //	"PRICING_TYPE_CPA"
 29634  //	"PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
 29635  //	"PRICING_TYPE_FLAT_RATE_CLICKS"
 29636  //	"PRICING_TYPE_CPM_ACTIVEVIEW"
 29637  func (c *PlacementGroupsListCall) PricingTypes(pricingTypes ...string) *PlacementGroupsListCall {
 29638  	c.urlParams_.SetMulti("pricingTypes", append([]string{}, pricingTypes...))
 29639  	return c
 29640  }
 29641  
 29642  // SearchString sets the optional parameter "searchString": Allows searching
 29643  // for placement groups by name or ID. Wildcards (*) are allowed. For example,
 29644  // "placement*2015" will return placement groups with names like "placement
 29645  // group June 2015", "placement group May 2015", or simply "placements 2015".
 29646  // Most of the searches also add wildcards implicitly at the start and the end
 29647  // of the search string. For example, a search string of "placementgroup" will
 29648  // match placement groups with name "my placementgroup", "placementgroup 2015",
 29649  // or simply "placementgroup".
 29650  func (c *PlacementGroupsListCall) SearchString(searchString string) *PlacementGroupsListCall {
 29651  	c.urlParams_.Set("searchString", searchString)
 29652  	return c
 29653  }
 29654  
 29655  // SiteIds sets the optional parameter "siteIds": Select only placement groups
 29656  // that are associated with these sites.
 29657  func (c *PlacementGroupsListCall) SiteIds(siteIds ...int64) *PlacementGroupsListCall {
 29658  	var siteIds_ []string
 29659  	for _, v := range siteIds {
 29660  		siteIds_ = append(siteIds_, fmt.Sprint(v))
 29661  	}
 29662  	c.urlParams_.SetMulti("siteIds", siteIds_)
 29663  	return c
 29664  }
 29665  
 29666  // SortField sets the optional parameter "sortField": Field by which to sort
 29667  // the list.
 29668  //
 29669  // Possible values:
 29670  //
 29671  //	"ID" (default)
 29672  //	"NAME"
 29673  func (c *PlacementGroupsListCall) SortField(sortField string) *PlacementGroupsListCall {
 29674  	c.urlParams_.Set("sortField", sortField)
 29675  	return c
 29676  }
 29677  
 29678  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 29679  //
 29680  // Possible values:
 29681  //
 29682  //	"ASCENDING" (default) - Ascending order.
 29683  //	"DESCENDING" - Descending order.
 29684  func (c *PlacementGroupsListCall) SortOrder(sortOrder string) *PlacementGroupsListCall {
 29685  	c.urlParams_.Set("sortOrder", sortOrder)
 29686  	return c
 29687  }
 29688  
 29689  // Fields allows partial responses to be retrieved. See
 29690  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29691  // details.
 29692  func (c *PlacementGroupsListCall) Fields(s ...googleapi.Field) *PlacementGroupsListCall {
 29693  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29694  	return c
 29695  }
 29696  
 29697  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 29698  // object's ETag matches the given value. This is useful for getting updates
 29699  // only after the object has changed since the last request.
 29700  func (c *PlacementGroupsListCall) IfNoneMatch(entityTag string) *PlacementGroupsListCall {
 29701  	c.ifNoneMatch_ = entityTag
 29702  	return c
 29703  }
 29704  
 29705  // Context sets the context to be used in this call's Do method.
 29706  func (c *PlacementGroupsListCall) Context(ctx context.Context) *PlacementGroupsListCall {
 29707  	c.ctx_ = ctx
 29708  	return c
 29709  }
 29710  
 29711  // Header returns a http.Header that can be modified by the caller to add
 29712  // headers to the request.
 29713  func (c *PlacementGroupsListCall) Header() http.Header {
 29714  	if c.header_ == nil {
 29715  		c.header_ = make(http.Header)
 29716  	}
 29717  	return c.header_
 29718  }
 29719  
 29720  func (c *PlacementGroupsListCall) doRequest(alt string) (*http.Response, error) {
 29721  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 29722  	if c.ifNoneMatch_ != "" {
 29723  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 29724  	}
 29725  	var body io.Reader = nil
 29726  	c.urlParams_.Set("alt", alt)
 29727  	c.urlParams_.Set("prettyPrint", "false")
 29728  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementGroups")
 29729  	urls += "?" + c.urlParams_.Encode()
 29730  	req, err := http.NewRequest("GET", urls, body)
 29731  	if err != nil {
 29732  		return nil, err
 29733  	}
 29734  	req.Header = reqHeaders
 29735  	googleapi.Expand(req.URL, map[string]string{
 29736  		"profileId": strconv.FormatInt(c.profileId, 10),
 29737  	})
 29738  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29739  }
 29740  
 29741  // Do executes the "dfareporting.placementGroups.list" call.
 29742  // Any non-2xx status code is an error. Response headers are in either
 29743  // *PlacementGroupsListResponse.ServerResponse.Header or (if a response was
 29744  // returned at all) in error.(*googleapi.Error).Header. Use
 29745  // googleapi.IsNotModified to check whether the returned error was because
 29746  // http.StatusNotModified was returned.
 29747  func (c *PlacementGroupsListCall) Do(opts ...googleapi.CallOption) (*PlacementGroupsListResponse, error) {
 29748  	gensupport.SetOptions(c.urlParams_, opts...)
 29749  	res, err := c.doRequest("json")
 29750  	if res != nil && res.StatusCode == http.StatusNotModified {
 29751  		if res.Body != nil {
 29752  			res.Body.Close()
 29753  		}
 29754  		return nil, gensupport.WrapError(&googleapi.Error{
 29755  			Code:   res.StatusCode,
 29756  			Header: res.Header,
 29757  		})
 29758  	}
 29759  	if err != nil {
 29760  		return nil, err
 29761  	}
 29762  	defer googleapi.CloseBody(res)
 29763  	if err := googleapi.CheckResponse(res); err != nil {
 29764  		return nil, gensupport.WrapError(err)
 29765  	}
 29766  	ret := &PlacementGroupsListResponse{
 29767  		ServerResponse: googleapi.ServerResponse{
 29768  			Header:         res.Header,
 29769  			HTTPStatusCode: res.StatusCode,
 29770  		},
 29771  	}
 29772  	target := &ret
 29773  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29774  		return nil, err
 29775  	}
 29776  	return ret, nil
 29777  }
 29778  
 29779  // Pages invokes f for each page of results.
 29780  // A non-nil error returned from f will halt the iteration.
 29781  // The provided context supersedes any context provided to the Context method.
 29782  func (c *PlacementGroupsListCall) Pages(ctx context.Context, f func(*PlacementGroupsListResponse) error) error {
 29783  	c.ctx_ = ctx
 29784  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 29785  	for {
 29786  		x, err := c.Do()
 29787  		if err != nil {
 29788  			return err
 29789  		}
 29790  		if err := f(x); err != nil {
 29791  			return err
 29792  		}
 29793  		if x.NextPageToken == "" {
 29794  			return nil
 29795  		}
 29796  		c.PageToken(x.NextPageToken)
 29797  	}
 29798  }
 29799  
 29800  type PlacementGroupsPatchCall struct {
 29801  	s              *Service
 29802  	profileId      int64
 29803  	placementgroup *PlacementGroup
 29804  	urlParams_     gensupport.URLParams
 29805  	ctx_           context.Context
 29806  	header_        http.Header
 29807  }
 29808  
 29809  // Patch: Updates an existing placement group. This method supports patch
 29810  // semantics.
 29811  //
 29812  // - id: Placement ID.
 29813  // - profileId: User profile ID associated with this request.
 29814  func (r *PlacementGroupsService) Patch(profileId int64, id int64, placementgroup *PlacementGroup) *PlacementGroupsPatchCall {
 29815  	c := &PlacementGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29816  	c.profileId = profileId
 29817  	c.urlParams_.Set("id", fmt.Sprint(id))
 29818  	c.placementgroup = placementgroup
 29819  	return c
 29820  }
 29821  
 29822  // Fields allows partial responses to be retrieved. See
 29823  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29824  // details.
 29825  func (c *PlacementGroupsPatchCall) Fields(s ...googleapi.Field) *PlacementGroupsPatchCall {
 29826  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29827  	return c
 29828  }
 29829  
 29830  // Context sets the context to be used in this call's Do method.
 29831  func (c *PlacementGroupsPatchCall) Context(ctx context.Context) *PlacementGroupsPatchCall {
 29832  	c.ctx_ = ctx
 29833  	return c
 29834  }
 29835  
 29836  // Header returns a http.Header that can be modified by the caller to add
 29837  // headers to the request.
 29838  func (c *PlacementGroupsPatchCall) Header() http.Header {
 29839  	if c.header_ == nil {
 29840  		c.header_ = make(http.Header)
 29841  	}
 29842  	return c.header_
 29843  }
 29844  
 29845  func (c *PlacementGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
 29846  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 29847  	var body io.Reader = nil
 29848  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementgroup)
 29849  	if err != nil {
 29850  		return nil, err
 29851  	}
 29852  	c.urlParams_.Set("alt", alt)
 29853  	c.urlParams_.Set("prettyPrint", "false")
 29854  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementGroups")
 29855  	urls += "?" + c.urlParams_.Encode()
 29856  	req, err := http.NewRequest("PATCH", urls, body)
 29857  	if err != nil {
 29858  		return nil, err
 29859  	}
 29860  	req.Header = reqHeaders
 29861  	googleapi.Expand(req.URL, map[string]string{
 29862  		"profileId": strconv.FormatInt(c.profileId, 10),
 29863  	})
 29864  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29865  }
 29866  
 29867  // Do executes the "dfareporting.placementGroups.patch" call.
 29868  // Any non-2xx status code is an error. Response headers are in either
 29869  // *PlacementGroup.ServerResponse.Header or (if a response was returned at all)
 29870  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 29871  // whether the returned error was because http.StatusNotModified was returned.
 29872  func (c *PlacementGroupsPatchCall) Do(opts ...googleapi.CallOption) (*PlacementGroup, error) {
 29873  	gensupport.SetOptions(c.urlParams_, opts...)
 29874  	res, err := c.doRequest("json")
 29875  	if res != nil && res.StatusCode == http.StatusNotModified {
 29876  		if res.Body != nil {
 29877  			res.Body.Close()
 29878  		}
 29879  		return nil, gensupport.WrapError(&googleapi.Error{
 29880  			Code:   res.StatusCode,
 29881  			Header: res.Header,
 29882  		})
 29883  	}
 29884  	if err != nil {
 29885  		return nil, err
 29886  	}
 29887  	defer googleapi.CloseBody(res)
 29888  	if err := googleapi.CheckResponse(res); err != nil {
 29889  		return nil, gensupport.WrapError(err)
 29890  	}
 29891  	ret := &PlacementGroup{
 29892  		ServerResponse: googleapi.ServerResponse{
 29893  			Header:         res.Header,
 29894  			HTTPStatusCode: res.StatusCode,
 29895  		},
 29896  	}
 29897  	target := &ret
 29898  	if err := gensupport.DecodeResponse(target, res); err != nil {
 29899  		return nil, err
 29900  	}
 29901  	return ret, nil
 29902  }
 29903  
 29904  type PlacementGroupsUpdateCall struct {
 29905  	s              *Service
 29906  	profileId      int64
 29907  	placementgroup *PlacementGroup
 29908  	urlParams_     gensupport.URLParams
 29909  	ctx_           context.Context
 29910  	header_        http.Header
 29911  }
 29912  
 29913  // Update: Updates an existing placement group.
 29914  //
 29915  // - profileId: User profile ID associated with this request.
 29916  func (r *PlacementGroupsService) Update(profileId int64, placementgroup *PlacementGroup) *PlacementGroupsUpdateCall {
 29917  	c := &PlacementGroupsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 29918  	c.profileId = profileId
 29919  	c.placementgroup = placementgroup
 29920  	return c
 29921  }
 29922  
 29923  // Fields allows partial responses to be retrieved. See
 29924  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 29925  // details.
 29926  func (c *PlacementGroupsUpdateCall) Fields(s ...googleapi.Field) *PlacementGroupsUpdateCall {
 29927  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 29928  	return c
 29929  }
 29930  
 29931  // Context sets the context to be used in this call's Do method.
 29932  func (c *PlacementGroupsUpdateCall) Context(ctx context.Context) *PlacementGroupsUpdateCall {
 29933  	c.ctx_ = ctx
 29934  	return c
 29935  }
 29936  
 29937  // Header returns a http.Header that can be modified by the caller to add
 29938  // headers to the request.
 29939  func (c *PlacementGroupsUpdateCall) Header() http.Header {
 29940  	if c.header_ == nil {
 29941  		c.header_ = make(http.Header)
 29942  	}
 29943  	return c.header_
 29944  }
 29945  
 29946  func (c *PlacementGroupsUpdateCall) doRequest(alt string) (*http.Response, error) {
 29947  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 29948  	var body io.Reader = nil
 29949  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementgroup)
 29950  	if err != nil {
 29951  		return nil, err
 29952  	}
 29953  	c.urlParams_.Set("alt", alt)
 29954  	c.urlParams_.Set("prettyPrint", "false")
 29955  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementGroups")
 29956  	urls += "?" + c.urlParams_.Encode()
 29957  	req, err := http.NewRequest("PUT", urls, body)
 29958  	if err != nil {
 29959  		return nil, err
 29960  	}
 29961  	req.Header = reqHeaders
 29962  	googleapi.Expand(req.URL, map[string]string{
 29963  		"profileId": strconv.FormatInt(c.profileId, 10),
 29964  	})
 29965  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 29966  }
 29967  
 29968  // Do executes the "dfareporting.placementGroups.update" call.
 29969  // Any non-2xx status code is an error. Response headers are in either
 29970  // *PlacementGroup.ServerResponse.Header or (if a response was returned at all)
 29971  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 29972  // whether the returned error was because http.StatusNotModified was returned.
 29973  func (c *PlacementGroupsUpdateCall) Do(opts ...googleapi.CallOption) (*PlacementGroup, error) {
 29974  	gensupport.SetOptions(c.urlParams_, opts...)
 29975  	res, err := c.doRequest("json")
 29976  	if res != nil && res.StatusCode == http.StatusNotModified {
 29977  		if res.Body != nil {
 29978  			res.Body.Close()
 29979  		}
 29980  		return nil, gensupport.WrapError(&googleapi.Error{
 29981  			Code:   res.StatusCode,
 29982  			Header: res.Header,
 29983  		})
 29984  	}
 29985  	if err != nil {
 29986  		return nil, err
 29987  	}
 29988  	defer googleapi.CloseBody(res)
 29989  	if err := googleapi.CheckResponse(res); err != nil {
 29990  		return nil, gensupport.WrapError(err)
 29991  	}
 29992  	ret := &PlacementGroup{
 29993  		ServerResponse: googleapi.ServerResponse{
 29994  			Header:         res.Header,
 29995  			HTTPStatusCode: res.StatusCode,
 29996  		},
 29997  	}
 29998  	target := &ret
 29999  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30000  		return nil, err
 30001  	}
 30002  	return ret, nil
 30003  }
 30004  
 30005  type PlacementStrategiesDeleteCall struct {
 30006  	s          *Service
 30007  	profileId  int64
 30008  	id         int64
 30009  	urlParams_ gensupport.URLParams
 30010  	ctx_       context.Context
 30011  	header_    http.Header
 30012  }
 30013  
 30014  // Delete: Deletes an existing placement strategy.
 30015  //
 30016  // - id: Placement strategy ID.
 30017  // - profileId: User profile ID associated with this request.
 30018  func (r *PlacementStrategiesService) Delete(profileId int64, id int64) *PlacementStrategiesDeleteCall {
 30019  	c := &PlacementStrategiesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30020  	c.profileId = profileId
 30021  	c.id = id
 30022  	return c
 30023  }
 30024  
 30025  // Fields allows partial responses to be retrieved. See
 30026  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30027  // details.
 30028  func (c *PlacementStrategiesDeleteCall) Fields(s ...googleapi.Field) *PlacementStrategiesDeleteCall {
 30029  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30030  	return c
 30031  }
 30032  
 30033  // Context sets the context to be used in this call's Do method.
 30034  func (c *PlacementStrategiesDeleteCall) Context(ctx context.Context) *PlacementStrategiesDeleteCall {
 30035  	c.ctx_ = ctx
 30036  	return c
 30037  }
 30038  
 30039  // Header returns a http.Header that can be modified by the caller to add
 30040  // headers to the request.
 30041  func (c *PlacementStrategiesDeleteCall) Header() http.Header {
 30042  	if c.header_ == nil {
 30043  		c.header_ = make(http.Header)
 30044  	}
 30045  	return c.header_
 30046  }
 30047  
 30048  func (c *PlacementStrategiesDeleteCall) doRequest(alt string) (*http.Response, error) {
 30049  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 30050  	var body io.Reader = nil
 30051  	c.urlParams_.Set("alt", alt)
 30052  	c.urlParams_.Set("prettyPrint", "false")
 30053  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementStrategies/{+id}")
 30054  	urls += "?" + c.urlParams_.Encode()
 30055  	req, err := http.NewRequest("DELETE", urls, body)
 30056  	if err != nil {
 30057  		return nil, err
 30058  	}
 30059  	req.Header = reqHeaders
 30060  	googleapi.Expand(req.URL, map[string]string{
 30061  		"profileId": strconv.FormatInt(c.profileId, 10),
 30062  		"id":        strconv.FormatInt(c.id, 10),
 30063  	})
 30064  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30065  }
 30066  
 30067  // Do executes the "dfareporting.placementStrategies.delete" call.
 30068  func (c *PlacementStrategiesDeleteCall) Do(opts ...googleapi.CallOption) error {
 30069  	gensupport.SetOptions(c.urlParams_, opts...)
 30070  	res, err := c.doRequest("json")
 30071  	if err != nil {
 30072  		return err
 30073  	}
 30074  	defer googleapi.CloseBody(res)
 30075  	if err := googleapi.CheckResponse(res); err != nil {
 30076  		return gensupport.WrapError(err)
 30077  	}
 30078  	return nil
 30079  }
 30080  
 30081  type PlacementStrategiesGetCall struct {
 30082  	s            *Service
 30083  	profileId    int64
 30084  	id           int64
 30085  	urlParams_   gensupport.URLParams
 30086  	ifNoneMatch_ string
 30087  	ctx_         context.Context
 30088  	header_      http.Header
 30089  }
 30090  
 30091  // Get: Gets one placement strategy by ID.
 30092  //
 30093  // - id: Placement strategy ID.
 30094  // - profileId: User profile ID associated with this request.
 30095  func (r *PlacementStrategiesService) Get(profileId int64, id int64) *PlacementStrategiesGetCall {
 30096  	c := &PlacementStrategiesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30097  	c.profileId = profileId
 30098  	c.id = id
 30099  	return c
 30100  }
 30101  
 30102  // Fields allows partial responses to be retrieved. See
 30103  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30104  // details.
 30105  func (c *PlacementStrategiesGetCall) Fields(s ...googleapi.Field) *PlacementStrategiesGetCall {
 30106  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30107  	return c
 30108  }
 30109  
 30110  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 30111  // object's ETag matches the given value. This is useful for getting updates
 30112  // only after the object has changed since the last request.
 30113  func (c *PlacementStrategiesGetCall) IfNoneMatch(entityTag string) *PlacementStrategiesGetCall {
 30114  	c.ifNoneMatch_ = entityTag
 30115  	return c
 30116  }
 30117  
 30118  // Context sets the context to be used in this call's Do method.
 30119  func (c *PlacementStrategiesGetCall) Context(ctx context.Context) *PlacementStrategiesGetCall {
 30120  	c.ctx_ = ctx
 30121  	return c
 30122  }
 30123  
 30124  // Header returns a http.Header that can be modified by the caller to add
 30125  // headers to the request.
 30126  func (c *PlacementStrategiesGetCall) Header() http.Header {
 30127  	if c.header_ == nil {
 30128  		c.header_ = make(http.Header)
 30129  	}
 30130  	return c.header_
 30131  }
 30132  
 30133  func (c *PlacementStrategiesGetCall) doRequest(alt string) (*http.Response, error) {
 30134  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 30135  	if c.ifNoneMatch_ != "" {
 30136  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 30137  	}
 30138  	var body io.Reader = nil
 30139  	c.urlParams_.Set("alt", alt)
 30140  	c.urlParams_.Set("prettyPrint", "false")
 30141  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementStrategies/{+id}")
 30142  	urls += "?" + c.urlParams_.Encode()
 30143  	req, err := http.NewRequest("GET", urls, body)
 30144  	if err != nil {
 30145  		return nil, err
 30146  	}
 30147  	req.Header = reqHeaders
 30148  	googleapi.Expand(req.URL, map[string]string{
 30149  		"profileId": strconv.FormatInt(c.profileId, 10),
 30150  		"id":        strconv.FormatInt(c.id, 10),
 30151  	})
 30152  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30153  }
 30154  
 30155  // Do executes the "dfareporting.placementStrategies.get" call.
 30156  // Any non-2xx status code is an error. Response headers are in either
 30157  // *PlacementStrategy.ServerResponse.Header or (if a response was returned at
 30158  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 30159  // check whether the returned error was because http.StatusNotModified was
 30160  // returned.
 30161  func (c *PlacementStrategiesGetCall) Do(opts ...googleapi.CallOption) (*PlacementStrategy, error) {
 30162  	gensupport.SetOptions(c.urlParams_, opts...)
 30163  	res, err := c.doRequest("json")
 30164  	if res != nil && res.StatusCode == http.StatusNotModified {
 30165  		if res.Body != nil {
 30166  			res.Body.Close()
 30167  		}
 30168  		return nil, gensupport.WrapError(&googleapi.Error{
 30169  			Code:   res.StatusCode,
 30170  			Header: res.Header,
 30171  		})
 30172  	}
 30173  	if err != nil {
 30174  		return nil, err
 30175  	}
 30176  	defer googleapi.CloseBody(res)
 30177  	if err := googleapi.CheckResponse(res); err != nil {
 30178  		return nil, gensupport.WrapError(err)
 30179  	}
 30180  	ret := &PlacementStrategy{
 30181  		ServerResponse: googleapi.ServerResponse{
 30182  			Header:         res.Header,
 30183  			HTTPStatusCode: res.StatusCode,
 30184  		},
 30185  	}
 30186  	target := &ret
 30187  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30188  		return nil, err
 30189  	}
 30190  	return ret, nil
 30191  }
 30192  
 30193  type PlacementStrategiesInsertCall struct {
 30194  	s                 *Service
 30195  	profileId         int64
 30196  	placementstrategy *PlacementStrategy
 30197  	urlParams_        gensupport.URLParams
 30198  	ctx_              context.Context
 30199  	header_           http.Header
 30200  }
 30201  
 30202  // Insert: Inserts a new placement strategy.
 30203  //
 30204  // - profileId: User profile ID associated with this request.
 30205  func (r *PlacementStrategiesService) Insert(profileId int64, placementstrategy *PlacementStrategy) *PlacementStrategiesInsertCall {
 30206  	c := &PlacementStrategiesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30207  	c.profileId = profileId
 30208  	c.placementstrategy = placementstrategy
 30209  	return c
 30210  }
 30211  
 30212  // Fields allows partial responses to be retrieved. See
 30213  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30214  // details.
 30215  func (c *PlacementStrategiesInsertCall) Fields(s ...googleapi.Field) *PlacementStrategiesInsertCall {
 30216  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30217  	return c
 30218  }
 30219  
 30220  // Context sets the context to be used in this call's Do method.
 30221  func (c *PlacementStrategiesInsertCall) Context(ctx context.Context) *PlacementStrategiesInsertCall {
 30222  	c.ctx_ = ctx
 30223  	return c
 30224  }
 30225  
 30226  // Header returns a http.Header that can be modified by the caller to add
 30227  // headers to the request.
 30228  func (c *PlacementStrategiesInsertCall) Header() http.Header {
 30229  	if c.header_ == nil {
 30230  		c.header_ = make(http.Header)
 30231  	}
 30232  	return c.header_
 30233  }
 30234  
 30235  func (c *PlacementStrategiesInsertCall) doRequest(alt string) (*http.Response, error) {
 30236  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 30237  	var body io.Reader = nil
 30238  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementstrategy)
 30239  	if err != nil {
 30240  		return nil, err
 30241  	}
 30242  	c.urlParams_.Set("alt", alt)
 30243  	c.urlParams_.Set("prettyPrint", "false")
 30244  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementStrategies")
 30245  	urls += "?" + c.urlParams_.Encode()
 30246  	req, err := http.NewRequest("POST", urls, body)
 30247  	if err != nil {
 30248  		return nil, err
 30249  	}
 30250  	req.Header = reqHeaders
 30251  	googleapi.Expand(req.URL, map[string]string{
 30252  		"profileId": strconv.FormatInt(c.profileId, 10),
 30253  	})
 30254  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30255  }
 30256  
 30257  // Do executes the "dfareporting.placementStrategies.insert" call.
 30258  // Any non-2xx status code is an error. Response headers are in either
 30259  // *PlacementStrategy.ServerResponse.Header or (if a response was returned at
 30260  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 30261  // check whether the returned error was because http.StatusNotModified was
 30262  // returned.
 30263  func (c *PlacementStrategiesInsertCall) Do(opts ...googleapi.CallOption) (*PlacementStrategy, error) {
 30264  	gensupport.SetOptions(c.urlParams_, opts...)
 30265  	res, err := c.doRequest("json")
 30266  	if res != nil && res.StatusCode == http.StatusNotModified {
 30267  		if res.Body != nil {
 30268  			res.Body.Close()
 30269  		}
 30270  		return nil, gensupport.WrapError(&googleapi.Error{
 30271  			Code:   res.StatusCode,
 30272  			Header: res.Header,
 30273  		})
 30274  	}
 30275  	if err != nil {
 30276  		return nil, err
 30277  	}
 30278  	defer googleapi.CloseBody(res)
 30279  	if err := googleapi.CheckResponse(res); err != nil {
 30280  		return nil, gensupport.WrapError(err)
 30281  	}
 30282  	ret := &PlacementStrategy{
 30283  		ServerResponse: googleapi.ServerResponse{
 30284  			Header:         res.Header,
 30285  			HTTPStatusCode: res.StatusCode,
 30286  		},
 30287  	}
 30288  	target := &ret
 30289  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30290  		return nil, err
 30291  	}
 30292  	return ret, nil
 30293  }
 30294  
 30295  type PlacementStrategiesListCall struct {
 30296  	s            *Service
 30297  	profileId    int64
 30298  	urlParams_   gensupport.URLParams
 30299  	ifNoneMatch_ string
 30300  	ctx_         context.Context
 30301  	header_      http.Header
 30302  }
 30303  
 30304  // List: Retrieves a list of placement strategies, possibly filtered. This
 30305  // method supports paging.
 30306  //
 30307  // - profileId: User profile ID associated with this request.
 30308  func (r *PlacementStrategiesService) List(profileId int64) *PlacementStrategiesListCall {
 30309  	c := &PlacementStrategiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30310  	c.profileId = profileId
 30311  	return c
 30312  }
 30313  
 30314  // Ids sets the optional parameter "ids": Select only placement strategies with
 30315  // these IDs.
 30316  func (c *PlacementStrategiesListCall) Ids(ids ...int64) *PlacementStrategiesListCall {
 30317  	var ids_ []string
 30318  	for _, v := range ids {
 30319  		ids_ = append(ids_, fmt.Sprint(v))
 30320  	}
 30321  	c.urlParams_.SetMulti("ids", ids_)
 30322  	return c
 30323  }
 30324  
 30325  // MaxResults sets the optional parameter "maxResults": Maximum number of
 30326  // results to return.
 30327  func (c *PlacementStrategiesListCall) MaxResults(maxResults int64) *PlacementStrategiesListCall {
 30328  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 30329  	return c
 30330  }
 30331  
 30332  // PageToken sets the optional parameter "pageToken": Value of the
 30333  // nextPageToken from the previous result page.
 30334  func (c *PlacementStrategiesListCall) PageToken(pageToken string) *PlacementStrategiesListCall {
 30335  	c.urlParams_.Set("pageToken", pageToken)
 30336  	return c
 30337  }
 30338  
 30339  // SearchString sets the optional parameter "searchString": Allows searching
 30340  // for objects by name or ID. Wildcards (*) are allowed. For example,
 30341  // "placementstrategy*2015" will return objects with names like
 30342  // "placementstrategy June 2015", "placementstrategy April 2015", or simply
 30343  // "placementstrategy 2015". Most of the searches also add wildcards implicitly
 30344  // at the start and the end of the search string. For example, a search string
 30345  // of "placementstrategy" will match objects with name "my placementstrategy",
 30346  // "placementstrategy 2015", or simply "placementstrategy".
 30347  func (c *PlacementStrategiesListCall) SearchString(searchString string) *PlacementStrategiesListCall {
 30348  	c.urlParams_.Set("searchString", searchString)
 30349  	return c
 30350  }
 30351  
 30352  // SortField sets the optional parameter "sortField": Field by which to sort
 30353  // the list.
 30354  //
 30355  // Possible values:
 30356  //
 30357  //	"ID" (default)
 30358  //	"NAME"
 30359  func (c *PlacementStrategiesListCall) SortField(sortField string) *PlacementStrategiesListCall {
 30360  	c.urlParams_.Set("sortField", sortField)
 30361  	return c
 30362  }
 30363  
 30364  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 30365  //
 30366  // Possible values:
 30367  //
 30368  //	"ASCENDING" (default) - Ascending order.
 30369  //	"DESCENDING" - Descending order.
 30370  func (c *PlacementStrategiesListCall) SortOrder(sortOrder string) *PlacementStrategiesListCall {
 30371  	c.urlParams_.Set("sortOrder", sortOrder)
 30372  	return c
 30373  }
 30374  
 30375  // Fields allows partial responses to be retrieved. See
 30376  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30377  // details.
 30378  func (c *PlacementStrategiesListCall) Fields(s ...googleapi.Field) *PlacementStrategiesListCall {
 30379  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30380  	return c
 30381  }
 30382  
 30383  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 30384  // object's ETag matches the given value. This is useful for getting updates
 30385  // only after the object has changed since the last request.
 30386  func (c *PlacementStrategiesListCall) IfNoneMatch(entityTag string) *PlacementStrategiesListCall {
 30387  	c.ifNoneMatch_ = entityTag
 30388  	return c
 30389  }
 30390  
 30391  // Context sets the context to be used in this call's Do method.
 30392  func (c *PlacementStrategiesListCall) Context(ctx context.Context) *PlacementStrategiesListCall {
 30393  	c.ctx_ = ctx
 30394  	return c
 30395  }
 30396  
 30397  // Header returns a http.Header that can be modified by the caller to add
 30398  // headers to the request.
 30399  func (c *PlacementStrategiesListCall) Header() http.Header {
 30400  	if c.header_ == nil {
 30401  		c.header_ = make(http.Header)
 30402  	}
 30403  	return c.header_
 30404  }
 30405  
 30406  func (c *PlacementStrategiesListCall) doRequest(alt string) (*http.Response, error) {
 30407  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 30408  	if c.ifNoneMatch_ != "" {
 30409  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 30410  	}
 30411  	var body io.Reader = nil
 30412  	c.urlParams_.Set("alt", alt)
 30413  	c.urlParams_.Set("prettyPrint", "false")
 30414  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementStrategies")
 30415  	urls += "?" + c.urlParams_.Encode()
 30416  	req, err := http.NewRequest("GET", urls, body)
 30417  	if err != nil {
 30418  		return nil, err
 30419  	}
 30420  	req.Header = reqHeaders
 30421  	googleapi.Expand(req.URL, map[string]string{
 30422  		"profileId": strconv.FormatInt(c.profileId, 10),
 30423  	})
 30424  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30425  }
 30426  
 30427  // Do executes the "dfareporting.placementStrategies.list" call.
 30428  // Any non-2xx status code is an error. Response headers are in either
 30429  // *PlacementStrategiesListResponse.ServerResponse.Header or (if a response was
 30430  // returned at all) in error.(*googleapi.Error).Header. Use
 30431  // googleapi.IsNotModified to check whether the returned error was because
 30432  // http.StatusNotModified was returned.
 30433  func (c *PlacementStrategiesListCall) Do(opts ...googleapi.CallOption) (*PlacementStrategiesListResponse, error) {
 30434  	gensupport.SetOptions(c.urlParams_, opts...)
 30435  	res, err := c.doRequest("json")
 30436  	if res != nil && res.StatusCode == http.StatusNotModified {
 30437  		if res.Body != nil {
 30438  			res.Body.Close()
 30439  		}
 30440  		return nil, gensupport.WrapError(&googleapi.Error{
 30441  			Code:   res.StatusCode,
 30442  			Header: res.Header,
 30443  		})
 30444  	}
 30445  	if err != nil {
 30446  		return nil, err
 30447  	}
 30448  	defer googleapi.CloseBody(res)
 30449  	if err := googleapi.CheckResponse(res); err != nil {
 30450  		return nil, gensupport.WrapError(err)
 30451  	}
 30452  	ret := &PlacementStrategiesListResponse{
 30453  		ServerResponse: googleapi.ServerResponse{
 30454  			Header:         res.Header,
 30455  			HTTPStatusCode: res.StatusCode,
 30456  		},
 30457  	}
 30458  	target := &ret
 30459  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30460  		return nil, err
 30461  	}
 30462  	return ret, nil
 30463  }
 30464  
 30465  // Pages invokes f for each page of results.
 30466  // A non-nil error returned from f will halt the iteration.
 30467  // The provided context supersedes any context provided to the Context method.
 30468  func (c *PlacementStrategiesListCall) Pages(ctx context.Context, f func(*PlacementStrategiesListResponse) error) error {
 30469  	c.ctx_ = ctx
 30470  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 30471  	for {
 30472  		x, err := c.Do()
 30473  		if err != nil {
 30474  			return err
 30475  		}
 30476  		if err := f(x); err != nil {
 30477  			return err
 30478  		}
 30479  		if x.NextPageToken == "" {
 30480  			return nil
 30481  		}
 30482  		c.PageToken(x.NextPageToken)
 30483  	}
 30484  }
 30485  
 30486  type PlacementStrategiesPatchCall struct {
 30487  	s                 *Service
 30488  	profileId         int64
 30489  	placementstrategy *PlacementStrategy
 30490  	urlParams_        gensupport.URLParams
 30491  	ctx_              context.Context
 30492  	header_           http.Header
 30493  }
 30494  
 30495  // Patch: Updates an existing placement strategy. This method supports patch
 30496  // semantics.
 30497  //
 30498  // - id: PlacementStrategy ID.
 30499  // - profileId: User profile ID associated with this request.
 30500  func (r *PlacementStrategiesService) Patch(profileId int64, id int64, placementstrategy *PlacementStrategy) *PlacementStrategiesPatchCall {
 30501  	c := &PlacementStrategiesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30502  	c.profileId = profileId
 30503  	c.urlParams_.Set("id", fmt.Sprint(id))
 30504  	c.placementstrategy = placementstrategy
 30505  	return c
 30506  }
 30507  
 30508  // Fields allows partial responses to be retrieved. See
 30509  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30510  // details.
 30511  func (c *PlacementStrategiesPatchCall) Fields(s ...googleapi.Field) *PlacementStrategiesPatchCall {
 30512  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30513  	return c
 30514  }
 30515  
 30516  // Context sets the context to be used in this call's Do method.
 30517  func (c *PlacementStrategiesPatchCall) Context(ctx context.Context) *PlacementStrategiesPatchCall {
 30518  	c.ctx_ = ctx
 30519  	return c
 30520  }
 30521  
 30522  // Header returns a http.Header that can be modified by the caller to add
 30523  // headers to the request.
 30524  func (c *PlacementStrategiesPatchCall) Header() http.Header {
 30525  	if c.header_ == nil {
 30526  		c.header_ = make(http.Header)
 30527  	}
 30528  	return c.header_
 30529  }
 30530  
 30531  func (c *PlacementStrategiesPatchCall) doRequest(alt string) (*http.Response, error) {
 30532  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 30533  	var body io.Reader = nil
 30534  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementstrategy)
 30535  	if err != nil {
 30536  		return nil, err
 30537  	}
 30538  	c.urlParams_.Set("alt", alt)
 30539  	c.urlParams_.Set("prettyPrint", "false")
 30540  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementStrategies")
 30541  	urls += "?" + c.urlParams_.Encode()
 30542  	req, err := http.NewRequest("PATCH", urls, body)
 30543  	if err != nil {
 30544  		return nil, err
 30545  	}
 30546  	req.Header = reqHeaders
 30547  	googleapi.Expand(req.URL, map[string]string{
 30548  		"profileId": strconv.FormatInt(c.profileId, 10),
 30549  	})
 30550  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30551  }
 30552  
 30553  // Do executes the "dfareporting.placementStrategies.patch" call.
 30554  // Any non-2xx status code is an error. Response headers are in either
 30555  // *PlacementStrategy.ServerResponse.Header or (if a response was returned at
 30556  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 30557  // check whether the returned error was because http.StatusNotModified was
 30558  // returned.
 30559  func (c *PlacementStrategiesPatchCall) Do(opts ...googleapi.CallOption) (*PlacementStrategy, error) {
 30560  	gensupport.SetOptions(c.urlParams_, opts...)
 30561  	res, err := c.doRequest("json")
 30562  	if res != nil && res.StatusCode == http.StatusNotModified {
 30563  		if res.Body != nil {
 30564  			res.Body.Close()
 30565  		}
 30566  		return nil, gensupport.WrapError(&googleapi.Error{
 30567  			Code:   res.StatusCode,
 30568  			Header: res.Header,
 30569  		})
 30570  	}
 30571  	if err != nil {
 30572  		return nil, err
 30573  	}
 30574  	defer googleapi.CloseBody(res)
 30575  	if err := googleapi.CheckResponse(res); err != nil {
 30576  		return nil, gensupport.WrapError(err)
 30577  	}
 30578  	ret := &PlacementStrategy{
 30579  		ServerResponse: googleapi.ServerResponse{
 30580  			Header:         res.Header,
 30581  			HTTPStatusCode: res.StatusCode,
 30582  		},
 30583  	}
 30584  	target := &ret
 30585  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30586  		return nil, err
 30587  	}
 30588  	return ret, nil
 30589  }
 30590  
 30591  type PlacementStrategiesUpdateCall struct {
 30592  	s                 *Service
 30593  	profileId         int64
 30594  	placementstrategy *PlacementStrategy
 30595  	urlParams_        gensupport.URLParams
 30596  	ctx_              context.Context
 30597  	header_           http.Header
 30598  }
 30599  
 30600  // Update: Updates an existing placement strategy.
 30601  //
 30602  // - profileId: User profile ID associated with this request.
 30603  func (r *PlacementStrategiesService) Update(profileId int64, placementstrategy *PlacementStrategy) *PlacementStrategiesUpdateCall {
 30604  	c := &PlacementStrategiesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30605  	c.profileId = profileId
 30606  	c.placementstrategy = placementstrategy
 30607  	return c
 30608  }
 30609  
 30610  // Fields allows partial responses to be retrieved. See
 30611  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30612  // details.
 30613  func (c *PlacementStrategiesUpdateCall) Fields(s ...googleapi.Field) *PlacementStrategiesUpdateCall {
 30614  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30615  	return c
 30616  }
 30617  
 30618  // Context sets the context to be used in this call's Do method.
 30619  func (c *PlacementStrategiesUpdateCall) Context(ctx context.Context) *PlacementStrategiesUpdateCall {
 30620  	c.ctx_ = ctx
 30621  	return c
 30622  }
 30623  
 30624  // Header returns a http.Header that can be modified by the caller to add
 30625  // headers to the request.
 30626  func (c *PlacementStrategiesUpdateCall) Header() http.Header {
 30627  	if c.header_ == nil {
 30628  		c.header_ = make(http.Header)
 30629  	}
 30630  	return c.header_
 30631  }
 30632  
 30633  func (c *PlacementStrategiesUpdateCall) doRequest(alt string) (*http.Response, error) {
 30634  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 30635  	var body io.Reader = nil
 30636  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placementstrategy)
 30637  	if err != nil {
 30638  		return nil, err
 30639  	}
 30640  	c.urlParams_.Set("alt", alt)
 30641  	c.urlParams_.Set("prettyPrint", "false")
 30642  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placementStrategies")
 30643  	urls += "?" + c.urlParams_.Encode()
 30644  	req, err := http.NewRequest("PUT", urls, body)
 30645  	if err != nil {
 30646  		return nil, err
 30647  	}
 30648  	req.Header = reqHeaders
 30649  	googleapi.Expand(req.URL, map[string]string{
 30650  		"profileId": strconv.FormatInt(c.profileId, 10),
 30651  	})
 30652  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30653  }
 30654  
 30655  // Do executes the "dfareporting.placementStrategies.update" call.
 30656  // Any non-2xx status code is an error. Response headers are in either
 30657  // *PlacementStrategy.ServerResponse.Header or (if a response was returned at
 30658  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 30659  // check whether the returned error was because http.StatusNotModified was
 30660  // returned.
 30661  func (c *PlacementStrategiesUpdateCall) Do(opts ...googleapi.CallOption) (*PlacementStrategy, error) {
 30662  	gensupport.SetOptions(c.urlParams_, opts...)
 30663  	res, err := c.doRequest("json")
 30664  	if res != nil && res.StatusCode == http.StatusNotModified {
 30665  		if res.Body != nil {
 30666  			res.Body.Close()
 30667  		}
 30668  		return nil, gensupport.WrapError(&googleapi.Error{
 30669  			Code:   res.StatusCode,
 30670  			Header: res.Header,
 30671  		})
 30672  	}
 30673  	if err != nil {
 30674  		return nil, err
 30675  	}
 30676  	defer googleapi.CloseBody(res)
 30677  	if err := googleapi.CheckResponse(res); err != nil {
 30678  		return nil, gensupport.WrapError(err)
 30679  	}
 30680  	ret := &PlacementStrategy{
 30681  		ServerResponse: googleapi.ServerResponse{
 30682  			Header:         res.Header,
 30683  			HTTPStatusCode: res.StatusCode,
 30684  		},
 30685  	}
 30686  	target := &ret
 30687  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30688  		return nil, err
 30689  	}
 30690  	return ret, nil
 30691  }
 30692  
 30693  type PlacementsGeneratetagsCall struct {
 30694  	s          *Service
 30695  	profileId  int64
 30696  	urlParams_ gensupport.URLParams
 30697  	ctx_       context.Context
 30698  	header_    http.Header
 30699  }
 30700  
 30701  // Generatetags: Generates tags for a placement.
 30702  //
 30703  // - profileId: User profile ID associated with this request.
 30704  func (r *PlacementsService) Generatetags(profileId int64) *PlacementsGeneratetagsCall {
 30705  	c := &PlacementsGeneratetagsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30706  	c.profileId = profileId
 30707  	return c
 30708  }
 30709  
 30710  // CampaignId sets the optional parameter "campaignId": Generate placements
 30711  // belonging to this campaign. This is a required field.
 30712  func (c *PlacementsGeneratetagsCall) CampaignId(campaignId int64) *PlacementsGeneratetagsCall {
 30713  	c.urlParams_.Set("campaignId", fmt.Sprint(campaignId))
 30714  	return c
 30715  }
 30716  
 30717  // PlacementIds sets the optional parameter "placementIds": Generate tags for
 30718  // these placements.
 30719  func (c *PlacementsGeneratetagsCall) PlacementIds(placementIds ...int64) *PlacementsGeneratetagsCall {
 30720  	var placementIds_ []string
 30721  	for _, v := range placementIds {
 30722  		placementIds_ = append(placementIds_, fmt.Sprint(v))
 30723  	}
 30724  	c.urlParams_.SetMulti("placementIds", placementIds_)
 30725  	return c
 30726  }
 30727  
 30728  // TagFormats sets the optional parameter "tagFormats": Tag formats to generate
 30729  // for these placements. *Note:* PLACEMENT_TAG_STANDARD can only be generated
 30730  // for 1x1 placements.
 30731  //
 30732  // Possible values:
 30733  //
 30734  //	"PLACEMENT_TAG_STANDARD"
 30735  //	"PLACEMENT_TAG_IFRAME_JAVASCRIPT"
 30736  //	"PLACEMENT_TAG_IFRAME_ILAYER"
 30737  //	"PLACEMENT_TAG_INTERNAL_REDIRECT"
 30738  //	"PLACEMENT_TAG_JAVASCRIPT"
 30739  //	"PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT"
 30740  //	"PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT"
 30741  //	"PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT"
 30742  //	"PLACEMENT_TAG_CLICK_COMMANDS"
 30743  //	"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH"
 30744  //	"PLACEMENT_TAG_TRACKING"
 30745  //	"PLACEMENT_TAG_TRACKING_IFRAME"
 30746  //	"PLACEMENT_TAG_TRACKING_JAVASCRIPT"
 30747  //	"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3"
 30748  //	"PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY"
 30749  //	"PLACEMENT_TAG_JAVASCRIPT_LEGACY"
 30750  //	"PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY"
 30751  //	"PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY"
 30752  //	"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_4"
 30753  //	"PLACEMENT_TAG_TRACKING_THIRD_PARTY_MEASUREMENT"
 30754  func (c *PlacementsGeneratetagsCall) TagFormats(tagFormats ...string) *PlacementsGeneratetagsCall {
 30755  	c.urlParams_.SetMulti("tagFormats", append([]string{}, tagFormats...))
 30756  	return c
 30757  }
 30758  
 30759  // Fields allows partial responses to be retrieved. See
 30760  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30761  // details.
 30762  func (c *PlacementsGeneratetagsCall) Fields(s ...googleapi.Field) *PlacementsGeneratetagsCall {
 30763  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30764  	return c
 30765  }
 30766  
 30767  // Context sets the context to be used in this call's Do method.
 30768  func (c *PlacementsGeneratetagsCall) Context(ctx context.Context) *PlacementsGeneratetagsCall {
 30769  	c.ctx_ = ctx
 30770  	return c
 30771  }
 30772  
 30773  // Header returns a http.Header that can be modified by the caller to add
 30774  // headers to the request.
 30775  func (c *PlacementsGeneratetagsCall) Header() http.Header {
 30776  	if c.header_ == nil {
 30777  		c.header_ = make(http.Header)
 30778  	}
 30779  	return c.header_
 30780  }
 30781  
 30782  func (c *PlacementsGeneratetagsCall) doRequest(alt string) (*http.Response, error) {
 30783  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 30784  	var body io.Reader = nil
 30785  	c.urlParams_.Set("alt", alt)
 30786  	c.urlParams_.Set("prettyPrint", "false")
 30787  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placements/generatetags")
 30788  	urls += "?" + c.urlParams_.Encode()
 30789  	req, err := http.NewRequest("POST", urls, body)
 30790  	if err != nil {
 30791  		return nil, err
 30792  	}
 30793  	req.Header = reqHeaders
 30794  	googleapi.Expand(req.URL, map[string]string{
 30795  		"profileId": strconv.FormatInt(c.profileId, 10),
 30796  	})
 30797  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30798  }
 30799  
 30800  // Do executes the "dfareporting.placements.generatetags" call.
 30801  // Any non-2xx status code is an error. Response headers are in either
 30802  // *PlacementsGenerateTagsResponse.ServerResponse.Header or (if a response was
 30803  // returned at all) in error.(*googleapi.Error).Header. Use
 30804  // googleapi.IsNotModified to check whether the returned error was because
 30805  // http.StatusNotModified was returned.
 30806  func (c *PlacementsGeneratetagsCall) Do(opts ...googleapi.CallOption) (*PlacementsGenerateTagsResponse, error) {
 30807  	gensupport.SetOptions(c.urlParams_, opts...)
 30808  	res, err := c.doRequest("json")
 30809  	if res != nil && res.StatusCode == http.StatusNotModified {
 30810  		if res.Body != nil {
 30811  			res.Body.Close()
 30812  		}
 30813  		return nil, gensupport.WrapError(&googleapi.Error{
 30814  			Code:   res.StatusCode,
 30815  			Header: res.Header,
 30816  		})
 30817  	}
 30818  	if err != nil {
 30819  		return nil, err
 30820  	}
 30821  	defer googleapi.CloseBody(res)
 30822  	if err := googleapi.CheckResponse(res); err != nil {
 30823  		return nil, gensupport.WrapError(err)
 30824  	}
 30825  	ret := &PlacementsGenerateTagsResponse{
 30826  		ServerResponse: googleapi.ServerResponse{
 30827  			Header:         res.Header,
 30828  			HTTPStatusCode: res.StatusCode,
 30829  		},
 30830  	}
 30831  	target := &ret
 30832  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30833  		return nil, err
 30834  	}
 30835  	return ret, nil
 30836  }
 30837  
 30838  type PlacementsGetCall struct {
 30839  	s            *Service
 30840  	profileId    int64
 30841  	id           int64
 30842  	urlParams_   gensupport.URLParams
 30843  	ifNoneMatch_ string
 30844  	ctx_         context.Context
 30845  	header_      http.Header
 30846  }
 30847  
 30848  // Get: Gets one placement by ID.
 30849  //
 30850  // - id: Placement ID.
 30851  // - profileId: User profile ID associated with this request.
 30852  func (r *PlacementsService) Get(profileId int64, id int64) *PlacementsGetCall {
 30853  	c := &PlacementsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30854  	c.profileId = profileId
 30855  	c.id = id
 30856  	return c
 30857  }
 30858  
 30859  // Fields allows partial responses to be retrieved. See
 30860  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30861  // details.
 30862  func (c *PlacementsGetCall) Fields(s ...googleapi.Field) *PlacementsGetCall {
 30863  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30864  	return c
 30865  }
 30866  
 30867  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 30868  // object's ETag matches the given value. This is useful for getting updates
 30869  // only after the object has changed since the last request.
 30870  func (c *PlacementsGetCall) IfNoneMatch(entityTag string) *PlacementsGetCall {
 30871  	c.ifNoneMatch_ = entityTag
 30872  	return c
 30873  }
 30874  
 30875  // Context sets the context to be used in this call's Do method.
 30876  func (c *PlacementsGetCall) Context(ctx context.Context) *PlacementsGetCall {
 30877  	c.ctx_ = ctx
 30878  	return c
 30879  }
 30880  
 30881  // Header returns a http.Header that can be modified by the caller to add
 30882  // headers to the request.
 30883  func (c *PlacementsGetCall) Header() http.Header {
 30884  	if c.header_ == nil {
 30885  		c.header_ = make(http.Header)
 30886  	}
 30887  	return c.header_
 30888  }
 30889  
 30890  func (c *PlacementsGetCall) doRequest(alt string) (*http.Response, error) {
 30891  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 30892  	if c.ifNoneMatch_ != "" {
 30893  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 30894  	}
 30895  	var body io.Reader = nil
 30896  	c.urlParams_.Set("alt", alt)
 30897  	c.urlParams_.Set("prettyPrint", "false")
 30898  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placements/{+id}")
 30899  	urls += "?" + c.urlParams_.Encode()
 30900  	req, err := http.NewRequest("GET", urls, body)
 30901  	if err != nil {
 30902  		return nil, err
 30903  	}
 30904  	req.Header = reqHeaders
 30905  	googleapi.Expand(req.URL, map[string]string{
 30906  		"profileId": strconv.FormatInt(c.profileId, 10),
 30907  		"id":        strconv.FormatInt(c.id, 10),
 30908  	})
 30909  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 30910  }
 30911  
 30912  // Do executes the "dfareporting.placements.get" call.
 30913  // Any non-2xx status code is an error. Response headers are in either
 30914  // *Placement.ServerResponse.Header or (if a response was returned at all) in
 30915  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 30916  // whether the returned error was because http.StatusNotModified was returned.
 30917  func (c *PlacementsGetCall) Do(opts ...googleapi.CallOption) (*Placement, error) {
 30918  	gensupport.SetOptions(c.urlParams_, opts...)
 30919  	res, err := c.doRequest("json")
 30920  	if res != nil && res.StatusCode == http.StatusNotModified {
 30921  		if res.Body != nil {
 30922  			res.Body.Close()
 30923  		}
 30924  		return nil, gensupport.WrapError(&googleapi.Error{
 30925  			Code:   res.StatusCode,
 30926  			Header: res.Header,
 30927  		})
 30928  	}
 30929  	if err != nil {
 30930  		return nil, err
 30931  	}
 30932  	defer googleapi.CloseBody(res)
 30933  	if err := googleapi.CheckResponse(res); err != nil {
 30934  		return nil, gensupport.WrapError(err)
 30935  	}
 30936  	ret := &Placement{
 30937  		ServerResponse: googleapi.ServerResponse{
 30938  			Header:         res.Header,
 30939  			HTTPStatusCode: res.StatusCode,
 30940  		},
 30941  	}
 30942  	target := &ret
 30943  	if err := gensupport.DecodeResponse(target, res); err != nil {
 30944  		return nil, err
 30945  	}
 30946  	return ret, nil
 30947  }
 30948  
 30949  type PlacementsInsertCall struct {
 30950  	s          *Service
 30951  	profileId  int64
 30952  	placement  *Placement
 30953  	urlParams_ gensupport.URLParams
 30954  	ctx_       context.Context
 30955  	header_    http.Header
 30956  }
 30957  
 30958  // Insert: Inserts a new placement.
 30959  //
 30960  // - profileId: User profile ID associated with this request.
 30961  func (r *PlacementsService) Insert(profileId int64, placement *Placement) *PlacementsInsertCall {
 30962  	c := &PlacementsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 30963  	c.profileId = profileId
 30964  	c.placement = placement
 30965  	return c
 30966  }
 30967  
 30968  // Fields allows partial responses to be retrieved. See
 30969  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 30970  // details.
 30971  func (c *PlacementsInsertCall) Fields(s ...googleapi.Field) *PlacementsInsertCall {
 30972  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 30973  	return c
 30974  }
 30975  
 30976  // Context sets the context to be used in this call's Do method.
 30977  func (c *PlacementsInsertCall) Context(ctx context.Context) *PlacementsInsertCall {
 30978  	c.ctx_ = ctx
 30979  	return c
 30980  }
 30981  
 30982  // Header returns a http.Header that can be modified by the caller to add
 30983  // headers to the request.
 30984  func (c *PlacementsInsertCall) Header() http.Header {
 30985  	if c.header_ == nil {
 30986  		c.header_ = make(http.Header)
 30987  	}
 30988  	return c.header_
 30989  }
 30990  
 30991  func (c *PlacementsInsertCall) doRequest(alt string) (*http.Response, error) {
 30992  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 30993  	var body io.Reader = nil
 30994  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placement)
 30995  	if err != nil {
 30996  		return nil, err
 30997  	}
 30998  	c.urlParams_.Set("alt", alt)
 30999  	c.urlParams_.Set("prettyPrint", "false")
 31000  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placements")
 31001  	urls += "?" + c.urlParams_.Encode()
 31002  	req, err := http.NewRequest("POST", urls, body)
 31003  	if err != nil {
 31004  		return nil, err
 31005  	}
 31006  	req.Header = reqHeaders
 31007  	googleapi.Expand(req.URL, map[string]string{
 31008  		"profileId": strconv.FormatInt(c.profileId, 10),
 31009  	})
 31010  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31011  }
 31012  
 31013  // Do executes the "dfareporting.placements.insert" call.
 31014  // Any non-2xx status code is an error. Response headers are in either
 31015  // *Placement.ServerResponse.Header or (if a response was returned at all) in
 31016  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 31017  // whether the returned error was because http.StatusNotModified was returned.
 31018  func (c *PlacementsInsertCall) Do(opts ...googleapi.CallOption) (*Placement, error) {
 31019  	gensupport.SetOptions(c.urlParams_, opts...)
 31020  	res, err := c.doRequest("json")
 31021  	if res != nil && res.StatusCode == http.StatusNotModified {
 31022  		if res.Body != nil {
 31023  			res.Body.Close()
 31024  		}
 31025  		return nil, gensupport.WrapError(&googleapi.Error{
 31026  			Code:   res.StatusCode,
 31027  			Header: res.Header,
 31028  		})
 31029  	}
 31030  	if err != nil {
 31031  		return nil, err
 31032  	}
 31033  	defer googleapi.CloseBody(res)
 31034  	if err := googleapi.CheckResponse(res); err != nil {
 31035  		return nil, gensupport.WrapError(err)
 31036  	}
 31037  	ret := &Placement{
 31038  		ServerResponse: googleapi.ServerResponse{
 31039  			Header:         res.Header,
 31040  			HTTPStatusCode: res.StatusCode,
 31041  		},
 31042  	}
 31043  	target := &ret
 31044  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31045  		return nil, err
 31046  	}
 31047  	return ret, nil
 31048  }
 31049  
 31050  type PlacementsListCall struct {
 31051  	s            *Service
 31052  	profileId    int64
 31053  	urlParams_   gensupport.URLParams
 31054  	ifNoneMatch_ string
 31055  	ctx_         context.Context
 31056  	header_      http.Header
 31057  }
 31058  
 31059  // List: Retrieves a list of placements, possibly filtered. This method
 31060  // supports paging.
 31061  //
 31062  // - profileId: User profile ID associated with this request.
 31063  func (r *PlacementsService) List(profileId int64) *PlacementsListCall {
 31064  	c := &PlacementsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31065  	c.profileId = profileId
 31066  	return c
 31067  }
 31068  
 31069  // ActiveStatus sets the optional parameter "activeStatus": Select only
 31070  // placements with these active statuses.
 31071  //
 31072  // Possible values:
 31073  //
 31074  //	"PLACEMENT_STATUS_UNKNOWN"
 31075  //	"PLACEMENT_STATUS_ACTIVE"
 31076  //	"PLACEMENT_STATUS_INACTIVE"
 31077  //	"PLACEMENT_STATUS_ARCHIVED"
 31078  //	"PLACEMENT_STATUS_PERMANENTLY_ARCHIVED"
 31079  func (c *PlacementsListCall) ActiveStatus(activeStatus ...string) *PlacementsListCall {
 31080  	c.urlParams_.SetMulti("activeStatus", append([]string{}, activeStatus...))
 31081  	return c
 31082  }
 31083  
 31084  // AdvertiserIds sets the optional parameter "advertiserIds": Select only
 31085  // placements that belong to these advertisers.
 31086  func (c *PlacementsListCall) AdvertiserIds(advertiserIds ...int64) *PlacementsListCall {
 31087  	var advertiserIds_ []string
 31088  	for _, v := range advertiserIds {
 31089  		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
 31090  	}
 31091  	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
 31092  	return c
 31093  }
 31094  
 31095  // CampaignIds sets the optional parameter "campaignIds": Select only
 31096  // placements that belong to these campaigns.
 31097  func (c *PlacementsListCall) CampaignIds(campaignIds ...int64) *PlacementsListCall {
 31098  	var campaignIds_ []string
 31099  	for _, v := range campaignIds {
 31100  		campaignIds_ = append(campaignIds_, fmt.Sprint(v))
 31101  	}
 31102  	c.urlParams_.SetMulti("campaignIds", campaignIds_)
 31103  	return c
 31104  }
 31105  
 31106  // Compatibilities sets the optional parameter "compatibilities": Select only
 31107  // placements that are associated with these compatibilities. DISPLAY and
 31108  // DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile
 31109  // devices for regular or interstitial ads respectively. APP and
 31110  // APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to
 31111  // rendering in in-stream video ads developed with the VAST standard.
 31112  //
 31113  // Possible values:
 31114  //
 31115  //	"DISPLAY"
 31116  //	"DISPLAY_INTERSTITIAL"
 31117  //	"APP" - Deprecated enum value. No longer supported.
 31118  //	"APP_INTERSTITIAL" - Deprecated enum value. No longer supported.
 31119  //	"IN_STREAM_VIDEO"
 31120  //	"IN_STREAM_AUDIO"
 31121  func (c *PlacementsListCall) Compatibilities(compatibilities ...string) *PlacementsListCall {
 31122  	c.urlParams_.SetMulti("compatibilities", append([]string{}, compatibilities...))
 31123  	return c
 31124  }
 31125  
 31126  // ContentCategoryIds sets the optional parameter "contentCategoryIds": Select
 31127  // only placements that are associated with these content categories.
 31128  func (c *PlacementsListCall) ContentCategoryIds(contentCategoryIds ...int64) *PlacementsListCall {
 31129  	var contentCategoryIds_ []string
 31130  	for _, v := range contentCategoryIds {
 31131  		contentCategoryIds_ = append(contentCategoryIds_, fmt.Sprint(v))
 31132  	}
 31133  	c.urlParams_.SetMulti("contentCategoryIds", contentCategoryIds_)
 31134  	return c
 31135  }
 31136  
 31137  // DirectorySiteIds sets the optional parameter "directorySiteIds": Select only
 31138  // placements that are associated with these directory sites.
 31139  func (c *PlacementsListCall) DirectorySiteIds(directorySiteIds ...int64) *PlacementsListCall {
 31140  	var directorySiteIds_ []string
 31141  	for _, v := range directorySiteIds {
 31142  		directorySiteIds_ = append(directorySiteIds_, fmt.Sprint(v))
 31143  	}
 31144  	c.urlParams_.SetMulti("directorySiteIds", directorySiteIds_)
 31145  	return c
 31146  }
 31147  
 31148  // GroupIds sets the optional parameter "groupIds": Select only placements that
 31149  // belong to these placement groups.
 31150  func (c *PlacementsListCall) GroupIds(groupIds ...int64) *PlacementsListCall {
 31151  	var groupIds_ []string
 31152  	for _, v := range groupIds {
 31153  		groupIds_ = append(groupIds_, fmt.Sprint(v))
 31154  	}
 31155  	c.urlParams_.SetMulti("groupIds", groupIds_)
 31156  	return c
 31157  }
 31158  
 31159  // Ids sets the optional parameter "ids": Select only placements with these
 31160  // IDs.
 31161  func (c *PlacementsListCall) Ids(ids ...int64) *PlacementsListCall {
 31162  	var ids_ []string
 31163  	for _, v := range ids {
 31164  		ids_ = append(ids_, fmt.Sprint(v))
 31165  	}
 31166  	c.urlParams_.SetMulti("ids", ids_)
 31167  	return c
 31168  }
 31169  
 31170  // MaxEndDate sets the optional parameter "maxEndDate": Select only placements
 31171  // or placement groups whose end date is on or before the specified maxEndDate.
 31172  // The date should be formatted as "yyyy-MM-dd".
 31173  func (c *PlacementsListCall) MaxEndDate(maxEndDate string) *PlacementsListCall {
 31174  	c.urlParams_.Set("maxEndDate", maxEndDate)
 31175  	return c
 31176  }
 31177  
 31178  // MaxResults sets the optional parameter "maxResults": Maximum number of
 31179  // results to return.
 31180  func (c *PlacementsListCall) MaxResults(maxResults int64) *PlacementsListCall {
 31181  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 31182  	return c
 31183  }
 31184  
 31185  // MaxStartDate sets the optional parameter "maxStartDate": Select only
 31186  // placements or placement groups whose start date is on or before the
 31187  // specified maxStartDate. The date should be formatted as "yyyy-MM-dd".
 31188  func (c *PlacementsListCall) MaxStartDate(maxStartDate string) *PlacementsListCall {
 31189  	c.urlParams_.Set("maxStartDate", maxStartDate)
 31190  	return c
 31191  }
 31192  
 31193  // MinEndDate sets the optional parameter "minEndDate": Select only placements
 31194  // or placement groups whose end date is on or after the specified minEndDate.
 31195  // The date should be formatted as "yyyy-MM-dd".
 31196  func (c *PlacementsListCall) MinEndDate(minEndDate string) *PlacementsListCall {
 31197  	c.urlParams_.Set("minEndDate", minEndDate)
 31198  	return c
 31199  }
 31200  
 31201  // MinStartDate sets the optional parameter "minStartDate": Select only
 31202  // placements or placement groups whose start date is on or after the specified
 31203  // minStartDate. The date should be formatted as "yyyy-MM-dd".
 31204  func (c *PlacementsListCall) MinStartDate(minStartDate string) *PlacementsListCall {
 31205  	c.urlParams_.Set("minStartDate", minStartDate)
 31206  	return c
 31207  }
 31208  
 31209  // PageToken sets the optional parameter "pageToken": Value of the
 31210  // nextPageToken from the previous result page.
 31211  func (c *PlacementsListCall) PageToken(pageToken string) *PlacementsListCall {
 31212  	c.urlParams_.Set("pageToken", pageToken)
 31213  	return c
 31214  }
 31215  
 31216  // PaymentSource sets the optional parameter "paymentSource": Select only
 31217  // placements with this payment source.
 31218  //
 31219  // Possible values:
 31220  //
 31221  //	"PLACEMENT_AGENCY_PAID"
 31222  //	"PLACEMENT_PUBLISHER_PAID"
 31223  func (c *PlacementsListCall) PaymentSource(paymentSource string) *PlacementsListCall {
 31224  	c.urlParams_.Set("paymentSource", paymentSource)
 31225  	return c
 31226  }
 31227  
 31228  // PlacementStrategyIds sets the optional parameter "placementStrategyIds":
 31229  // Select only placements that are associated with these placement strategies.
 31230  func (c *PlacementsListCall) PlacementStrategyIds(placementStrategyIds ...int64) *PlacementsListCall {
 31231  	var placementStrategyIds_ []string
 31232  	for _, v := range placementStrategyIds {
 31233  		placementStrategyIds_ = append(placementStrategyIds_, fmt.Sprint(v))
 31234  	}
 31235  	c.urlParams_.SetMulti("placementStrategyIds", placementStrategyIds_)
 31236  	return c
 31237  }
 31238  
 31239  // PricingTypes sets the optional parameter "pricingTypes": Select only
 31240  // placements with these pricing types.
 31241  //
 31242  // Possible values:
 31243  //
 31244  //	"PRICING_TYPE_CPM"
 31245  //	"PRICING_TYPE_CPC"
 31246  //	"PRICING_TYPE_CPA"
 31247  //	"PRICING_TYPE_FLAT_RATE_IMPRESSIONS"
 31248  //	"PRICING_TYPE_FLAT_RATE_CLICKS"
 31249  //	"PRICING_TYPE_CPM_ACTIVEVIEW"
 31250  func (c *PlacementsListCall) PricingTypes(pricingTypes ...string) *PlacementsListCall {
 31251  	c.urlParams_.SetMulti("pricingTypes", append([]string{}, pricingTypes...))
 31252  	return c
 31253  }
 31254  
 31255  // SearchString sets the optional parameter "searchString": Allows searching
 31256  // for placements by name or ID. Wildcards (*) are allowed. For example,
 31257  // "placement*2015" will return placements with names like "placement June
 31258  // 2015", "placement May 2015", or simply "placements 2015". Most of the
 31259  // searches also add wildcards implicitly at the start and the end of the
 31260  // search string. For example, a search string of "placement" will match
 31261  // placements with name "my placement", "placement 2015", or simply "placement"
 31262  // .
 31263  func (c *PlacementsListCall) SearchString(searchString string) *PlacementsListCall {
 31264  	c.urlParams_.Set("searchString", searchString)
 31265  	return c
 31266  }
 31267  
 31268  // SiteIds sets the optional parameter "siteIds": Select only placements that
 31269  // are associated with these sites.
 31270  func (c *PlacementsListCall) SiteIds(siteIds ...int64) *PlacementsListCall {
 31271  	var siteIds_ []string
 31272  	for _, v := range siteIds {
 31273  		siteIds_ = append(siteIds_, fmt.Sprint(v))
 31274  	}
 31275  	c.urlParams_.SetMulti("siteIds", siteIds_)
 31276  	return c
 31277  }
 31278  
 31279  // SizeIds sets the optional parameter "sizeIds": Select only placements that
 31280  // are associated with these sizes.
 31281  func (c *PlacementsListCall) SizeIds(sizeIds ...int64) *PlacementsListCall {
 31282  	var sizeIds_ []string
 31283  	for _, v := range sizeIds {
 31284  		sizeIds_ = append(sizeIds_, fmt.Sprint(v))
 31285  	}
 31286  	c.urlParams_.SetMulti("sizeIds", sizeIds_)
 31287  	return c
 31288  }
 31289  
 31290  // SortField sets the optional parameter "sortField": Field by which to sort
 31291  // the list.
 31292  //
 31293  // Possible values:
 31294  //
 31295  //	"ID" (default)
 31296  //	"NAME"
 31297  func (c *PlacementsListCall) SortField(sortField string) *PlacementsListCall {
 31298  	c.urlParams_.Set("sortField", sortField)
 31299  	return c
 31300  }
 31301  
 31302  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 31303  //
 31304  // Possible values:
 31305  //
 31306  //	"ASCENDING" (default) - Ascending order.
 31307  //	"DESCENDING" - Descending order.
 31308  func (c *PlacementsListCall) SortOrder(sortOrder string) *PlacementsListCall {
 31309  	c.urlParams_.Set("sortOrder", sortOrder)
 31310  	return c
 31311  }
 31312  
 31313  // Fields allows partial responses to be retrieved. See
 31314  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31315  // details.
 31316  func (c *PlacementsListCall) Fields(s ...googleapi.Field) *PlacementsListCall {
 31317  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31318  	return c
 31319  }
 31320  
 31321  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 31322  // object's ETag matches the given value. This is useful for getting updates
 31323  // only after the object has changed since the last request.
 31324  func (c *PlacementsListCall) IfNoneMatch(entityTag string) *PlacementsListCall {
 31325  	c.ifNoneMatch_ = entityTag
 31326  	return c
 31327  }
 31328  
 31329  // Context sets the context to be used in this call's Do method.
 31330  func (c *PlacementsListCall) Context(ctx context.Context) *PlacementsListCall {
 31331  	c.ctx_ = ctx
 31332  	return c
 31333  }
 31334  
 31335  // Header returns a http.Header that can be modified by the caller to add
 31336  // headers to the request.
 31337  func (c *PlacementsListCall) Header() http.Header {
 31338  	if c.header_ == nil {
 31339  		c.header_ = make(http.Header)
 31340  	}
 31341  	return c.header_
 31342  }
 31343  
 31344  func (c *PlacementsListCall) doRequest(alt string) (*http.Response, error) {
 31345  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 31346  	if c.ifNoneMatch_ != "" {
 31347  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 31348  	}
 31349  	var body io.Reader = nil
 31350  	c.urlParams_.Set("alt", alt)
 31351  	c.urlParams_.Set("prettyPrint", "false")
 31352  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placements")
 31353  	urls += "?" + c.urlParams_.Encode()
 31354  	req, err := http.NewRequest("GET", urls, body)
 31355  	if err != nil {
 31356  		return nil, err
 31357  	}
 31358  	req.Header = reqHeaders
 31359  	googleapi.Expand(req.URL, map[string]string{
 31360  		"profileId": strconv.FormatInt(c.profileId, 10),
 31361  	})
 31362  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31363  }
 31364  
 31365  // Do executes the "dfareporting.placements.list" call.
 31366  // Any non-2xx status code is an error. Response headers are in either
 31367  // *PlacementsListResponse.ServerResponse.Header or (if a response was returned
 31368  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 31369  // check whether the returned error was because http.StatusNotModified was
 31370  // returned.
 31371  func (c *PlacementsListCall) Do(opts ...googleapi.CallOption) (*PlacementsListResponse, error) {
 31372  	gensupport.SetOptions(c.urlParams_, opts...)
 31373  	res, err := c.doRequest("json")
 31374  	if res != nil && res.StatusCode == http.StatusNotModified {
 31375  		if res.Body != nil {
 31376  			res.Body.Close()
 31377  		}
 31378  		return nil, gensupport.WrapError(&googleapi.Error{
 31379  			Code:   res.StatusCode,
 31380  			Header: res.Header,
 31381  		})
 31382  	}
 31383  	if err != nil {
 31384  		return nil, err
 31385  	}
 31386  	defer googleapi.CloseBody(res)
 31387  	if err := googleapi.CheckResponse(res); err != nil {
 31388  		return nil, gensupport.WrapError(err)
 31389  	}
 31390  	ret := &PlacementsListResponse{
 31391  		ServerResponse: googleapi.ServerResponse{
 31392  			Header:         res.Header,
 31393  			HTTPStatusCode: res.StatusCode,
 31394  		},
 31395  	}
 31396  	target := &ret
 31397  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31398  		return nil, err
 31399  	}
 31400  	return ret, nil
 31401  }
 31402  
 31403  // Pages invokes f for each page of results.
 31404  // A non-nil error returned from f will halt the iteration.
 31405  // The provided context supersedes any context provided to the Context method.
 31406  func (c *PlacementsListCall) Pages(ctx context.Context, f func(*PlacementsListResponse) error) error {
 31407  	c.ctx_ = ctx
 31408  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 31409  	for {
 31410  		x, err := c.Do()
 31411  		if err != nil {
 31412  			return err
 31413  		}
 31414  		if err := f(x); err != nil {
 31415  			return err
 31416  		}
 31417  		if x.NextPageToken == "" {
 31418  			return nil
 31419  		}
 31420  		c.PageToken(x.NextPageToken)
 31421  	}
 31422  }
 31423  
 31424  type PlacementsPatchCall struct {
 31425  	s          *Service
 31426  	profileId  int64
 31427  	placement  *Placement
 31428  	urlParams_ gensupport.URLParams
 31429  	ctx_       context.Context
 31430  	header_    http.Header
 31431  }
 31432  
 31433  // Patch: Updates an existing placement. This method supports patch semantics.
 31434  //
 31435  // - id: Placement ID.
 31436  // - profileId: User profile ID associated with this request.
 31437  func (r *PlacementsService) Patch(profileId int64, id int64, placement *Placement) *PlacementsPatchCall {
 31438  	c := &PlacementsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31439  	c.profileId = profileId
 31440  	c.urlParams_.Set("id", fmt.Sprint(id))
 31441  	c.placement = placement
 31442  	return c
 31443  }
 31444  
 31445  // Fields allows partial responses to be retrieved. See
 31446  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31447  // details.
 31448  func (c *PlacementsPatchCall) Fields(s ...googleapi.Field) *PlacementsPatchCall {
 31449  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31450  	return c
 31451  }
 31452  
 31453  // Context sets the context to be used in this call's Do method.
 31454  func (c *PlacementsPatchCall) Context(ctx context.Context) *PlacementsPatchCall {
 31455  	c.ctx_ = ctx
 31456  	return c
 31457  }
 31458  
 31459  // Header returns a http.Header that can be modified by the caller to add
 31460  // headers to the request.
 31461  func (c *PlacementsPatchCall) Header() http.Header {
 31462  	if c.header_ == nil {
 31463  		c.header_ = make(http.Header)
 31464  	}
 31465  	return c.header_
 31466  }
 31467  
 31468  func (c *PlacementsPatchCall) doRequest(alt string) (*http.Response, error) {
 31469  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 31470  	var body io.Reader = nil
 31471  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placement)
 31472  	if err != nil {
 31473  		return nil, err
 31474  	}
 31475  	c.urlParams_.Set("alt", alt)
 31476  	c.urlParams_.Set("prettyPrint", "false")
 31477  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placements")
 31478  	urls += "?" + c.urlParams_.Encode()
 31479  	req, err := http.NewRequest("PATCH", urls, body)
 31480  	if err != nil {
 31481  		return nil, err
 31482  	}
 31483  	req.Header = reqHeaders
 31484  	googleapi.Expand(req.URL, map[string]string{
 31485  		"profileId": strconv.FormatInt(c.profileId, 10),
 31486  	})
 31487  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31488  }
 31489  
 31490  // Do executes the "dfareporting.placements.patch" call.
 31491  // Any non-2xx status code is an error. Response headers are in either
 31492  // *Placement.ServerResponse.Header or (if a response was returned at all) in
 31493  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 31494  // whether the returned error was because http.StatusNotModified was returned.
 31495  func (c *PlacementsPatchCall) Do(opts ...googleapi.CallOption) (*Placement, error) {
 31496  	gensupport.SetOptions(c.urlParams_, opts...)
 31497  	res, err := c.doRequest("json")
 31498  	if res != nil && res.StatusCode == http.StatusNotModified {
 31499  		if res.Body != nil {
 31500  			res.Body.Close()
 31501  		}
 31502  		return nil, gensupport.WrapError(&googleapi.Error{
 31503  			Code:   res.StatusCode,
 31504  			Header: res.Header,
 31505  		})
 31506  	}
 31507  	if err != nil {
 31508  		return nil, err
 31509  	}
 31510  	defer googleapi.CloseBody(res)
 31511  	if err := googleapi.CheckResponse(res); err != nil {
 31512  		return nil, gensupport.WrapError(err)
 31513  	}
 31514  	ret := &Placement{
 31515  		ServerResponse: googleapi.ServerResponse{
 31516  			Header:         res.Header,
 31517  			HTTPStatusCode: res.StatusCode,
 31518  		},
 31519  	}
 31520  	target := &ret
 31521  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31522  		return nil, err
 31523  	}
 31524  	return ret, nil
 31525  }
 31526  
 31527  type PlacementsUpdateCall struct {
 31528  	s          *Service
 31529  	profileId  int64
 31530  	placement  *Placement
 31531  	urlParams_ gensupport.URLParams
 31532  	ctx_       context.Context
 31533  	header_    http.Header
 31534  }
 31535  
 31536  // Update: Updates an existing placement.
 31537  //
 31538  // - profileId: User profile ID associated with this request.
 31539  func (r *PlacementsService) Update(profileId int64, placement *Placement) *PlacementsUpdateCall {
 31540  	c := &PlacementsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31541  	c.profileId = profileId
 31542  	c.placement = placement
 31543  	return c
 31544  }
 31545  
 31546  // Fields allows partial responses to be retrieved. See
 31547  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31548  // details.
 31549  func (c *PlacementsUpdateCall) Fields(s ...googleapi.Field) *PlacementsUpdateCall {
 31550  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31551  	return c
 31552  }
 31553  
 31554  // Context sets the context to be used in this call's Do method.
 31555  func (c *PlacementsUpdateCall) Context(ctx context.Context) *PlacementsUpdateCall {
 31556  	c.ctx_ = ctx
 31557  	return c
 31558  }
 31559  
 31560  // Header returns a http.Header that can be modified by the caller to add
 31561  // headers to the request.
 31562  func (c *PlacementsUpdateCall) Header() http.Header {
 31563  	if c.header_ == nil {
 31564  		c.header_ = make(http.Header)
 31565  	}
 31566  	return c.header_
 31567  }
 31568  
 31569  func (c *PlacementsUpdateCall) doRequest(alt string) (*http.Response, error) {
 31570  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 31571  	var body io.Reader = nil
 31572  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.placement)
 31573  	if err != nil {
 31574  		return nil, err
 31575  	}
 31576  	c.urlParams_.Set("alt", alt)
 31577  	c.urlParams_.Set("prettyPrint", "false")
 31578  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/placements")
 31579  	urls += "?" + c.urlParams_.Encode()
 31580  	req, err := http.NewRequest("PUT", urls, body)
 31581  	if err != nil {
 31582  		return nil, err
 31583  	}
 31584  	req.Header = reqHeaders
 31585  	googleapi.Expand(req.URL, map[string]string{
 31586  		"profileId": strconv.FormatInt(c.profileId, 10),
 31587  	})
 31588  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31589  }
 31590  
 31591  // Do executes the "dfareporting.placements.update" call.
 31592  // Any non-2xx status code is an error. Response headers are in either
 31593  // *Placement.ServerResponse.Header or (if a response was returned at all) in
 31594  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 31595  // whether the returned error was because http.StatusNotModified was returned.
 31596  func (c *PlacementsUpdateCall) Do(opts ...googleapi.CallOption) (*Placement, error) {
 31597  	gensupport.SetOptions(c.urlParams_, opts...)
 31598  	res, err := c.doRequest("json")
 31599  	if res != nil && res.StatusCode == http.StatusNotModified {
 31600  		if res.Body != nil {
 31601  			res.Body.Close()
 31602  		}
 31603  		return nil, gensupport.WrapError(&googleapi.Error{
 31604  			Code:   res.StatusCode,
 31605  			Header: res.Header,
 31606  		})
 31607  	}
 31608  	if err != nil {
 31609  		return nil, err
 31610  	}
 31611  	defer googleapi.CloseBody(res)
 31612  	if err := googleapi.CheckResponse(res); err != nil {
 31613  		return nil, gensupport.WrapError(err)
 31614  	}
 31615  	ret := &Placement{
 31616  		ServerResponse: googleapi.ServerResponse{
 31617  			Header:         res.Header,
 31618  			HTTPStatusCode: res.StatusCode,
 31619  		},
 31620  	}
 31621  	target := &ret
 31622  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31623  		return nil, err
 31624  	}
 31625  	return ret, nil
 31626  }
 31627  
 31628  type PlatformTypesGetCall struct {
 31629  	s            *Service
 31630  	profileId    int64
 31631  	id           int64
 31632  	urlParams_   gensupport.URLParams
 31633  	ifNoneMatch_ string
 31634  	ctx_         context.Context
 31635  	header_      http.Header
 31636  }
 31637  
 31638  // Get: Gets one platform type by ID.
 31639  //
 31640  // - id: Platform type ID.
 31641  // - profileId: User profile ID associated with this request.
 31642  func (r *PlatformTypesService) Get(profileId int64, id int64) *PlatformTypesGetCall {
 31643  	c := &PlatformTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31644  	c.profileId = profileId
 31645  	c.id = id
 31646  	return c
 31647  }
 31648  
 31649  // Fields allows partial responses to be retrieved. See
 31650  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31651  // details.
 31652  func (c *PlatformTypesGetCall) Fields(s ...googleapi.Field) *PlatformTypesGetCall {
 31653  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31654  	return c
 31655  }
 31656  
 31657  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 31658  // object's ETag matches the given value. This is useful for getting updates
 31659  // only after the object has changed since the last request.
 31660  func (c *PlatformTypesGetCall) IfNoneMatch(entityTag string) *PlatformTypesGetCall {
 31661  	c.ifNoneMatch_ = entityTag
 31662  	return c
 31663  }
 31664  
 31665  // Context sets the context to be used in this call's Do method.
 31666  func (c *PlatformTypesGetCall) Context(ctx context.Context) *PlatformTypesGetCall {
 31667  	c.ctx_ = ctx
 31668  	return c
 31669  }
 31670  
 31671  // Header returns a http.Header that can be modified by the caller to add
 31672  // headers to the request.
 31673  func (c *PlatformTypesGetCall) Header() http.Header {
 31674  	if c.header_ == nil {
 31675  		c.header_ = make(http.Header)
 31676  	}
 31677  	return c.header_
 31678  }
 31679  
 31680  func (c *PlatformTypesGetCall) doRequest(alt string) (*http.Response, error) {
 31681  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 31682  	if c.ifNoneMatch_ != "" {
 31683  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 31684  	}
 31685  	var body io.Reader = nil
 31686  	c.urlParams_.Set("alt", alt)
 31687  	c.urlParams_.Set("prettyPrint", "false")
 31688  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/platformTypes/{+id}")
 31689  	urls += "?" + c.urlParams_.Encode()
 31690  	req, err := http.NewRequest("GET", urls, body)
 31691  	if err != nil {
 31692  		return nil, err
 31693  	}
 31694  	req.Header = reqHeaders
 31695  	googleapi.Expand(req.URL, map[string]string{
 31696  		"profileId": strconv.FormatInt(c.profileId, 10),
 31697  		"id":        strconv.FormatInt(c.id, 10),
 31698  	})
 31699  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31700  }
 31701  
 31702  // Do executes the "dfareporting.platformTypes.get" call.
 31703  // Any non-2xx status code is an error. Response headers are in either
 31704  // *PlatformType.ServerResponse.Header or (if a response was returned at all)
 31705  // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 31706  // whether the returned error was because http.StatusNotModified was returned.
 31707  func (c *PlatformTypesGetCall) Do(opts ...googleapi.CallOption) (*PlatformType, error) {
 31708  	gensupport.SetOptions(c.urlParams_, opts...)
 31709  	res, err := c.doRequest("json")
 31710  	if res != nil && res.StatusCode == http.StatusNotModified {
 31711  		if res.Body != nil {
 31712  			res.Body.Close()
 31713  		}
 31714  		return nil, gensupport.WrapError(&googleapi.Error{
 31715  			Code:   res.StatusCode,
 31716  			Header: res.Header,
 31717  		})
 31718  	}
 31719  	if err != nil {
 31720  		return nil, err
 31721  	}
 31722  	defer googleapi.CloseBody(res)
 31723  	if err := googleapi.CheckResponse(res); err != nil {
 31724  		return nil, gensupport.WrapError(err)
 31725  	}
 31726  	ret := &PlatformType{
 31727  		ServerResponse: googleapi.ServerResponse{
 31728  			Header:         res.Header,
 31729  			HTTPStatusCode: res.StatusCode,
 31730  		},
 31731  	}
 31732  	target := &ret
 31733  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31734  		return nil, err
 31735  	}
 31736  	return ret, nil
 31737  }
 31738  
 31739  type PlatformTypesListCall struct {
 31740  	s            *Service
 31741  	profileId    int64
 31742  	urlParams_   gensupport.URLParams
 31743  	ifNoneMatch_ string
 31744  	ctx_         context.Context
 31745  	header_      http.Header
 31746  }
 31747  
 31748  // List: Retrieves a list of platform types.
 31749  //
 31750  // - profileId: User profile ID associated with this request.
 31751  func (r *PlatformTypesService) List(profileId int64) *PlatformTypesListCall {
 31752  	c := &PlatformTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31753  	c.profileId = profileId
 31754  	return c
 31755  }
 31756  
 31757  // Fields allows partial responses to be retrieved. See
 31758  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31759  // details.
 31760  func (c *PlatformTypesListCall) Fields(s ...googleapi.Field) *PlatformTypesListCall {
 31761  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31762  	return c
 31763  }
 31764  
 31765  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 31766  // object's ETag matches the given value. This is useful for getting updates
 31767  // only after the object has changed since the last request.
 31768  func (c *PlatformTypesListCall) IfNoneMatch(entityTag string) *PlatformTypesListCall {
 31769  	c.ifNoneMatch_ = entityTag
 31770  	return c
 31771  }
 31772  
 31773  // Context sets the context to be used in this call's Do method.
 31774  func (c *PlatformTypesListCall) Context(ctx context.Context) *PlatformTypesListCall {
 31775  	c.ctx_ = ctx
 31776  	return c
 31777  }
 31778  
 31779  // Header returns a http.Header that can be modified by the caller to add
 31780  // headers to the request.
 31781  func (c *PlatformTypesListCall) Header() http.Header {
 31782  	if c.header_ == nil {
 31783  		c.header_ = make(http.Header)
 31784  	}
 31785  	return c.header_
 31786  }
 31787  
 31788  func (c *PlatformTypesListCall) doRequest(alt string) (*http.Response, error) {
 31789  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 31790  	if c.ifNoneMatch_ != "" {
 31791  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 31792  	}
 31793  	var body io.Reader = nil
 31794  	c.urlParams_.Set("alt", alt)
 31795  	c.urlParams_.Set("prettyPrint", "false")
 31796  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/platformTypes")
 31797  	urls += "?" + c.urlParams_.Encode()
 31798  	req, err := http.NewRequest("GET", urls, body)
 31799  	if err != nil {
 31800  		return nil, err
 31801  	}
 31802  	req.Header = reqHeaders
 31803  	googleapi.Expand(req.URL, map[string]string{
 31804  		"profileId": strconv.FormatInt(c.profileId, 10),
 31805  	})
 31806  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31807  }
 31808  
 31809  // Do executes the "dfareporting.platformTypes.list" call.
 31810  // Any non-2xx status code is an error. Response headers are in either
 31811  // *PlatformTypesListResponse.ServerResponse.Header or (if a response was
 31812  // returned at all) in error.(*googleapi.Error).Header. Use
 31813  // googleapi.IsNotModified to check whether the returned error was because
 31814  // http.StatusNotModified was returned.
 31815  func (c *PlatformTypesListCall) Do(opts ...googleapi.CallOption) (*PlatformTypesListResponse, error) {
 31816  	gensupport.SetOptions(c.urlParams_, opts...)
 31817  	res, err := c.doRequest("json")
 31818  	if res != nil && res.StatusCode == http.StatusNotModified {
 31819  		if res.Body != nil {
 31820  			res.Body.Close()
 31821  		}
 31822  		return nil, gensupport.WrapError(&googleapi.Error{
 31823  			Code:   res.StatusCode,
 31824  			Header: res.Header,
 31825  		})
 31826  	}
 31827  	if err != nil {
 31828  		return nil, err
 31829  	}
 31830  	defer googleapi.CloseBody(res)
 31831  	if err := googleapi.CheckResponse(res); err != nil {
 31832  		return nil, gensupport.WrapError(err)
 31833  	}
 31834  	ret := &PlatformTypesListResponse{
 31835  		ServerResponse: googleapi.ServerResponse{
 31836  			Header:         res.Header,
 31837  			HTTPStatusCode: res.StatusCode,
 31838  		},
 31839  	}
 31840  	target := &ret
 31841  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31842  		return nil, err
 31843  	}
 31844  	return ret, nil
 31845  }
 31846  
 31847  type PostalCodesGetCall struct {
 31848  	s            *Service
 31849  	profileId    int64
 31850  	code         string
 31851  	urlParams_   gensupport.URLParams
 31852  	ifNoneMatch_ string
 31853  	ctx_         context.Context
 31854  	header_      http.Header
 31855  }
 31856  
 31857  // Get: Gets one postal code by ID.
 31858  //
 31859  // - code: Postal code ID.
 31860  // - profileId: User profile ID associated with this request.
 31861  func (r *PostalCodesService) Get(profileId int64, code string) *PostalCodesGetCall {
 31862  	c := &PostalCodesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31863  	c.profileId = profileId
 31864  	c.code = code
 31865  	return c
 31866  }
 31867  
 31868  // Fields allows partial responses to be retrieved. See
 31869  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31870  // details.
 31871  func (c *PostalCodesGetCall) Fields(s ...googleapi.Field) *PostalCodesGetCall {
 31872  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31873  	return c
 31874  }
 31875  
 31876  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 31877  // object's ETag matches the given value. This is useful for getting updates
 31878  // only after the object has changed since the last request.
 31879  func (c *PostalCodesGetCall) IfNoneMatch(entityTag string) *PostalCodesGetCall {
 31880  	c.ifNoneMatch_ = entityTag
 31881  	return c
 31882  }
 31883  
 31884  // Context sets the context to be used in this call's Do method.
 31885  func (c *PostalCodesGetCall) Context(ctx context.Context) *PostalCodesGetCall {
 31886  	c.ctx_ = ctx
 31887  	return c
 31888  }
 31889  
 31890  // Header returns a http.Header that can be modified by the caller to add
 31891  // headers to the request.
 31892  func (c *PostalCodesGetCall) Header() http.Header {
 31893  	if c.header_ == nil {
 31894  		c.header_ = make(http.Header)
 31895  	}
 31896  	return c.header_
 31897  }
 31898  
 31899  func (c *PostalCodesGetCall) doRequest(alt string) (*http.Response, error) {
 31900  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 31901  	if c.ifNoneMatch_ != "" {
 31902  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 31903  	}
 31904  	var body io.Reader = nil
 31905  	c.urlParams_.Set("alt", alt)
 31906  	c.urlParams_.Set("prettyPrint", "false")
 31907  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/postalCodes/{+code}")
 31908  	urls += "?" + c.urlParams_.Encode()
 31909  	req, err := http.NewRequest("GET", urls, body)
 31910  	if err != nil {
 31911  		return nil, err
 31912  	}
 31913  	req.Header = reqHeaders
 31914  	googleapi.Expand(req.URL, map[string]string{
 31915  		"profileId": strconv.FormatInt(c.profileId, 10),
 31916  		"code":      c.code,
 31917  	})
 31918  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 31919  }
 31920  
 31921  // Do executes the "dfareporting.postalCodes.get" call.
 31922  // Any non-2xx status code is an error. Response headers are in either
 31923  // *PostalCode.ServerResponse.Header or (if a response was returned at all) in
 31924  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 31925  // whether the returned error was because http.StatusNotModified was returned.
 31926  func (c *PostalCodesGetCall) Do(opts ...googleapi.CallOption) (*PostalCode, error) {
 31927  	gensupport.SetOptions(c.urlParams_, opts...)
 31928  	res, err := c.doRequest("json")
 31929  	if res != nil && res.StatusCode == http.StatusNotModified {
 31930  		if res.Body != nil {
 31931  			res.Body.Close()
 31932  		}
 31933  		return nil, gensupport.WrapError(&googleapi.Error{
 31934  			Code:   res.StatusCode,
 31935  			Header: res.Header,
 31936  		})
 31937  	}
 31938  	if err != nil {
 31939  		return nil, err
 31940  	}
 31941  	defer googleapi.CloseBody(res)
 31942  	if err := googleapi.CheckResponse(res); err != nil {
 31943  		return nil, gensupport.WrapError(err)
 31944  	}
 31945  	ret := &PostalCode{
 31946  		ServerResponse: googleapi.ServerResponse{
 31947  			Header:         res.Header,
 31948  			HTTPStatusCode: res.StatusCode,
 31949  		},
 31950  	}
 31951  	target := &ret
 31952  	if err := gensupport.DecodeResponse(target, res); err != nil {
 31953  		return nil, err
 31954  	}
 31955  	return ret, nil
 31956  }
 31957  
 31958  type PostalCodesListCall struct {
 31959  	s            *Service
 31960  	profileId    int64
 31961  	urlParams_   gensupport.URLParams
 31962  	ifNoneMatch_ string
 31963  	ctx_         context.Context
 31964  	header_      http.Header
 31965  }
 31966  
 31967  // List: Retrieves a list of postal codes.
 31968  //
 31969  // - profileId: User profile ID associated with this request.
 31970  func (r *PostalCodesService) List(profileId int64) *PostalCodesListCall {
 31971  	c := &PostalCodesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 31972  	c.profileId = profileId
 31973  	return c
 31974  }
 31975  
 31976  // Fields allows partial responses to be retrieved. See
 31977  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 31978  // details.
 31979  func (c *PostalCodesListCall) Fields(s ...googleapi.Field) *PostalCodesListCall {
 31980  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 31981  	return c
 31982  }
 31983  
 31984  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 31985  // object's ETag matches the given value. This is useful for getting updates
 31986  // only after the object has changed since the last request.
 31987  func (c *PostalCodesListCall) IfNoneMatch(entityTag string) *PostalCodesListCall {
 31988  	c.ifNoneMatch_ = entityTag
 31989  	return c
 31990  }
 31991  
 31992  // Context sets the context to be used in this call's Do method.
 31993  func (c *PostalCodesListCall) Context(ctx context.Context) *PostalCodesListCall {
 31994  	c.ctx_ = ctx
 31995  	return c
 31996  }
 31997  
 31998  // Header returns a http.Header that can be modified by the caller to add
 31999  // headers to the request.
 32000  func (c *PostalCodesListCall) Header() http.Header {
 32001  	if c.header_ == nil {
 32002  		c.header_ = make(http.Header)
 32003  	}
 32004  	return c.header_
 32005  }
 32006  
 32007  func (c *PostalCodesListCall) doRequest(alt string) (*http.Response, error) {
 32008  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 32009  	if c.ifNoneMatch_ != "" {
 32010  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 32011  	}
 32012  	var body io.Reader = nil
 32013  	c.urlParams_.Set("alt", alt)
 32014  	c.urlParams_.Set("prettyPrint", "false")
 32015  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/postalCodes")
 32016  	urls += "?" + c.urlParams_.Encode()
 32017  	req, err := http.NewRequest("GET", urls, body)
 32018  	if err != nil {
 32019  		return nil, err
 32020  	}
 32021  	req.Header = reqHeaders
 32022  	googleapi.Expand(req.URL, map[string]string{
 32023  		"profileId": strconv.FormatInt(c.profileId, 10),
 32024  	})
 32025  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32026  }
 32027  
 32028  // Do executes the "dfareporting.postalCodes.list" call.
 32029  // Any non-2xx status code is an error. Response headers are in either
 32030  // *PostalCodesListResponse.ServerResponse.Header or (if a response was
 32031  // returned at all) in error.(*googleapi.Error).Header. Use
 32032  // googleapi.IsNotModified to check whether the returned error was because
 32033  // http.StatusNotModified was returned.
 32034  func (c *PostalCodesListCall) Do(opts ...googleapi.CallOption) (*PostalCodesListResponse, error) {
 32035  	gensupport.SetOptions(c.urlParams_, opts...)
 32036  	res, err := c.doRequest("json")
 32037  	if res != nil && res.StatusCode == http.StatusNotModified {
 32038  		if res.Body != nil {
 32039  			res.Body.Close()
 32040  		}
 32041  		return nil, gensupport.WrapError(&googleapi.Error{
 32042  			Code:   res.StatusCode,
 32043  			Header: res.Header,
 32044  		})
 32045  	}
 32046  	if err != nil {
 32047  		return nil, err
 32048  	}
 32049  	defer googleapi.CloseBody(res)
 32050  	if err := googleapi.CheckResponse(res); err != nil {
 32051  		return nil, gensupport.WrapError(err)
 32052  	}
 32053  	ret := &PostalCodesListResponse{
 32054  		ServerResponse: googleapi.ServerResponse{
 32055  			Header:         res.Header,
 32056  			HTTPStatusCode: res.StatusCode,
 32057  		},
 32058  	}
 32059  	target := &ret
 32060  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32061  		return nil, err
 32062  	}
 32063  	return ret, nil
 32064  }
 32065  
 32066  type ProjectsGetCall struct {
 32067  	s            *Service
 32068  	profileId    int64
 32069  	id           int64
 32070  	urlParams_   gensupport.URLParams
 32071  	ifNoneMatch_ string
 32072  	ctx_         context.Context
 32073  	header_      http.Header
 32074  }
 32075  
 32076  // Get: Gets one project by ID.
 32077  //
 32078  // - id: Project ID.
 32079  // - profileId: User profile ID associated with this request.
 32080  func (r *ProjectsService) Get(profileId int64, id int64) *ProjectsGetCall {
 32081  	c := &ProjectsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32082  	c.profileId = profileId
 32083  	c.id = id
 32084  	return c
 32085  }
 32086  
 32087  // Fields allows partial responses to be retrieved. See
 32088  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32089  // details.
 32090  func (c *ProjectsGetCall) Fields(s ...googleapi.Field) *ProjectsGetCall {
 32091  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32092  	return c
 32093  }
 32094  
 32095  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 32096  // object's ETag matches the given value. This is useful for getting updates
 32097  // only after the object has changed since the last request.
 32098  func (c *ProjectsGetCall) IfNoneMatch(entityTag string) *ProjectsGetCall {
 32099  	c.ifNoneMatch_ = entityTag
 32100  	return c
 32101  }
 32102  
 32103  // Context sets the context to be used in this call's Do method.
 32104  func (c *ProjectsGetCall) Context(ctx context.Context) *ProjectsGetCall {
 32105  	c.ctx_ = ctx
 32106  	return c
 32107  }
 32108  
 32109  // Header returns a http.Header that can be modified by the caller to add
 32110  // headers to the request.
 32111  func (c *ProjectsGetCall) Header() http.Header {
 32112  	if c.header_ == nil {
 32113  		c.header_ = make(http.Header)
 32114  	}
 32115  	return c.header_
 32116  }
 32117  
 32118  func (c *ProjectsGetCall) doRequest(alt string) (*http.Response, error) {
 32119  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 32120  	if c.ifNoneMatch_ != "" {
 32121  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 32122  	}
 32123  	var body io.Reader = nil
 32124  	c.urlParams_.Set("alt", alt)
 32125  	c.urlParams_.Set("prettyPrint", "false")
 32126  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/projects/{+id}")
 32127  	urls += "?" + c.urlParams_.Encode()
 32128  	req, err := http.NewRequest("GET", urls, body)
 32129  	if err != nil {
 32130  		return nil, err
 32131  	}
 32132  	req.Header = reqHeaders
 32133  	googleapi.Expand(req.URL, map[string]string{
 32134  		"profileId": strconv.FormatInt(c.profileId, 10),
 32135  		"id":        strconv.FormatInt(c.id, 10),
 32136  	})
 32137  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32138  }
 32139  
 32140  // Do executes the "dfareporting.projects.get" call.
 32141  // Any non-2xx status code is an error. Response headers are in either
 32142  // *Project.ServerResponse.Header or (if a response was returned at all) in
 32143  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 32144  // whether the returned error was because http.StatusNotModified was returned.
 32145  func (c *ProjectsGetCall) Do(opts ...googleapi.CallOption) (*Project, error) {
 32146  	gensupport.SetOptions(c.urlParams_, opts...)
 32147  	res, err := c.doRequest("json")
 32148  	if res != nil && res.StatusCode == http.StatusNotModified {
 32149  		if res.Body != nil {
 32150  			res.Body.Close()
 32151  		}
 32152  		return nil, gensupport.WrapError(&googleapi.Error{
 32153  			Code:   res.StatusCode,
 32154  			Header: res.Header,
 32155  		})
 32156  	}
 32157  	if err != nil {
 32158  		return nil, err
 32159  	}
 32160  	defer googleapi.CloseBody(res)
 32161  	if err := googleapi.CheckResponse(res); err != nil {
 32162  		return nil, gensupport.WrapError(err)
 32163  	}
 32164  	ret := &Project{
 32165  		ServerResponse: googleapi.ServerResponse{
 32166  			Header:         res.Header,
 32167  			HTTPStatusCode: res.StatusCode,
 32168  		},
 32169  	}
 32170  	target := &ret
 32171  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32172  		return nil, err
 32173  	}
 32174  	return ret, nil
 32175  }
 32176  
 32177  type ProjectsListCall struct {
 32178  	s            *Service
 32179  	profileId    int64
 32180  	urlParams_   gensupport.URLParams
 32181  	ifNoneMatch_ string
 32182  	ctx_         context.Context
 32183  	header_      http.Header
 32184  }
 32185  
 32186  // List: Retrieves a list of projects, possibly filtered. This method supports
 32187  // paging .
 32188  //
 32189  // - profileId: User profile ID associated with this request.
 32190  func (r *ProjectsService) List(profileId int64) *ProjectsListCall {
 32191  	c := &ProjectsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32192  	c.profileId = profileId
 32193  	return c
 32194  }
 32195  
 32196  // AdvertiserIds sets the optional parameter "advertiserIds": Select only
 32197  // projects with these advertiser IDs.
 32198  func (c *ProjectsListCall) AdvertiserIds(advertiserIds ...int64) *ProjectsListCall {
 32199  	var advertiserIds_ []string
 32200  	for _, v := range advertiserIds {
 32201  		advertiserIds_ = append(advertiserIds_, fmt.Sprint(v))
 32202  	}
 32203  	c.urlParams_.SetMulti("advertiserIds", advertiserIds_)
 32204  	return c
 32205  }
 32206  
 32207  // Ids sets the optional parameter "ids": Select only projects with these IDs.
 32208  func (c *ProjectsListCall) Ids(ids ...int64) *ProjectsListCall {
 32209  	var ids_ []string
 32210  	for _, v := range ids {
 32211  		ids_ = append(ids_, fmt.Sprint(v))
 32212  	}
 32213  	c.urlParams_.SetMulti("ids", ids_)
 32214  	return c
 32215  }
 32216  
 32217  // MaxResults sets the optional parameter "maxResults": Maximum number of
 32218  // results to return.
 32219  func (c *ProjectsListCall) MaxResults(maxResults int64) *ProjectsListCall {
 32220  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 32221  	return c
 32222  }
 32223  
 32224  // PageToken sets the optional parameter "pageToken": Value of the
 32225  // nextPageToken from the previous result page.
 32226  func (c *ProjectsListCall) PageToken(pageToken string) *ProjectsListCall {
 32227  	c.urlParams_.Set("pageToken", pageToken)
 32228  	return c
 32229  }
 32230  
 32231  // SearchString sets the optional parameter "searchString": Allows searching
 32232  // for projects by name or ID. Wildcards (*) are allowed. For example,
 32233  // "project*2015" will return projects with names like "project June 2015",
 32234  // "project April 2015", or simply "project 2015". Most of the searches also
 32235  // add wildcards implicitly at the start and the end of the search string. For
 32236  // example, a search string of "project" will match projects with name "my
 32237  // project", "project 2015", or simply "project".
 32238  func (c *ProjectsListCall) SearchString(searchString string) *ProjectsListCall {
 32239  	c.urlParams_.Set("searchString", searchString)
 32240  	return c
 32241  }
 32242  
 32243  // SortField sets the optional parameter "sortField": Field by which to sort
 32244  // the list.
 32245  //
 32246  // Possible values:
 32247  //
 32248  //	"ID" (default)
 32249  //	"NAME"
 32250  func (c *ProjectsListCall) SortField(sortField string) *ProjectsListCall {
 32251  	c.urlParams_.Set("sortField", sortField)
 32252  	return c
 32253  }
 32254  
 32255  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 32256  //
 32257  // Possible values:
 32258  //
 32259  //	"ASCENDING" (default) - Ascending order.
 32260  //	"DESCENDING" - Descending order.
 32261  func (c *ProjectsListCall) SortOrder(sortOrder string) *ProjectsListCall {
 32262  	c.urlParams_.Set("sortOrder", sortOrder)
 32263  	return c
 32264  }
 32265  
 32266  // Fields allows partial responses to be retrieved. See
 32267  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32268  // details.
 32269  func (c *ProjectsListCall) Fields(s ...googleapi.Field) *ProjectsListCall {
 32270  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32271  	return c
 32272  }
 32273  
 32274  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 32275  // object's ETag matches the given value. This is useful for getting updates
 32276  // only after the object has changed since the last request.
 32277  func (c *ProjectsListCall) IfNoneMatch(entityTag string) *ProjectsListCall {
 32278  	c.ifNoneMatch_ = entityTag
 32279  	return c
 32280  }
 32281  
 32282  // Context sets the context to be used in this call's Do method.
 32283  func (c *ProjectsListCall) Context(ctx context.Context) *ProjectsListCall {
 32284  	c.ctx_ = ctx
 32285  	return c
 32286  }
 32287  
 32288  // Header returns a http.Header that can be modified by the caller to add
 32289  // headers to the request.
 32290  func (c *ProjectsListCall) Header() http.Header {
 32291  	if c.header_ == nil {
 32292  		c.header_ = make(http.Header)
 32293  	}
 32294  	return c.header_
 32295  }
 32296  
 32297  func (c *ProjectsListCall) doRequest(alt string) (*http.Response, error) {
 32298  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 32299  	if c.ifNoneMatch_ != "" {
 32300  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 32301  	}
 32302  	var body io.Reader = nil
 32303  	c.urlParams_.Set("alt", alt)
 32304  	c.urlParams_.Set("prettyPrint", "false")
 32305  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/projects")
 32306  	urls += "?" + c.urlParams_.Encode()
 32307  	req, err := http.NewRequest("GET", urls, body)
 32308  	if err != nil {
 32309  		return nil, err
 32310  	}
 32311  	req.Header = reqHeaders
 32312  	googleapi.Expand(req.URL, map[string]string{
 32313  		"profileId": strconv.FormatInt(c.profileId, 10),
 32314  	})
 32315  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32316  }
 32317  
 32318  // Do executes the "dfareporting.projects.list" call.
 32319  // Any non-2xx status code is an error. Response headers are in either
 32320  // *ProjectsListResponse.ServerResponse.Header or (if a response was returned
 32321  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 32322  // check whether the returned error was because http.StatusNotModified was
 32323  // returned.
 32324  func (c *ProjectsListCall) Do(opts ...googleapi.CallOption) (*ProjectsListResponse, error) {
 32325  	gensupport.SetOptions(c.urlParams_, opts...)
 32326  	res, err := c.doRequest("json")
 32327  	if res != nil && res.StatusCode == http.StatusNotModified {
 32328  		if res.Body != nil {
 32329  			res.Body.Close()
 32330  		}
 32331  		return nil, gensupport.WrapError(&googleapi.Error{
 32332  			Code:   res.StatusCode,
 32333  			Header: res.Header,
 32334  		})
 32335  	}
 32336  	if err != nil {
 32337  		return nil, err
 32338  	}
 32339  	defer googleapi.CloseBody(res)
 32340  	if err := googleapi.CheckResponse(res); err != nil {
 32341  		return nil, gensupport.WrapError(err)
 32342  	}
 32343  	ret := &ProjectsListResponse{
 32344  		ServerResponse: googleapi.ServerResponse{
 32345  			Header:         res.Header,
 32346  			HTTPStatusCode: res.StatusCode,
 32347  		},
 32348  	}
 32349  	target := &ret
 32350  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32351  		return nil, err
 32352  	}
 32353  	return ret, nil
 32354  }
 32355  
 32356  // Pages invokes f for each page of results.
 32357  // A non-nil error returned from f will halt the iteration.
 32358  // The provided context supersedes any context provided to the Context method.
 32359  func (c *ProjectsListCall) Pages(ctx context.Context, f func(*ProjectsListResponse) error) error {
 32360  	c.ctx_ = ctx
 32361  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 32362  	for {
 32363  		x, err := c.Do()
 32364  		if err != nil {
 32365  			return err
 32366  		}
 32367  		if err := f(x); err != nil {
 32368  			return err
 32369  		}
 32370  		if x.NextPageToken == "" {
 32371  			return nil
 32372  		}
 32373  		c.PageToken(x.NextPageToken)
 32374  	}
 32375  }
 32376  
 32377  type RegionsListCall struct {
 32378  	s            *Service
 32379  	profileId    int64
 32380  	urlParams_   gensupport.URLParams
 32381  	ifNoneMatch_ string
 32382  	ctx_         context.Context
 32383  	header_      http.Header
 32384  }
 32385  
 32386  // List: Retrieves a list of regions.
 32387  //
 32388  // - profileId: User profile ID associated with this request.
 32389  func (r *RegionsService) List(profileId int64) *RegionsListCall {
 32390  	c := &RegionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32391  	c.profileId = profileId
 32392  	return c
 32393  }
 32394  
 32395  // Fields allows partial responses to be retrieved. See
 32396  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32397  // details.
 32398  func (c *RegionsListCall) Fields(s ...googleapi.Field) *RegionsListCall {
 32399  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32400  	return c
 32401  }
 32402  
 32403  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 32404  // object's ETag matches the given value. This is useful for getting updates
 32405  // only after the object has changed since the last request.
 32406  func (c *RegionsListCall) IfNoneMatch(entityTag string) *RegionsListCall {
 32407  	c.ifNoneMatch_ = entityTag
 32408  	return c
 32409  }
 32410  
 32411  // Context sets the context to be used in this call's Do method.
 32412  func (c *RegionsListCall) Context(ctx context.Context) *RegionsListCall {
 32413  	c.ctx_ = ctx
 32414  	return c
 32415  }
 32416  
 32417  // Header returns a http.Header that can be modified by the caller to add
 32418  // headers to the request.
 32419  func (c *RegionsListCall) Header() http.Header {
 32420  	if c.header_ == nil {
 32421  		c.header_ = make(http.Header)
 32422  	}
 32423  	return c.header_
 32424  }
 32425  
 32426  func (c *RegionsListCall) doRequest(alt string) (*http.Response, error) {
 32427  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 32428  	if c.ifNoneMatch_ != "" {
 32429  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 32430  	}
 32431  	var body io.Reader = nil
 32432  	c.urlParams_.Set("alt", alt)
 32433  	c.urlParams_.Set("prettyPrint", "false")
 32434  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/regions")
 32435  	urls += "?" + c.urlParams_.Encode()
 32436  	req, err := http.NewRequest("GET", urls, body)
 32437  	if err != nil {
 32438  		return nil, err
 32439  	}
 32440  	req.Header = reqHeaders
 32441  	googleapi.Expand(req.URL, map[string]string{
 32442  		"profileId": strconv.FormatInt(c.profileId, 10),
 32443  	})
 32444  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32445  }
 32446  
 32447  // Do executes the "dfareporting.regions.list" call.
 32448  // Any non-2xx status code is an error. Response headers are in either
 32449  // *RegionsListResponse.ServerResponse.Header or (if a response was returned at
 32450  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 32451  // check whether the returned error was because http.StatusNotModified was
 32452  // returned.
 32453  func (c *RegionsListCall) Do(opts ...googleapi.CallOption) (*RegionsListResponse, error) {
 32454  	gensupport.SetOptions(c.urlParams_, opts...)
 32455  	res, err := c.doRequest("json")
 32456  	if res != nil && res.StatusCode == http.StatusNotModified {
 32457  		if res.Body != nil {
 32458  			res.Body.Close()
 32459  		}
 32460  		return nil, gensupport.WrapError(&googleapi.Error{
 32461  			Code:   res.StatusCode,
 32462  			Header: res.Header,
 32463  		})
 32464  	}
 32465  	if err != nil {
 32466  		return nil, err
 32467  	}
 32468  	defer googleapi.CloseBody(res)
 32469  	if err := googleapi.CheckResponse(res); err != nil {
 32470  		return nil, gensupport.WrapError(err)
 32471  	}
 32472  	ret := &RegionsListResponse{
 32473  		ServerResponse: googleapi.ServerResponse{
 32474  			Header:         res.Header,
 32475  			HTTPStatusCode: res.StatusCode,
 32476  		},
 32477  	}
 32478  	target := &ret
 32479  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32480  		return nil, err
 32481  	}
 32482  	return ret, nil
 32483  }
 32484  
 32485  type RemarketingListSharesGetCall struct {
 32486  	s                 *Service
 32487  	profileId         int64
 32488  	remarketingListId int64
 32489  	urlParams_        gensupport.URLParams
 32490  	ifNoneMatch_      string
 32491  	ctx_              context.Context
 32492  	header_           http.Header
 32493  }
 32494  
 32495  // Get: Gets one remarketing list share by remarketing list ID.
 32496  //
 32497  // - profileId: User profile ID associated with this request.
 32498  // - remarketingListId: Remarketing list ID.
 32499  func (r *RemarketingListSharesService) Get(profileId int64, remarketingListId int64) *RemarketingListSharesGetCall {
 32500  	c := &RemarketingListSharesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32501  	c.profileId = profileId
 32502  	c.remarketingListId = remarketingListId
 32503  	return c
 32504  }
 32505  
 32506  // Fields allows partial responses to be retrieved. See
 32507  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32508  // details.
 32509  func (c *RemarketingListSharesGetCall) Fields(s ...googleapi.Field) *RemarketingListSharesGetCall {
 32510  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32511  	return c
 32512  }
 32513  
 32514  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 32515  // object's ETag matches the given value. This is useful for getting updates
 32516  // only after the object has changed since the last request.
 32517  func (c *RemarketingListSharesGetCall) IfNoneMatch(entityTag string) *RemarketingListSharesGetCall {
 32518  	c.ifNoneMatch_ = entityTag
 32519  	return c
 32520  }
 32521  
 32522  // Context sets the context to be used in this call's Do method.
 32523  func (c *RemarketingListSharesGetCall) Context(ctx context.Context) *RemarketingListSharesGetCall {
 32524  	c.ctx_ = ctx
 32525  	return c
 32526  }
 32527  
 32528  // Header returns a http.Header that can be modified by the caller to add
 32529  // headers to the request.
 32530  func (c *RemarketingListSharesGetCall) Header() http.Header {
 32531  	if c.header_ == nil {
 32532  		c.header_ = make(http.Header)
 32533  	}
 32534  	return c.header_
 32535  }
 32536  
 32537  func (c *RemarketingListSharesGetCall) doRequest(alt string) (*http.Response, error) {
 32538  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 32539  	if c.ifNoneMatch_ != "" {
 32540  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 32541  	}
 32542  	var body io.Reader = nil
 32543  	c.urlParams_.Set("alt", alt)
 32544  	c.urlParams_.Set("prettyPrint", "false")
 32545  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/remarketingListShares/{+remarketingListId}")
 32546  	urls += "?" + c.urlParams_.Encode()
 32547  	req, err := http.NewRequest("GET", urls, body)
 32548  	if err != nil {
 32549  		return nil, err
 32550  	}
 32551  	req.Header = reqHeaders
 32552  	googleapi.Expand(req.URL, map[string]string{
 32553  		"profileId":         strconv.FormatInt(c.profileId, 10),
 32554  		"remarketingListId": strconv.FormatInt(c.remarketingListId, 10),
 32555  	})
 32556  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32557  }
 32558  
 32559  // Do executes the "dfareporting.remarketingListShares.get" call.
 32560  // Any non-2xx status code is an error. Response headers are in either
 32561  // *RemarketingListShare.ServerResponse.Header or (if a response was returned
 32562  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 32563  // check whether the returned error was because http.StatusNotModified was
 32564  // returned.
 32565  func (c *RemarketingListSharesGetCall) Do(opts ...googleapi.CallOption) (*RemarketingListShare, error) {
 32566  	gensupport.SetOptions(c.urlParams_, opts...)
 32567  	res, err := c.doRequest("json")
 32568  	if res != nil && res.StatusCode == http.StatusNotModified {
 32569  		if res.Body != nil {
 32570  			res.Body.Close()
 32571  		}
 32572  		return nil, gensupport.WrapError(&googleapi.Error{
 32573  			Code:   res.StatusCode,
 32574  			Header: res.Header,
 32575  		})
 32576  	}
 32577  	if err != nil {
 32578  		return nil, err
 32579  	}
 32580  	defer googleapi.CloseBody(res)
 32581  	if err := googleapi.CheckResponse(res); err != nil {
 32582  		return nil, gensupport.WrapError(err)
 32583  	}
 32584  	ret := &RemarketingListShare{
 32585  		ServerResponse: googleapi.ServerResponse{
 32586  			Header:         res.Header,
 32587  			HTTPStatusCode: res.StatusCode,
 32588  		},
 32589  	}
 32590  	target := &ret
 32591  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32592  		return nil, err
 32593  	}
 32594  	return ret, nil
 32595  }
 32596  
 32597  type RemarketingListSharesPatchCall struct {
 32598  	s                    *Service
 32599  	profileId            int64
 32600  	remarketinglistshare *RemarketingListShare
 32601  	urlParams_           gensupport.URLParams
 32602  	ctx_                 context.Context
 32603  	header_              http.Header
 32604  }
 32605  
 32606  // Patch: Updates an existing RemarketingListShare. This method supports patch
 32607  // semantics.
 32608  //
 32609  // - id: RemarketingList ID.
 32610  // - profileId: User profile ID associated with this request.
 32611  func (r *RemarketingListSharesService) Patch(profileId int64, id int64, remarketinglistshare *RemarketingListShare) *RemarketingListSharesPatchCall {
 32612  	c := &RemarketingListSharesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32613  	c.profileId = profileId
 32614  	c.urlParams_.Set("id", fmt.Sprint(id))
 32615  	c.remarketinglistshare = remarketinglistshare
 32616  	return c
 32617  }
 32618  
 32619  // Fields allows partial responses to be retrieved. See
 32620  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32621  // details.
 32622  func (c *RemarketingListSharesPatchCall) Fields(s ...googleapi.Field) *RemarketingListSharesPatchCall {
 32623  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32624  	return c
 32625  }
 32626  
 32627  // Context sets the context to be used in this call's Do method.
 32628  func (c *RemarketingListSharesPatchCall) Context(ctx context.Context) *RemarketingListSharesPatchCall {
 32629  	c.ctx_ = ctx
 32630  	return c
 32631  }
 32632  
 32633  // Header returns a http.Header that can be modified by the caller to add
 32634  // headers to the request.
 32635  func (c *RemarketingListSharesPatchCall) Header() http.Header {
 32636  	if c.header_ == nil {
 32637  		c.header_ = make(http.Header)
 32638  	}
 32639  	return c.header_
 32640  }
 32641  
 32642  func (c *RemarketingListSharesPatchCall) doRequest(alt string) (*http.Response, error) {
 32643  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 32644  	var body io.Reader = nil
 32645  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.remarketinglistshare)
 32646  	if err != nil {
 32647  		return nil, err
 32648  	}
 32649  	c.urlParams_.Set("alt", alt)
 32650  	c.urlParams_.Set("prettyPrint", "false")
 32651  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/remarketingListShares")
 32652  	urls += "?" + c.urlParams_.Encode()
 32653  	req, err := http.NewRequest("PATCH", urls, body)
 32654  	if err != nil {
 32655  		return nil, err
 32656  	}
 32657  	req.Header = reqHeaders
 32658  	googleapi.Expand(req.URL, map[string]string{
 32659  		"profileId": strconv.FormatInt(c.profileId, 10),
 32660  	})
 32661  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32662  }
 32663  
 32664  // Do executes the "dfareporting.remarketingListShares.patch" call.
 32665  // Any non-2xx status code is an error. Response headers are in either
 32666  // *RemarketingListShare.ServerResponse.Header or (if a response was returned
 32667  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 32668  // check whether the returned error was because http.StatusNotModified was
 32669  // returned.
 32670  func (c *RemarketingListSharesPatchCall) Do(opts ...googleapi.CallOption) (*RemarketingListShare, error) {
 32671  	gensupport.SetOptions(c.urlParams_, opts...)
 32672  	res, err := c.doRequest("json")
 32673  	if res != nil && res.StatusCode == http.StatusNotModified {
 32674  		if res.Body != nil {
 32675  			res.Body.Close()
 32676  		}
 32677  		return nil, gensupport.WrapError(&googleapi.Error{
 32678  			Code:   res.StatusCode,
 32679  			Header: res.Header,
 32680  		})
 32681  	}
 32682  	if err != nil {
 32683  		return nil, err
 32684  	}
 32685  	defer googleapi.CloseBody(res)
 32686  	if err := googleapi.CheckResponse(res); err != nil {
 32687  		return nil, gensupport.WrapError(err)
 32688  	}
 32689  	ret := &RemarketingListShare{
 32690  		ServerResponse: googleapi.ServerResponse{
 32691  			Header:         res.Header,
 32692  			HTTPStatusCode: res.StatusCode,
 32693  		},
 32694  	}
 32695  	target := &ret
 32696  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32697  		return nil, err
 32698  	}
 32699  	return ret, nil
 32700  }
 32701  
 32702  type RemarketingListSharesUpdateCall struct {
 32703  	s                    *Service
 32704  	profileId            int64
 32705  	remarketinglistshare *RemarketingListShare
 32706  	urlParams_           gensupport.URLParams
 32707  	ctx_                 context.Context
 32708  	header_              http.Header
 32709  }
 32710  
 32711  // Update: Updates an existing remarketing list share.
 32712  //
 32713  // - profileId: User profile ID associated with this request.
 32714  func (r *RemarketingListSharesService) Update(profileId int64, remarketinglistshare *RemarketingListShare) *RemarketingListSharesUpdateCall {
 32715  	c := &RemarketingListSharesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32716  	c.profileId = profileId
 32717  	c.remarketinglistshare = remarketinglistshare
 32718  	return c
 32719  }
 32720  
 32721  // Fields allows partial responses to be retrieved. See
 32722  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32723  // details.
 32724  func (c *RemarketingListSharesUpdateCall) Fields(s ...googleapi.Field) *RemarketingListSharesUpdateCall {
 32725  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32726  	return c
 32727  }
 32728  
 32729  // Context sets the context to be used in this call's Do method.
 32730  func (c *RemarketingListSharesUpdateCall) Context(ctx context.Context) *RemarketingListSharesUpdateCall {
 32731  	c.ctx_ = ctx
 32732  	return c
 32733  }
 32734  
 32735  // Header returns a http.Header that can be modified by the caller to add
 32736  // headers to the request.
 32737  func (c *RemarketingListSharesUpdateCall) Header() http.Header {
 32738  	if c.header_ == nil {
 32739  		c.header_ = make(http.Header)
 32740  	}
 32741  	return c.header_
 32742  }
 32743  
 32744  func (c *RemarketingListSharesUpdateCall) doRequest(alt string) (*http.Response, error) {
 32745  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 32746  	var body io.Reader = nil
 32747  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.remarketinglistshare)
 32748  	if err != nil {
 32749  		return nil, err
 32750  	}
 32751  	c.urlParams_.Set("alt", alt)
 32752  	c.urlParams_.Set("prettyPrint", "false")
 32753  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/remarketingListShares")
 32754  	urls += "?" + c.urlParams_.Encode()
 32755  	req, err := http.NewRequest("PUT", urls, body)
 32756  	if err != nil {
 32757  		return nil, err
 32758  	}
 32759  	req.Header = reqHeaders
 32760  	googleapi.Expand(req.URL, map[string]string{
 32761  		"profileId": strconv.FormatInt(c.profileId, 10),
 32762  	})
 32763  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32764  }
 32765  
 32766  // Do executes the "dfareporting.remarketingListShares.update" call.
 32767  // Any non-2xx status code is an error. Response headers are in either
 32768  // *RemarketingListShare.ServerResponse.Header or (if a response was returned
 32769  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 32770  // check whether the returned error was because http.StatusNotModified was
 32771  // returned.
 32772  func (c *RemarketingListSharesUpdateCall) Do(opts ...googleapi.CallOption) (*RemarketingListShare, error) {
 32773  	gensupport.SetOptions(c.urlParams_, opts...)
 32774  	res, err := c.doRequest("json")
 32775  	if res != nil && res.StatusCode == http.StatusNotModified {
 32776  		if res.Body != nil {
 32777  			res.Body.Close()
 32778  		}
 32779  		return nil, gensupport.WrapError(&googleapi.Error{
 32780  			Code:   res.StatusCode,
 32781  			Header: res.Header,
 32782  		})
 32783  	}
 32784  	if err != nil {
 32785  		return nil, err
 32786  	}
 32787  	defer googleapi.CloseBody(res)
 32788  	if err := googleapi.CheckResponse(res); err != nil {
 32789  		return nil, gensupport.WrapError(err)
 32790  	}
 32791  	ret := &RemarketingListShare{
 32792  		ServerResponse: googleapi.ServerResponse{
 32793  			Header:         res.Header,
 32794  			HTTPStatusCode: res.StatusCode,
 32795  		},
 32796  	}
 32797  	target := &ret
 32798  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32799  		return nil, err
 32800  	}
 32801  	return ret, nil
 32802  }
 32803  
 32804  type RemarketingListsGetCall struct {
 32805  	s            *Service
 32806  	profileId    int64
 32807  	id           int64
 32808  	urlParams_   gensupport.URLParams
 32809  	ifNoneMatch_ string
 32810  	ctx_         context.Context
 32811  	header_      http.Header
 32812  }
 32813  
 32814  // Get: Gets one remarketing list by ID.
 32815  //
 32816  // - id: Remarketing list ID.
 32817  // - profileId: User profile ID associated with this request.
 32818  func (r *RemarketingListsService) Get(profileId int64, id int64) *RemarketingListsGetCall {
 32819  	c := &RemarketingListsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32820  	c.profileId = profileId
 32821  	c.id = id
 32822  	return c
 32823  }
 32824  
 32825  // Fields allows partial responses to be retrieved. See
 32826  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32827  // details.
 32828  func (c *RemarketingListsGetCall) Fields(s ...googleapi.Field) *RemarketingListsGetCall {
 32829  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32830  	return c
 32831  }
 32832  
 32833  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 32834  // object's ETag matches the given value. This is useful for getting updates
 32835  // only after the object has changed since the last request.
 32836  func (c *RemarketingListsGetCall) IfNoneMatch(entityTag string) *RemarketingListsGetCall {
 32837  	c.ifNoneMatch_ = entityTag
 32838  	return c
 32839  }
 32840  
 32841  // Context sets the context to be used in this call's Do method.
 32842  func (c *RemarketingListsGetCall) Context(ctx context.Context) *RemarketingListsGetCall {
 32843  	c.ctx_ = ctx
 32844  	return c
 32845  }
 32846  
 32847  // Header returns a http.Header that can be modified by the caller to add
 32848  // headers to the request.
 32849  func (c *RemarketingListsGetCall) Header() http.Header {
 32850  	if c.header_ == nil {
 32851  		c.header_ = make(http.Header)
 32852  	}
 32853  	return c.header_
 32854  }
 32855  
 32856  func (c *RemarketingListsGetCall) doRequest(alt string) (*http.Response, error) {
 32857  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 32858  	if c.ifNoneMatch_ != "" {
 32859  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 32860  	}
 32861  	var body io.Reader = nil
 32862  	c.urlParams_.Set("alt", alt)
 32863  	c.urlParams_.Set("prettyPrint", "false")
 32864  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/remarketingLists/{+id}")
 32865  	urls += "?" + c.urlParams_.Encode()
 32866  	req, err := http.NewRequest("GET", urls, body)
 32867  	if err != nil {
 32868  		return nil, err
 32869  	}
 32870  	req.Header = reqHeaders
 32871  	googleapi.Expand(req.URL, map[string]string{
 32872  		"profileId": strconv.FormatInt(c.profileId, 10),
 32873  		"id":        strconv.FormatInt(c.id, 10),
 32874  	})
 32875  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32876  }
 32877  
 32878  // Do executes the "dfareporting.remarketingLists.get" call.
 32879  // Any non-2xx status code is an error. Response headers are in either
 32880  // *RemarketingList.ServerResponse.Header or (if a response was returned at
 32881  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 32882  // check whether the returned error was because http.StatusNotModified was
 32883  // returned.
 32884  func (c *RemarketingListsGetCall) Do(opts ...googleapi.CallOption) (*RemarketingList, error) {
 32885  	gensupport.SetOptions(c.urlParams_, opts...)
 32886  	res, err := c.doRequest("json")
 32887  	if res != nil && res.StatusCode == http.StatusNotModified {
 32888  		if res.Body != nil {
 32889  			res.Body.Close()
 32890  		}
 32891  		return nil, gensupport.WrapError(&googleapi.Error{
 32892  			Code:   res.StatusCode,
 32893  			Header: res.Header,
 32894  		})
 32895  	}
 32896  	if err != nil {
 32897  		return nil, err
 32898  	}
 32899  	defer googleapi.CloseBody(res)
 32900  	if err := googleapi.CheckResponse(res); err != nil {
 32901  		return nil, gensupport.WrapError(err)
 32902  	}
 32903  	ret := &RemarketingList{
 32904  		ServerResponse: googleapi.ServerResponse{
 32905  			Header:         res.Header,
 32906  			HTTPStatusCode: res.StatusCode,
 32907  		},
 32908  	}
 32909  	target := &ret
 32910  	if err := gensupport.DecodeResponse(target, res); err != nil {
 32911  		return nil, err
 32912  	}
 32913  	return ret, nil
 32914  }
 32915  
 32916  type RemarketingListsInsertCall struct {
 32917  	s               *Service
 32918  	profileId       int64
 32919  	remarketinglist *RemarketingList
 32920  	urlParams_      gensupport.URLParams
 32921  	ctx_            context.Context
 32922  	header_         http.Header
 32923  }
 32924  
 32925  // Insert: Inserts a new remarketing list.
 32926  //
 32927  // - profileId: User profile ID associated with this request.
 32928  func (r *RemarketingListsService) Insert(profileId int64, remarketinglist *RemarketingList) *RemarketingListsInsertCall {
 32929  	c := &RemarketingListsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 32930  	c.profileId = profileId
 32931  	c.remarketinglist = remarketinglist
 32932  	return c
 32933  }
 32934  
 32935  // Fields allows partial responses to be retrieved. See
 32936  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 32937  // details.
 32938  func (c *RemarketingListsInsertCall) Fields(s ...googleapi.Field) *RemarketingListsInsertCall {
 32939  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 32940  	return c
 32941  }
 32942  
 32943  // Context sets the context to be used in this call's Do method.
 32944  func (c *RemarketingListsInsertCall) Context(ctx context.Context) *RemarketingListsInsertCall {
 32945  	c.ctx_ = ctx
 32946  	return c
 32947  }
 32948  
 32949  // Header returns a http.Header that can be modified by the caller to add
 32950  // headers to the request.
 32951  func (c *RemarketingListsInsertCall) Header() http.Header {
 32952  	if c.header_ == nil {
 32953  		c.header_ = make(http.Header)
 32954  	}
 32955  	return c.header_
 32956  }
 32957  
 32958  func (c *RemarketingListsInsertCall) doRequest(alt string) (*http.Response, error) {
 32959  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 32960  	var body io.Reader = nil
 32961  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.remarketinglist)
 32962  	if err != nil {
 32963  		return nil, err
 32964  	}
 32965  	c.urlParams_.Set("alt", alt)
 32966  	c.urlParams_.Set("prettyPrint", "false")
 32967  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/remarketingLists")
 32968  	urls += "?" + c.urlParams_.Encode()
 32969  	req, err := http.NewRequest("POST", urls, body)
 32970  	if err != nil {
 32971  		return nil, err
 32972  	}
 32973  	req.Header = reqHeaders
 32974  	googleapi.Expand(req.URL, map[string]string{
 32975  		"profileId": strconv.FormatInt(c.profileId, 10),
 32976  	})
 32977  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 32978  }
 32979  
 32980  // Do executes the "dfareporting.remarketingLists.insert" call.
 32981  // Any non-2xx status code is an error. Response headers are in either
 32982  // *RemarketingList.ServerResponse.Header or (if a response was returned at
 32983  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 32984  // check whether the returned error was because http.StatusNotModified was
 32985  // returned.
 32986  func (c *RemarketingListsInsertCall) Do(opts ...googleapi.CallOption) (*RemarketingList, error) {
 32987  	gensupport.SetOptions(c.urlParams_, opts...)
 32988  	res, err := c.doRequest("json")
 32989  	if res != nil && res.StatusCode == http.StatusNotModified {
 32990  		if res.Body != nil {
 32991  			res.Body.Close()
 32992  		}
 32993  		return nil, gensupport.WrapError(&googleapi.Error{
 32994  			Code:   res.StatusCode,
 32995  			Header: res.Header,
 32996  		})
 32997  	}
 32998  	if err != nil {
 32999  		return nil, err
 33000  	}
 33001  	defer googleapi.CloseBody(res)
 33002  	if err := googleapi.CheckResponse(res); err != nil {
 33003  		return nil, gensupport.WrapError(err)
 33004  	}
 33005  	ret := &RemarketingList{
 33006  		ServerResponse: googleapi.ServerResponse{
 33007  			Header:         res.Header,
 33008  			HTTPStatusCode: res.StatusCode,
 33009  		},
 33010  	}
 33011  	target := &ret
 33012  	if err := gensupport.DecodeResponse(target, res); err != nil {
 33013  		return nil, err
 33014  	}
 33015  	return ret, nil
 33016  }
 33017  
 33018  type RemarketingListsListCall struct {
 33019  	s            *Service
 33020  	profileId    int64
 33021  	urlParams_   gensupport.URLParams
 33022  	ifNoneMatch_ string
 33023  	ctx_         context.Context
 33024  	header_      http.Header
 33025  }
 33026  
 33027  // List: Retrieves a list of remarketing lists, possibly filtered. This method
 33028  // supports paging.
 33029  //
 33030  // - advertiserId: Select only remarketing lists owned by this advertiser.
 33031  // - profileId: User profile ID associated with this request.
 33032  func (r *RemarketingListsService) List(profileId int64, advertiserId int64) *RemarketingListsListCall {
 33033  	c := &RemarketingListsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 33034  	c.profileId = profileId
 33035  	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
 33036  	return c
 33037  }
 33038  
 33039  // Active sets the optional parameter "active": Select only active or only
 33040  // inactive remarketing lists.
 33041  func (c *RemarketingListsListCall) Active(active bool) *RemarketingListsListCall {
 33042  	c.urlParams_.Set("active", fmt.Sprint(active))
 33043  	return c
 33044  }
 33045  
 33046  // FloodlightActivityId sets the optional parameter "floodlightActivityId":
 33047  // Select only remarketing lists that have this floodlight activity ID.
 33048  func (c *RemarketingListsListCall) FloodlightActivityId(floodlightActivityId int64) *RemarketingListsListCall {
 33049  	c.urlParams_.Set("floodlightActivityId", fmt.Sprint(floodlightActivityId))
 33050  	return c
 33051  }
 33052  
 33053  // MaxResults sets the optional parameter "maxResults": Maximum number of
 33054  // results to return.
 33055  func (c *RemarketingListsListCall) MaxResults(maxResults int64) *RemarketingListsListCall {
 33056  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 33057  	return c
 33058  }
 33059  
 33060  // Name sets the optional parameter "name": Allows searching for objects by
 33061  // name or ID. Wildcards (*) are allowed. For example, "remarketing list*2015"
 33062  // will return objects with names like "remarketing list June 2015",
 33063  // "remarketing list April 2015", or simply "remarketing list 2015". Most of
 33064  // the searches also add wildcards implicitly at the start and the end of the
 33065  // search string. For example, a search string of "remarketing list" will match
 33066  // objects with name "my remarketing list", "remarketing list 2015", or simply
 33067  // "remarketing list".
 33068  func (c *RemarketingListsListCall) Name(name string) *RemarketingListsListCall {
 33069  	c.urlParams_.Set("name", name)
 33070  	return c
 33071  }
 33072  
 33073  // PageToken sets the optional parameter "pageToken": Value of the
 33074  // nextPageToken from the previous result page.
 33075  func (c *RemarketingListsListCall) PageToken(pageToken string) *RemarketingListsListCall {
 33076  	c.urlParams_.Set("pageToken", pageToken)
 33077  	return c
 33078  }
 33079  
 33080  // SortField sets the optional parameter "sortField": Field by which to sort
 33081  // the list.
 33082  //
 33083  // Possible values:
 33084  //
 33085  //	"ID" (default)
 33086  //	"NAME"
 33087  func (c *RemarketingListsListCall) SortField(sortField string) *RemarketingListsListCall {
 33088  	c.urlParams_.Set("sortField", sortField)
 33089  	return c
 33090  }
 33091  
 33092  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 33093  //
 33094  // Possible values:
 33095  //
 33096  //	"ASCENDING" (default) - Ascending order.
 33097  //	"DESCENDING" - Descending order.
 33098  func (c *RemarketingListsListCall) SortOrder(sortOrder string) *RemarketingListsListCall {
 33099  	c.urlParams_.Set("sortOrder", sortOrder)
 33100  	return c
 33101  }
 33102  
 33103  // Fields allows partial responses to be retrieved. See
 33104  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 33105  // details.
 33106  func (c *RemarketingListsListCall) Fields(s ...googleapi.Field) *RemarketingListsListCall {
 33107  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 33108  	return c
 33109  }
 33110  
 33111  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 33112  // object's ETag matches the given value. This is useful for getting updates
 33113  // only after the object has changed since the last request.
 33114  func (c *RemarketingListsListCall) IfNoneMatch(entityTag string) *RemarketingListsListCall {
 33115  	c.ifNoneMatch_ = entityTag
 33116  	return c
 33117  }
 33118  
 33119  // Context sets the context to be used in this call's Do method.
 33120  func (c *RemarketingListsListCall) Context(ctx context.Context) *RemarketingListsListCall {
 33121  	c.ctx_ = ctx
 33122  	return c
 33123  }
 33124  
 33125  // Header returns a http.Header that can be modified by the caller to add
 33126  // headers to the request.
 33127  func (c *RemarketingListsListCall) Header() http.Header {
 33128  	if c.header_ == nil {
 33129  		c.header_ = make(http.Header)
 33130  	}
 33131  	return c.header_
 33132  }
 33133  
 33134  func (c *RemarketingListsListCall) doRequest(alt string) (*http.Response, error) {
 33135  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 33136  	if c.ifNoneMatch_ != "" {
 33137  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 33138  	}
 33139  	var body io.Reader = nil
 33140  	c.urlParams_.Set("alt", alt)
 33141  	c.urlParams_.Set("prettyPrint", "false")
 33142  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/remarketingLists")
 33143  	urls += "?" + c.urlParams_.Encode()
 33144  	req, err := http.NewRequest("GET", urls, body)
 33145  	if err != nil {
 33146  		return nil, err
 33147  	}
 33148  	req.Header = reqHeaders
 33149  	googleapi.Expand(req.URL, map[string]string{
 33150  		"profileId": strconv.FormatInt(c.profileId, 10),
 33151  	})
 33152  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 33153  }
 33154  
 33155  // Do executes the "dfareporting.remarketingLists.list" call.
 33156  // Any non-2xx status code is an error. Response headers are in either
 33157  // *RemarketingListsListResponse.ServerResponse.Header or (if a response was
 33158  // returned at all) in error.(*googleapi.Error).Header. Use
 33159  // googleapi.IsNotModified to check whether the returned error was because
 33160  // http.StatusNotModified was returned.
 33161  func (c *RemarketingListsListCall) Do(opts ...googleapi.CallOption) (*RemarketingListsListResponse, error) {
 33162  	gensupport.SetOptions(c.urlParams_, opts...)
 33163  	res, err := c.doRequest("json")
 33164  	if res != nil && res.StatusCode == http.StatusNotModified {
 33165  		if res.Body != nil {
 33166  			res.Body.Close()
 33167  		}
 33168  		return nil, gensupport.WrapError(&googleapi.Error{
 33169  			Code:   res.StatusCode,
 33170  			Header: res.Header,
 33171  		})
 33172  	}
 33173  	if err != nil {
 33174  		return nil, err
 33175  	}
 33176  	defer googleapi.CloseBody(res)
 33177  	if err := googleapi.CheckResponse(res); err != nil {
 33178  		return nil, gensupport.WrapError(err)
 33179  	}
 33180  	ret := &RemarketingListsListResponse{
 33181  		ServerResponse: googleapi.ServerResponse{
 33182  			Header:         res.Header,
 33183  			HTTPStatusCode: res.StatusCode,
 33184  		},
 33185  	}
 33186  	target := &ret
 33187  	if err := gensupport.DecodeResponse(target, res); err != nil {
 33188  		return nil, err
 33189  	}
 33190  	return ret, nil
 33191  }
 33192  
 33193  // Pages invokes f for each page of results.
 33194  // A non-nil error returned from f will halt the iteration.
 33195  // The provided context supersedes any context provided to the Context method.
 33196  func (c *RemarketingListsListCall) Pages(ctx context.Context, f func(*RemarketingListsListResponse) error) error {
 33197  	c.ctx_ = ctx
 33198  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 33199  	for {
 33200  		x, err := c.Do()
 33201  		if err != nil {
 33202  			return err
 33203  		}
 33204  		if err := f(x); err != nil {
 33205  			return err
 33206  		}
 33207  		if x.NextPageToken == "" {
 33208  			return nil
 33209  		}
 33210  		c.PageToken(x.NextPageToken)
 33211  	}
 33212  }
 33213  
 33214  type RemarketingListsPatchCall struct {
 33215  	s               *Service
 33216  	profileId       int64
 33217  	remarketinglist *RemarketingList
 33218  	urlParams_      gensupport.URLParams
 33219  	ctx_            context.Context
 33220  	header_         http.Header
 33221  }
 33222  
 33223  // Patch: Updates an existing RemarketingList. This method supports patch
 33224  // semantics.
 33225  //
 33226  // - id: RemarketingList ID.
 33227  // - profileId: User profile ID associated with this request.
 33228  func (r *RemarketingListsService) Patch(profileId int64, id int64, remarketinglist *RemarketingList) *RemarketingListsPatchCall {
 33229  	c := &RemarketingListsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 33230  	c.profileId = profileId
 33231  	c.urlParams_.Set("id", fmt.Sprint(id))
 33232  	c.remarketinglist = remarketinglist
 33233  	return c
 33234  }
 33235  
 33236  // Fields allows partial responses to be retrieved. See
 33237  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 33238  // details.
 33239  func (c *RemarketingListsPatchCall) Fields(s ...googleapi.Field) *RemarketingListsPatchCall {
 33240  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 33241  	return c
 33242  }
 33243  
 33244  // Context sets the context to be used in this call's Do method.
 33245  func (c *RemarketingListsPatchCall) Context(ctx context.Context) *RemarketingListsPatchCall {
 33246  	c.ctx_ = ctx
 33247  	return c
 33248  }
 33249  
 33250  // Header returns a http.Header that can be modified by the caller to add
 33251  // headers to the request.
 33252  func (c *RemarketingListsPatchCall) Header() http.Header {
 33253  	if c.header_ == nil {
 33254  		c.header_ = make(http.Header)
 33255  	}
 33256  	return c.header_
 33257  }
 33258  
 33259  func (c *RemarketingListsPatchCall) doRequest(alt string) (*http.Response, error) {
 33260  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 33261  	var body io.Reader = nil
 33262  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.remarketinglist)
 33263  	if err != nil {
 33264  		return nil, err
 33265  	}
 33266  	c.urlParams_.Set("alt", alt)
 33267  	c.urlParams_.Set("prettyPrint", "false")
 33268  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/remarketingLists")
 33269  	urls += "?" + c.urlParams_.Encode()
 33270  	req, err := http.NewRequest("PATCH", urls, body)
 33271  	if err != nil {
 33272  		return nil, err
 33273  	}
 33274  	req.Header = reqHeaders
 33275  	googleapi.Expand(req.URL, map[string]string{
 33276  		"profileId": strconv.FormatInt(c.profileId, 10),
 33277  	})
 33278  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 33279  }
 33280  
 33281  // Do executes the "dfareporting.remarketingLists.patch" call.
 33282  // Any non-2xx status code is an error. Response headers are in either
 33283  // *RemarketingList.ServerResponse.Header or (if a response was returned at
 33284  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 33285  // check whether the returned error was because http.StatusNotModified was
 33286  // returned.
 33287  func (c *RemarketingListsPatchCall) Do(opts ...googleapi.CallOption) (*RemarketingList, error) {
 33288  	gensupport.SetOptions(c.urlParams_, opts...)
 33289  	res, err := c.doRequest("json")
 33290  	if res != nil && res.StatusCode == http.StatusNotModified {
 33291  		if res.Body != nil {
 33292  			res.Body.Close()
 33293  		}
 33294  		return nil, gensupport.WrapError(&googleapi.Error{
 33295  			Code:   res.StatusCode,
 33296  			Header: res.Header,
 33297  		})
 33298  	}
 33299  	if err != nil {
 33300  		return nil, err
 33301  	}
 33302  	defer googleapi.CloseBody(res)
 33303  	if err := googleapi.CheckResponse(res); err != nil {
 33304  		return nil, gensupport.WrapError(err)
 33305  	}
 33306  	ret := &RemarketingList{
 33307  		ServerResponse: googleapi.ServerResponse{
 33308  			Header:         res.Header,
 33309  			HTTPStatusCode: res.StatusCode,
 33310  		},
 33311  	}
 33312  	target := &ret
 33313  	if err := gensupport.DecodeResponse(target, res); err != nil {
 33314  		return nil, err
 33315  	}
 33316  	return ret, nil
 33317  }
 33318  
 33319  type RemarketingListsUpdateCall struct {
 33320  	s               *Service
 33321  	profileId       int64
 33322  	remarketinglist *RemarketingList
 33323  	urlParams_      gensupport.URLParams
 33324  	ctx_            context.Context
 33325  	header_         http.Header
 33326  }
 33327  
 33328  // Update: Updates an existing remarketing list.
 33329  //
 33330  // - profileId: User profile ID associated with this request.
 33331  func (r *RemarketingListsService) Update(profileId int64, remarketinglist *RemarketingList) *RemarketingListsUpdateCall {
 33332  	c := &RemarketingListsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 33333  	c.profileId = profileId
 33334  	c.remarketinglist = remarketinglist
 33335  	return c
 33336  }
 33337  
 33338  // Fields allows partial responses to be retrieved. See
 33339  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 33340  // details.
 33341  func (c *RemarketingListsUpdateCall) Fields(s ...googleapi.Field) *RemarketingListsUpdateCall {
 33342  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 33343  	return c
 33344  }
 33345  
 33346  // Context sets the context to be used in this call's Do method.
 33347  func (c *RemarketingListsUpdateCall) Context(ctx context.Context) *RemarketingListsUpdateCall {
 33348  	c.ctx_ = ctx
 33349  	return c
 33350  }
 33351  
 33352  // Header returns a http.Header that can be modified by the caller to add
 33353  // headers to the request.
 33354  func (c *RemarketingListsUpdateCall) Header() http.Header {
 33355  	if c.header_ == nil {
 33356  		c.header_ = make(http.Header)
 33357  	}
 33358  	return c.header_
 33359  }
 33360  
 33361  func (c *RemarketingListsUpdateCall) doRequest(alt string) (*http.Response, error) {
 33362  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 33363  	var body io.Reader = nil
 33364  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.remarketinglist)
 33365  	if err != nil {
 33366  		return nil, err
 33367  	}
 33368  	c.urlParams_.Set("alt", alt)
 33369  	c.urlParams_.Set("prettyPrint", "false")
 33370  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/remarketingLists")
 33371  	urls += "?" + c.urlParams_.Encode()
 33372  	req, err := http.NewRequest("PUT", urls, body)
 33373  	if err != nil {
 33374  		return nil, err
 33375  	}
 33376  	req.Header = reqHeaders
 33377  	googleapi.Expand(req.URL, map[string]string{
 33378  		"profileId": strconv.FormatInt(c.profileId, 10),
 33379  	})
 33380  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 33381  }
 33382  
 33383  // Do executes the "dfareporting.remarketingLists.update" call.
 33384  // Any non-2xx status code is an error. Response headers are in either
 33385  // *RemarketingList.ServerResponse.Header or (if a response was returned at
 33386  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 33387  // check whether the returned error was because http.StatusNotModified was
 33388  // returned.
 33389  func (c *RemarketingListsUpdateCall) Do(opts ...googleapi.CallOption) (*RemarketingList, error) {
 33390  	gensupport.SetOptions(c.urlParams_, opts...)
 33391  	res, err := c.doRequest("json")
 33392  	if res != nil && res.StatusCode == http.StatusNotModified {
 33393  		if res.Body != nil {
 33394  			res.Body.Close()
 33395  		}
 33396  		return nil, gensupport.WrapError(&googleapi.Error{
 33397  			Code:   res.StatusCode,
 33398  			Header: res.Header,
 33399  		})
 33400  	}
 33401  	if err != nil {
 33402  		return nil, err
 33403  	}
 33404  	defer googleapi.CloseBody(res)
 33405  	if err := googleapi.CheckResponse(res); err != nil {
 33406  		return nil, gensupport.WrapError(err)
 33407  	}
 33408  	ret := &RemarketingList{
 33409  		ServerResponse: googleapi.ServerResponse{
 33410  			Header:         res.Header,
 33411  			HTTPStatusCode: res.StatusCode,
 33412  		},
 33413  	}
 33414  	target := &ret
 33415  	if err := gensupport.DecodeResponse(target, res); err != nil {
 33416  		return nil, err
 33417  	}
 33418  	return ret, nil
 33419  }
 33420  
 33421  type ReportsDeleteCall struct {
 33422  	s          *Service
 33423  	profileId  int64
 33424  	reportId   int64
 33425  	urlParams_ gensupport.URLParams
 33426  	ctx_       context.Context
 33427  	header_    http.Header
 33428  }
 33429  
 33430  // Delete: Deletes a report by its ID.
 33431  //
 33432  // - profileId: The Campaign Manager 360 user profile ID.
 33433  // - reportId: The ID of the report.
 33434  func (r *ReportsService) Delete(profileId int64, reportId int64) *ReportsDeleteCall {
 33435  	c := &ReportsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 33436  	c.profileId = profileId
 33437  	c.reportId = reportId
 33438  	return c
 33439  }
 33440  
 33441  // Fields allows partial responses to be retrieved. See
 33442  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 33443  // details.
 33444  func (c *ReportsDeleteCall) Fields(s ...googleapi.Field) *ReportsDeleteCall {
 33445  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 33446  	return c
 33447  }
 33448  
 33449  // Context sets the context to be used in this call's Do method.
 33450  func (c *ReportsDeleteCall) Context(ctx context.Context) *ReportsDeleteCall {
 33451  	c.ctx_ = ctx
 33452  	return c
 33453  }
 33454  
 33455  // Header returns a http.Header that can be modified by the caller to add
 33456  // headers to the request.
 33457  func (c *ReportsDeleteCall) Header() http.Header {
 33458  	if c.header_ == nil {
 33459  		c.header_ = make(http.Header)
 33460  	}
 33461  	return c.header_
 33462  }
 33463  
 33464  func (c *ReportsDeleteCall) doRequest(alt string) (*http.Response, error) {
 33465  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 33466  	var body io.Reader = nil
 33467  	c.urlParams_.Set("alt", alt)
 33468  	c.urlParams_.Set("prettyPrint", "false")
 33469  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/reports/{reportId}")
 33470  	urls += "?" + c.urlParams_.Encode()
 33471  	req, err := http.NewRequest("DELETE", urls, body)
 33472  	if err != nil {
 33473  		return nil, err
 33474  	}
 33475  	req.Header = reqHeaders
 33476  	googleapi.Expand(req.URL, map[string]string{
 33477  		"profileId": strconv.FormatInt(c.profileId, 10),
 33478  		"reportId":  strconv.FormatInt(c.reportId, 10),
 33479  	})
 33480  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 33481  }
 33482  
 33483  // Do executes the "dfareporting.reports.delete" call.
 33484  func (c *ReportsDeleteCall) Do(opts ...googleapi.CallOption) error {
 33485  	gensupport.SetOptions(c.urlParams_, opts...)
 33486  	res, err := c.doRequest("json")
 33487  	if err != nil {
 33488  		return err
 33489  	}
 33490  	defer googleapi.CloseBody(res)
 33491  	if err := googleapi.CheckResponse(res); err != nil {
 33492  		return gensupport.WrapError(err)
 33493  	}
 33494  	return nil
 33495  }
 33496  
 33497  type ReportsGetCall struct {
 33498  	s            *Service
 33499  	profileId    int64
 33500  	reportId     int64
 33501  	urlParams_   gensupport.URLParams
 33502  	ifNoneMatch_ string
 33503  	ctx_         context.Context
 33504  	header_      http.Header
 33505  }
 33506  
 33507  // Get: Retrieves a report by its ID.
 33508  //
 33509  // - profileId: The Campaign Manager 360 user profile ID.
 33510  // - reportId: The ID of the report.
 33511  func (r *ReportsService) Get(profileId int64, reportId int64) *ReportsGetCall {
 33512  	c := &ReportsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 33513  	c.profileId = profileId
 33514  	c.reportId = reportId
 33515  	return c
 33516  }
 33517  
 33518  // Fields allows partial responses to be retrieved. See
 33519  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 33520  // details.
 33521  func (c *ReportsGetCall) Fields(s ...googleapi.Field) *ReportsGetCall {
 33522  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 33523  	return c
 33524  }
 33525  
 33526  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 33527  // object's ETag matches the given value. This is useful for getting updates
 33528  // only after the object has changed since the last request.
 33529  func (c *ReportsGetCall) IfNoneMatch(entityTag string) *ReportsGetCall {
 33530  	c.ifNoneMatch_ = entityTag
 33531  	return c
 33532  }
 33533  
 33534  // Context sets the context to be used in this call's Do method.
 33535  func (c *ReportsGetCall) Context(ctx context.Context) *ReportsGetCall {
 33536  	c.ctx_ = ctx
 33537  	return c
 33538  }
 33539  
 33540  // Header returns a http.Header that can be modified by the caller to add
 33541  // headers to the request.
 33542  func (c *ReportsGetCall) Header() http.Header {
 33543  	if c.header_ == nil {
 33544  		c.header_ = make(http.Header)
 33545  	}
 33546  	return c.header_
 33547  }
 33548  
 33549  func (c *ReportsGetCall) doRequest(alt string) (*http.Response, error) {
 33550  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 33551  	if c.ifNoneMatch_ != "" {
 33552  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 33553  	}
 33554  	var body io.Reader = nil
 33555  	c.urlParams_.Set("alt", alt)
 33556  	c.urlParams_.Set("prettyPrint", "false")
 33557  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/reports/{reportId}")
 33558  	urls += "?" + c.urlParams_.Encode()
 33559  	req, err := http.NewRequest("GET", urls, body)
 33560  	if err != nil {
 33561  		return nil, err
 33562  	}
 33563  	req.Header = reqHeaders
 33564  	googleapi.Expand(req.URL, map[string]string{
 33565  		"profileId": strconv.FormatInt(c.profileId, 10),
 33566  		"reportId":  strconv.FormatInt(c.reportId, 10),
 33567  	})
 33568  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 33569  }
 33570  
 33571  // Do executes the "dfareporting.reports.get" call.
 33572  // Any non-2xx status code is an error. Response headers are in either
 33573  // *Report.ServerResponse.Header or (if a response was returned at all) in
 33574  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 33575  // whether the returned error was because http.StatusNotModified was returned.
 33576  func (c *ReportsGetCall) Do(opts ...googleapi.CallOption) (*Report, error) {
 33577  	gensupport.SetOptions(c.urlParams_, opts...)
 33578  	res, err := c.doRequest("json")
 33579  	if res != nil && res.StatusCode == http.StatusNotModified {
 33580  		if res.Body != nil {
 33581  			res.Body.Close()
 33582  		}
 33583  		return nil, gensupport.WrapError(&googleapi.Error{
 33584  			Code:   res.StatusCode,
 33585  			Header: res.Header,
 33586  		})
 33587  	}
 33588  	if err != nil {
 33589  		return nil, err
 33590  	}
 33591  	defer googleapi.CloseBody(res)
 33592  	if err := googleapi.CheckResponse(res); err != nil {
 33593  		return nil, gensupport.WrapError(err)
 33594  	}
 33595  	ret := &Report{
 33596  		ServerResponse: googleapi.ServerResponse{
 33597  			Header:         res.Header,
 33598  			HTTPStatusCode: res.StatusCode,
 33599  		},
 33600  	}
 33601  	target := &ret
 33602  	if err := gensupport.DecodeResponse(target, res); err != nil {
 33603  		return nil, err
 33604  	}
 33605  	return ret, nil
 33606  }
 33607  
 33608  type ReportsInsertCall struct {
 33609  	s          *Service
 33610  	profileId  int64
 33611  	report     *Report
 33612  	urlParams_ gensupport.URLParams
 33613  	ctx_       context.Context
 33614  	header_    http.Header
 33615  }
 33616  
 33617  // Insert: Creates a report.
 33618  //
 33619  // - profileId: The Campaign Manager 360 user profile ID.
 33620  func (r *ReportsService) Insert(profileId int64, report *Report) *ReportsInsertCall {
 33621  	c := &ReportsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 33622  	c.profileId = profileId
 33623  	c.report = report
 33624  	return c
 33625  }
 33626  
 33627  // Fields allows partial responses to be retrieved. See
 33628  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 33629  // details.
 33630  func (c *ReportsInsertCall) Fields(s ...googleapi.Field) *ReportsInsertCall {
 33631  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 33632  	return c
 33633  }
 33634  
 33635  // Context sets the context to be used in this call's Do method.
 33636  func (c *ReportsInsertCall) Context(ctx context.Context) *ReportsInsertCall {
 33637  	c.ctx_ = ctx
 33638  	return c
 33639  }
 33640  
 33641  // Header returns a http.Header that can be modified by the caller to add
 33642  // headers to the request.
 33643  func (c *ReportsInsertCall) Header() http.Header {
 33644  	if c.header_ == nil {
 33645  		c.header_ = make(http.Header)
 33646  	}
 33647  	return c.header_
 33648  }
 33649  
 33650  func (c *ReportsInsertCall) doRequest(alt string) (*http.Response, error) {
 33651  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 33652  	var body io.Reader = nil
 33653  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.report)
 33654  	if err != nil {
 33655  		return nil, err
 33656  	}
 33657  	c.urlParams_.Set("alt", alt)
 33658  	c.urlParams_.Set("prettyPrint", "false")
 33659  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/reports")
 33660  	urls += "?" + c.urlParams_.Encode()
 33661  	req, err := http.NewRequest("POST", urls, body)
 33662  	if err != nil {
 33663  		return nil, err
 33664  	}
 33665  	req.Header = reqHeaders
 33666  	googleapi.Expand(req.URL, map[string]string{
 33667  		"profileId": strconv.FormatInt(c.profileId, 10),
 33668  	})
 33669  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 33670  }
 33671  
 33672  // Do executes the "dfareporting.reports.insert" call.
 33673  // Any non-2xx status code is an error. Response headers are in either
 33674  // *Report.ServerResponse.Header or (if a response was returned at all) in
 33675  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 33676  // whether the returned error was because http.StatusNotModified was returned.
 33677  func (c *ReportsInsertCall) Do(opts ...googleapi.CallOption) (*Report, error) {
 33678  	gensupport.SetOptions(c.urlParams_, opts...)
 33679  	res, err := c.doRequest("json")
 33680  	if res != nil && res.StatusCode == http.StatusNotModified {
 33681  		if res.Body != nil {
 33682  			res.Body.Close()
 33683  		}
 33684  		return nil, gensupport.WrapError(&googleapi.Error{
 33685  			Code:   res.StatusCode,
 33686  			Header: res.Header,
 33687  		})
 33688  	}
 33689  	if err != nil {
 33690  		return nil, err
 33691  	}
 33692  	defer googleapi.CloseBody(res)
 33693  	if err := googleapi.CheckResponse(res); err != nil {
 33694  		return nil, gensupport.WrapError(err)
 33695  	}
 33696  	ret := &Report{
 33697  		ServerResponse: googleapi.ServerResponse{
 33698  			Header:         res.Header,
 33699  			HTTPStatusCode: res.StatusCode,
 33700  		},
 33701  	}
 33702  	target := &ret
 33703  	if err := gensupport.DecodeResponse(target, res); err != nil {
 33704  		return nil, err
 33705  	}
 33706  	return ret, nil
 33707  }
 33708  
 33709  type ReportsListCall struct {
 33710  	s            *Service
 33711  	profileId    int64
 33712  	urlParams_   gensupport.URLParams
 33713  	ifNoneMatch_ string
 33714  	ctx_         context.Context
 33715  	header_      http.Header
 33716  }
 33717  
 33718  // List: Retrieves list of reports.
 33719  //
 33720  // - profileId: The Campaign Manager 360 user profile ID.
 33721  func (r *ReportsService) List(profileId int64) *ReportsListCall {
 33722  	c := &ReportsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 33723  	c.profileId = profileId
 33724  	return c
 33725  }
 33726  
 33727  // MaxResults sets the optional parameter "maxResults": Maximum number of
 33728  // results to return.
 33729  func (c *ReportsListCall) MaxResults(maxResults int64) *ReportsListCall {
 33730  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 33731  	return c
 33732  }
 33733  
 33734  // PageToken sets the optional parameter "pageToken": The value of the
 33735  // nextToken from the previous result page.
 33736  func (c *ReportsListCall) PageToken(pageToken string) *ReportsListCall {
 33737  	c.urlParams_.Set("pageToken", pageToken)
 33738  	return c
 33739  }
 33740  
 33741  // Scope sets the optional parameter "scope": The scope that defines which
 33742  // results are returned.
 33743  //
 33744  // Possible values:
 33745  //
 33746  //	"ALL" - All reports in account.
 33747  //	"MINE" (default) - My reports.
 33748  func (c *ReportsListCall) Scope(scope string) *ReportsListCall {
 33749  	c.urlParams_.Set("scope", scope)
 33750  	return c
 33751  }
 33752  
 33753  // SortField sets the optional parameter "sortField": The field by which to
 33754  // sort the list.
 33755  //
 33756  // Possible values:
 33757  //
 33758  //	"ID" - Sort by report ID.
 33759  //	"LAST_MODIFIED_TIME" (default) - Sort by 'lastModifiedTime' field.
 33760  //	"NAME" - Sort by name of reports.
 33761  func (c *ReportsListCall) SortField(sortField string) *ReportsListCall {
 33762  	c.urlParams_.Set("sortField", sortField)
 33763  	return c
 33764  }
 33765  
 33766  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 33767  //
 33768  // Possible values:
 33769  //
 33770  //	"ASCENDING" - Ascending order.
 33771  //	"DESCENDING" (default) - Descending order.
 33772  func (c *ReportsListCall) SortOrder(sortOrder string) *ReportsListCall {
 33773  	c.urlParams_.Set("sortOrder", sortOrder)
 33774  	return c
 33775  }
 33776  
 33777  // Fields allows partial responses to be retrieved. See
 33778  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 33779  // details.
 33780  func (c *ReportsListCall) Fields(s ...googleapi.Field) *ReportsListCall {
 33781  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 33782  	return c
 33783  }
 33784  
 33785  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 33786  // object's ETag matches the given value. This is useful for getting updates
 33787  // only after the object has changed since the last request.
 33788  func (c *ReportsListCall) IfNoneMatch(entityTag string) *ReportsListCall {
 33789  	c.ifNoneMatch_ = entityTag
 33790  	return c
 33791  }
 33792  
 33793  // Context sets the context to be used in this call's Do method.
 33794  func (c *ReportsListCall) Context(ctx context.Context) *ReportsListCall {
 33795  	c.ctx_ = ctx
 33796  	return c
 33797  }
 33798  
 33799  // Header returns a http.Header that can be modified by the caller to add
 33800  // headers to the request.
 33801  func (c *ReportsListCall) Header() http.Header {
 33802  	if c.header_ == nil {
 33803  		c.header_ = make(http.Header)
 33804  	}
 33805  	return c.header_
 33806  }
 33807  
 33808  func (c *ReportsListCall) doRequest(alt string) (*http.Response, error) {
 33809  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 33810  	if c.ifNoneMatch_ != "" {
 33811  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 33812  	}
 33813  	var body io.Reader = nil
 33814  	c.urlParams_.Set("alt", alt)
 33815  	c.urlParams_.Set("prettyPrint", "false")
 33816  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/reports")
 33817  	urls += "?" + c.urlParams_.Encode()
 33818  	req, err := http.NewRequest("GET", urls, body)
 33819  	if err != nil {
 33820  		return nil, err
 33821  	}
 33822  	req.Header = reqHeaders
 33823  	googleapi.Expand(req.URL, map[string]string{
 33824  		"profileId": strconv.FormatInt(c.profileId, 10),
 33825  	})
 33826  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 33827  }
 33828  
 33829  // Do executes the "dfareporting.reports.list" call.
 33830  // Any non-2xx status code is an error. Response headers are in either
 33831  // *ReportList.ServerResponse.Header or (if a response was returned at all) in
 33832  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 33833  // whether the returned error was because http.StatusNotModified was returned.
 33834  func (c *ReportsListCall) Do(opts ...googleapi.CallOption) (*ReportList, error) {
 33835  	gensupport.SetOptions(c.urlParams_, opts...)
 33836  	res, err := c.doRequest("json")
 33837  	if res != nil && res.StatusCode == http.StatusNotModified {
 33838  		if res.Body != nil {
 33839  			res.Body.Close()
 33840  		}
 33841  		return nil, gensupport.WrapError(&googleapi.Error{
 33842  			Code:   res.StatusCode,
 33843  			Header: res.Header,
 33844  		})
 33845  	}
 33846  	if err != nil {
 33847  		return nil, err
 33848  	}
 33849  	defer googleapi.CloseBody(res)
 33850  	if err := googleapi.CheckResponse(res); err != nil {
 33851  		return nil, gensupport.WrapError(err)
 33852  	}
 33853  	ret := &ReportList{
 33854  		ServerResponse: googleapi.ServerResponse{
 33855  			Header:         res.Header,
 33856  			HTTPStatusCode: res.StatusCode,
 33857  		},
 33858  	}
 33859  	target := &ret
 33860  	if err := gensupport.DecodeResponse(target, res); err != nil {
 33861  		return nil, err
 33862  	}
 33863  	return ret, nil
 33864  }
 33865  
 33866  // Pages invokes f for each page of results.
 33867  // A non-nil error returned from f will halt the iteration.
 33868  // The provided context supersedes any context provided to the Context method.
 33869  func (c *ReportsListCall) Pages(ctx context.Context, f func(*ReportList) error) error {
 33870  	c.ctx_ = ctx
 33871  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 33872  	for {
 33873  		x, err := c.Do()
 33874  		if err != nil {
 33875  			return err
 33876  		}
 33877  		if err := f(x); err != nil {
 33878  			return err
 33879  		}
 33880  		if x.NextPageToken == "" {
 33881  			return nil
 33882  		}
 33883  		c.PageToken(x.NextPageToken)
 33884  	}
 33885  }
 33886  
 33887  type ReportsPatchCall struct {
 33888  	s          *Service
 33889  	profileId  int64
 33890  	reportId   int64
 33891  	report     *Report
 33892  	urlParams_ gensupport.URLParams
 33893  	ctx_       context.Context
 33894  	header_    http.Header
 33895  }
 33896  
 33897  // Patch: Updates an existing report. This method supports patch semantics.
 33898  //
 33899  // - profileId: The Campaign Manager 360 user profile ID.
 33900  // - reportId: The ID of the report.
 33901  func (r *ReportsService) Patch(profileId int64, reportId int64, report *Report) *ReportsPatchCall {
 33902  	c := &ReportsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 33903  	c.profileId = profileId
 33904  	c.reportId = reportId
 33905  	c.report = report
 33906  	return c
 33907  }
 33908  
 33909  // Fields allows partial responses to be retrieved. See
 33910  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 33911  // details.
 33912  func (c *ReportsPatchCall) Fields(s ...googleapi.Field) *ReportsPatchCall {
 33913  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 33914  	return c
 33915  }
 33916  
 33917  // Context sets the context to be used in this call's Do method.
 33918  func (c *ReportsPatchCall) Context(ctx context.Context) *ReportsPatchCall {
 33919  	c.ctx_ = ctx
 33920  	return c
 33921  }
 33922  
 33923  // Header returns a http.Header that can be modified by the caller to add
 33924  // headers to the request.
 33925  func (c *ReportsPatchCall) Header() http.Header {
 33926  	if c.header_ == nil {
 33927  		c.header_ = make(http.Header)
 33928  	}
 33929  	return c.header_
 33930  }
 33931  
 33932  func (c *ReportsPatchCall) doRequest(alt string) (*http.Response, error) {
 33933  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 33934  	var body io.Reader = nil
 33935  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.report)
 33936  	if err != nil {
 33937  		return nil, err
 33938  	}
 33939  	c.urlParams_.Set("alt", alt)
 33940  	c.urlParams_.Set("prettyPrint", "false")
 33941  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/reports/{reportId}")
 33942  	urls += "?" + c.urlParams_.Encode()
 33943  	req, err := http.NewRequest("PATCH", urls, body)
 33944  	if err != nil {
 33945  		return nil, err
 33946  	}
 33947  	req.Header = reqHeaders
 33948  	googleapi.Expand(req.URL, map[string]string{
 33949  		"profileId": strconv.FormatInt(c.profileId, 10),
 33950  		"reportId":  strconv.FormatInt(c.reportId, 10),
 33951  	})
 33952  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 33953  }
 33954  
 33955  // Do executes the "dfareporting.reports.patch" call.
 33956  // Any non-2xx status code is an error. Response headers are in either
 33957  // *Report.ServerResponse.Header or (if a response was returned at all) in
 33958  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 33959  // whether the returned error was because http.StatusNotModified was returned.
 33960  func (c *ReportsPatchCall) Do(opts ...googleapi.CallOption) (*Report, error) {
 33961  	gensupport.SetOptions(c.urlParams_, opts...)
 33962  	res, err := c.doRequest("json")
 33963  	if res != nil && res.StatusCode == http.StatusNotModified {
 33964  		if res.Body != nil {
 33965  			res.Body.Close()
 33966  		}
 33967  		return nil, gensupport.WrapError(&googleapi.Error{
 33968  			Code:   res.StatusCode,
 33969  			Header: res.Header,
 33970  		})
 33971  	}
 33972  	if err != nil {
 33973  		return nil, err
 33974  	}
 33975  	defer googleapi.CloseBody(res)
 33976  	if err := googleapi.CheckResponse(res); err != nil {
 33977  		return nil, gensupport.WrapError(err)
 33978  	}
 33979  	ret := &Report{
 33980  		ServerResponse: googleapi.ServerResponse{
 33981  			Header:         res.Header,
 33982  			HTTPStatusCode: res.StatusCode,
 33983  		},
 33984  	}
 33985  	target := &ret
 33986  	if err := gensupport.DecodeResponse(target, res); err != nil {
 33987  		return nil, err
 33988  	}
 33989  	return ret, nil
 33990  }
 33991  
 33992  type ReportsRunCall struct {
 33993  	s          *Service
 33994  	profileId  int64
 33995  	reportId   int64
 33996  	urlParams_ gensupport.URLParams
 33997  	ctx_       context.Context
 33998  	header_    http.Header
 33999  }
 34000  
 34001  // Run: Runs a report.
 34002  //
 34003  // - profileId: The Campaign Manager 360 user profile ID.
 34004  // - reportId: The ID of the report.
 34005  func (r *ReportsService) Run(profileId int64, reportId int64) *ReportsRunCall {
 34006  	c := &ReportsRunCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 34007  	c.profileId = profileId
 34008  	c.reportId = reportId
 34009  	return c
 34010  }
 34011  
 34012  // Synchronous sets the optional parameter "synchronous": If set and true,
 34013  // tries to run the report synchronously.
 34014  func (c *ReportsRunCall) Synchronous(synchronous bool) *ReportsRunCall {
 34015  	c.urlParams_.Set("synchronous", fmt.Sprint(synchronous))
 34016  	return c
 34017  }
 34018  
 34019  // Fields allows partial responses to be retrieved. See
 34020  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 34021  // details.
 34022  func (c *ReportsRunCall) Fields(s ...googleapi.Field) *ReportsRunCall {
 34023  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 34024  	return c
 34025  }
 34026  
 34027  // Context sets the context to be used in this call's Do method.
 34028  func (c *ReportsRunCall) Context(ctx context.Context) *ReportsRunCall {
 34029  	c.ctx_ = ctx
 34030  	return c
 34031  }
 34032  
 34033  // Header returns a http.Header that can be modified by the caller to add
 34034  // headers to the request.
 34035  func (c *ReportsRunCall) Header() http.Header {
 34036  	if c.header_ == nil {
 34037  		c.header_ = make(http.Header)
 34038  	}
 34039  	return c.header_
 34040  }
 34041  
 34042  func (c *ReportsRunCall) doRequest(alt string) (*http.Response, error) {
 34043  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 34044  	var body io.Reader = nil
 34045  	c.urlParams_.Set("alt", alt)
 34046  	c.urlParams_.Set("prettyPrint", "false")
 34047  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/reports/{reportId}/run")
 34048  	urls += "?" + c.urlParams_.Encode()
 34049  	req, err := http.NewRequest("POST", urls, body)
 34050  	if err != nil {
 34051  		return nil, err
 34052  	}
 34053  	req.Header = reqHeaders
 34054  	googleapi.Expand(req.URL, map[string]string{
 34055  		"profileId": strconv.FormatInt(c.profileId, 10),
 34056  		"reportId":  strconv.FormatInt(c.reportId, 10),
 34057  	})
 34058  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 34059  }
 34060  
 34061  // Do executes the "dfareporting.reports.run" call.
 34062  // Any non-2xx status code is an error. Response headers are in either
 34063  // *File.ServerResponse.Header or (if a response was returned at all) in
 34064  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 34065  // whether the returned error was because http.StatusNotModified was returned.
 34066  func (c *ReportsRunCall) Do(opts ...googleapi.CallOption) (*File, error) {
 34067  	gensupport.SetOptions(c.urlParams_, opts...)
 34068  	res, err := c.doRequest("json")
 34069  	if res != nil && res.StatusCode == http.StatusNotModified {
 34070  		if res.Body != nil {
 34071  			res.Body.Close()
 34072  		}
 34073  		return nil, gensupport.WrapError(&googleapi.Error{
 34074  			Code:   res.StatusCode,
 34075  			Header: res.Header,
 34076  		})
 34077  	}
 34078  	if err != nil {
 34079  		return nil, err
 34080  	}
 34081  	defer googleapi.CloseBody(res)
 34082  	if err := googleapi.CheckResponse(res); err != nil {
 34083  		return nil, gensupport.WrapError(err)
 34084  	}
 34085  	ret := &File{
 34086  		ServerResponse: googleapi.ServerResponse{
 34087  			Header:         res.Header,
 34088  			HTTPStatusCode: res.StatusCode,
 34089  		},
 34090  	}
 34091  	target := &ret
 34092  	if err := gensupport.DecodeResponse(target, res); err != nil {
 34093  		return nil, err
 34094  	}
 34095  	return ret, nil
 34096  }
 34097  
 34098  type ReportsUpdateCall struct {
 34099  	s          *Service
 34100  	profileId  int64
 34101  	reportId   int64
 34102  	report     *Report
 34103  	urlParams_ gensupport.URLParams
 34104  	ctx_       context.Context
 34105  	header_    http.Header
 34106  }
 34107  
 34108  // Update: Updates a report.
 34109  //
 34110  // - profileId: The Campaign Manager 360 user profile ID.
 34111  // - reportId: The ID of the report.
 34112  func (r *ReportsService) Update(profileId int64, reportId int64, report *Report) *ReportsUpdateCall {
 34113  	c := &ReportsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 34114  	c.profileId = profileId
 34115  	c.reportId = reportId
 34116  	c.report = report
 34117  	return c
 34118  }
 34119  
 34120  // Fields allows partial responses to be retrieved. See
 34121  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 34122  // details.
 34123  func (c *ReportsUpdateCall) Fields(s ...googleapi.Field) *ReportsUpdateCall {
 34124  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 34125  	return c
 34126  }
 34127  
 34128  // Context sets the context to be used in this call's Do method.
 34129  func (c *ReportsUpdateCall) Context(ctx context.Context) *ReportsUpdateCall {
 34130  	c.ctx_ = ctx
 34131  	return c
 34132  }
 34133  
 34134  // Header returns a http.Header that can be modified by the caller to add
 34135  // headers to the request.
 34136  func (c *ReportsUpdateCall) Header() http.Header {
 34137  	if c.header_ == nil {
 34138  		c.header_ = make(http.Header)
 34139  	}
 34140  	return c.header_
 34141  }
 34142  
 34143  func (c *ReportsUpdateCall) doRequest(alt string) (*http.Response, error) {
 34144  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 34145  	var body io.Reader = nil
 34146  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.report)
 34147  	if err != nil {
 34148  		return nil, err
 34149  	}
 34150  	c.urlParams_.Set("alt", alt)
 34151  	c.urlParams_.Set("prettyPrint", "false")
 34152  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/reports/{reportId}")
 34153  	urls += "?" + c.urlParams_.Encode()
 34154  	req, err := http.NewRequest("PUT", urls, body)
 34155  	if err != nil {
 34156  		return nil, err
 34157  	}
 34158  	req.Header = reqHeaders
 34159  	googleapi.Expand(req.URL, map[string]string{
 34160  		"profileId": strconv.FormatInt(c.profileId, 10),
 34161  		"reportId":  strconv.FormatInt(c.reportId, 10),
 34162  	})
 34163  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 34164  }
 34165  
 34166  // Do executes the "dfareporting.reports.update" call.
 34167  // Any non-2xx status code is an error. Response headers are in either
 34168  // *Report.ServerResponse.Header or (if a response was returned at all) in
 34169  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 34170  // whether the returned error was because http.StatusNotModified was returned.
 34171  func (c *ReportsUpdateCall) Do(opts ...googleapi.CallOption) (*Report, error) {
 34172  	gensupport.SetOptions(c.urlParams_, opts...)
 34173  	res, err := c.doRequest("json")
 34174  	if res != nil && res.StatusCode == http.StatusNotModified {
 34175  		if res.Body != nil {
 34176  			res.Body.Close()
 34177  		}
 34178  		return nil, gensupport.WrapError(&googleapi.Error{
 34179  			Code:   res.StatusCode,
 34180  			Header: res.Header,
 34181  		})
 34182  	}
 34183  	if err != nil {
 34184  		return nil, err
 34185  	}
 34186  	defer googleapi.CloseBody(res)
 34187  	if err := googleapi.CheckResponse(res); err != nil {
 34188  		return nil, gensupport.WrapError(err)
 34189  	}
 34190  	ret := &Report{
 34191  		ServerResponse: googleapi.ServerResponse{
 34192  			Header:         res.Header,
 34193  			HTTPStatusCode: res.StatusCode,
 34194  		},
 34195  	}
 34196  	target := &ret
 34197  	if err := gensupport.DecodeResponse(target, res); err != nil {
 34198  		return nil, err
 34199  	}
 34200  	return ret, nil
 34201  }
 34202  
 34203  type ReportsCompatibleFieldsQueryCall struct {
 34204  	s          *Service
 34205  	profileId  int64
 34206  	report     *Report
 34207  	urlParams_ gensupport.URLParams
 34208  	ctx_       context.Context
 34209  	header_    http.Header
 34210  }
 34211  
 34212  // Query: Returns the fields that are compatible to be selected in the
 34213  // respective sections of a report criteria, given the fields already selected
 34214  // in the input report and user permissions.
 34215  //
 34216  // - profileId: The Campaign Manager 360 user profile ID.
 34217  func (r *ReportsCompatibleFieldsService) Query(profileId int64, report *Report) *ReportsCompatibleFieldsQueryCall {
 34218  	c := &ReportsCompatibleFieldsQueryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 34219  	c.profileId = profileId
 34220  	c.report = report
 34221  	return c
 34222  }
 34223  
 34224  // Fields allows partial responses to be retrieved. See
 34225  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 34226  // details.
 34227  func (c *ReportsCompatibleFieldsQueryCall) Fields(s ...googleapi.Field) *ReportsCompatibleFieldsQueryCall {
 34228  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 34229  	return c
 34230  }
 34231  
 34232  // Context sets the context to be used in this call's Do method.
 34233  func (c *ReportsCompatibleFieldsQueryCall) Context(ctx context.Context) *ReportsCompatibleFieldsQueryCall {
 34234  	c.ctx_ = ctx
 34235  	return c
 34236  }
 34237  
 34238  // Header returns a http.Header that can be modified by the caller to add
 34239  // headers to the request.
 34240  func (c *ReportsCompatibleFieldsQueryCall) Header() http.Header {
 34241  	if c.header_ == nil {
 34242  		c.header_ = make(http.Header)
 34243  	}
 34244  	return c.header_
 34245  }
 34246  
 34247  func (c *ReportsCompatibleFieldsQueryCall) doRequest(alt string) (*http.Response, error) {
 34248  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 34249  	var body io.Reader = nil
 34250  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.report)
 34251  	if err != nil {
 34252  		return nil, err
 34253  	}
 34254  	c.urlParams_.Set("alt", alt)
 34255  	c.urlParams_.Set("prettyPrint", "false")
 34256  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/reports/compatiblefields/query")
 34257  	urls += "?" + c.urlParams_.Encode()
 34258  	req, err := http.NewRequest("POST", urls, body)
 34259  	if err != nil {
 34260  		return nil, err
 34261  	}
 34262  	req.Header = reqHeaders
 34263  	googleapi.Expand(req.URL, map[string]string{
 34264  		"profileId": strconv.FormatInt(c.profileId, 10),
 34265  	})
 34266  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 34267  }
 34268  
 34269  // Do executes the "dfareporting.reports.compatibleFields.query" call.
 34270  // Any non-2xx status code is an error. Response headers are in either
 34271  // *CompatibleFields.ServerResponse.Header or (if a response was returned at
 34272  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 34273  // check whether the returned error was because http.StatusNotModified was
 34274  // returned.
 34275  func (c *ReportsCompatibleFieldsQueryCall) Do(opts ...googleapi.CallOption) (*CompatibleFields, error) {
 34276  	gensupport.SetOptions(c.urlParams_, opts...)
 34277  	res, err := c.doRequest("json")
 34278  	if res != nil && res.StatusCode == http.StatusNotModified {
 34279  		if res.Body != nil {
 34280  			res.Body.Close()
 34281  		}
 34282  		return nil, gensupport.WrapError(&googleapi.Error{
 34283  			Code:   res.StatusCode,
 34284  			Header: res.Header,
 34285  		})
 34286  	}
 34287  	if err != nil {
 34288  		return nil, err
 34289  	}
 34290  	defer googleapi.CloseBody(res)
 34291  	if err := googleapi.CheckResponse(res); err != nil {
 34292  		return nil, gensupport.WrapError(err)
 34293  	}
 34294  	ret := &CompatibleFields{
 34295  		ServerResponse: googleapi.ServerResponse{
 34296  			Header:         res.Header,
 34297  			HTTPStatusCode: res.StatusCode,
 34298  		},
 34299  	}
 34300  	target := &ret
 34301  	if err := gensupport.DecodeResponse(target, res); err != nil {
 34302  		return nil, err
 34303  	}
 34304  	return ret, nil
 34305  }
 34306  
 34307  type ReportsFilesGetCall struct {
 34308  	s            *Service
 34309  	profileId    int64
 34310  	reportId     int64
 34311  	fileId       int64
 34312  	urlParams_   gensupport.URLParams
 34313  	ifNoneMatch_ string
 34314  	ctx_         context.Context
 34315  	header_      http.Header
 34316  }
 34317  
 34318  // Get: Retrieves a report file by its report ID and file ID. This method
 34319  // supports media download.
 34320  //
 34321  // - fileId: The ID of the report file.
 34322  // - profileId: The Campaign Manager 360 user profile ID.
 34323  // - reportId: The ID of the report.
 34324  func (r *ReportsFilesService) Get(profileId int64, reportId int64, fileId int64) *ReportsFilesGetCall {
 34325  	c := &ReportsFilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 34326  	c.profileId = profileId
 34327  	c.reportId = reportId
 34328  	c.fileId = fileId
 34329  	return c
 34330  }
 34331  
 34332  // Fields allows partial responses to be retrieved. See
 34333  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 34334  // details.
 34335  func (c *ReportsFilesGetCall) Fields(s ...googleapi.Field) *ReportsFilesGetCall {
 34336  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 34337  	return c
 34338  }
 34339  
 34340  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 34341  // object's ETag matches the given value. This is useful for getting updates
 34342  // only after the object has changed since the last request.
 34343  func (c *ReportsFilesGetCall) IfNoneMatch(entityTag string) *ReportsFilesGetCall {
 34344  	c.ifNoneMatch_ = entityTag
 34345  	return c
 34346  }
 34347  
 34348  // Context sets the context to be used in this call's Do and Download methods.
 34349  func (c *ReportsFilesGetCall) Context(ctx context.Context) *ReportsFilesGetCall {
 34350  	c.ctx_ = ctx
 34351  	return c
 34352  }
 34353  
 34354  // Header returns a http.Header that can be modified by the caller to add
 34355  // headers to the request.
 34356  func (c *ReportsFilesGetCall) Header() http.Header {
 34357  	if c.header_ == nil {
 34358  		c.header_ = make(http.Header)
 34359  	}
 34360  	return c.header_
 34361  }
 34362  
 34363  func (c *ReportsFilesGetCall) doRequest(alt string) (*http.Response, error) {
 34364  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 34365  	if c.ifNoneMatch_ != "" {
 34366  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 34367  	}
 34368  	var body io.Reader = nil
 34369  	c.urlParams_.Set("alt", alt)
 34370  	c.urlParams_.Set("prettyPrint", "false")
 34371  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/reports/{reportId}/files/{fileId}")
 34372  	urls += "?" + c.urlParams_.Encode()
 34373  	req, err := http.NewRequest("GET", urls, body)
 34374  	if err != nil {
 34375  		return nil, err
 34376  	}
 34377  	req.Header = reqHeaders
 34378  	googleapi.Expand(req.URL, map[string]string{
 34379  		"profileId": strconv.FormatInt(c.profileId, 10),
 34380  		"reportId":  strconv.FormatInt(c.reportId, 10),
 34381  		"fileId":    strconv.FormatInt(c.fileId, 10),
 34382  	})
 34383  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 34384  }
 34385  
 34386  // Download fetches the API endpoint's "media" value, instead of the normal
 34387  // API response value. If the returned error is nil, the Response is guaranteed to
 34388  // have a 2xx status code. Callers must close the Response.Body as usual.
 34389  func (c *ReportsFilesGetCall) Download(opts ...googleapi.CallOption) (*http.Response, error) {
 34390  	gensupport.SetOptions(c.urlParams_, opts...)
 34391  	res, err := c.doRequest("media")
 34392  	if err != nil {
 34393  		return nil, err
 34394  	}
 34395  	if err := googleapi.CheckResponse(res); err != nil {
 34396  		res.Body.Close()
 34397  		return nil, gensupport.WrapError(err)
 34398  	}
 34399  	return res, nil
 34400  }
 34401  
 34402  // Do executes the "dfareporting.reports.files.get" call.
 34403  // Any non-2xx status code is an error. Response headers are in either
 34404  // *File.ServerResponse.Header or (if a response was returned at all) in
 34405  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 34406  // whether the returned error was because http.StatusNotModified was returned.
 34407  func (c *ReportsFilesGetCall) Do(opts ...googleapi.CallOption) (*File, error) {
 34408  	gensupport.SetOptions(c.urlParams_, opts...)
 34409  	res, err := c.doRequest("json")
 34410  	if res != nil && res.StatusCode == http.StatusNotModified {
 34411  		if res.Body != nil {
 34412  			res.Body.Close()
 34413  		}
 34414  		return nil, gensupport.WrapError(&googleapi.Error{
 34415  			Code:   res.StatusCode,
 34416  			Header: res.Header,
 34417  		})
 34418  	}
 34419  	if err != nil {
 34420  		return nil, err
 34421  	}
 34422  	defer googleapi.CloseBody(res)
 34423  	if err := googleapi.CheckResponse(res); err != nil {
 34424  		return nil, gensupport.WrapError(err)
 34425  	}
 34426  	ret := &File{
 34427  		ServerResponse: googleapi.ServerResponse{
 34428  			Header:         res.Header,
 34429  			HTTPStatusCode: res.StatusCode,
 34430  		},
 34431  	}
 34432  	target := &ret
 34433  	if err := gensupport.DecodeResponse(target, res); err != nil {
 34434  		return nil, err
 34435  	}
 34436  	return ret, nil
 34437  }
 34438  
 34439  type ReportsFilesListCall struct {
 34440  	s            *Service
 34441  	profileId    int64
 34442  	reportId     int64
 34443  	urlParams_   gensupport.URLParams
 34444  	ifNoneMatch_ string
 34445  	ctx_         context.Context
 34446  	header_      http.Header
 34447  }
 34448  
 34449  // List: Lists files for a report.
 34450  //
 34451  // - profileId: The Campaign Manager 360 user profile ID.
 34452  // - reportId: The ID of the parent report.
 34453  func (r *ReportsFilesService) List(profileId int64, reportId int64) *ReportsFilesListCall {
 34454  	c := &ReportsFilesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 34455  	c.profileId = profileId
 34456  	c.reportId = reportId
 34457  	return c
 34458  }
 34459  
 34460  // MaxResults sets the optional parameter "maxResults": Maximum number of
 34461  // results to return.
 34462  func (c *ReportsFilesListCall) MaxResults(maxResults int64) *ReportsFilesListCall {
 34463  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 34464  	return c
 34465  }
 34466  
 34467  // PageToken sets the optional parameter "pageToken": The value of the
 34468  // nextToken from the previous result page.
 34469  func (c *ReportsFilesListCall) PageToken(pageToken string) *ReportsFilesListCall {
 34470  	c.urlParams_.Set("pageToken", pageToken)
 34471  	return c
 34472  }
 34473  
 34474  // SortField sets the optional parameter "sortField": The field by which to
 34475  // sort the list.
 34476  //
 34477  // Possible values:
 34478  //
 34479  //	"ID"
 34480  //	"LAST_MODIFIED_TIME" (default)
 34481  func (c *ReportsFilesListCall) SortField(sortField string) *ReportsFilesListCall {
 34482  	c.urlParams_.Set("sortField", sortField)
 34483  	return c
 34484  }
 34485  
 34486  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 34487  //
 34488  // Possible values:
 34489  //
 34490  //	"ASCENDING" - Ascending order.
 34491  //	"DESCENDING" (default) - Descending order.
 34492  func (c *ReportsFilesListCall) SortOrder(sortOrder string) *ReportsFilesListCall {
 34493  	c.urlParams_.Set("sortOrder", sortOrder)
 34494  	return c
 34495  }
 34496  
 34497  // Fields allows partial responses to be retrieved. See
 34498  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 34499  // details.
 34500  func (c *ReportsFilesListCall) Fields(s ...googleapi.Field) *ReportsFilesListCall {
 34501  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 34502  	return c
 34503  }
 34504  
 34505  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 34506  // object's ETag matches the given value. This is useful for getting updates
 34507  // only after the object has changed since the last request.
 34508  func (c *ReportsFilesListCall) IfNoneMatch(entityTag string) *ReportsFilesListCall {
 34509  	c.ifNoneMatch_ = entityTag
 34510  	return c
 34511  }
 34512  
 34513  // Context sets the context to be used in this call's Do method.
 34514  func (c *ReportsFilesListCall) Context(ctx context.Context) *ReportsFilesListCall {
 34515  	c.ctx_ = ctx
 34516  	return c
 34517  }
 34518  
 34519  // Header returns a http.Header that can be modified by the caller to add
 34520  // headers to the request.
 34521  func (c *ReportsFilesListCall) Header() http.Header {
 34522  	if c.header_ == nil {
 34523  		c.header_ = make(http.Header)
 34524  	}
 34525  	return c.header_
 34526  }
 34527  
 34528  func (c *ReportsFilesListCall) doRequest(alt string) (*http.Response, error) {
 34529  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 34530  	if c.ifNoneMatch_ != "" {
 34531  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 34532  	}
 34533  	var body io.Reader = nil
 34534  	c.urlParams_.Set("alt", alt)
 34535  	c.urlParams_.Set("prettyPrint", "false")
 34536  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}/reports/{reportId}/files")
 34537  	urls += "?" + c.urlParams_.Encode()
 34538  	req, err := http.NewRequest("GET", urls, body)
 34539  	if err != nil {
 34540  		return nil, err
 34541  	}
 34542  	req.Header = reqHeaders
 34543  	googleapi.Expand(req.URL, map[string]string{
 34544  		"profileId": strconv.FormatInt(c.profileId, 10),
 34545  		"reportId":  strconv.FormatInt(c.reportId, 10),
 34546  	})
 34547  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 34548  }
 34549  
 34550  // Do executes the "dfareporting.reports.files.list" call.
 34551  // Any non-2xx status code is an error. Response headers are in either
 34552  // *FileList.ServerResponse.Header or (if a response was returned at all) in
 34553  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 34554  // whether the returned error was because http.StatusNotModified was returned.
 34555  func (c *ReportsFilesListCall) Do(opts ...googleapi.CallOption) (*FileList, error) {
 34556  	gensupport.SetOptions(c.urlParams_, opts...)
 34557  	res, err := c.doRequest("json")
 34558  	if res != nil && res.StatusCode == http.StatusNotModified {
 34559  		if res.Body != nil {
 34560  			res.Body.Close()
 34561  		}
 34562  		return nil, gensupport.WrapError(&googleapi.Error{
 34563  			Code:   res.StatusCode,
 34564  			Header: res.Header,
 34565  		})
 34566  	}
 34567  	if err != nil {
 34568  		return nil, err
 34569  	}
 34570  	defer googleapi.CloseBody(res)
 34571  	if err := googleapi.CheckResponse(res); err != nil {
 34572  		return nil, gensupport.WrapError(err)
 34573  	}
 34574  	ret := &FileList{
 34575  		ServerResponse: googleapi.ServerResponse{
 34576  			Header:         res.Header,
 34577  			HTTPStatusCode: res.StatusCode,
 34578  		},
 34579  	}
 34580  	target := &ret
 34581  	if err := gensupport.DecodeResponse(target, res); err != nil {
 34582  		return nil, err
 34583  	}
 34584  	return ret, nil
 34585  }
 34586  
 34587  // Pages invokes f for each page of results.
 34588  // A non-nil error returned from f will halt the iteration.
 34589  // The provided context supersedes any context provided to the Context method.
 34590  func (c *ReportsFilesListCall) Pages(ctx context.Context, f func(*FileList) error) error {
 34591  	c.ctx_ = ctx
 34592  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 34593  	for {
 34594  		x, err := c.Do()
 34595  		if err != nil {
 34596  			return err
 34597  		}
 34598  		if err := f(x); err != nil {
 34599  			return err
 34600  		}
 34601  		if x.NextPageToken == "" {
 34602  			return nil
 34603  		}
 34604  		c.PageToken(x.NextPageToken)
 34605  	}
 34606  }
 34607  
 34608  type SitesGetCall struct {
 34609  	s            *Service
 34610  	profileId    int64
 34611  	id           int64
 34612  	urlParams_   gensupport.URLParams
 34613  	ifNoneMatch_ string
 34614  	ctx_         context.Context
 34615  	header_      http.Header
 34616  }
 34617  
 34618  // Get: Gets one site by ID.
 34619  //
 34620  // - id: Site ID.
 34621  // - profileId: User profile ID associated with this request.
 34622  func (r *SitesService) Get(profileId int64, id int64) *SitesGetCall {
 34623  	c := &SitesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 34624  	c.profileId = profileId
 34625  	c.id = id
 34626  	return c
 34627  }
 34628  
 34629  // Fields allows partial responses to be retrieved. See
 34630  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 34631  // details.
 34632  func (c *SitesGetCall) Fields(s ...googleapi.Field) *SitesGetCall {
 34633  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 34634  	return c
 34635  }
 34636  
 34637  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 34638  // object's ETag matches the given value. This is useful for getting updates
 34639  // only after the object has changed since the last request.
 34640  func (c *SitesGetCall) IfNoneMatch(entityTag string) *SitesGetCall {
 34641  	c.ifNoneMatch_ = entityTag
 34642  	return c
 34643  }
 34644  
 34645  // Context sets the context to be used in this call's Do method.
 34646  func (c *SitesGetCall) Context(ctx context.Context) *SitesGetCall {
 34647  	c.ctx_ = ctx
 34648  	return c
 34649  }
 34650  
 34651  // Header returns a http.Header that can be modified by the caller to add
 34652  // headers to the request.
 34653  func (c *SitesGetCall) Header() http.Header {
 34654  	if c.header_ == nil {
 34655  		c.header_ = make(http.Header)
 34656  	}
 34657  	return c.header_
 34658  }
 34659  
 34660  func (c *SitesGetCall) doRequest(alt string) (*http.Response, error) {
 34661  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 34662  	if c.ifNoneMatch_ != "" {
 34663  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 34664  	}
 34665  	var body io.Reader = nil
 34666  	c.urlParams_.Set("alt", alt)
 34667  	c.urlParams_.Set("prettyPrint", "false")
 34668  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/sites/{+id}")
 34669  	urls += "?" + c.urlParams_.Encode()
 34670  	req, err := http.NewRequest("GET", urls, body)
 34671  	if err != nil {
 34672  		return nil, err
 34673  	}
 34674  	req.Header = reqHeaders
 34675  	googleapi.Expand(req.URL, map[string]string{
 34676  		"profileId": strconv.FormatInt(c.profileId, 10),
 34677  		"id":        strconv.FormatInt(c.id, 10),
 34678  	})
 34679  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 34680  }
 34681  
 34682  // Do executes the "dfareporting.sites.get" call.
 34683  // Any non-2xx status code is an error. Response headers are in either
 34684  // *Site.ServerResponse.Header or (if a response was returned at all) in
 34685  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 34686  // whether the returned error was because http.StatusNotModified was returned.
 34687  func (c *SitesGetCall) Do(opts ...googleapi.CallOption) (*Site, error) {
 34688  	gensupport.SetOptions(c.urlParams_, opts...)
 34689  	res, err := c.doRequest("json")
 34690  	if res != nil && res.StatusCode == http.StatusNotModified {
 34691  		if res.Body != nil {
 34692  			res.Body.Close()
 34693  		}
 34694  		return nil, gensupport.WrapError(&googleapi.Error{
 34695  			Code:   res.StatusCode,
 34696  			Header: res.Header,
 34697  		})
 34698  	}
 34699  	if err != nil {
 34700  		return nil, err
 34701  	}
 34702  	defer googleapi.CloseBody(res)
 34703  	if err := googleapi.CheckResponse(res); err != nil {
 34704  		return nil, gensupport.WrapError(err)
 34705  	}
 34706  	ret := &Site{
 34707  		ServerResponse: googleapi.ServerResponse{
 34708  			Header:         res.Header,
 34709  			HTTPStatusCode: res.StatusCode,
 34710  		},
 34711  	}
 34712  	target := &ret
 34713  	if err := gensupport.DecodeResponse(target, res); err != nil {
 34714  		return nil, err
 34715  	}
 34716  	return ret, nil
 34717  }
 34718  
 34719  type SitesInsertCall struct {
 34720  	s          *Service
 34721  	profileId  int64
 34722  	site       *Site
 34723  	urlParams_ gensupport.URLParams
 34724  	ctx_       context.Context
 34725  	header_    http.Header
 34726  }
 34727  
 34728  // Insert: Inserts a new site.
 34729  //
 34730  // - profileId: User profile ID associated with this request.
 34731  func (r *SitesService) Insert(profileId int64, site *Site) *SitesInsertCall {
 34732  	c := &SitesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 34733  	c.profileId = profileId
 34734  	c.site = site
 34735  	return c
 34736  }
 34737  
 34738  // Fields allows partial responses to be retrieved. See
 34739  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 34740  // details.
 34741  func (c *SitesInsertCall) Fields(s ...googleapi.Field) *SitesInsertCall {
 34742  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 34743  	return c
 34744  }
 34745  
 34746  // Context sets the context to be used in this call's Do method.
 34747  func (c *SitesInsertCall) Context(ctx context.Context) *SitesInsertCall {
 34748  	c.ctx_ = ctx
 34749  	return c
 34750  }
 34751  
 34752  // Header returns a http.Header that can be modified by the caller to add
 34753  // headers to the request.
 34754  func (c *SitesInsertCall) Header() http.Header {
 34755  	if c.header_ == nil {
 34756  		c.header_ = make(http.Header)
 34757  	}
 34758  	return c.header_
 34759  }
 34760  
 34761  func (c *SitesInsertCall) doRequest(alt string) (*http.Response, error) {
 34762  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 34763  	var body io.Reader = nil
 34764  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.site)
 34765  	if err != nil {
 34766  		return nil, err
 34767  	}
 34768  	c.urlParams_.Set("alt", alt)
 34769  	c.urlParams_.Set("prettyPrint", "false")
 34770  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/sites")
 34771  	urls += "?" + c.urlParams_.Encode()
 34772  	req, err := http.NewRequest("POST", urls, body)
 34773  	if err != nil {
 34774  		return nil, err
 34775  	}
 34776  	req.Header = reqHeaders
 34777  	googleapi.Expand(req.URL, map[string]string{
 34778  		"profileId": strconv.FormatInt(c.profileId, 10),
 34779  	})
 34780  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 34781  }
 34782  
 34783  // Do executes the "dfareporting.sites.insert" call.
 34784  // Any non-2xx status code is an error. Response headers are in either
 34785  // *Site.ServerResponse.Header or (if a response was returned at all) in
 34786  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 34787  // whether the returned error was because http.StatusNotModified was returned.
 34788  func (c *SitesInsertCall) Do(opts ...googleapi.CallOption) (*Site, error) {
 34789  	gensupport.SetOptions(c.urlParams_, opts...)
 34790  	res, err := c.doRequest("json")
 34791  	if res != nil && res.StatusCode == http.StatusNotModified {
 34792  		if res.Body != nil {
 34793  			res.Body.Close()
 34794  		}
 34795  		return nil, gensupport.WrapError(&googleapi.Error{
 34796  			Code:   res.StatusCode,
 34797  			Header: res.Header,
 34798  		})
 34799  	}
 34800  	if err != nil {
 34801  		return nil, err
 34802  	}
 34803  	defer googleapi.CloseBody(res)
 34804  	if err := googleapi.CheckResponse(res); err != nil {
 34805  		return nil, gensupport.WrapError(err)
 34806  	}
 34807  	ret := &Site{
 34808  		ServerResponse: googleapi.ServerResponse{
 34809  			Header:         res.Header,
 34810  			HTTPStatusCode: res.StatusCode,
 34811  		},
 34812  	}
 34813  	target := &ret
 34814  	if err := gensupport.DecodeResponse(target, res); err != nil {
 34815  		return nil, err
 34816  	}
 34817  	return ret, nil
 34818  }
 34819  
 34820  type SitesListCall struct {
 34821  	s            *Service
 34822  	profileId    int64
 34823  	urlParams_   gensupport.URLParams
 34824  	ifNoneMatch_ string
 34825  	ctx_         context.Context
 34826  	header_      http.Header
 34827  }
 34828  
 34829  // List: Retrieves a list of sites, possibly filtered. This method supports
 34830  // paging.
 34831  //
 34832  // - profileId: User profile ID associated with this request.
 34833  func (r *SitesService) List(profileId int64) *SitesListCall {
 34834  	c := &SitesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 34835  	c.profileId = profileId
 34836  	return c
 34837  }
 34838  
 34839  // AcceptsInStreamVideoPlacements sets the optional parameter
 34840  // "acceptsInStreamVideoPlacements": This search filter is no longer supported
 34841  // and will have no effect on the results returned.
 34842  func (c *SitesListCall) AcceptsInStreamVideoPlacements(acceptsInStreamVideoPlacements bool) *SitesListCall {
 34843  	c.urlParams_.Set("acceptsInStreamVideoPlacements", fmt.Sprint(acceptsInStreamVideoPlacements))
 34844  	return c
 34845  }
 34846  
 34847  // AcceptsInterstitialPlacements sets the optional parameter
 34848  // "acceptsInterstitialPlacements": This search filter is no longer supported
 34849  // and will have no effect on the results returned.
 34850  func (c *SitesListCall) AcceptsInterstitialPlacements(acceptsInterstitialPlacements bool) *SitesListCall {
 34851  	c.urlParams_.Set("acceptsInterstitialPlacements", fmt.Sprint(acceptsInterstitialPlacements))
 34852  	return c
 34853  }
 34854  
 34855  // AcceptsPublisherPaidPlacements sets the optional parameter
 34856  // "acceptsPublisherPaidPlacements": Select only sites that accept publisher
 34857  // paid placements.
 34858  func (c *SitesListCall) AcceptsPublisherPaidPlacements(acceptsPublisherPaidPlacements bool) *SitesListCall {
 34859  	c.urlParams_.Set("acceptsPublisherPaidPlacements", fmt.Sprint(acceptsPublisherPaidPlacements))
 34860  	return c
 34861  }
 34862  
 34863  // AdWordsSite sets the optional parameter "adWordsSite": Select only AdWords
 34864  // sites.
 34865  func (c *SitesListCall) AdWordsSite(adWordsSite bool) *SitesListCall {
 34866  	c.urlParams_.Set("adWordsSite", fmt.Sprint(adWordsSite))
 34867  	return c
 34868  }
 34869  
 34870  // Approved sets the optional parameter "approved": Select only approved sites.
 34871  func (c *SitesListCall) Approved(approved bool) *SitesListCall {
 34872  	c.urlParams_.Set("approved", fmt.Sprint(approved))
 34873  	return c
 34874  }
 34875  
 34876  // CampaignIds sets the optional parameter "campaignIds": Select only sites
 34877  // with these campaign IDs.
 34878  func (c *SitesListCall) CampaignIds(campaignIds ...int64) *SitesListCall {
 34879  	var campaignIds_ []string
 34880  	for _, v := range campaignIds {
 34881  		campaignIds_ = append(campaignIds_, fmt.Sprint(v))
 34882  	}
 34883  	c.urlParams_.SetMulti("campaignIds", campaignIds_)
 34884  	return c
 34885  }
 34886  
 34887  // DirectorySiteIds sets the optional parameter "directorySiteIds": Select only
 34888  // sites with these directory site IDs.
 34889  func (c *SitesListCall) DirectorySiteIds(directorySiteIds ...int64) *SitesListCall {
 34890  	var directorySiteIds_ []string
 34891  	for _, v := range directorySiteIds {
 34892  		directorySiteIds_ = append(directorySiteIds_, fmt.Sprint(v))
 34893  	}
 34894  	c.urlParams_.SetMulti("directorySiteIds", directorySiteIds_)
 34895  	return c
 34896  }
 34897  
 34898  // Ids sets the optional parameter "ids": Select only sites with these IDs.
 34899  func (c *SitesListCall) Ids(ids ...int64) *SitesListCall {
 34900  	var ids_ []string
 34901  	for _, v := range ids {
 34902  		ids_ = append(ids_, fmt.Sprint(v))
 34903  	}
 34904  	c.urlParams_.SetMulti("ids", ids_)
 34905  	return c
 34906  }
 34907  
 34908  // MaxResults sets the optional parameter "maxResults": Maximum number of
 34909  // results to return.
 34910  func (c *SitesListCall) MaxResults(maxResults int64) *SitesListCall {
 34911  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 34912  	return c
 34913  }
 34914  
 34915  // PageToken sets the optional parameter "pageToken": Value of the
 34916  // nextPageToken from the previous result page.
 34917  func (c *SitesListCall) PageToken(pageToken string) *SitesListCall {
 34918  	c.urlParams_.Set("pageToken", pageToken)
 34919  	return c
 34920  }
 34921  
 34922  // SearchString sets the optional parameter "searchString": Allows searching
 34923  // for objects by name, ID or keyName. Wildcards (*) are allowed. For example,
 34924  // "site*2015" will return objects with names like "site June 2015", "site
 34925  // April 2015", or simply "site 2015". Most of the searches also add wildcards
 34926  // implicitly at the start and the end of the search string. For example, a
 34927  // search string of "site" will match objects with name "my site", "site 2015",
 34928  // or simply "site".
 34929  func (c *SitesListCall) SearchString(searchString string) *SitesListCall {
 34930  	c.urlParams_.Set("searchString", searchString)
 34931  	return c
 34932  }
 34933  
 34934  // SortField sets the optional parameter "sortField": Field by which to sort
 34935  // the list.
 34936  //
 34937  // Possible values:
 34938  //
 34939  //	"ID" (default)
 34940  //	"NAME"
 34941  func (c *SitesListCall) SortField(sortField string) *SitesListCall {
 34942  	c.urlParams_.Set("sortField", sortField)
 34943  	return c
 34944  }
 34945  
 34946  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 34947  //
 34948  // Possible values:
 34949  //
 34950  //	"ASCENDING" (default) - Ascending order.
 34951  //	"DESCENDING" - Descending order.
 34952  func (c *SitesListCall) SortOrder(sortOrder string) *SitesListCall {
 34953  	c.urlParams_.Set("sortOrder", sortOrder)
 34954  	return c
 34955  }
 34956  
 34957  // SubaccountId sets the optional parameter "subaccountId": Select only sites
 34958  // with this subaccount ID.
 34959  func (c *SitesListCall) SubaccountId(subaccountId int64) *SitesListCall {
 34960  	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
 34961  	return c
 34962  }
 34963  
 34964  // UnmappedSite sets the optional parameter "unmappedSite": Select only sites
 34965  // that have not been mapped to a directory site.
 34966  func (c *SitesListCall) UnmappedSite(unmappedSite bool) *SitesListCall {
 34967  	c.urlParams_.Set("unmappedSite", fmt.Sprint(unmappedSite))
 34968  	return c
 34969  }
 34970  
 34971  // Fields allows partial responses to be retrieved. See
 34972  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 34973  // details.
 34974  func (c *SitesListCall) Fields(s ...googleapi.Field) *SitesListCall {
 34975  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 34976  	return c
 34977  }
 34978  
 34979  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 34980  // object's ETag matches the given value. This is useful for getting updates
 34981  // only after the object has changed since the last request.
 34982  func (c *SitesListCall) IfNoneMatch(entityTag string) *SitesListCall {
 34983  	c.ifNoneMatch_ = entityTag
 34984  	return c
 34985  }
 34986  
 34987  // Context sets the context to be used in this call's Do method.
 34988  func (c *SitesListCall) Context(ctx context.Context) *SitesListCall {
 34989  	c.ctx_ = ctx
 34990  	return c
 34991  }
 34992  
 34993  // Header returns a http.Header that can be modified by the caller to add
 34994  // headers to the request.
 34995  func (c *SitesListCall) Header() http.Header {
 34996  	if c.header_ == nil {
 34997  		c.header_ = make(http.Header)
 34998  	}
 34999  	return c.header_
 35000  }
 35001  
 35002  func (c *SitesListCall) doRequest(alt string) (*http.Response, error) {
 35003  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 35004  	if c.ifNoneMatch_ != "" {
 35005  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 35006  	}
 35007  	var body io.Reader = nil
 35008  	c.urlParams_.Set("alt", alt)
 35009  	c.urlParams_.Set("prettyPrint", "false")
 35010  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/sites")
 35011  	urls += "?" + c.urlParams_.Encode()
 35012  	req, err := http.NewRequest("GET", urls, body)
 35013  	if err != nil {
 35014  		return nil, err
 35015  	}
 35016  	req.Header = reqHeaders
 35017  	googleapi.Expand(req.URL, map[string]string{
 35018  		"profileId": strconv.FormatInt(c.profileId, 10),
 35019  	})
 35020  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 35021  }
 35022  
 35023  // Do executes the "dfareporting.sites.list" call.
 35024  // Any non-2xx status code is an error. Response headers are in either
 35025  // *SitesListResponse.ServerResponse.Header or (if a response was returned at
 35026  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 35027  // check whether the returned error was because http.StatusNotModified was
 35028  // returned.
 35029  func (c *SitesListCall) Do(opts ...googleapi.CallOption) (*SitesListResponse, error) {
 35030  	gensupport.SetOptions(c.urlParams_, opts...)
 35031  	res, err := c.doRequest("json")
 35032  	if res != nil && res.StatusCode == http.StatusNotModified {
 35033  		if res.Body != nil {
 35034  			res.Body.Close()
 35035  		}
 35036  		return nil, gensupport.WrapError(&googleapi.Error{
 35037  			Code:   res.StatusCode,
 35038  			Header: res.Header,
 35039  		})
 35040  	}
 35041  	if err != nil {
 35042  		return nil, err
 35043  	}
 35044  	defer googleapi.CloseBody(res)
 35045  	if err := googleapi.CheckResponse(res); err != nil {
 35046  		return nil, gensupport.WrapError(err)
 35047  	}
 35048  	ret := &SitesListResponse{
 35049  		ServerResponse: googleapi.ServerResponse{
 35050  			Header:         res.Header,
 35051  			HTTPStatusCode: res.StatusCode,
 35052  		},
 35053  	}
 35054  	target := &ret
 35055  	if err := gensupport.DecodeResponse(target, res); err != nil {
 35056  		return nil, err
 35057  	}
 35058  	return ret, nil
 35059  }
 35060  
 35061  // Pages invokes f for each page of results.
 35062  // A non-nil error returned from f will halt the iteration.
 35063  // The provided context supersedes any context provided to the Context method.
 35064  func (c *SitesListCall) Pages(ctx context.Context, f func(*SitesListResponse) error) error {
 35065  	c.ctx_ = ctx
 35066  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 35067  	for {
 35068  		x, err := c.Do()
 35069  		if err != nil {
 35070  			return err
 35071  		}
 35072  		if err := f(x); err != nil {
 35073  			return err
 35074  		}
 35075  		if x.NextPageToken == "" {
 35076  			return nil
 35077  		}
 35078  		c.PageToken(x.NextPageToken)
 35079  	}
 35080  }
 35081  
 35082  type SitesPatchCall struct {
 35083  	s          *Service
 35084  	profileId  int64
 35085  	site       *Site
 35086  	urlParams_ gensupport.URLParams
 35087  	ctx_       context.Context
 35088  	header_    http.Header
 35089  }
 35090  
 35091  // Patch: Updates an existing site. This method supports patch semantics.
 35092  //
 35093  // - id: Site ID.
 35094  // - profileId: User profile ID associated with this request.
 35095  func (r *SitesService) Patch(profileId int64, id int64, site *Site) *SitesPatchCall {
 35096  	c := &SitesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 35097  	c.profileId = profileId
 35098  	c.urlParams_.Set("id", fmt.Sprint(id))
 35099  	c.site = site
 35100  	return c
 35101  }
 35102  
 35103  // Fields allows partial responses to be retrieved. See
 35104  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 35105  // details.
 35106  func (c *SitesPatchCall) Fields(s ...googleapi.Field) *SitesPatchCall {
 35107  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 35108  	return c
 35109  }
 35110  
 35111  // Context sets the context to be used in this call's Do method.
 35112  func (c *SitesPatchCall) Context(ctx context.Context) *SitesPatchCall {
 35113  	c.ctx_ = ctx
 35114  	return c
 35115  }
 35116  
 35117  // Header returns a http.Header that can be modified by the caller to add
 35118  // headers to the request.
 35119  func (c *SitesPatchCall) Header() http.Header {
 35120  	if c.header_ == nil {
 35121  		c.header_ = make(http.Header)
 35122  	}
 35123  	return c.header_
 35124  }
 35125  
 35126  func (c *SitesPatchCall) doRequest(alt string) (*http.Response, error) {
 35127  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 35128  	var body io.Reader = nil
 35129  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.site)
 35130  	if err != nil {
 35131  		return nil, err
 35132  	}
 35133  	c.urlParams_.Set("alt", alt)
 35134  	c.urlParams_.Set("prettyPrint", "false")
 35135  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/sites")
 35136  	urls += "?" + c.urlParams_.Encode()
 35137  	req, err := http.NewRequest("PATCH", urls, body)
 35138  	if err != nil {
 35139  		return nil, err
 35140  	}
 35141  	req.Header = reqHeaders
 35142  	googleapi.Expand(req.URL, map[string]string{
 35143  		"profileId": strconv.FormatInt(c.profileId, 10),
 35144  	})
 35145  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 35146  }
 35147  
 35148  // Do executes the "dfareporting.sites.patch" call.
 35149  // Any non-2xx status code is an error. Response headers are in either
 35150  // *Site.ServerResponse.Header or (if a response was returned at all) in
 35151  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 35152  // whether the returned error was because http.StatusNotModified was returned.
 35153  func (c *SitesPatchCall) Do(opts ...googleapi.CallOption) (*Site, error) {
 35154  	gensupport.SetOptions(c.urlParams_, opts...)
 35155  	res, err := c.doRequest("json")
 35156  	if res != nil && res.StatusCode == http.StatusNotModified {
 35157  		if res.Body != nil {
 35158  			res.Body.Close()
 35159  		}
 35160  		return nil, gensupport.WrapError(&googleapi.Error{
 35161  			Code:   res.StatusCode,
 35162  			Header: res.Header,
 35163  		})
 35164  	}
 35165  	if err != nil {
 35166  		return nil, err
 35167  	}
 35168  	defer googleapi.CloseBody(res)
 35169  	if err := googleapi.CheckResponse(res); err != nil {
 35170  		return nil, gensupport.WrapError(err)
 35171  	}
 35172  	ret := &Site{
 35173  		ServerResponse: googleapi.ServerResponse{
 35174  			Header:         res.Header,
 35175  			HTTPStatusCode: res.StatusCode,
 35176  		},
 35177  	}
 35178  	target := &ret
 35179  	if err := gensupport.DecodeResponse(target, res); err != nil {
 35180  		return nil, err
 35181  	}
 35182  	return ret, nil
 35183  }
 35184  
 35185  type SitesUpdateCall struct {
 35186  	s          *Service
 35187  	profileId  int64
 35188  	site       *Site
 35189  	urlParams_ gensupport.URLParams
 35190  	ctx_       context.Context
 35191  	header_    http.Header
 35192  }
 35193  
 35194  // Update: Updates an existing site.
 35195  //
 35196  // - profileId: User profile ID associated with this request.
 35197  func (r *SitesService) Update(profileId int64, site *Site) *SitesUpdateCall {
 35198  	c := &SitesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 35199  	c.profileId = profileId
 35200  	c.site = site
 35201  	return c
 35202  }
 35203  
 35204  // Fields allows partial responses to be retrieved. See
 35205  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 35206  // details.
 35207  func (c *SitesUpdateCall) Fields(s ...googleapi.Field) *SitesUpdateCall {
 35208  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 35209  	return c
 35210  }
 35211  
 35212  // Context sets the context to be used in this call's Do method.
 35213  func (c *SitesUpdateCall) Context(ctx context.Context) *SitesUpdateCall {
 35214  	c.ctx_ = ctx
 35215  	return c
 35216  }
 35217  
 35218  // Header returns a http.Header that can be modified by the caller to add
 35219  // headers to the request.
 35220  func (c *SitesUpdateCall) Header() http.Header {
 35221  	if c.header_ == nil {
 35222  		c.header_ = make(http.Header)
 35223  	}
 35224  	return c.header_
 35225  }
 35226  
 35227  func (c *SitesUpdateCall) doRequest(alt string) (*http.Response, error) {
 35228  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 35229  	var body io.Reader = nil
 35230  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.site)
 35231  	if err != nil {
 35232  		return nil, err
 35233  	}
 35234  	c.urlParams_.Set("alt", alt)
 35235  	c.urlParams_.Set("prettyPrint", "false")
 35236  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/sites")
 35237  	urls += "?" + c.urlParams_.Encode()
 35238  	req, err := http.NewRequest("PUT", urls, body)
 35239  	if err != nil {
 35240  		return nil, err
 35241  	}
 35242  	req.Header = reqHeaders
 35243  	googleapi.Expand(req.URL, map[string]string{
 35244  		"profileId": strconv.FormatInt(c.profileId, 10),
 35245  	})
 35246  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 35247  }
 35248  
 35249  // Do executes the "dfareporting.sites.update" call.
 35250  // Any non-2xx status code is an error. Response headers are in either
 35251  // *Site.ServerResponse.Header or (if a response was returned at all) in
 35252  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 35253  // whether the returned error was because http.StatusNotModified was returned.
 35254  func (c *SitesUpdateCall) Do(opts ...googleapi.CallOption) (*Site, error) {
 35255  	gensupport.SetOptions(c.urlParams_, opts...)
 35256  	res, err := c.doRequest("json")
 35257  	if res != nil && res.StatusCode == http.StatusNotModified {
 35258  		if res.Body != nil {
 35259  			res.Body.Close()
 35260  		}
 35261  		return nil, gensupport.WrapError(&googleapi.Error{
 35262  			Code:   res.StatusCode,
 35263  			Header: res.Header,
 35264  		})
 35265  	}
 35266  	if err != nil {
 35267  		return nil, err
 35268  	}
 35269  	defer googleapi.CloseBody(res)
 35270  	if err := googleapi.CheckResponse(res); err != nil {
 35271  		return nil, gensupport.WrapError(err)
 35272  	}
 35273  	ret := &Site{
 35274  		ServerResponse: googleapi.ServerResponse{
 35275  			Header:         res.Header,
 35276  			HTTPStatusCode: res.StatusCode,
 35277  		},
 35278  	}
 35279  	target := &ret
 35280  	if err := gensupport.DecodeResponse(target, res); err != nil {
 35281  		return nil, err
 35282  	}
 35283  	return ret, nil
 35284  }
 35285  
 35286  type SizesGetCall struct {
 35287  	s            *Service
 35288  	profileId    int64
 35289  	id           int64
 35290  	urlParams_   gensupport.URLParams
 35291  	ifNoneMatch_ string
 35292  	ctx_         context.Context
 35293  	header_      http.Header
 35294  }
 35295  
 35296  // Get: Gets one size by ID.
 35297  //
 35298  // - id: Size ID.
 35299  // - profileId: User profile ID associated with this request.
 35300  func (r *SizesService) Get(profileId int64, id int64) *SizesGetCall {
 35301  	c := &SizesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 35302  	c.profileId = profileId
 35303  	c.id = id
 35304  	return c
 35305  }
 35306  
 35307  // Fields allows partial responses to be retrieved. See
 35308  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 35309  // details.
 35310  func (c *SizesGetCall) Fields(s ...googleapi.Field) *SizesGetCall {
 35311  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 35312  	return c
 35313  }
 35314  
 35315  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 35316  // object's ETag matches the given value. This is useful for getting updates
 35317  // only after the object has changed since the last request.
 35318  func (c *SizesGetCall) IfNoneMatch(entityTag string) *SizesGetCall {
 35319  	c.ifNoneMatch_ = entityTag
 35320  	return c
 35321  }
 35322  
 35323  // Context sets the context to be used in this call's Do method.
 35324  func (c *SizesGetCall) Context(ctx context.Context) *SizesGetCall {
 35325  	c.ctx_ = ctx
 35326  	return c
 35327  }
 35328  
 35329  // Header returns a http.Header that can be modified by the caller to add
 35330  // headers to the request.
 35331  func (c *SizesGetCall) Header() http.Header {
 35332  	if c.header_ == nil {
 35333  		c.header_ = make(http.Header)
 35334  	}
 35335  	return c.header_
 35336  }
 35337  
 35338  func (c *SizesGetCall) doRequest(alt string) (*http.Response, error) {
 35339  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 35340  	if c.ifNoneMatch_ != "" {
 35341  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 35342  	}
 35343  	var body io.Reader = nil
 35344  	c.urlParams_.Set("alt", alt)
 35345  	c.urlParams_.Set("prettyPrint", "false")
 35346  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/sizes/{+id}")
 35347  	urls += "?" + c.urlParams_.Encode()
 35348  	req, err := http.NewRequest("GET", urls, body)
 35349  	if err != nil {
 35350  		return nil, err
 35351  	}
 35352  	req.Header = reqHeaders
 35353  	googleapi.Expand(req.URL, map[string]string{
 35354  		"profileId": strconv.FormatInt(c.profileId, 10),
 35355  		"id":        strconv.FormatInt(c.id, 10),
 35356  	})
 35357  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 35358  }
 35359  
 35360  // Do executes the "dfareporting.sizes.get" call.
 35361  // Any non-2xx status code is an error. Response headers are in either
 35362  // *Size.ServerResponse.Header or (if a response was returned at all) in
 35363  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 35364  // whether the returned error was because http.StatusNotModified was returned.
 35365  func (c *SizesGetCall) Do(opts ...googleapi.CallOption) (*Size, error) {
 35366  	gensupport.SetOptions(c.urlParams_, opts...)
 35367  	res, err := c.doRequest("json")
 35368  	if res != nil && res.StatusCode == http.StatusNotModified {
 35369  		if res.Body != nil {
 35370  			res.Body.Close()
 35371  		}
 35372  		return nil, gensupport.WrapError(&googleapi.Error{
 35373  			Code:   res.StatusCode,
 35374  			Header: res.Header,
 35375  		})
 35376  	}
 35377  	if err != nil {
 35378  		return nil, err
 35379  	}
 35380  	defer googleapi.CloseBody(res)
 35381  	if err := googleapi.CheckResponse(res); err != nil {
 35382  		return nil, gensupport.WrapError(err)
 35383  	}
 35384  	ret := &Size{
 35385  		ServerResponse: googleapi.ServerResponse{
 35386  			Header:         res.Header,
 35387  			HTTPStatusCode: res.StatusCode,
 35388  		},
 35389  	}
 35390  	target := &ret
 35391  	if err := gensupport.DecodeResponse(target, res); err != nil {
 35392  		return nil, err
 35393  	}
 35394  	return ret, nil
 35395  }
 35396  
 35397  type SizesInsertCall struct {
 35398  	s          *Service
 35399  	profileId  int64
 35400  	size       *Size
 35401  	urlParams_ gensupport.URLParams
 35402  	ctx_       context.Context
 35403  	header_    http.Header
 35404  }
 35405  
 35406  // Insert: Inserts a new size.
 35407  //
 35408  // - profileId: User profile ID associated with this request.
 35409  func (r *SizesService) Insert(profileId int64, size *Size) *SizesInsertCall {
 35410  	c := &SizesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 35411  	c.profileId = profileId
 35412  	c.size = size
 35413  	return c
 35414  }
 35415  
 35416  // Fields allows partial responses to be retrieved. See
 35417  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 35418  // details.
 35419  func (c *SizesInsertCall) Fields(s ...googleapi.Field) *SizesInsertCall {
 35420  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 35421  	return c
 35422  }
 35423  
 35424  // Context sets the context to be used in this call's Do method.
 35425  func (c *SizesInsertCall) Context(ctx context.Context) *SizesInsertCall {
 35426  	c.ctx_ = ctx
 35427  	return c
 35428  }
 35429  
 35430  // Header returns a http.Header that can be modified by the caller to add
 35431  // headers to the request.
 35432  func (c *SizesInsertCall) Header() http.Header {
 35433  	if c.header_ == nil {
 35434  		c.header_ = make(http.Header)
 35435  	}
 35436  	return c.header_
 35437  }
 35438  
 35439  func (c *SizesInsertCall) doRequest(alt string) (*http.Response, error) {
 35440  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 35441  	var body io.Reader = nil
 35442  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.size)
 35443  	if err != nil {
 35444  		return nil, err
 35445  	}
 35446  	c.urlParams_.Set("alt", alt)
 35447  	c.urlParams_.Set("prettyPrint", "false")
 35448  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/sizes")
 35449  	urls += "?" + c.urlParams_.Encode()
 35450  	req, err := http.NewRequest("POST", urls, body)
 35451  	if err != nil {
 35452  		return nil, err
 35453  	}
 35454  	req.Header = reqHeaders
 35455  	googleapi.Expand(req.URL, map[string]string{
 35456  		"profileId": strconv.FormatInt(c.profileId, 10),
 35457  	})
 35458  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 35459  }
 35460  
 35461  // Do executes the "dfareporting.sizes.insert" call.
 35462  // Any non-2xx status code is an error. Response headers are in either
 35463  // *Size.ServerResponse.Header or (if a response was returned at all) in
 35464  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 35465  // whether the returned error was because http.StatusNotModified was returned.
 35466  func (c *SizesInsertCall) Do(opts ...googleapi.CallOption) (*Size, error) {
 35467  	gensupport.SetOptions(c.urlParams_, opts...)
 35468  	res, err := c.doRequest("json")
 35469  	if res != nil && res.StatusCode == http.StatusNotModified {
 35470  		if res.Body != nil {
 35471  			res.Body.Close()
 35472  		}
 35473  		return nil, gensupport.WrapError(&googleapi.Error{
 35474  			Code:   res.StatusCode,
 35475  			Header: res.Header,
 35476  		})
 35477  	}
 35478  	if err != nil {
 35479  		return nil, err
 35480  	}
 35481  	defer googleapi.CloseBody(res)
 35482  	if err := googleapi.CheckResponse(res); err != nil {
 35483  		return nil, gensupport.WrapError(err)
 35484  	}
 35485  	ret := &Size{
 35486  		ServerResponse: googleapi.ServerResponse{
 35487  			Header:         res.Header,
 35488  			HTTPStatusCode: res.StatusCode,
 35489  		},
 35490  	}
 35491  	target := &ret
 35492  	if err := gensupport.DecodeResponse(target, res); err != nil {
 35493  		return nil, err
 35494  	}
 35495  	return ret, nil
 35496  }
 35497  
 35498  type SizesListCall struct {
 35499  	s            *Service
 35500  	profileId    int64
 35501  	urlParams_   gensupport.URLParams
 35502  	ifNoneMatch_ string
 35503  	ctx_         context.Context
 35504  	header_      http.Header
 35505  }
 35506  
 35507  // List: Retrieves a list of sizes, possibly filtered. Retrieved sizes are
 35508  // globally unique and may include values not currently in use by your account.
 35509  // Due to this, the list of sizes returned by this method may differ from the
 35510  // list seen in the Trafficking UI.
 35511  //
 35512  // - profileId: User profile ID associated with this request.
 35513  func (r *SizesService) List(profileId int64) *SizesListCall {
 35514  	c := &SizesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 35515  	c.profileId = profileId
 35516  	return c
 35517  }
 35518  
 35519  // Height sets the optional parameter "height": Select only sizes with this
 35520  // height.
 35521  func (c *SizesListCall) Height(height int64) *SizesListCall {
 35522  	c.urlParams_.Set("height", fmt.Sprint(height))
 35523  	return c
 35524  }
 35525  
 35526  // IabStandard sets the optional parameter "iabStandard": Select only IAB
 35527  // standard sizes.
 35528  func (c *SizesListCall) IabStandard(iabStandard bool) *SizesListCall {
 35529  	c.urlParams_.Set("iabStandard", fmt.Sprint(iabStandard))
 35530  	return c
 35531  }
 35532  
 35533  // Ids sets the optional parameter "ids": Select only sizes with these IDs.
 35534  func (c *SizesListCall) Ids(ids ...int64) *SizesListCall {
 35535  	var ids_ []string
 35536  	for _, v := range ids {
 35537  		ids_ = append(ids_, fmt.Sprint(v))
 35538  	}
 35539  	c.urlParams_.SetMulti("ids", ids_)
 35540  	return c
 35541  }
 35542  
 35543  // Width sets the optional parameter "width": Select only sizes with this
 35544  // width.
 35545  func (c *SizesListCall) Width(width int64) *SizesListCall {
 35546  	c.urlParams_.Set("width", fmt.Sprint(width))
 35547  	return c
 35548  }
 35549  
 35550  // Fields allows partial responses to be retrieved. See
 35551  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 35552  // details.
 35553  func (c *SizesListCall) Fields(s ...googleapi.Field) *SizesListCall {
 35554  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 35555  	return c
 35556  }
 35557  
 35558  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 35559  // object's ETag matches the given value. This is useful for getting updates
 35560  // only after the object has changed since the last request.
 35561  func (c *SizesListCall) IfNoneMatch(entityTag string) *SizesListCall {
 35562  	c.ifNoneMatch_ = entityTag
 35563  	return c
 35564  }
 35565  
 35566  // Context sets the context to be used in this call's Do method.
 35567  func (c *SizesListCall) Context(ctx context.Context) *SizesListCall {
 35568  	c.ctx_ = ctx
 35569  	return c
 35570  }
 35571  
 35572  // Header returns a http.Header that can be modified by the caller to add
 35573  // headers to the request.
 35574  func (c *SizesListCall) Header() http.Header {
 35575  	if c.header_ == nil {
 35576  		c.header_ = make(http.Header)
 35577  	}
 35578  	return c.header_
 35579  }
 35580  
 35581  func (c *SizesListCall) doRequest(alt string) (*http.Response, error) {
 35582  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 35583  	if c.ifNoneMatch_ != "" {
 35584  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 35585  	}
 35586  	var body io.Reader = nil
 35587  	c.urlParams_.Set("alt", alt)
 35588  	c.urlParams_.Set("prettyPrint", "false")
 35589  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/sizes")
 35590  	urls += "?" + c.urlParams_.Encode()
 35591  	req, err := http.NewRequest("GET", urls, body)
 35592  	if err != nil {
 35593  		return nil, err
 35594  	}
 35595  	req.Header = reqHeaders
 35596  	googleapi.Expand(req.URL, map[string]string{
 35597  		"profileId": strconv.FormatInt(c.profileId, 10),
 35598  	})
 35599  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 35600  }
 35601  
 35602  // Do executes the "dfareporting.sizes.list" call.
 35603  // Any non-2xx status code is an error. Response headers are in either
 35604  // *SizesListResponse.ServerResponse.Header or (if a response was returned at
 35605  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 35606  // check whether the returned error was because http.StatusNotModified was
 35607  // returned.
 35608  func (c *SizesListCall) Do(opts ...googleapi.CallOption) (*SizesListResponse, error) {
 35609  	gensupport.SetOptions(c.urlParams_, opts...)
 35610  	res, err := c.doRequest("json")
 35611  	if res != nil && res.StatusCode == http.StatusNotModified {
 35612  		if res.Body != nil {
 35613  			res.Body.Close()
 35614  		}
 35615  		return nil, gensupport.WrapError(&googleapi.Error{
 35616  			Code:   res.StatusCode,
 35617  			Header: res.Header,
 35618  		})
 35619  	}
 35620  	if err != nil {
 35621  		return nil, err
 35622  	}
 35623  	defer googleapi.CloseBody(res)
 35624  	if err := googleapi.CheckResponse(res); err != nil {
 35625  		return nil, gensupport.WrapError(err)
 35626  	}
 35627  	ret := &SizesListResponse{
 35628  		ServerResponse: googleapi.ServerResponse{
 35629  			Header:         res.Header,
 35630  			HTTPStatusCode: res.StatusCode,
 35631  		},
 35632  	}
 35633  	target := &ret
 35634  	if err := gensupport.DecodeResponse(target, res); err != nil {
 35635  		return nil, err
 35636  	}
 35637  	return ret, nil
 35638  }
 35639  
 35640  type SubaccountsGetCall struct {
 35641  	s            *Service
 35642  	profileId    int64
 35643  	id           int64
 35644  	urlParams_   gensupport.URLParams
 35645  	ifNoneMatch_ string
 35646  	ctx_         context.Context
 35647  	header_      http.Header
 35648  }
 35649  
 35650  // Get: Gets one subaccount by ID.
 35651  //
 35652  // - id: Subaccount ID.
 35653  // - profileId: User profile ID associated with this request.
 35654  func (r *SubaccountsService) Get(profileId int64, id int64) *SubaccountsGetCall {
 35655  	c := &SubaccountsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 35656  	c.profileId = profileId
 35657  	c.id = id
 35658  	return c
 35659  }
 35660  
 35661  // Fields allows partial responses to be retrieved. See
 35662  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 35663  // details.
 35664  func (c *SubaccountsGetCall) Fields(s ...googleapi.Field) *SubaccountsGetCall {
 35665  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 35666  	return c
 35667  }
 35668  
 35669  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 35670  // object's ETag matches the given value. This is useful for getting updates
 35671  // only after the object has changed since the last request.
 35672  func (c *SubaccountsGetCall) IfNoneMatch(entityTag string) *SubaccountsGetCall {
 35673  	c.ifNoneMatch_ = entityTag
 35674  	return c
 35675  }
 35676  
 35677  // Context sets the context to be used in this call's Do method.
 35678  func (c *SubaccountsGetCall) Context(ctx context.Context) *SubaccountsGetCall {
 35679  	c.ctx_ = ctx
 35680  	return c
 35681  }
 35682  
 35683  // Header returns a http.Header that can be modified by the caller to add
 35684  // headers to the request.
 35685  func (c *SubaccountsGetCall) Header() http.Header {
 35686  	if c.header_ == nil {
 35687  		c.header_ = make(http.Header)
 35688  	}
 35689  	return c.header_
 35690  }
 35691  
 35692  func (c *SubaccountsGetCall) doRequest(alt string) (*http.Response, error) {
 35693  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 35694  	if c.ifNoneMatch_ != "" {
 35695  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 35696  	}
 35697  	var body io.Reader = nil
 35698  	c.urlParams_.Set("alt", alt)
 35699  	c.urlParams_.Set("prettyPrint", "false")
 35700  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/subaccounts/{+id}")
 35701  	urls += "?" + c.urlParams_.Encode()
 35702  	req, err := http.NewRequest("GET", urls, body)
 35703  	if err != nil {
 35704  		return nil, err
 35705  	}
 35706  	req.Header = reqHeaders
 35707  	googleapi.Expand(req.URL, map[string]string{
 35708  		"profileId": strconv.FormatInt(c.profileId, 10),
 35709  		"id":        strconv.FormatInt(c.id, 10),
 35710  	})
 35711  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 35712  }
 35713  
 35714  // Do executes the "dfareporting.subaccounts.get" call.
 35715  // Any non-2xx status code is an error. Response headers are in either
 35716  // *Subaccount.ServerResponse.Header or (if a response was returned at all) in
 35717  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 35718  // whether the returned error was because http.StatusNotModified was returned.
 35719  func (c *SubaccountsGetCall) Do(opts ...googleapi.CallOption) (*Subaccount, error) {
 35720  	gensupport.SetOptions(c.urlParams_, opts...)
 35721  	res, err := c.doRequest("json")
 35722  	if res != nil && res.StatusCode == http.StatusNotModified {
 35723  		if res.Body != nil {
 35724  			res.Body.Close()
 35725  		}
 35726  		return nil, gensupport.WrapError(&googleapi.Error{
 35727  			Code:   res.StatusCode,
 35728  			Header: res.Header,
 35729  		})
 35730  	}
 35731  	if err != nil {
 35732  		return nil, err
 35733  	}
 35734  	defer googleapi.CloseBody(res)
 35735  	if err := googleapi.CheckResponse(res); err != nil {
 35736  		return nil, gensupport.WrapError(err)
 35737  	}
 35738  	ret := &Subaccount{
 35739  		ServerResponse: googleapi.ServerResponse{
 35740  			Header:         res.Header,
 35741  			HTTPStatusCode: res.StatusCode,
 35742  		},
 35743  	}
 35744  	target := &ret
 35745  	if err := gensupport.DecodeResponse(target, res); err != nil {
 35746  		return nil, err
 35747  	}
 35748  	return ret, nil
 35749  }
 35750  
 35751  type SubaccountsInsertCall struct {
 35752  	s          *Service
 35753  	profileId  int64
 35754  	subaccount *Subaccount
 35755  	urlParams_ gensupport.URLParams
 35756  	ctx_       context.Context
 35757  	header_    http.Header
 35758  }
 35759  
 35760  // Insert: Inserts a new subaccount.
 35761  //
 35762  // - profileId: User profile ID associated with this request.
 35763  func (r *SubaccountsService) Insert(profileId int64, subaccount *Subaccount) *SubaccountsInsertCall {
 35764  	c := &SubaccountsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 35765  	c.profileId = profileId
 35766  	c.subaccount = subaccount
 35767  	return c
 35768  }
 35769  
 35770  // Fields allows partial responses to be retrieved. See
 35771  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 35772  // details.
 35773  func (c *SubaccountsInsertCall) Fields(s ...googleapi.Field) *SubaccountsInsertCall {
 35774  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 35775  	return c
 35776  }
 35777  
 35778  // Context sets the context to be used in this call's Do method.
 35779  func (c *SubaccountsInsertCall) Context(ctx context.Context) *SubaccountsInsertCall {
 35780  	c.ctx_ = ctx
 35781  	return c
 35782  }
 35783  
 35784  // Header returns a http.Header that can be modified by the caller to add
 35785  // headers to the request.
 35786  func (c *SubaccountsInsertCall) Header() http.Header {
 35787  	if c.header_ == nil {
 35788  		c.header_ = make(http.Header)
 35789  	}
 35790  	return c.header_
 35791  }
 35792  
 35793  func (c *SubaccountsInsertCall) doRequest(alt string) (*http.Response, error) {
 35794  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 35795  	var body io.Reader = nil
 35796  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.subaccount)
 35797  	if err != nil {
 35798  		return nil, err
 35799  	}
 35800  	c.urlParams_.Set("alt", alt)
 35801  	c.urlParams_.Set("prettyPrint", "false")
 35802  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/subaccounts")
 35803  	urls += "?" + c.urlParams_.Encode()
 35804  	req, err := http.NewRequest("POST", urls, body)
 35805  	if err != nil {
 35806  		return nil, err
 35807  	}
 35808  	req.Header = reqHeaders
 35809  	googleapi.Expand(req.URL, map[string]string{
 35810  		"profileId": strconv.FormatInt(c.profileId, 10),
 35811  	})
 35812  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 35813  }
 35814  
 35815  // Do executes the "dfareporting.subaccounts.insert" call.
 35816  // Any non-2xx status code is an error. Response headers are in either
 35817  // *Subaccount.ServerResponse.Header or (if a response was returned at all) in
 35818  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 35819  // whether the returned error was because http.StatusNotModified was returned.
 35820  func (c *SubaccountsInsertCall) Do(opts ...googleapi.CallOption) (*Subaccount, error) {
 35821  	gensupport.SetOptions(c.urlParams_, opts...)
 35822  	res, err := c.doRequest("json")
 35823  	if res != nil && res.StatusCode == http.StatusNotModified {
 35824  		if res.Body != nil {
 35825  			res.Body.Close()
 35826  		}
 35827  		return nil, gensupport.WrapError(&googleapi.Error{
 35828  			Code:   res.StatusCode,
 35829  			Header: res.Header,
 35830  		})
 35831  	}
 35832  	if err != nil {
 35833  		return nil, err
 35834  	}
 35835  	defer googleapi.CloseBody(res)
 35836  	if err := googleapi.CheckResponse(res); err != nil {
 35837  		return nil, gensupport.WrapError(err)
 35838  	}
 35839  	ret := &Subaccount{
 35840  		ServerResponse: googleapi.ServerResponse{
 35841  			Header:         res.Header,
 35842  			HTTPStatusCode: res.StatusCode,
 35843  		},
 35844  	}
 35845  	target := &ret
 35846  	if err := gensupport.DecodeResponse(target, res); err != nil {
 35847  		return nil, err
 35848  	}
 35849  	return ret, nil
 35850  }
 35851  
 35852  type SubaccountsListCall struct {
 35853  	s            *Service
 35854  	profileId    int64
 35855  	urlParams_   gensupport.URLParams
 35856  	ifNoneMatch_ string
 35857  	ctx_         context.Context
 35858  	header_      http.Header
 35859  }
 35860  
 35861  // List: Gets a list of subaccounts, possibly filtered. This method supports
 35862  // paging.
 35863  //
 35864  // - profileId: User profile ID associated with this request.
 35865  func (r *SubaccountsService) List(profileId int64) *SubaccountsListCall {
 35866  	c := &SubaccountsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 35867  	c.profileId = profileId
 35868  	return c
 35869  }
 35870  
 35871  // Ids sets the optional parameter "ids": Select only subaccounts with these
 35872  // IDs.
 35873  func (c *SubaccountsListCall) Ids(ids ...int64) *SubaccountsListCall {
 35874  	var ids_ []string
 35875  	for _, v := range ids {
 35876  		ids_ = append(ids_, fmt.Sprint(v))
 35877  	}
 35878  	c.urlParams_.SetMulti("ids", ids_)
 35879  	return c
 35880  }
 35881  
 35882  // MaxResults sets the optional parameter "maxResults": Maximum number of
 35883  // results to return.
 35884  func (c *SubaccountsListCall) MaxResults(maxResults int64) *SubaccountsListCall {
 35885  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 35886  	return c
 35887  }
 35888  
 35889  // PageToken sets the optional parameter "pageToken": Value of the
 35890  // nextPageToken from the previous result page.
 35891  func (c *SubaccountsListCall) PageToken(pageToken string) *SubaccountsListCall {
 35892  	c.urlParams_.Set("pageToken", pageToken)
 35893  	return c
 35894  }
 35895  
 35896  // SearchString sets the optional parameter "searchString": Allows searching
 35897  // for objects by name or ID. Wildcards (*) are allowed. For example,
 35898  // "subaccount*2015" will return objects with names like "subaccount June
 35899  // 2015", "subaccount April 2015", or simply "subaccount 2015". Most of the
 35900  // searches also add wildcards implicitly at the start and the end of the
 35901  // search string. For example, a search string of "subaccount" will match
 35902  // objects with name "my subaccount", "subaccount 2015", or simply "subaccount"
 35903  // .
 35904  func (c *SubaccountsListCall) SearchString(searchString string) *SubaccountsListCall {
 35905  	c.urlParams_.Set("searchString", searchString)
 35906  	return c
 35907  }
 35908  
 35909  // SortField sets the optional parameter "sortField": Field by which to sort
 35910  // the list.
 35911  //
 35912  // Possible values:
 35913  //
 35914  //	"ID" (default)
 35915  //	"NAME"
 35916  func (c *SubaccountsListCall) SortField(sortField string) *SubaccountsListCall {
 35917  	c.urlParams_.Set("sortField", sortField)
 35918  	return c
 35919  }
 35920  
 35921  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 35922  //
 35923  // Possible values:
 35924  //
 35925  //	"ASCENDING" (default) - Ascending order.
 35926  //	"DESCENDING" - Descending order.
 35927  func (c *SubaccountsListCall) SortOrder(sortOrder string) *SubaccountsListCall {
 35928  	c.urlParams_.Set("sortOrder", sortOrder)
 35929  	return c
 35930  }
 35931  
 35932  // Fields allows partial responses to be retrieved. See
 35933  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 35934  // details.
 35935  func (c *SubaccountsListCall) Fields(s ...googleapi.Field) *SubaccountsListCall {
 35936  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 35937  	return c
 35938  }
 35939  
 35940  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 35941  // object's ETag matches the given value. This is useful for getting updates
 35942  // only after the object has changed since the last request.
 35943  func (c *SubaccountsListCall) IfNoneMatch(entityTag string) *SubaccountsListCall {
 35944  	c.ifNoneMatch_ = entityTag
 35945  	return c
 35946  }
 35947  
 35948  // Context sets the context to be used in this call's Do method.
 35949  func (c *SubaccountsListCall) Context(ctx context.Context) *SubaccountsListCall {
 35950  	c.ctx_ = ctx
 35951  	return c
 35952  }
 35953  
 35954  // Header returns a http.Header that can be modified by the caller to add
 35955  // headers to the request.
 35956  func (c *SubaccountsListCall) Header() http.Header {
 35957  	if c.header_ == nil {
 35958  		c.header_ = make(http.Header)
 35959  	}
 35960  	return c.header_
 35961  }
 35962  
 35963  func (c *SubaccountsListCall) doRequest(alt string) (*http.Response, error) {
 35964  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 35965  	if c.ifNoneMatch_ != "" {
 35966  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 35967  	}
 35968  	var body io.Reader = nil
 35969  	c.urlParams_.Set("alt", alt)
 35970  	c.urlParams_.Set("prettyPrint", "false")
 35971  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/subaccounts")
 35972  	urls += "?" + c.urlParams_.Encode()
 35973  	req, err := http.NewRequest("GET", urls, body)
 35974  	if err != nil {
 35975  		return nil, err
 35976  	}
 35977  	req.Header = reqHeaders
 35978  	googleapi.Expand(req.URL, map[string]string{
 35979  		"profileId": strconv.FormatInt(c.profileId, 10),
 35980  	})
 35981  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 35982  }
 35983  
 35984  // Do executes the "dfareporting.subaccounts.list" call.
 35985  // Any non-2xx status code is an error. Response headers are in either
 35986  // *SubaccountsListResponse.ServerResponse.Header or (if a response was
 35987  // returned at all) in error.(*googleapi.Error).Header. Use
 35988  // googleapi.IsNotModified to check whether the returned error was because
 35989  // http.StatusNotModified was returned.
 35990  func (c *SubaccountsListCall) Do(opts ...googleapi.CallOption) (*SubaccountsListResponse, error) {
 35991  	gensupport.SetOptions(c.urlParams_, opts...)
 35992  	res, err := c.doRequest("json")
 35993  	if res != nil && res.StatusCode == http.StatusNotModified {
 35994  		if res.Body != nil {
 35995  			res.Body.Close()
 35996  		}
 35997  		return nil, gensupport.WrapError(&googleapi.Error{
 35998  			Code:   res.StatusCode,
 35999  			Header: res.Header,
 36000  		})
 36001  	}
 36002  	if err != nil {
 36003  		return nil, err
 36004  	}
 36005  	defer googleapi.CloseBody(res)
 36006  	if err := googleapi.CheckResponse(res); err != nil {
 36007  		return nil, gensupport.WrapError(err)
 36008  	}
 36009  	ret := &SubaccountsListResponse{
 36010  		ServerResponse: googleapi.ServerResponse{
 36011  			Header:         res.Header,
 36012  			HTTPStatusCode: res.StatusCode,
 36013  		},
 36014  	}
 36015  	target := &ret
 36016  	if err := gensupport.DecodeResponse(target, res); err != nil {
 36017  		return nil, err
 36018  	}
 36019  	return ret, nil
 36020  }
 36021  
 36022  // Pages invokes f for each page of results.
 36023  // A non-nil error returned from f will halt the iteration.
 36024  // The provided context supersedes any context provided to the Context method.
 36025  func (c *SubaccountsListCall) Pages(ctx context.Context, f func(*SubaccountsListResponse) error) error {
 36026  	c.ctx_ = ctx
 36027  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 36028  	for {
 36029  		x, err := c.Do()
 36030  		if err != nil {
 36031  			return err
 36032  		}
 36033  		if err := f(x); err != nil {
 36034  			return err
 36035  		}
 36036  		if x.NextPageToken == "" {
 36037  			return nil
 36038  		}
 36039  		c.PageToken(x.NextPageToken)
 36040  	}
 36041  }
 36042  
 36043  type SubaccountsPatchCall struct {
 36044  	s          *Service
 36045  	profileId  int64
 36046  	subaccount *Subaccount
 36047  	urlParams_ gensupport.URLParams
 36048  	ctx_       context.Context
 36049  	header_    http.Header
 36050  }
 36051  
 36052  // Patch: Updates an existing subaccount. This method supports patch semantics.
 36053  //
 36054  // - id: Subaccount ID.
 36055  // - profileId: User profile ID associated with this request.
 36056  func (r *SubaccountsService) Patch(profileId int64, id int64, subaccount *Subaccount) *SubaccountsPatchCall {
 36057  	c := &SubaccountsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 36058  	c.profileId = profileId
 36059  	c.urlParams_.Set("id", fmt.Sprint(id))
 36060  	c.subaccount = subaccount
 36061  	return c
 36062  }
 36063  
 36064  // Fields allows partial responses to be retrieved. See
 36065  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 36066  // details.
 36067  func (c *SubaccountsPatchCall) Fields(s ...googleapi.Field) *SubaccountsPatchCall {
 36068  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 36069  	return c
 36070  }
 36071  
 36072  // Context sets the context to be used in this call's Do method.
 36073  func (c *SubaccountsPatchCall) Context(ctx context.Context) *SubaccountsPatchCall {
 36074  	c.ctx_ = ctx
 36075  	return c
 36076  }
 36077  
 36078  // Header returns a http.Header that can be modified by the caller to add
 36079  // headers to the request.
 36080  func (c *SubaccountsPatchCall) Header() http.Header {
 36081  	if c.header_ == nil {
 36082  		c.header_ = make(http.Header)
 36083  	}
 36084  	return c.header_
 36085  }
 36086  
 36087  func (c *SubaccountsPatchCall) doRequest(alt string) (*http.Response, error) {
 36088  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 36089  	var body io.Reader = nil
 36090  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.subaccount)
 36091  	if err != nil {
 36092  		return nil, err
 36093  	}
 36094  	c.urlParams_.Set("alt", alt)
 36095  	c.urlParams_.Set("prettyPrint", "false")
 36096  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/subaccounts")
 36097  	urls += "?" + c.urlParams_.Encode()
 36098  	req, err := http.NewRequest("PATCH", urls, body)
 36099  	if err != nil {
 36100  		return nil, err
 36101  	}
 36102  	req.Header = reqHeaders
 36103  	googleapi.Expand(req.URL, map[string]string{
 36104  		"profileId": strconv.FormatInt(c.profileId, 10),
 36105  	})
 36106  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 36107  }
 36108  
 36109  // Do executes the "dfareporting.subaccounts.patch" call.
 36110  // Any non-2xx status code is an error. Response headers are in either
 36111  // *Subaccount.ServerResponse.Header or (if a response was returned at all) in
 36112  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 36113  // whether the returned error was because http.StatusNotModified was returned.
 36114  func (c *SubaccountsPatchCall) Do(opts ...googleapi.CallOption) (*Subaccount, error) {
 36115  	gensupport.SetOptions(c.urlParams_, opts...)
 36116  	res, err := c.doRequest("json")
 36117  	if res != nil && res.StatusCode == http.StatusNotModified {
 36118  		if res.Body != nil {
 36119  			res.Body.Close()
 36120  		}
 36121  		return nil, gensupport.WrapError(&googleapi.Error{
 36122  			Code:   res.StatusCode,
 36123  			Header: res.Header,
 36124  		})
 36125  	}
 36126  	if err != nil {
 36127  		return nil, err
 36128  	}
 36129  	defer googleapi.CloseBody(res)
 36130  	if err := googleapi.CheckResponse(res); err != nil {
 36131  		return nil, gensupport.WrapError(err)
 36132  	}
 36133  	ret := &Subaccount{
 36134  		ServerResponse: googleapi.ServerResponse{
 36135  			Header:         res.Header,
 36136  			HTTPStatusCode: res.StatusCode,
 36137  		},
 36138  	}
 36139  	target := &ret
 36140  	if err := gensupport.DecodeResponse(target, res); err != nil {
 36141  		return nil, err
 36142  	}
 36143  	return ret, nil
 36144  }
 36145  
 36146  type SubaccountsUpdateCall struct {
 36147  	s          *Service
 36148  	profileId  int64
 36149  	subaccount *Subaccount
 36150  	urlParams_ gensupport.URLParams
 36151  	ctx_       context.Context
 36152  	header_    http.Header
 36153  }
 36154  
 36155  // Update: Updates an existing subaccount.
 36156  //
 36157  // - profileId: User profile ID associated with this request.
 36158  func (r *SubaccountsService) Update(profileId int64, subaccount *Subaccount) *SubaccountsUpdateCall {
 36159  	c := &SubaccountsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 36160  	c.profileId = profileId
 36161  	c.subaccount = subaccount
 36162  	return c
 36163  }
 36164  
 36165  // Fields allows partial responses to be retrieved. See
 36166  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 36167  // details.
 36168  func (c *SubaccountsUpdateCall) Fields(s ...googleapi.Field) *SubaccountsUpdateCall {
 36169  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 36170  	return c
 36171  }
 36172  
 36173  // Context sets the context to be used in this call's Do method.
 36174  func (c *SubaccountsUpdateCall) Context(ctx context.Context) *SubaccountsUpdateCall {
 36175  	c.ctx_ = ctx
 36176  	return c
 36177  }
 36178  
 36179  // Header returns a http.Header that can be modified by the caller to add
 36180  // headers to the request.
 36181  func (c *SubaccountsUpdateCall) Header() http.Header {
 36182  	if c.header_ == nil {
 36183  		c.header_ = make(http.Header)
 36184  	}
 36185  	return c.header_
 36186  }
 36187  
 36188  func (c *SubaccountsUpdateCall) doRequest(alt string) (*http.Response, error) {
 36189  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 36190  	var body io.Reader = nil
 36191  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.subaccount)
 36192  	if err != nil {
 36193  		return nil, err
 36194  	}
 36195  	c.urlParams_.Set("alt", alt)
 36196  	c.urlParams_.Set("prettyPrint", "false")
 36197  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/subaccounts")
 36198  	urls += "?" + c.urlParams_.Encode()
 36199  	req, err := http.NewRequest("PUT", urls, body)
 36200  	if err != nil {
 36201  		return nil, err
 36202  	}
 36203  	req.Header = reqHeaders
 36204  	googleapi.Expand(req.URL, map[string]string{
 36205  		"profileId": strconv.FormatInt(c.profileId, 10),
 36206  	})
 36207  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 36208  }
 36209  
 36210  // Do executes the "dfareporting.subaccounts.update" call.
 36211  // Any non-2xx status code is an error. Response headers are in either
 36212  // *Subaccount.ServerResponse.Header or (if a response was returned at all) in
 36213  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 36214  // whether the returned error was because http.StatusNotModified was returned.
 36215  func (c *SubaccountsUpdateCall) Do(opts ...googleapi.CallOption) (*Subaccount, error) {
 36216  	gensupport.SetOptions(c.urlParams_, opts...)
 36217  	res, err := c.doRequest("json")
 36218  	if res != nil && res.StatusCode == http.StatusNotModified {
 36219  		if res.Body != nil {
 36220  			res.Body.Close()
 36221  		}
 36222  		return nil, gensupport.WrapError(&googleapi.Error{
 36223  			Code:   res.StatusCode,
 36224  			Header: res.Header,
 36225  		})
 36226  	}
 36227  	if err != nil {
 36228  		return nil, err
 36229  	}
 36230  	defer googleapi.CloseBody(res)
 36231  	if err := googleapi.CheckResponse(res); err != nil {
 36232  		return nil, gensupport.WrapError(err)
 36233  	}
 36234  	ret := &Subaccount{
 36235  		ServerResponse: googleapi.ServerResponse{
 36236  			Header:         res.Header,
 36237  			HTTPStatusCode: res.StatusCode,
 36238  		},
 36239  	}
 36240  	target := &ret
 36241  	if err := gensupport.DecodeResponse(target, res); err != nil {
 36242  		return nil, err
 36243  	}
 36244  	return ret, nil
 36245  }
 36246  
 36247  type TargetableRemarketingListsGetCall struct {
 36248  	s            *Service
 36249  	profileId    int64
 36250  	id           int64
 36251  	urlParams_   gensupport.URLParams
 36252  	ifNoneMatch_ string
 36253  	ctx_         context.Context
 36254  	header_      http.Header
 36255  }
 36256  
 36257  // Get: Gets one remarketing list by ID.
 36258  //
 36259  // - id: Remarketing list ID.
 36260  // - profileId: User profile ID associated with this request.
 36261  func (r *TargetableRemarketingListsService) Get(profileId int64, id int64) *TargetableRemarketingListsGetCall {
 36262  	c := &TargetableRemarketingListsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 36263  	c.profileId = profileId
 36264  	c.id = id
 36265  	return c
 36266  }
 36267  
 36268  // Fields allows partial responses to be retrieved. See
 36269  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 36270  // details.
 36271  func (c *TargetableRemarketingListsGetCall) Fields(s ...googleapi.Field) *TargetableRemarketingListsGetCall {
 36272  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 36273  	return c
 36274  }
 36275  
 36276  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 36277  // object's ETag matches the given value. This is useful for getting updates
 36278  // only after the object has changed since the last request.
 36279  func (c *TargetableRemarketingListsGetCall) IfNoneMatch(entityTag string) *TargetableRemarketingListsGetCall {
 36280  	c.ifNoneMatch_ = entityTag
 36281  	return c
 36282  }
 36283  
 36284  // Context sets the context to be used in this call's Do method.
 36285  func (c *TargetableRemarketingListsGetCall) Context(ctx context.Context) *TargetableRemarketingListsGetCall {
 36286  	c.ctx_ = ctx
 36287  	return c
 36288  }
 36289  
 36290  // Header returns a http.Header that can be modified by the caller to add
 36291  // headers to the request.
 36292  func (c *TargetableRemarketingListsGetCall) Header() http.Header {
 36293  	if c.header_ == nil {
 36294  		c.header_ = make(http.Header)
 36295  	}
 36296  	return c.header_
 36297  }
 36298  
 36299  func (c *TargetableRemarketingListsGetCall) doRequest(alt string) (*http.Response, error) {
 36300  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 36301  	if c.ifNoneMatch_ != "" {
 36302  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 36303  	}
 36304  	var body io.Reader = nil
 36305  	c.urlParams_.Set("alt", alt)
 36306  	c.urlParams_.Set("prettyPrint", "false")
 36307  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/targetableRemarketingLists/{+id}")
 36308  	urls += "?" + c.urlParams_.Encode()
 36309  	req, err := http.NewRequest("GET", urls, body)
 36310  	if err != nil {
 36311  		return nil, err
 36312  	}
 36313  	req.Header = reqHeaders
 36314  	googleapi.Expand(req.URL, map[string]string{
 36315  		"profileId": strconv.FormatInt(c.profileId, 10),
 36316  		"id":        strconv.FormatInt(c.id, 10),
 36317  	})
 36318  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 36319  }
 36320  
 36321  // Do executes the "dfareporting.targetableRemarketingLists.get" call.
 36322  // Any non-2xx status code is an error. Response headers are in either
 36323  // *TargetableRemarketingList.ServerResponse.Header or (if a response was
 36324  // returned at all) in error.(*googleapi.Error).Header. Use
 36325  // googleapi.IsNotModified to check whether the returned error was because
 36326  // http.StatusNotModified was returned.
 36327  func (c *TargetableRemarketingListsGetCall) Do(opts ...googleapi.CallOption) (*TargetableRemarketingList, error) {
 36328  	gensupport.SetOptions(c.urlParams_, opts...)
 36329  	res, err := c.doRequest("json")
 36330  	if res != nil && res.StatusCode == http.StatusNotModified {
 36331  		if res.Body != nil {
 36332  			res.Body.Close()
 36333  		}
 36334  		return nil, gensupport.WrapError(&googleapi.Error{
 36335  			Code:   res.StatusCode,
 36336  			Header: res.Header,
 36337  		})
 36338  	}
 36339  	if err != nil {
 36340  		return nil, err
 36341  	}
 36342  	defer googleapi.CloseBody(res)
 36343  	if err := googleapi.CheckResponse(res); err != nil {
 36344  		return nil, gensupport.WrapError(err)
 36345  	}
 36346  	ret := &TargetableRemarketingList{
 36347  		ServerResponse: googleapi.ServerResponse{
 36348  			Header:         res.Header,
 36349  			HTTPStatusCode: res.StatusCode,
 36350  		},
 36351  	}
 36352  	target := &ret
 36353  	if err := gensupport.DecodeResponse(target, res); err != nil {
 36354  		return nil, err
 36355  	}
 36356  	return ret, nil
 36357  }
 36358  
 36359  type TargetableRemarketingListsListCall struct {
 36360  	s            *Service
 36361  	profileId    int64
 36362  	urlParams_   gensupport.URLParams
 36363  	ifNoneMatch_ string
 36364  	ctx_         context.Context
 36365  	header_      http.Header
 36366  }
 36367  
 36368  // List: Retrieves a list of targetable remarketing lists, possibly filtered.
 36369  // This method supports paging.
 36370  //
 36371  //   - advertiserId: Select only targetable remarketing lists targetable by these
 36372  //     advertisers.
 36373  //   - profileId: User profile ID associated with this request.
 36374  func (r *TargetableRemarketingListsService) List(profileId int64, advertiserId int64) *TargetableRemarketingListsListCall {
 36375  	c := &TargetableRemarketingListsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 36376  	c.profileId = profileId
 36377  	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
 36378  	return c
 36379  }
 36380  
 36381  // Active sets the optional parameter "active": Select only active or only
 36382  // inactive targetable remarketing lists.
 36383  func (c *TargetableRemarketingListsListCall) Active(active bool) *TargetableRemarketingListsListCall {
 36384  	c.urlParams_.Set("active", fmt.Sprint(active))
 36385  	return c
 36386  }
 36387  
 36388  // MaxResults sets the optional parameter "maxResults": Maximum number of
 36389  // results to return.
 36390  func (c *TargetableRemarketingListsListCall) MaxResults(maxResults int64) *TargetableRemarketingListsListCall {
 36391  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 36392  	return c
 36393  }
 36394  
 36395  // Name sets the optional parameter "name": Allows searching for objects by
 36396  // name or ID. Wildcards (*) are allowed. For example, "remarketing list*2015"
 36397  // will return objects with names like "remarketing list June 2015",
 36398  // "remarketing list April 2015", or simply "remarketing list 2015". Most of
 36399  // the searches also add wildcards implicitly at the start and the end of the
 36400  // search string. For example, a search string of "remarketing list" will match
 36401  // objects with name "my remarketing list", "remarketing list 2015", or simply
 36402  // "remarketing list".
 36403  func (c *TargetableRemarketingListsListCall) Name(name string) *TargetableRemarketingListsListCall {
 36404  	c.urlParams_.Set("name", name)
 36405  	return c
 36406  }
 36407  
 36408  // PageToken sets the optional parameter "pageToken": Value of the
 36409  // nextPageToken from the previous result page.
 36410  func (c *TargetableRemarketingListsListCall) PageToken(pageToken string) *TargetableRemarketingListsListCall {
 36411  	c.urlParams_.Set("pageToken", pageToken)
 36412  	return c
 36413  }
 36414  
 36415  // SortField sets the optional parameter "sortField": Field by which to sort
 36416  // the list.
 36417  //
 36418  // Possible values:
 36419  //
 36420  //	"ID" (default)
 36421  //	"NAME"
 36422  func (c *TargetableRemarketingListsListCall) SortField(sortField string) *TargetableRemarketingListsListCall {
 36423  	c.urlParams_.Set("sortField", sortField)
 36424  	return c
 36425  }
 36426  
 36427  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 36428  //
 36429  // Possible values:
 36430  //
 36431  //	"ASCENDING" (default) - Ascending order.
 36432  //	"DESCENDING" - Descending order.
 36433  func (c *TargetableRemarketingListsListCall) SortOrder(sortOrder string) *TargetableRemarketingListsListCall {
 36434  	c.urlParams_.Set("sortOrder", sortOrder)
 36435  	return c
 36436  }
 36437  
 36438  // Fields allows partial responses to be retrieved. See
 36439  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 36440  // details.
 36441  func (c *TargetableRemarketingListsListCall) Fields(s ...googleapi.Field) *TargetableRemarketingListsListCall {
 36442  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 36443  	return c
 36444  }
 36445  
 36446  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 36447  // object's ETag matches the given value. This is useful for getting updates
 36448  // only after the object has changed since the last request.
 36449  func (c *TargetableRemarketingListsListCall) IfNoneMatch(entityTag string) *TargetableRemarketingListsListCall {
 36450  	c.ifNoneMatch_ = entityTag
 36451  	return c
 36452  }
 36453  
 36454  // Context sets the context to be used in this call's Do method.
 36455  func (c *TargetableRemarketingListsListCall) Context(ctx context.Context) *TargetableRemarketingListsListCall {
 36456  	c.ctx_ = ctx
 36457  	return c
 36458  }
 36459  
 36460  // Header returns a http.Header that can be modified by the caller to add
 36461  // headers to the request.
 36462  func (c *TargetableRemarketingListsListCall) Header() http.Header {
 36463  	if c.header_ == nil {
 36464  		c.header_ = make(http.Header)
 36465  	}
 36466  	return c.header_
 36467  }
 36468  
 36469  func (c *TargetableRemarketingListsListCall) doRequest(alt string) (*http.Response, error) {
 36470  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 36471  	if c.ifNoneMatch_ != "" {
 36472  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 36473  	}
 36474  	var body io.Reader = nil
 36475  	c.urlParams_.Set("alt", alt)
 36476  	c.urlParams_.Set("prettyPrint", "false")
 36477  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/targetableRemarketingLists")
 36478  	urls += "?" + c.urlParams_.Encode()
 36479  	req, err := http.NewRequest("GET", urls, body)
 36480  	if err != nil {
 36481  		return nil, err
 36482  	}
 36483  	req.Header = reqHeaders
 36484  	googleapi.Expand(req.URL, map[string]string{
 36485  		"profileId": strconv.FormatInt(c.profileId, 10),
 36486  	})
 36487  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 36488  }
 36489  
 36490  // Do executes the "dfareporting.targetableRemarketingLists.list" call.
 36491  // Any non-2xx status code is an error. Response headers are in either
 36492  // *TargetableRemarketingListsListResponse.ServerResponse.Header or (if a
 36493  // response was returned at all) in error.(*googleapi.Error).Header. Use
 36494  // googleapi.IsNotModified to check whether the returned error was because
 36495  // http.StatusNotModified was returned.
 36496  func (c *TargetableRemarketingListsListCall) Do(opts ...googleapi.CallOption) (*TargetableRemarketingListsListResponse, error) {
 36497  	gensupport.SetOptions(c.urlParams_, opts...)
 36498  	res, err := c.doRequest("json")
 36499  	if res != nil && res.StatusCode == http.StatusNotModified {
 36500  		if res.Body != nil {
 36501  			res.Body.Close()
 36502  		}
 36503  		return nil, gensupport.WrapError(&googleapi.Error{
 36504  			Code:   res.StatusCode,
 36505  			Header: res.Header,
 36506  		})
 36507  	}
 36508  	if err != nil {
 36509  		return nil, err
 36510  	}
 36511  	defer googleapi.CloseBody(res)
 36512  	if err := googleapi.CheckResponse(res); err != nil {
 36513  		return nil, gensupport.WrapError(err)
 36514  	}
 36515  	ret := &TargetableRemarketingListsListResponse{
 36516  		ServerResponse: googleapi.ServerResponse{
 36517  			Header:         res.Header,
 36518  			HTTPStatusCode: res.StatusCode,
 36519  		},
 36520  	}
 36521  	target := &ret
 36522  	if err := gensupport.DecodeResponse(target, res); err != nil {
 36523  		return nil, err
 36524  	}
 36525  	return ret, nil
 36526  }
 36527  
 36528  // Pages invokes f for each page of results.
 36529  // A non-nil error returned from f will halt the iteration.
 36530  // The provided context supersedes any context provided to the Context method.
 36531  func (c *TargetableRemarketingListsListCall) Pages(ctx context.Context, f func(*TargetableRemarketingListsListResponse) error) error {
 36532  	c.ctx_ = ctx
 36533  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 36534  	for {
 36535  		x, err := c.Do()
 36536  		if err != nil {
 36537  			return err
 36538  		}
 36539  		if err := f(x); err != nil {
 36540  			return err
 36541  		}
 36542  		if x.NextPageToken == "" {
 36543  			return nil
 36544  		}
 36545  		c.PageToken(x.NextPageToken)
 36546  	}
 36547  }
 36548  
 36549  type TargetingTemplatesGetCall struct {
 36550  	s            *Service
 36551  	profileId    int64
 36552  	id           int64
 36553  	urlParams_   gensupport.URLParams
 36554  	ifNoneMatch_ string
 36555  	ctx_         context.Context
 36556  	header_      http.Header
 36557  }
 36558  
 36559  // Get: Gets one targeting template by ID.
 36560  //
 36561  // - id: Targeting template ID.
 36562  // - profileId: User profile ID associated with this request.
 36563  func (r *TargetingTemplatesService) Get(profileId int64, id int64) *TargetingTemplatesGetCall {
 36564  	c := &TargetingTemplatesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 36565  	c.profileId = profileId
 36566  	c.id = id
 36567  	return c
 36568  }
 36569  
 36570  // Fields allows partial responses to be retrieved. See
 36571  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 36572  // details.
 36573  func (c *TargetingTemplatesGetCall) Fields(s ...googleapi.Field) *TargetingTemplatesGetCall {
 36574  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 36575  	return c
 36576  }
 36577  
 36578  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 36579  // object's ETag matches the given value. This is useful for getting updates
 36580  // only after the object has changed since the last request.
 36581  func (c *TargetingTemplatesGetCall) IfNoneMatch(entityTag string) *TargetingTemplatesGetCall {
 36582  	c.ifNoneMatch_ = entityTag
 36583  	return c
 36584  }
 36585  
 36586  // Context sets the context to be used in this call's Do method.
 36587  func (c *TargetingTemplatesGetCall) Context(ctx context.Context) *TargetingTemplatesGetCall {
 36588  	c.ctx_ = ctx
 36589  	return c
 36590  }
 36591  
 36592  // Header returns a http.Header that can be modified by the caller to add
 36593  // headers to the request.
 36594  func (c *TargetingTemplatesGetCall) Header() http.Header {
 36595  	if c.header_ == nil {
 36596  		c.header_ = make(http.Header)
 36597  	}
 36598  	return c.header_
 36599  }
 36600  
 36601  func (c *TargetingTemplatesGetCall) doRequest(alt string) (*http.Response, error) {
 36602  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 36603  	if c.ifNoneMatch_ != "" {
 36604  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 36605  	}
 36606  	var body io.Reader = nil
 36607  	c.urlParams_.Set("alt", alt)
 36608  	c.urlParams_.Set("prettyPrint", "false")
 36609  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/targetingTemplates/{+id}")
 36610  	urls += "?" + c.urlParams_.Encode()
 36611  	req, err := http.NewRequest("GET", urls, body)
 36612  	if err != nil {
 36613  		return nil, err
 36614  	}
 36615  	req.Header = reqHeaders
 36616  	googleapi.Expand(req.URL, map[string]string{
 36617  		"profileId": strconv.FormatInt(c.profileId, 10),
 36618  		"id":        strconv.FormatInt(c.id, 10),
 36619  	})
 36620  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 36621  }
 36622  
 36623  // Do executes the "dfareporting.targetingTemplates.get" call.
 36624  // Any non-2xx status code is an error. Response headers are in either
 36625  // *TargetingTemplate.ServerResponse.Header or (if a response was returned at
 36626  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 36627  // check whether the returned error was because http.StatusNotModified was
 36628  // returned.
 36629  func (c *TargetingTemplatesGetCall) Do(opts ...googleapi.CallOption) (*TargetingTemplate, error) {
 36630  	gensupport.SetOptions(c.urlParams_, opts...)
 36631  	res, err := c.doRequest("json")
 36632  	if res != nil && res.StatusCode == http.StatusNotModified {
 36633  		if res.Body != nil {
 36634  			res.Body.Close()
 36635  		}
 36636  		return nil, gensupport.WrapError(&googleapi.Error{
 36637  			Code:   res.StatusCode,
 36638  			Header: res.Header,
 36639  		})
 36640  	}
 36641  	if err != nil {
 36642  		return nil, err
 36643  	}
 36644  	defer googleapi.CloseBody(res)
 36645  	if err := googleapi.CheckResponse(res); err != nil {
 36646  		return nil, gensupport.WrapError(err)
 36647  	}
 36648  	ret := &TargetingTemplate{
 36649  		ServerResponse: googleapi.ServerResponse{
 36650  			Header:         res.Header,
 36651  			HTTPStatusCode: res.StatusCode,
 36652  		},
 36653  	}
 36654  	target := &ret
 36655  	if err := gensupport.DecodeResponse(target, res); err != nil {
 36656  		return nil, err
 36657  	}
 36658  	return ret, nil
 36659  }
 36660  
 36661  type TargetingTemplatesInsertCall struct {
 36662  	s                 *Service
 36663  	profileId         int64
 36664  	targetingtemplate *TargetingTemplate
 36665  	urlParams_        gensupport.URLParams
 36666  	ctx_              context.Context
 36667  	header_           http.Header
 36668  }
 36669  
 36670  // Insert: Inserts a new targeting template.
 36671  //
 36672  // - profileId: User profile ID associated with this request.
 36673  func (r *TargetingTemplatesService) Insert(profileId int64, targetingtemplate *TargetingTemplate) *TargetingTemplatesInsertCall {
 36674  	c := &TargetingTemplatesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 36675  	c.profileId = profileId
 36676  	c.targetingtemplate = targetingtemplate
 36677  	return c
 36678  }
 36679  
 36680  // Fields allows partial responses to be retrieved. See
 36681  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 36682  // details.
 36683  func (c *TargetingTemplatesInsertCall) Fields(s ...googleapi.Field) *TargetingTemplatesInsertCall {
 36684  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 36685  	return c
 36686  }
 36687  
 36688  // Context sets the context to be used in this call's Do method.
 36689  func (c *TargetingTemplatesInsertCall) Context(ctx context.Context) *TargetingTemplatesInsertCall {
 36690  	c.ctx_ = ctx
 36691  	return c
 36692  }
 36693  
 36694  // Header returns a http.Header that can be modified by the caller to add
 36695  // headers to the request.
 36696  func (c *TargetingTemplatesInsertCall) Header() http.Header {
 36697  	if c.header_ == nil {
 36698  		c.header_ = make(http.Header)
 36699  	}
 36700  	return c.header_
 36701  }
 36702  
 36703  func (c *TargetingTemplatesInsertCall) doRequest(alt string) (*http.Response, error) {
 36704  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 36705  	var body io.Reader = nil
 36706  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.targetingtemplate)
 36707  	if err != nil {
 36708  		return nil, err
 36709  	}
 36710  	c.urlParams_.Set("alt", alt)
 36711  	c.urlParams_.Set("prettyPrint", "false")
 36712  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/targetingTemplates")
 36713  	urls += "?" + c.urlParams_.Encode()
 36714  	req, err := http.NewRequest("POST", urls, body)
 36715  	if err != nil {
 36716  		return nil, err
 36717  	}
 36718  	req.Header = reqHeaders
 36719  	googleapi.Expand(req.URL, map[string]string{
 36720  		"profileId": strconv.FormatInt(c.profileId, 10),
 36721  	})
 36722  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 36723  }
 36724  
 36725  // Do executes the "dfareporting.targetingTemplates.insert" call.
 36726  // Any non-2xx status code is an error. Response headers are in either
 36727  // *TargetingTemplate.ServerResponse.Header or (if a response was returned at
 36728  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 36729  // check whether the returned error was because http.StatusNotModified was
 36730  // returned.
 36731  func (c *TargetingTemplatesInsertCall) Do(opts ...googleapi.CallOption) (*TargetingTemplate, error) {
 36732  	gensupport.SetOptions(c.urlParams_, opts...)
 36733  	res, err := c.doRequest("json")
 36734  	if res != nil && res.StatusCode == http.StatusNotModified {
 36735  		if res.Body != nil {
 36736  			res.Body.Close()
 36737  		}
 36738  		return nil, gensupport.WrapError(&googleapi.Error{
 36739  			Code:   res.StatusCode,
 36740  			Header: res.Header,
 36741  		})
 36742  	}
 36743  	if err != nil {
 36744  		return nil, err
 36745  	}
 36746  	defer googleapi.CloseBody(res)
 36747  	if err := googleapi.CheckResponse(res); err != nil {
 36748  		return nil, gensupport.WrapError(err)
 36749  	}
 36750  	ret := &TargetingTemplate{
 36751  		ServerResponse: googleapi.ServerResponse{
 36752  			Header:         res.Header,
 36753  			HTTPStatusCode: res.StatusCode,
 36754  		},
 36755  	}
 36756  	target := &ret
 36757  	if err := gensupport.DecodeResponse(target, res); err != nil {
 36758  		return nil, err
 36759  	}
 36760  	return ret, nil
 36761  }
 36762  
 36763  type TargetingTemplatesListCall struct {
 36764  	s            *Service
 36765  	profileId    int64
 36766  	urlParams_   gensupport.URLParams
 36767  	ifNoneMatch_ string
 36768  	ctx_         context.Context
 36769  	header_      http.Header
 36770  }
 36771  
 36772  // List: Retrieves a list of targeting templates, optionally filtered. This
 36773  // method supports paging.
 36774  //
 36775  // - profileId: User profile ID associated with this request.
 36776  func (r *TargetingTemplatesService) List(profileId int64) *TargetingTemplatesListCall {
 36777  	c := &TargetingTemplatesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 36778  	c.profileId = profileId
 36779  	return c
 36780  }
 36781  
 36782  // AdvertiserId sets the optional parameter "advertiserId": Select only
 36783  // targeting templates with this advertiser ID.
 36784  func (c *TargetingTemplatesListCall) AdvertiserId(advertiserId int64) *TargetingTemplatesListCall {
 36785  	c.urlParams_.Set("advertiserId", fmt.Sprint(advertiserId))
 36786  	return c
 36787  }
 36788  
 36789  // Ids sets the optional parameter "ids": Select only targeting templates with
 36790  // these IDs.
 36791  func (c *TargetingTemplatesListCall) Ids(ids ...int64) *TargetingTemplatesListCall {
 36792  	var ids_ []string
 36793  	for _, v := range ids {
 36794  		ids_ = append(ids_, fmt.Sprint(v))
 36795  	}
 36796  	c.urlParams_.SetMulti("ids", ids_)
 36797  	return c
 36798  }
 36799  
 36800  // MaxResults sets the optional parameter "maxResults": Maximum number of
 36801  // results to return.
 36802  func (c *TargetingTemplatesListCall) MaxResults(maxResults int64) *TargetingTemplatesListCall {
 36803  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 36804  	return c
 36805  }
 36806  
 36807  // PageToken sets the optional parameter "pageToken": Value of the
 36808  // nextPageToken from the previous result page.
 36809  func (c *TargetingTemplatesListCall) PageToken(pageToken string) *TargetingTemplatesListCall {
 36810  	c.urlParams_.Set("pageToken", pageToken)
 36811  	return c
 36812  }
 36813  
 36814  // SearchString sets the optional parameter "searchString": Allows searching
 36815  // for objects by name or ID. Wildcards (*) are allowed. For example,
 36816  // "template*2015" will return objects with names like "template June 2015",
 36817  // "template April 2015", or simply "template 2015". Most of the searches also
 36818  // add wildcards implicitly at the start and the end of the search string. For
 36819  // example, a search string of "template" will match objects with name "my
 36820  // template", "template 2015", or simply "template".
 36821  func (c *TargetingTemplatesListCall) SearchString(searchString string) *TargetingTemplatesListCall {
 36822  	c.urlParams_.Set("searchString", searchString)
 36823  	return c
 36824  }
 36825  
 36826  // SortField sets the optional parameter "sortField": Field by which to sort
 36827  // the list.
 36828  //
 36829  // Possible values:
 36830  //
 36831  //	"ID" (default)
 36832  //	"NAME"
 36833  func (c *TargetingTemplatesListCall) SortField(sortField string) *TargetingTemplatesListCall {
 36834  	c.urlParams_.Set("sortField", sortField)
 36835  	return c
 36836  }
 36837  
 36838  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 36839  //
 36840  // Possible values:
 36841  //
 36842  //	"ASCENDING" (default) - Ascending order.
 36843  //	"DESCENDING" - Descending order.
 36844  func (c *TargetingTemplatesListCall) SortOrder(sortOrder string) *TargetingTemplatesListCall {
 36845  	c.urlParams_.Set("sortOrder", sortOrder)
 36846  	return c
 36847  }
 36848  
 36849  // Fields allows partial responses to be retrieved. See
 36850  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 36851  // details.
 36852  func (c *TargetingTemplatesListCall) Fields(s ...googleapi.Field) *TargetingTemplatesListCall {
 36853  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 36854  	return c
 36855  }
 36856  
 36857  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 36858  // object's ETag matches the given value. This is useful for getting updates
 36859  // only after the object has changed since the last request.
 36860  func (c *TargetingTemplatesListCall) IfNoneMatch(entityTag string) *TargetingTemplatesListCall {
 36861  	c.ifNoneMatch_ = entityTag
 36862  	return c
 36863  }
 36864  
 36865  // Context sets the context to be used in this call's Do method.
 36866  func (c *TargetingTemplatesListCall) Context(ctx context.Context) *TargetingTemplatesListCall {
 36867  	c.ctx_ = ctx
 36868  	return c
 36869  }
 36870  
 36871  // Header returns a http.Header that can be modified by the caller to add
 36872  // headers to the request.
 36873  func (c *TargetingTemplatesListCall) Header() http.Header {
 36874  	if c.header_ == nil {
 36875  		c.header_ = make(http.Header)
 36876  	}
 36877  	return c.header_
 36878  }
 36879  
 36880  func (c *TargetingTemplatesListCall) doRequest(alt string) (*http.Response, error) {
 36881  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 36882  	if c.ifNoneMatch_ != "" {
 36883  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 36884  	}
 36885  	var body io.Reader = nil
 36886  	c.urlParams_.Set("alt", alt)
 36887  	c.urlParams_.Set("prettyPrint", "false")
 36888  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/targetingTemplates")
 36889  	urls += "?" + c.urlParams_.Encode()
 36890  	req, err := http.NewRequest("GET", urls, body)
 36891  	if err != nil {
 36892  		return nil, err
 36893  	}
 36894  	req.Header = reqHeaders
 36895  	googleapi.Expand(req.URL, map[string]string{
 36896  		"profileId": strconv.FormatInt(c.profileId, 10),
 36897  	})
 36898  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 36899  }
 36900  
 36901  // Do executes the "dfareporting.targetingTemplates.list" call.
 36902  // Any non-2xx status code is an error. Response headers are in either
 36903  // *TargetingTemplatesListResponse.ServerResponse.Header or (if a response was
 36904  // returned at all) in error.(*googleapi.Error).Header. Use
 36905  // googleapi.IsNotModified to check whether the returned error was because
 36906  // http.StatusNotModified was returned.
 36907  func (c *TargetingTemplatesListCall) Do(opts ...googleapi.CallOption) (*TargetingTemplatesListResponse, error) {
 36908  	gensupport.SetOptions(c.urlParams_, opts...)
 36909  	res, err := c.doRequest("json")
 36910  	if res != nil && res.StatusCode == http.StatusNotModified {
 36911  		if res.Body != nil {
 36912  			res.Body.Close()
 36913  		}
 36914  		return nil, gensupport.WrapError(&googleapi.Error{
 36915  			Code:   res.StatusCode,
 36916  			Header: res.Header,
 36917  		})
 36918  	}
 36919  	if err != nil {
 36920  		return nil, err
 36921  	}
 36922  	defer googleapi.CloseBody(res)
 36923  	if err := googleapi.CheckResponse(res); err != nil {
 36924  		return nil, gensupport.WrapError(err)
 36925  	}
 36926  	ret := &TargetingTemplatesListResponse{
 36927  		ServerResponse: googleapi.ServerResponse{
 36928  			Header:         res.Header,
 36929  			HTTPStatusCode: res.StatusCode,
 36930  		},
 36931  	}
 36932  	target := &ret
 36933  	if err := gensupport.DecodeResponse(target, res); err != nil {
 36934  		return nil, err
 36935  	}
 36936  	return ret, nil
 36937  }
 36938  
 36939  // Pages invokes f for each page of results.
 36940  // A non-nil error returned from f will halt the iteration.
 36941  // The provided context supersedes any context provided to the Context method.
 36942  func (c *TargetingTemplatesListCall) Pages(ctx context.Context, f func(*TargetingTemplatesListResponse) error) error {
 36943  	c.ctx_ = ctx
 36944  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 36945  	for {
 36946  		x, err := c.Do()
 36947  		if err != nil {
 36948  			return err
 36949  		}
 36950  		if err := f(x); err != nil {
 36951  			return err
 36952  		}
 36953  		if x.NextPageToken == "" {
 36954  			return nil
 36955  		}
 36956  		c.PageToken(x.NextPageToken)
 36957  	}
 36958  }
 36959  
 36960  type TargetingTemplatesPatchCall struct {
 36961  	s                 *Service
 36962  	profileId         int64
 36963  	targetingtemplate *TargetingTemplate
 36964  	urlParams_        gensupport.URLParams
 36965  	ctx_              context.Context
 36966  	header_           http.Header
 36967  }
 36968  
 36969  // Patch: Updates an existing targeting template. This method supports patch
 36970  // semantics.
 36971  //
 36972  // - id: RemarketingList ID.
 36973  // - profileId: User profile ID associated with this request.
 36974  func (r *TargetingTemplatesService) Patch(profileId int64, id int64, targetingtemplate *TargetingTemplate) *TargetingTemplatesPatchCall {
 36975  	c := &TargetingTemplatesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 36976  	c.profileId = profileId
 36977  	c.urlParams_.Set("id", fmt.Sprint(id))
 36978  	c.targetingtemplate = targetingtemplate
 36979  	return c
 36980  }
 36981  
 36982  // Fields allows partial responses to be retrieved. See
 36983  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 36984  // details.
 36985  func (c *TargetingTemplatesPatchCall) Fields(s ...googleapi.Field) *TargetingTemplatesPatchCall {
 36986  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 36987  	return c
 36988  }
 36989  
 36990  // Context sets the context to be used in this call's Do method.
 36991  func (c *TargetingTemplatesPatchCall) Context(ctx context.Context) *TargetingTemplatesPatchCall {
 36992  	c.ctx_ = ctx
 36993  	return c
 36994  }
 36995  
 36996  // Header returns a http.Header that can be modified by the caller to add
 36997  // headers to the request.
 36998  func (c *TargetingTemplatesPatchCall) Header() http.Header {
 36999  	if c.header_ == nil {
 37000  		c.header_ = make(http.Header)
 37001  	}
 37002  	return c.header_
 37003  }
 37004  
 37005  func (c *TargetingTemplatesPatchCall) doRequest(alt string) (*http.Response, error) {
 37006  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 37007  	var body io.Reader = nil
 37008  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.targetingtemplate)
 37009  	if err != nil {
 37010  		return nil, err
 37011  	}
 37012  	c.urlParams_.Set("alt", alt)
 37013  	c.urlParams_.Set("prettyPrint", "false")
 37014  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/targetingTemplates")
 37015  	urls += "?" + c.urlParams_.Encode()
 37016  	req, err := http.NewRequest("PATCH", urls, body)
 37017  	if err != nil {
 37018  		return nil, err
 37019  	}
 37020  	req.Header = reqHeaders
 37021  	googleapi.Expand(req.URL, map[string]string{
 37022  		"profileId": strconv.FormatInt(c.profileId, 10),
 37023  	})
 37024  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 37025  }
 37026  
 37027  // Do executes the "dfareporting.targetingTemplates.patch" call.
 37028  // Any non-2xx status code is an error. Response headers are in either
 37029  // *TargetingTemplate.ServerResponse.Header or (if a response was returned at
 37030  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 37031  // check whether the returned error was because http.StatusNotModified was
 37032  // returned.
 37033  func (c *TargetingTemplatesPatchCall) Do(opts ...googleapi.CallOption) (*TargetingTemplate, error) {
 37034  	gensupport.SetOptions(c.urlParams_, opts...)
 37035  	res, err := c.doRequest("json")
 37036  	if res != nil && res.StatusCode == http.StatusNotModified {
 37037  		if res.Body != nil {
 37038  			res.Body.Close()
 37039  		}
 37040  		return nil, gensupport.WrapError(&googleapi.Error{
 37041  			Code:   res.StatusCode,
 37042  			Header: res.Header,
 37043  		})
 37044  	}
 37045  	if err != nil {
 37046  		return nil, err
 37047  	}
 37048  	defer googleapi.CloseBody(res)
 37049  	if err := googleapi.CheckResponse(res); err != nil {
 37050  		return nil, gensupport.WrapError(err)
 37051  	}
 37052  	ret := &TargetingTemplate{
 37053  		ServerResponse: googleapi.ServerResponse{
 37054  			Header:         res.Header,
 37055  			HTTPStatusCode: res.StatusCode,
 37056  		},
 37057  	}
 37058  	target := &ret
 37059  	if err := gensupport.DecodeResponse(target, res); err != nil {
 37060  		return nil, err
 37061  	}
 37062  	return ret, nil
 37063  }
 37064  
 37065  type TargetingTemplatesUpdateCall struct {
 37066  	s                 *Service
 37067  	profileId         int64
 37068  	targetingtemplate *TargetingTemplate
 37069  	urlParams_        gensupport.URLParams
 37070  	ctx_              context.Context
 37071  	header_           http.Header
 37072  }
 37073  
 37074  // Update: Updates an existing targeting template.
 37075  //
 37076  // - profileId: User profile ID associated with this request.
 37077  func (r *TargetingTemplatesService) Update(profileId int64, targetingtemplate *TargetingTemplate) *TargetingTemplatesUpdateCall {
 37078  	c := &TargetingTemplatesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 37079  	c.profileId = profileId
 37080  	c.targetingtemplate = targetingtemplate
 37081  	return c
 37082  }
 37083  
 37084  // Fields allows partial responses to be retrieved. See
 37085  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 37086  // details.
 37087  func (c *TargetingTemplatesUpdateCall) Fields(s ...googleapi.Field) *TargetingTemplatesUpdateCall {
 37088  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 37089  	return c
 37090  }
 37091  
 37092  // Context sets the context to be used in this call's Do method.
 37093  func (c *TargetingTemplatesUpdateCall) Context(ctx context.Context) *TargetingTemplatesUpdateCall {
 37094  	c.ctx_ = ctx
 37095  	return c
 37096  }
 37097  
 37098  // Header returns a http.Header that can be modified by the caller to add
 37099  // headers to the request.
 37100  func (c *TargetingTemplatesUpdateCall) Header() http.Header {
 37101  	if c.header_ == nil {
 37102  		c.header_ = make(http.Header)
 37103  	}
 37104  	return c.header_
 37105  }
 37106  
 37107  func (c *TargetingTemplatesUpdateCall) doRequest(alt string) (*http.Response, error) {
 37108  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 37109  	var body io.Reader = nil
 37110  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.targetingtemplate)
 37111  	if err != nil {
 37112  		return nil, err
 37113  	}
 37114  	c.urlParams_.Set("alt", alt)
 37115  	c.urlParams_.Set("prettyPrint", "false")
 37116  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/targetingTemplates")
 37117  	urls += "?" + c.urlParams_.Encode()
 37118  	req, err := http.NewRequest("PUT", urls, body)
 37119  	if err != nil {
 37120  		return nil, err
 37121  	}
 37122  	req.Header = reqHeaders
 37123  	googleapi.Expand(req.URL, map[string]string{
 37124  		"profileId": strconv.FormatInt(c.profileId, 10),
 37125  	})
 37126  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 37127  }
 37128  
 37129  // Do executes the "dfareporting.targetingTemplates.update" call.
 37130  // Any non-2xx status code is an error. Response headers are in either
 37131  // *TargetingTemplate.ServerResponse.Header or (if a response was returned at
 37132  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 37133  // check whether the returned error was because http.StatusNotModified was
 37134  // returned.
 37135  func (c *TargetingTemplatesUpdateCall) Do(opts ...googleapi.CallOption) (*TargetingTemplate, error) {
 37136  	gensupport.SetOptions(c.urlParams_, opts...)
 37137  	res, err := c.doRequest("json")
 37138  	if res != nil && res.StatusCode == http.StatusNotModified {
 37139  		if res.Body != nil {
 37140  			res.Body.Close()
 37141  		}
 37142  		return nil, gensupport.WrapError(&googleapi.Error{
 37143  			Code:   res.StatusCode,
 37144  			Header: res.Header,
 37145  		})
 37146  	}
 37147  	if err != nil {
 37148  		return nil, err
 37149  	}
 37150  	defer googleapi.CloseBody(res)
 37151  	if err := googleapi.CheckResponse(res); err != nil {
 37152  		return nil, gensupport.WrapError(err)
 37153  	}
 37154  	ret := &TargetingTemplate{
 37155  		ServerResponse: googleapi.ServerResponse{
 37156  			Header:         res.Header,
 37157  			HTTPStatusCode: res.StatusCode,
 37158  		},
 37159  	}
 37160  	target := &ret
 37161  	if err := gensupport.DecodeResponse(target, res); err != nil {
 37162  		return nil, err
 37163  	}
 37164  	return ret, nil
 37165  }
 37166  
 37167  type UserProfilesGetCall struct {
 37168  	s            *Service
 37169  	profileId    int64
 37170  	urlParams_   gensupport.URLParams
 37171  	ifNoneMatch_ string
 37172  	ctx_         context.Context
 37173  	header_      http.Header
 37174  }
 37175  
 37176  // Get: Gets one user profile by ID.
 37177  //
 37178  // - profileId: The user profile ID.
 37179  func (r *UserProfilesService) Get(profileId int64) *UserProfilesGetCall {
 37180  	c := &UserProfilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 37181  	c.profileId = profileId
 37182  	return c
 37183  }
 37184  
 37185  // Fields allows partial responses to be retrieved. See
 37186  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 37187  // details.
 37188  func (c *UserProfilesGetCall) Fields(s ...googleapi.Field) *UserProfilesGetCall {
 37189  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 37190  	return c
 37191  }
 37192  
 37193  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 37194  // object's ETag matches the given value. This is useful for getting updates
 37195  // only after the object has changed since the last request.
 37196  func (c *UserProfilesGetCall) IfNoneMatch(entityTag string) *UserProfilesGetCall {
 37197  	c.ifNoneMatch_ = entityTag
 37198  	return c
 37199  }
 37200  
 37201  // Context sets the context to be used in this call's Do method.
 37202  func (c *UserProfilesGetCall) Context(ctx context.Context) *UserProfilesGetCall {
 37203  	c.ctx_ = ctx
 37204  	return c
 37205  }
 37206  
 37207  // Header returns a http.Header that can be modified by the caller to add
 37208  // headers to the request.
 37209  func (c *UserProfilesGetCall) Header() http.Header {
 37210  	if c.header_ == nil {
 37211  		c.header_ = make(http.Header)
 37212  	}
 37213  	return c.header_
 37214  }
 37215  
 37216  func (c *UserProfilesGetCall) doRequest(alt string) (*http.Response, error) {
 37217  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 37218  	if c.ifNoneMatch_ != "" {
 37219  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 37220  	}
 37221  	var body io.Reader = nil
 37222  	c.urlParams_.Set("alt", alt)
 37223  	c.urlParams_.Set("prettyPrint", "false")
 37224  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{profileId}")
 37225  	urls += "?" + c.urlParams_.Encode()
 37226  	req, err := http.NewRequest("GET", urls, body)
 37227  	if err != nil {
 37228  		return nil, err
 37229  	}
 37230  	req.Header = reqHeaders
 37231  	googleapi.Expand(req.URL, map[string]string{
 37232  		"profileId": strconv.FormatInt(c.profileId, 10),
 37233  	})
 37234  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 37235  }
 37236  
 37237  // Do executes the "dfareporting.userProfiles.get" call.
 37238  // Any non-2xx status code is an error. Response headers are in either
 37239  // *UserProfile.ServerResponse.Header or (if a response was returned at all) in
 37240  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 37241  // whether the returned error was because http.StatusNotModified was returned.
 37242  func (c *UserProfilesGetCall) Do(opts ...googleapi.CallOption) (*UserProfile, error) {
 37243  	gensupport.SetOptions(c.urlParams_, opts...)
 37244  	res, err := c.doRequest("json")
 37245  	if res != nil && res.StatusCode == http.StatusNotModified {
 37246  		if res.Body != nil {
 37247  			res.Body.Close()
 37248  		}
 37249  		return nil, gensupport.WrapError(&googleapi.Error{
 37250  			Code:   res.StatusCode,
 37251  			Header: res.Header,
 37252  		})
 37253  	}
 37254  	if err != nil {
 37255  		return nil, err
 37256  	}
 37257  	defer googleapi.CloseBody(res)
 37258  	if err := googleapi.CheckResponse(res); err != nil {
 37259  		return nil, gensupport.WrapError(err)
 37260  	}
 37261  	ret := &UserProfile{
 37262  		ServerResponse: googleapi.ServerResponse{
 37263  			Header:         res.Header,
 37264  			HTTPStatusCode: res.StatusCode,
 37265  		},
 37266  	}
 37267  	target := &ret
 37268  	if err := gensupport.DecodeResponse(target, res); err != nil {
 37269  		return nil, err
 37270  	}
 37271  	return ret, nil
 37272  }
 37273  
 37274  type UserProfilesListCall struct {
 37275  	s            *Service
 37276  	urlParams_   gensupport.URLParams
 37277  	ifNoneMatch_ string
 37278  	ctx_         context.Context
 37279  	header_      http.Header
 37280  }
 37281  
 37282  // List: Retrieves list of user profiles for a user.
 37283  func (r *UserProfilesService) List() *UserProfilesListCall {
 37284  	c := &UserProfilesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 37285  	return c
 37286  }
 37287  
 37288  // Fields allows partial responses to be retrieved. See
 37289  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 37290  // details.
 37291  func (c *UserProfilesListCall) Fields(s ...googleapi.Field) *UserProfilesListCall {
 37292  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 37293  	return c
 37294  }
 37295  
 37296  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 37297  // object's ETag matches the given value. This is useful for getting updates
 37298  // only after the object has changed since the last request.
 37299  func (c *UserProfilesListCall) IfNoneMatch(entityTag string) *UserProfilesListCall {
 37300  	c.ifNoneMatch_ = entityTag
 37301  	return c
 37302  }
 37303  
 37304  // Context sets the context to be used in this call's Do method.
 37305  func (c *UserProfilesListCall) Context(ctx context.Context) *UserProfilesListCall {
 37306  	c.ctx_ = ctx
 37307  	return c
 37308  }
 37309  
 37310  // Header returns a http.Header that can be modified by the caller to add
 37311  // headers to the request.
 37312  func (c *UserProfilesListCall) Header() http.Header {
 37313  	if c.header_ == nil {
 37314  		c.header_ = make(http.Header)
 37315  	}
 37316  	return c.header_
 37317  }
 37318  
 37319  func (c *UserProfilesListCall) doRequest(alt string) (*http.Response, error) {
 37320  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 37321  	if c.ifNoneMatch_ != "" {
 37322  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 37323  	}
 37324  	var body io.Reader = nil
 37325  	c.urlParams_.Set("alt", alt)
 37326  	c.urlParams_.Set("prettyPrint", "false")
 37327  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles")
 37328  	urls += "?" + c.urlParams_.Encode()
 37329  	req, err := http.NewRequest("GET", urls, body)
 37330  	if err != nil {
 37331  		return nil, err
 37332  	}
 37333  	req.Header = reqHeaders
 37334  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 37335  }
 37336  
 37337  // Do executes the "dfareporting.userProfiles.list" call.
 37338  // Any non-2xx status code is an error. Response headers are in either
 37339  // *UserProfileList.ServerResponse.Header or (if a response was returned at
 37340  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 37341  // check whether the returned error was because http.StatusNotModified was
 37342  // returned.
 37343  func (c *UserProfilesListCall) Do(opts ...googleapi.CallOption) (*UserProfileList, error) {
 37344  	gensupport.SetOptions(c.urlParams_, opts...)
 37345  	res, err := c.doRequest("json")
 37346  	if res != nil && res.StatusCode == http.StatusNotModified {
 37347  		if res.Body != nil {
 37348  			res.Body.Close()
 37349  		}
 37350  		return nil, gensupport.WrapError(&googleapi.Error{
 37351  			Code:   res.StatusCode,
 37352  			Header: res.Header,
 37353  		})
 37354  	}
 37355  	if err != nil {
 37356  		return nil, err
 37357  	}
 37358  	defer googleapi.CloseBody(res)
 37359  	if err := googleapi.CheckResponse(res); err != nil {
 37360  		return nil, gensupport.WrapError(err)
 37361  	}
 37362  	ret := &UserProfileList{
 37363  		ServerResponse: googleapi.ServerResponse{
 37364  			Header:         res.Header,
 37365  			HTTPStatusCode: res.StatusCode,
 37366  		},
 37367  	}
 37368  	target := &ret
 37369  	if err := gensupport.DecodeResponse(target, res); err != nil {
 37370  		return nil, err
 37371  	}
 37372  	return ret, nil
 37373  }
 37374  
 37375  type UserRolePermissionGroupsGetCall struct {
 37376  	s            *Service
 37377  	profileId    int64
 37378  	id           int64
 37379  	urlParams_   gensupport.URLParams
 37380  	ifNoneMatch_ string
 37381  	ctx_         context.Context
 37382  	header_      http.Header
 37383  }
 37384  
 37385  // Get: Gets one user role permission group by ID.
 37386  //
 37387  // - id: User role permission group ID.
 37388  // - profileId: User profile ID associated with this request.
 37389  func (r *UserRolePermissionGroupsService) Get(profileId int64, id int64) *UserRolePermissionGroupsGetCall {
 37390  	c := &UserRolePermissionGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 37391  	c.profileId = profileId
 37392  	c.id = id
 37393  	return c
 37394  }
 37395  
 37396  // Fields allows partial responses to be retrieved. See
 37397  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 37398  // details.
 37399  func (c *UserRolePermissionGroupsGetCall) Fields(s ...googleapi.Field) *UserRolePermissionGroupsGetCall {
 37400  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 37401  	return c
 37402  }
 37403  
 37404  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 37405  // object's ETag matches the given value. This is useful for getting updates
 37406  // only after the object has changed since the last request.
 37407  func (c *UserRolePermissionGroupsGetCall) IfNoneMatch(entityTag string) *UserRolePermissionGroupsGetCall {
 37408  	c.ifNoneMatch_ = entityTag
 37409  	return c
 37410  }
 37411  
 37412  // Context sets the context to be used in this call's Do method.
 37413  func (c *UserRolePermissionGroupsGetCall) Context(ctx context.Context) *UserRolePermissionGroupsGetCall {
 37414  	c.ctx_ = ctx
 37415  	return c
 37416  }
 37417  
 37418  // Header returns a http.Header that can be modified by the caller to add
 37419  // headers to the request.
 37420  func (c *UserRolePermissionGroupsGetCall) Header() http.Header {
 37421  	if c.header_ == nil {
 37422  		c.header_ = make(http.Header)
 37423  	}
 37424  	return c.header_
 37425  }
 37426  
 37427  func (c *UserRolePermissionGroupsGetCall) doRequest(alt string) (*http.Response, error) {
 37428  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 37429  	if c.ifNoneMatch_ != "" {
 37430  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 37431  	}
 37432  	var body io.Reader = nil
 37433  	c.urlParams_.Set("alt", alt)
 37434  	c.urlParams_.Set("prettyPrint", "false")
 37435  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/userRolePermissionGroups/{+id}")
 37436  	urls += "?" + c.urlParams_.Encode()
 37437  	req, err := http.NewRequest("GET", urls, body)
 37438  	if err != nil {
 37439  		return nil, err
 37440  	}
 37441  	req.Header = reqHeaders
 37442  	googleapi.Expand(req.URL, map[string]string{
 37443  		"profileId": strconv.FormatInt(c.profileId, 10),
 37444  		"id":        strconv.FormatInt(c.id, 10),
 37445  	})
 37446  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 37447  }
 37448  
 37449  // Do executes the "dfareporting.userRolePermissionGroups.get" call.
 37450  // Any non-2xx status code is an error. Response headers are in either
 37451  // *UserRolePermissionGroup.ServerResponse.Header or (if a response was
 37452  // returned at all) in error.(*googleapi.Error).Header. Use
 37453  // googleapi.IsNotModified to check whether the returned error was because
 37454  // http.StatusNotModified was returned.
 37455  func (c *UserRolePermissionGroupsGetCall) Do(opts ...googleapi.CallOption) (*UserRolePermissionGroup, error) {
 37456  	gensupport.SetOptions(c.urlParams_, opts...)
 37457  	res, err := c.doRequest("json")
 37458  	if res != nil && res.StatusCode == http.StatusNotModified {
 37459  		if res.Body != nil {
 37460  			res.Body.Close()
 37461  		}
 37462  		return nil, gensupport.WrapError(&googleapi.Error{
 37463  			Code:   res.StatusCode,
 37464  			Header: res.Header,
 37465  		})
 37466  	}
 37467  	if err != nil {
 37468  		return nil, err
 37469  	}
 37470  	defer googleapi.CloseBody(res)
 37471  	if err := googleapi.CheckResponse(res); err != nil {
 37472  		return nil, gensupport.WrapError(err)
 37473  	}
 37474  	ret := &UserRolePermissionGroup{
 37475  		ServerResponse: googleapi.ServerResponse{
 37476  			Header:         res.Header,
 37477  			HTTPStatusCode: res.StatusCode,
 37478  		},
 37479  	}
 37480  	target := &ret
 37481  	if err := gensupport.DecodeResponse(target, res); err != nil {
 37482  		return nil, err
 37483  	}
 37484  	return ret, nil
 37485  }
 37486  
 37487  type UserRolePermissionGroupsListCall struct {
 37488  	s            *Service
 37489  	profileId    int64
 37490  	urlParams_   gensupport.URLParams
 37491  	ifNoneMatch_ string
 37492  	ctx_         context.Context
 37493  	header_      http.Header
 37494  }
 37495  
 37496  // List: Gets a list of all supported user role permission groups.
 37497  //
 37498  // - profileId: User profile ID associated with this request.
 37499  func (r *UserRolePermissionGroupsService) List(profileId int64) *UserRolePermissionGroupsListCall {
 37500  	c := &UserRolePermissionGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 37501  	c.profileId = profileId
 37502  	return c
 37503  }
 37504  
 37505  // Fields allows partial responses to be retrieved. See
 37506  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 37507  // details.
 37508  func (c *UserRolePermissionGroupsListCall) Fields(s ...googleapi.Field) *UserRolePermissionGroupsListCall {
 37509  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 37510  	return c
 37511  }
 37512  
 37513  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 37514  // object's ETag matches the given value. This is useful for getting updates
 37515  // only after the object has changed since the last request.
 37516  func (c *UserRolePermissionGroupsListCall) IfNoneMatch(entityTag string) *UserRolePermissionGroupsListCall {
 37517  	c.ifNoneMatch_ = entityTag
 37518  	return c
 37519  }
 37520  
 37521  // Context sets the context to be used in this call's Do method.
 37522  func (c *UserRolePermissionGroupsListCall) Context(ctx context.Context) *UserRolePermissionGroupsListCall {
 37523  	c.ctx_ = ctx
 37524  	return c
 37525  }
 37526  
 37527  // Header returns a http.Header that can be modified by the caller to add
 37528  // headers to the request.
 37529  func (c *UserRolePermissionGroupsListCall) Header() http.Header {
 37530  	if c.header_ == nil {
 37531  		c.header_ = make(http.Header)
 37532  	}
 37533  	return c.header_
 37534  }
 37535  
 37536  func (c *UserRolePermissionGroupsListCall) doRequest(alt string) (*http.Response, error) {
 37537  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 37538  	if c.ifNoneMatch_ != "" {
 37539  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 37540  	}
 37541  	var body io.Reader = nil
 37542  	c.urlParams_.Set("alt", alt)
 37543  	c.urlParams_.Set("prettyPrint", "false")
 37544  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/userRolePermissionGroups")
 37545  	urls += "?" + c.urlParams_.Encode()
 37546  	req, err := http.NewRequest("GET", urls, body)
 37547  	if err != nil {
 37548  		return nil, err
 37549  	}
 37550  	req.Header = reqHeaders
 37551  	googleapi.Expand(req.URL, map[string]string{
 37552  		"profileId": strconv.FormatInt(c.profileId, 10),
 37553  	})
 37554  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 37555  }
 37556  
 37557  // Do executes the "dfareporting.userRolePermissionGroups.list" call.
 37558  // Any non-2xx status code is an error. Response headers are in either
 37559  // *UserRolePermissionGroupsListResponse.ServerResponse.Header or (if a
 37560  // response was returned at all) in error.(*googleapi.Error).Header. Use
 37561  // googleapi.IsNotModified to check whether the returned error was because
 37562  // http.StatusNotModified was returned.
 37563  func (c *UserRolePermissionGroupsListCall) Do(opts ...googleapi.CallOption) (*UserRolePermissionGroupsListResponse, error) {
 37564  	gensupport.SetOptions(c.urlParams_, opts...)
 37565  	res, err := c.doRequest("json")
 37566  	if res != nil && res.StatusCode == http.StatusNotModified {
 37567  		if res.Body != nil {
 37568  			res.Body.Close()
 37569  		}
 37570  		return nil, gensupport.WrapError(&googleapi.Error{
 37571  			Code:   res.StatusCode,
 37572  			Header: res.Header,
 37573  		})
 37574  	}
 37575  	if err != nil {
 37576  		return nil, err
 37577  	}
 37578  	defer googleapi.CloseBody(res)
 37579  	if err := googleapi.CheckResponse(res); err != nil {
 37580  		return nil, gensupport.WrapError(err)
 37581  	}
 37582  	ret := &UserRolePermissionGroupsListResponse{
 37583  		ServerResponse: googleapi.ServerResponse{
 37584  			Header:         res.Header,
 37585  			HTTPStatusCode: res.StatusCode,
 37586  		},
 37587  	}
 37588  	target := &ret
 37589  	if err := gensupport.DecodeResponse(target, res); err != nil {
 37590  		return nil, err
 37591  	}
 37592  	return ret, nil
 37593  }
 37594  
 37595  type UserRolePermissionsGetCall struct {
 37596  	s            *Service
 37597  	profileId    int64
 37598  	id           int64
 37599  	urlParams_   gensupport.URLParams
 37600  	ifNoneMatch_ string
 37601  	ctx_         context.Context
 37602  	header_      http.Header
 37603  }
 37604  
 37605  // Get: Gets one user role permission by ID.
 37606  //
 37607  // - id: User role permission ID.
 37608  // - profileId: User profile ID associated with this request.
 37609  func (r *UserRolePermissionsService) Get(profileId int64, id int64) *UserRolePermissionsGetCall {
 37610  	c := &UserRolePermissionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 37611  	c.profileId = profileId
 37612  	c.id = id
 37613  	return c
 37614  }
 37615  
 37616  // Fields allows partial responses to be retrieved. See
 37617  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 37618  // details.
 37619  func (c *UserRolePermissionsGetCall) Fields(s ...googleapi.Field) *UserRolePermissionsGetCall {
 37620  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 37621  	return c
 37622  }
 37623  
 37624  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 37625  // object's ETag matches the given value. This is useful for getting updates
 37626  // only after the object has changed since the last request.
 37627  func (c *UserRolePermissionsGetCall) IfNoneMatch(entityTag string) *UserRolePermissionsGetCall {
 37628  	c.ifNoneMatch_ = entityTag
 37629  	return c
 37630  }
 37631  
 37632  // Context sets the context to be used in this call's Do method.
 37633  func (c *UserRolePermissionsGetCall) Context(ctx context.Context) *UserRolePermissionsGetCall {
 37634  	c.ctx_ = ctx
 37635  	return c
 37636  }
 37637  
 37638  // Header returns a http.Header that can be modified by the caller to add
 37639  // headers to the request.
 37640  func (c *UserRolePermissionsGetCall) Header() http.Header {
 37641  	if c.header_ == nil {
 37642  		c.header_ = make(http.Header)
 37643  	}
 37644  	return c.header_
 37645  }
 37646  
 37647  func (c *UserRolePermissionsGetCall) doRequest(alt string) (*http.Response, error) {
 37648  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 37649  	if c.ifNoneMatch_ != "" {
 37650  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 37651  	}
 37652  	var body io.Reader = nil
 37653  	c.urlParams_.Set("alt", alt)
 37654  	c.urlParams_.Set("prettyPrint", "false")
 37655  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/userRolePermissions/{+id}")
 37656  	urls += "?" + c.urlParams_.Encode()
 37657  	req, err := http.NewRequest("GET", urls, body)
 37658  	if err != nil {
 37659  		return nil, err
 37660  	}
 37661  	req.Header = reqHeaders
 37662  	googleapi.Expand(req.URL, map[string]string{
 37663  		"profileId": strconv.FormatInt(c.profileId, 10),
 37664  		"id":        strconv.FormatInt(c.id, 10),
 37665  	})
 37666  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 37667  }
 37668  
 37669  // Do executes the "dfareporting.userRolePermissions.get" call.
 37670  // Any non-2xx status code is an error. Response headers are in either
 37671  // *UserRolePermission.ServerResponse.Header or (if a response was returned at
 37672  // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 37673  // check whether the returned error was because http.StatusNotModified was
 37674  // returned.
 37675  func (c *UserRolePermissionsGetCall) Do(opts ...googleapi.CallOption) (*UserRolePermission, error) {
 37676  	gensupport.SetOptions(c.urlParams_, opts...)
 37677  	res, err := c.doRequest("json")
 37678  	if res != nil && res.StatusCode == http.StatusNotModified {
 37679  		if res.Body != nil {
 37680  			res.Body.Close()
 37681  		}
 37682  		return nil, gensupport.WrapError(&googleapi.Error{
 37683  			Code:   res.StatusCode,
 37684  			Header: res.Header,
 37685  		})
 37686  	}
 37687  	if err != nil {
 37688  		return nil, err
 37689  	}
 37690  	defer googleapi.CloseBody(res)
 37691  	if err := googleapi.CheckResponse(res); err != nil {
 37692  		return nil, gensupport.WrapError(err)
 37693  	}
 37694  	ret := &UserRolePermission{
 37695  		ServerResponse: googleapi.ServerResponse{
 37696  			Header:         res.Header,
 37697  			HTTPStatusCode: res.StatusCode,
 37698  		},
 37699  	}
 37700  	target := &ret
 37701  	if err := gensupport.DecodeResponse(target, res); err != nil {
 37702  		return nil, err
 37703  	}
 37704  	return ret, nil
 37705  }
 37706  
 37707  type UserRolePermissionsListCall struct {
 37708  	s            *Service
 37709  	profileId    int64
 37710  	urlParams_   gensupport.URLParams
 37711  	ifNoneMatch_ string
 37712  	ctx_         context.Context
 37713  	header_      http.Header
 37714  }
 37715  
 37716  // List: Gets a list of user role permissions, possibly filtered.
 37717  //
 37718  // - profileId: User profile ID associated with this request.
 37719  func (r *UserRolePermissionsService) List(profileId int64) *UserRolePermissionsListCall {
 37720  	c := &UserRolePermissionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 37721  	c.profileId = profileId
 37722  	return c
 37723  }
 37724  
 37725  // Ids sets the optional parameter "ids": Select only user role permissions
 37726  // with these IDs.
 37727  func (c *UserRolePermissionsListCall) Ids(ids ...int64) *UserRolePermissionsListCall {
 37728  	var ids_ []string
 37729  	for _, v := range ids {
 37730  		ids_ = append(ids_, fmt.Sprint(v))
 37731  	}
 37732  	c.urlParams_.SetMulti("ids", ids_)
 37733  	return c
 37734  }
 37735  
 37736  // Fields allows partial responses to be retrieved. See
 37737  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 37738  // details.
 37739  func (c *UserRolePermissionsListCall) Fields(s ...googleapi.Field) *UserRolePermissionsListCall {
 37740  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 37741  	return c
 37742  }
 37743  
 37744  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 37745  // object's ETag matches the given value. This is useful for getting updates
 37746  // only after the object has changed since the last request.
 37747  func (c *UserRolePermissionsListCall) IfNoneMatch(entityTag string) *UserRolePermissionsListCall {
 37748  	c.ifNoneMatch_ = entityTag
 37749  	return c
 37750  }
 37751  
 37752  // Context sets the context to be used in this call's Do method.
 37753  func (c *UserRolePermissionsListCall) Context(ctx context.Context) *UserRolePermissionsListCall {
 37754  	c.ctx_ = ctx
 37755  	return c
 37756  }
 37757  
 37758  // Header returns a http.Header that can be modified by the caller to add
 37759  // headers to the request.
 37760  func (c *UserRolePermissionsListCall) Header() http.Header {
 37761  	if c.header_ == nil {
 37762  		c.header_ = make(http.Header)
 37763  	}
 37764  	return c.header_
 37765  }
 37766  
 37767  func (c *UserRolePermissionsListCall) doRequest(alt string) (*http.Response, error) {
 37768  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 37769  	if c.ifNoneMatch_ != "" {
 37770  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 37771  	}
 37772  	var body io.Reader = nil
 37773  	c.urlParams_.Set("alt", alt)
 37774  	c.urlParams_.Set("prettyPrint", "false")
 37775  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/userRolePermissions")
 37776  	urls += "?" + c.urlParams_.Encode()
 37777  	req, err := http.NewRequest("GET", urls, body)
 37778  	if err != nil {
 37779  		return nil, err
 37780  	}
 37781  	req.Header = reqHeaders
 37782  	googleapi.Expand(req.URL, map[string]string{
 37783  		"profileId": strconv.FormatInt(c.profileId, 10),
 37784  	})
 37785  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 37786  }
 37787  
 37788  // Do executes the "dfareporting.userRolePermissions.list" call.
 37789  // Any non-2xx status code is an error. Response headers are in either
 37790  // *UserRolePermissionsListResponse.ServerResponse.Header or (if a response was
 37791  // returned at all) in error.(*googleapi.Error).Header. Use
 37792  // googleapi.IsNotModified to check whether the returned error was because
 37793  // http.StatusNotModified was returned.
 37794  func (c *UserRolePermissionsListCall) Do(opts ...googleapi.CallOption) (*UserRolePermissionsListResponse, error) {
 37795  	gensupport.SetOptions(c.urlParams_, opts...)
 37796  	res, err := c.doRequest("json")
 37797  	if res != nil && res.StatusCode == http.StatusNotModified {
 37798  		if res.Body != nil {
 37799  			res.Body.Close()
 37800  		}
 37801  		return nil, gensupport.WrapError(&googleapi.Error{
 37802  			Code:   res.StatusCode,
 37803  			Header: res.Header,
 37804  		})
 37805  	}
 37806  	if err != nil {
 37807  		return nil, err
 37808  	}
 37809  	defer googleapi.CloseBody(res)
 37810  	if err := googleapi.CheckResponse(res); err != nil {
 37811  		return nil, gensupport.WrapError(err)
 37812  	}
 37813  	ret := &UserRolePermissionsListResponse{
 37814  		ServerResponse: googleapi.ServerResponse{
 37815  			Header:         res.Header,
 37816  			HTTPStatusCode: res.StatusCode,
 37817  		},
 37818  	}
 37819  	target := &ret
 37820  	if err := gensupport.DecodeResponse(target, res); err != nil {
 37821  		return nil, err
 37822  	}
 37823  	return ret, nil
 37824  }
 37825  
 37826  type UserRolesDeleteCall struct {
 37827  	s          *Service
 37828  	profileId  int64
 37829  	id         int64
 37830  	urlParams_ gensupport.URLParams
 37831  	ctx_       context.Context
 37832  	header_    http.Header
 37833  }
 37834  
 37835  // Delete: Deletes an existing user role.
 37836  //
 37837  // - id: User role ID.
 37838  // - profileId: User profile ID associated with this request.
 37839  func (r *UserRolesService) Delete(profileId int64, id int64) *UserRolesDeleteCall {
 37840  	c := &UserRolesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 37841  	c.profileId = profileId
 37842  	c.id = id
 37843  	return c
 37844  }
 37845  
 37846  // Fields allows partial responses to be retrieved. See
 37847  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 37848  // details.
 37849  func (c *UserRolesDeleteCall) Fields(s ...googleapi.Field) *UserRolesDeleteCall {
 37850  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 37851  	return c
 37852  }
 37853  
 37854  // Context sets the context to be used in this call's Do method.
 37855  func (c *UserRolesDeleteCall) Context(ctx context.Context) *UserRolesDeleteCall {
 37856  	c.ctx_ = ctx
 37857  	return c
 37858  }
 37859  
 37860  // Header returns a http.Header that can be modified by the caller to add
 37861  // headers to the request.
 37862  func (c *UserRolesDeleteCall) Header() http.Header {
 37863  	if c.header_ == nil {
 37864  		c.header_ = make(http.Header)
 37865  	}
 37866  	return c.header_
 37867  }
 37868  
 37869  func (c *UserRolesDeleteCall) doRequest(alt string) (*http.Response, error) {
 37870  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 37871  	var body io.Reader = nil
 37872  	c.urlParams_.Set("alt", alt)
 37873  	c.urlParams_.Set("prettyPrint", "false")
 37874  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/userRoles/{+id}")
 37875  	urls += "?" + c.urlParams_.Encode()
 37876  	req, err := http.NewRequest("DELETE", urls, body)
 37877  	if err != nil {
 37878  		return nil, err
 37879  	}
 37880  	req.Header = reqHeaders
 37881  	googleapi.Expand(req.URL, map[string]string{
 37882  		"profileId": strconv.FormatInt(c.profileId, 10),
 37883  		"id":        strconv.FormatInt(c.id, 10),
 37884  	})
 37885  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 37886  }
 37887  
 37888  // Do executes the "dfareporting.userRoles.delete" call.
 37889  func (c *UserRolesDeleteCall) Do(opts ...googleapi.CallOption) error {
 37890  	gensupport.SetOptions(c.urlParams_, opts...)
 37891  	res, err := c.doRequest("json")
 37892  	if err != nil {
 37893  		return err
 37894  	}
 37895  	defer googleapi.CloseBody(res)
 37896  	if err := googleapi.CheckResponse(res); err != nil {
 37897  		return gensupport.WrapError(err)
 37898  	}
 37899  	return nil
 37900  }
 37901  
 37902  type UserRolesGetCall struct {
 37903  	s            *Service
 37904  	profileId    int64
 37905  	id           int64
 37906  	urlParams_   gensupport.URLParams
 37907  	ifNoneMatch_ string
 37908  	ctx_         context.Context
 37909  	header_      http.Header
 37910  }
 37911  
 37912  // Get: Gets one user role by ID.
 37913  //
 37914  // - id: User role ID.
 37915  // - profileId: User profile ID associated with this request.
 37916  func (r *UserRolesService) Get(profileId int64, id int64) *UserRolesGetCall {
 37917  	c := &UserRolesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 37918  	c.profileId = profileId
 37919  	c.id = id
 37920  	return c
 37921  }
 37922  
 37923  // Fields allows partial responses to be retrieved. See
 37924  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 37925  // details.
 37926  func (c *UserRolesGetCall) Fields(s ...googleapi.Field) *UserRolesGetCall {
 37927  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 37928  	return c
 37929  }
 37930  
 37931  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 37932  // object's ETag matches the given value. This is useful for getting updates
 37933  // only after the object has changed since the last request.
 37934  func (c *UserRolesGetCall) IfNoneMatch(entityTag string) *UserRolesGetCall {
 37935  	c.ifNoneMatch_ = entityTag
 37936  	return c
 37937  }
 37938  
 37939  // Context sets the context to be used in this call's Do method.
 37940  func (c *UserRolesGetCall) Context(ctx context.Context) *UserRolesGetCall {
 37941  	c.ctx_ = ctx
 37942  	return c
 37943  }
 37944  
 37945  // Header returns a http.Header that can be modified by the caller to add
 37946  // headers to the request.
 37947  func (c *UserRolesGetCall) Header() http.Header {
 37948  	if c.header_ == nil {
 37949  		c.header_ = make(http.Header)
 37950  	}
 37951  	return c.header_
 37952  }
 37953  
 37954  func (c *UserRolesGetCall) doRequest(alt string) (*http.Response, error) {
 37955  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 37956  	if c.ifNoneMatch_ != "" {
 37957  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 37958  	}
 37959  	var body io.Reader = nil
 37960  	c.urlParams_.Set("alt", alt)
 37961  	c.urlParams_.Set("prettyPrint", "false")
 37962  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/userRoles/{+id}")
 37963  	urls += "?" + c.urlParams_.Encode()
 37964  	req, err := http.NewRequest("GET", urls, body)
 37965  	if err != nil {
 37966  		return nil, err
 37967  	}
 37968  	req.Header = reqHeaders
 37969  	googleapi.Expand(req.URL, map[string]string{
 37970  		"profileId": strconv.FormatInt(c.profileId, 10),
 37971  		"id":        strconv.FormatInt(c.id, 10),
 37972  	})
 37973  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 37974  }
 37975  
 37976  // Do executes the "dfareporting.userRoles.get" call.
 37977  // Any non-2xx status code is an error. Response headers are in either
 37978  // *UserRole.ServerResponse.Header or (if a response was returned at all) in
 37979  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 37980  // whether the returned error was because http.StatusNotModified was returned.
 37981  func (c *UserRolesGetCall) Do(opts ...googleapi.CallOption) (*UserRole, error) {
 37982  	gensupport.SetOptions(c.urlParams_, opts...)
 37983  	res, err := c.doRequest("json")
 37984  	if res != nil && res.StatusCode == http.StatusNotModified {
 37985  		if res.Body != nil {
 37986  			res.Body.Close()
 37987  		}
 37988  		return nil, gensupport.WrapError(&googleapi.Error{
 37989  			Code:   res.StatusCode,
 37990  			Header: res.Header,
 37991  		})
 37992  	}
 37993  	if err != nil {
 37994  		return nil, err
 37995  	}
 37996  	defer googleapi.CloseBody(res)
 37997  	if err := googleapi.CheckResponse(res); err != nil {
 37998  		return nil, gensupport.WrapError(err)
 37999  	}
 38000  	ret := &UserRole{
 38001  		ServerResponse: googleapi.ServerResponse{
 38002  			Header:         res.Header,
 38003  			HTTPStatusCode: res.StatusCode,
 38004  		},
 38005  	}
 38006  	target := &ret
 38007  	if err := gensupport.DecodeResponse(target, res); err != nil {
 38008  		return nil, err
 38009  	}
 38010  	return ret, nil
 38011  }
 38012  
 38013  type UserRolesInsertCall struct {
 38014  	s          *Service
 38015  	profileId  int64
 38016  	userrole   *UserRole
 38017  	urlParams_ gensupport.URLParams
 38018  	ctx_       context.Context
 38019  	header_    http.Header
 38020  }
 38021  
 38022  // Insert: Inserts a new user role.
 38023  //
 38024  // - profileId: User profile ID associated with this request.
 38025  func (r *UserRolesService) Insert(profileId int64, userrole *UserRole) *UserRolesInsertCall {
 38026  	c := &UserRolesInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 38027  	c.profileId = profileId
 38028  	c.userrole = userrole
 38029  	return c
 38030  }
 38031  
 38032  // Fields allows partial responses to be retrieved. See
 38033  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 38034  // details.
 38035  func (c *UserRolesInsertCall) Fields(s ...googleapi.Field) *UserRolesInsertCall {
 38036  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 38037  	return c
 38038  }
 38039  
 38040  // Context sets the context to be used in this call's Do method.
 38041  func (c *UserRolesInsertCall) Context(ctx context.Context) *UserRolesInsertCall {
 38042  	c.ctx_ = ctx
 38043  	return c
 38044  }
 38045  
 38046  // Header returns a http.Header that can be modified by the caller to add
 38047  // headers to the request.
 38048  func (c *UserRolesInsertCall) Header() http.Header {
 38049  	if c.header_ == nil {
 38050  		c.header_ = make(http.Header)
 38051  	}
 38052  	return c.header_
 38053  }
 38054  
 38055  func (c *UserRolesInsertCall) doRequest(alt string) (*http.Response, error) {
 38056  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 38057  	var body io.Reader = nil
 38058  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userrole)
 38059  	if err != nil {
 38060  		return nil, err
 38061  	}
 38062  	c.urlParams_.Set("alt", alt)
 38063  	c.urlParams_.Set("prettyPrint", "false")
 38064  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/userRoles")
 38065  	urls += "?" + c.urlParams_.Encode()
 38066  	req, err := http.NewRequest("POST", urls, body)
 38067  	if err != nil {
 38068  		return nil, err
 38069  	}
 38070  	req.Header = reqHeaders
 38071  	googleapi.Expand(req.URL, map[string]string{
 38072  		"profileId": strconv.FormatInt(c.profileId, 10),
 38073  	})
 38074  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 38075  }
 38076  
 38077  // Do executes the "dfareporting.userRoles.insert" call.
 38078  // Any non-2xx status code is an error. Response headers are in either
 38079  // *UserRole.ServerResponse.Header or (if a response was returned at all) in
 38080  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 38081  // whether the returned error was because http.StatusNotModified was returned.
 38082  func (c *UserRolesInsertCall) Do(opts ...googleapi.CallOption) (*UserRole, error) {
 38083  	gensupport.SetOptions(c.urlParams_, opts...)
 38084  	res, err := c.doRequest("json")
 38085  	if res != nil && res.StatusCode == http.StatusNotModified {
 38086  		if res.Body != nil {
 38087  			res.Body.Close()
 38088  		}
 38089  		return nil, gensupport.WrapError(&googleapi.Error{
 38090  			Code:   res.StatusCode,
 38091  			Header: res.Header,
 38092  		})
 38093  	}
 38094  	if err != nil {
 38095  		return nil, err
 38096  	}
 38097  	defer googleapi.CloseBody(res)
 38098  	if err := googleapi.CheckResponse(res); err != nil {
 38099  		return nil, gensupport.WrapError(err)
 38100  	}
 38101  	ret := &UserRole{
 38102  		ServerResponse: googleapi.ServerResponse{
 38103  			Header:         res.Header,
 38104  			HTTPStatusCode: res.StatusCode,
 38105  		},
 38106  	}
 38107  	target := &ret
 38108  	if err := gensupport.DecodeResponse(target, res); err != nil {
 38109  		return nil, err
 38110  	}
 38111  	return ret, nil
 38112  }
 38113  
 38114  type UserRolesListCall struct {
 38115  	s            *Service
 38116  	profileId    int64
 38117  	urlParams_   gensupport.URLParams
 38118  	ifNoneMatch_ string
 38119  	ctx_         context.Context
 38120  	header_      http.Header
 38121  }
 38122  
 38123  // List: Retrieves a list of user roles, possibly filtered. This method
 38124  // supports paging.
 38125  //
 38126  // - profileId: User profile ID associated with this request.
 38127  func (r *UserRolesService) List(profileId int64) *UserRolesListCall {
 38128  	c := &UserRolesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 38129  	c.profileId = profileId
 38130  	return c
 38131  }
 38132  
 38133  // AccountUserRoleOnly sets the optional parameter "accountUserRoleOnly":
 38134  // Select only account level user roles not associated with any specific
 38135  // subaccount.
 38136  func (c *UserRolesListCall) AccountUserRoleOnly(accountUserRoleOnly bool) *UserRolesListCall {
 38137  	c.urlParams_.Set("accountUserRoleOnly", fmt.Sprint(accountUserRoleOnly))
 38138  	return c
 38139  }
 38140  
 38141  // Ids sets the optional parameter "ids": Select only user roles with the
 38142  // specified IDs.
 38143  func (c *UserRolesListCall) Ids(ids ...int64) *UserRolesListCall {
 38144  	var ids_ []string
 38145  	for _, v := range ids {
 38146  		ids_ = append(ids_, fmt.Sprint(v))
 38147  	}
 38148  	c.urlParams_.SetMulti("ids", ids_)
 38149  	return c
 38150  }
 38151  
 38152  // MaxResults sets the optional parameter "maxResults": Maximum number of
 38153  // results to return.
 38154  func (c *UserRolesListCall) MaxResults(maxResults int64) *UserRolesListCall {
 38155  	c.urlParams_.Set("maxResults", fmt.Sprint(maxResults))
 38156  	return c
 38157  }
 38158  
 38159  // PageToken sets the optional parameter "pageToken": Value of the
 38160  // nextPageToken from the previous result page.
 38161  func (c *UserRolesListCall) PageToken(pageToken string) *UserRolesListCall {
 38162  	c.urlParams_.Set("pageToken", pageToken)
 38163  	return c
 38164  }
 38165  
 38166  // SearchString sets the optional parameter "searchString": Allows searching
 38167  // for objects by name or ID. Wildcards (*) are allowed. For example,
 38168  // "userrole*2015" will return objects with names like "userrole June 2015",
 38169  // "userrole April 2015", or simply "userrole 2015". Most of the searches also
 38170  // add wildcards implicitly at the start and the end of the search string. For
 38171  // example, a search string of "userrole" will match objects with name "my
 38172  // userrole", "userrole 2015", or simply "userrole".
 38173  func (c *UserRolesListCall) SearchString(searchString string) *UserRolesListCall {
 38174  	c.urlParams_.Set("searchString", searchString)
 38175  	return c
 38176  }
 38177  
 38178  // SortField sets the optional parameter "sortField": Field by which to sort
 38179  // the list.
 38180  //
 38181  // Possible values:
 38182  //
 38183  //	"ID" (default)
 38184  //	"NAME"
 38185  func (c *UserRolesListCall) SortField(sortField string) *UserRolesListCall {
 38186  	c.urlParams_.Set("sortField", sortField)
 38187  	return c
 38188  }
 38189  
 38190  // SortOrder sets the optional parameter "sortOrder": Order of sorted results.
 38191  //
 38192  // Possible values:
 38193  //
 38194  //	"ASCENDING" (default) - Ascending order.
 38195  //	"DESCENDING" - Descending order.
 38196  func (c *UserRolesListCall) SortOrder(sortOrder string) *UserRolesListCall {
 38197  	c.urlParams_.Set("sortOrder", sortOrder)
 38198  	return c
 38199  }
 38200  
 38201  // SubaccountId sets the optional parameter "subaccountId": Select only user
 38202  // roles that belong to this subaccount.
 38203  func (c *UserRolesListCall) SubaccountId(subaccountId int64) *UserRolesListCall {
 38204  	c.urlParams_.Set("subaccountId", fmt.Sprint(subaccountId))
 38205  	return c
 38206  }
 38207  
 38208  // Fields allows partial responses to be retrieved. See
 38209  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 38210  // details.
 38211  func (c *UserRolesListCall) Fields(s ...googleapi.Field) *UserRolesListCall {
 38212  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 38213  	return c
 38214  }
 38215  
 38216  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 38217  // object's ETag matches the given value. This is useful for getting updates
 38218  // only after the object has changed since the last request.
 38219  func (c *UserRolesListCall) IfNoneMatch(entityTag string) *UserRolesListCall {
 38220  	c.ifNoneMatch_ = entityTag
 38221  	return c
 38222  }
 38223  
 38224  // Context sets the context to be used in this call's Do method.
 38225  func (c *UserRolesListCall) Context(ctx context.Context) *UserRolesListCall {
 38226  	c.ctx_ = ctx
 38227  	return c
 38228  }
 38229  
 38230  // Header returns a http.Header that can be modified by the caller to add
 38231  // headers to the request.
 38232  func (c *UserRolesListCall) Header() http.Header {
 38233  	if c.header_ == nil {
 38234  		c.header_ = make(http.Header)
 38235  	}
 38236  	return c.header_
 38237  }
 38238  
 38239  func (c *UserRolesListCall) doRequest(alt string) (*http.Response, error) {
 38240  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 38241  	if c.ifNoneMatch_ != "" {
 38242  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 38243  	}
 38244  	var body io.Reader = nil
 38245  	c.urlParams_.Set("alt", alt)
 38246  	c.urlParams_.Set("prettyPrint", "false")
 38247  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/userRoles")
 38248  	urls += "?" + c.urlParams_.Encode()
 38249  	req, err := http.NewRequest("GET", urls, body)
 38250  	if err != nil {
 38251  		return nil, err
 38252  	}
 38253  	req.Header = reqHeaders
 38254  	googleapi.Expand(req.URL, map[string]string{
 38255  		"profileId": strconv.FormatInt(c.profileId, 10),
 38256  	})
 38257  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 38258  }
 38259  
 38260  // Do executes the "dfareporting.userRoles.list" call.
 38261  // Any non-2xx status code is an error. Response headers are in either
 38262  // *UserRolesListResponse.ServerResponse.Header or (if a response was returned
 38263  // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
 38264  // check whether the returned error was because http.StatusNotModified was
 38265  // returned.
 38266  func (c *UserRolesListCall) Do(opts ...googleapi.CallOption) (*UserRolesListResponse, error) {
 38267  	gensupport.SetOptions(c.urlParams_, opts...)
 38268  	res, err := c.doRequest("json")
 38269  	if res != nil && res.StatusCode == http.StatusNotModified {
 38270  		if res.Body != nil {
 38271  			res.Body.Close()
 38272  		}
 38273  		return nil, gensupport.WrapError(&googleapi.Error{
 38274  			Code:   res.StatusCode,
 38275  			Header: res.Header,
 38276  		})
 38277  	}
 38278  	if err != nil {
 38279  		return nil, err
 38280  	}
 38281  	defer googleapi.CloseBody(res)
 38282  	if err := googleapi.CheckResponse(res); err != nil {
 38283  		return nil, gensupport.WrapError(err)
 38284  	}
 38285  	ret := &UserRolesListResponse{
 38286  		ServerResponse: googleapi.ServerResponse{
 38287  			Header:         res.Header,
 38288  			HTTPStatusCode: res.StatusCode,
 38289  		},
 38290  	}
 38291  	target := &ret
 38292  	if err := gensupport.DecodeResponse(target, res); err != nil {
 38293  		return nil, err
 38294  	}
 38295  	return ret, nil
 38296  }
 38297  
 38298  // Pages invokes f for each page of results.
 38299  // A non-nil error returned from f will halt the iteration.
 38300  // The provided context supersedes any context provided to the Context method.
 38301  func (c *UserRolesListCall) Pages(ctx context.Context, f func(*UserRolesListResponse) error) error {
 38302  	c.ctx_ = ctx
 38303  	defer c.PageToken(c.urlParams_.Get("pageToken"))
 38304  	for {
 38305  		x, err := c.Do()
 38306  		if err != nil {
 38307  			return err
 38308  		}
 38309  		if err := f(x); err != nil {
 38310  			return err
 38311  		}
 38312  		if x.NextPageToken == "" {
 38313  			return nil
 38314  		}
 38315  		c.PageToken(x.NextPageToken)
 38316  	}
 38317  }
 38318  
 38319  type UserRolesPatchCall struct {
 38320  	s          *Service
 38321  	profileId  int64
 38322  	userrole   *UserRole
 38323  	urlParams_ gensupport.URLParams
 38324  	ctx_       context.Context
 38325  	header_    http.Header
 38326  }
 38327  
 38328  // Patch: Updates an existing user role. This method supports patch semantics.
 38329  //
 38330  // - id: UserRole ID.
 38331  // - profileId: User profile ID associated with this request.
 38332  func (r *UserRolesService) Patch(profileId int64, id int64, userrole *UserRole) *UserRolesPatchCall {
 38333  	c := &UserRolesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 38334  	c.profileId = profileId
 38335  	c.urlParams_.Set("id", fmt.Sprint(id))
 38336  	c.userrole = userrole
 38337  	return c
 38338  }
 38339  
 38340  // Fields allows partial responses to be retrieved. See
 38341  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 38342  // details.
 38343  func (c *UserRolesPatchCall) Fields(s ...googleapi.Field) *UserRolesPatchCall {
 38344  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 38345  	return c
 38346  }
 38347  
 38348  // Context sets the context to be used in this call's Do method.
 38349  func (c *UserRolesPatchCall) Context(ctx context.Context) *UserRolesPatchCall {
 38350  	c.ctx_ = ctx
 38351  	return c
 38352  }
 38353  
 38354  // Header returns a http.Header that can be modified by the caller to add
 38355  // headers to the request.
 38356  func (c *UserRolesPatchCall) Header() http.Header {
 38357  	if c.header_ == nil {
 38358  		c.header_ = make(http.Header)
 38359  	}
 38360  	return c.header_
 38361  }
 38362  
 38363  func (c *UserRolesPatchCall) doRequest(alt string) (*http.Response, error) {
 38364  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 38365  	var body io.Reader = nil
 38366  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userrole)
 38367  	if err != nil {
 38368  		return nil, err
 38369  	}
 38370  	c.urlParams_.Set("alt", alt)
 38371  	c.urlParams_.Set("prettyPrint", "false")
 38372  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/userRoles")
 38373  	urls += "?" + c.urlParams_.Encode()
 38374  	req, err := http.NewRequest("PATCH", urls, body)
 38375  	if err != nil {
 38376  		return nil, err
 38377  	}
 38378  	req.Header = reqHeaders
 38379  	googleapi.Expand(req.URL, map[string]string{
 38380  		"profileId": strconv.FormatInt(c.profileId, 10),
 38381  	})
 38382  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 38383  }
 38384  
 38385  // Do executes the "dfareporting.userRoles.patch" call.
 38386  // Any non-2xx status code is an error. Response headers are in either
 38387  // *UserRole.ServerResponse.Header or (if a response was returned at all) in
 38388  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 38389  // whether the returned error was because http.StatusNotModified was returned.
 38390  func (c *UserRolesPatchCall) Do(opts ...googleapi.CallOption) (*UserRole, error) {
 38391  	gensupport.SetOptions(c.urlParams_, opts...)
 38392  	res, err := c.doRequest("json")
 38393  	if res != nil && res.StatusCode == http.StatusNotModified {
 38394  		if res.Body != nil {
 38395  			res.Body.Close()
 38396  		}
 38397  		return nil, gensupport.WrapError(&googleapi.Error{
 38398  			Code:   res.StatusCode,
 38399  			Header: res.Header,
 38400  		})
 38401  	}
 38402  	if err != nil {
 38403  		return nil, err
 38404  	}
 38405  	defer googleapi.CloseBody(res)
 38406  	if err := googleapi.CheckResponse(res); err != nil {
 38407  		return nil, gensupport.WrapError(err)
 38408  	}
 38409  	ret := &UserRole{
 38410  		ServerResponse: googleapi.ServerResponse{
 38411  			Header:         res.Header,
 38412  			HTTPStatusCode: res.StatusCode,
 38413  		},
 38414  	}
 38415  	target := &ret
 38416  	if err := gensupport.DecodeResponse(target, res); err != nil {
 38417  		return nil, err
 38418  	}
 38419  	return ret, nil
 38420  }
 38421  
 38422  type UserRolesUpdateCall struct {
 38423  	s          *Service
 38424  	profileId  int64
 38425  	userrole   *UserRole
 38426  	urlParams_ gensupport.URLParams
 38427  	ctx_       context.Context
 38428  	header_    http.Header
 38429  }
 38430  
 38431  // Update: Updates an existing user role.
 38432  //
 38433  // - profileId: User profile ID associated with this request.
 38434  func (r *UserRolesService) Update(profileId int64, userrole *UserRole) *UserRolesUpdateCall {
 38435  	c := &UserRolesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 38436  	c.profileId = profileId
 38437  	c.userrole = userrole
 38438  	return c
 38439  }
 38440  
 38441  // Fields allows partial responses to be retrieved. See
 38442  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 38443  // details.
 38444  func (c *UserRolesUpdateCall) Fields(s ...googleapi.Field) *UserRolesUpdateCall {
 38445  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 38446  	return c
 38447  }
 38448  
 38449  // Context sets the context to be used in this call's Do method.
 38450  func (c *UserRolesUpdateCall) Context(ctx context.Context) *UserRolesUpdateCall {
 38451  	c.ctx_ = ctx
 38452  	return c
 38453  }
 38454  
 38455  // Header returns a http.Header that can be modified by the caller to add
 38456  // headers to the request.
 38457  func (c *UserRolesUpdateCall) Header() http.Header {
 38458  	if c.header_ == nil {
 38459  		c.header_ = make(http.Header)
 38460  	}
 38461  	return c.header_
 38462  }
 38463  
 38464  func (c *UserRolesUpdateCall) doRequest(alt string) (*http.Response, error) {
 38465  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
 38466  	var body io.Reader = nil
 38467  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.userrole)
 38468  	if err != nil {
 38469  		return nil, err
 38470  	}
 38471  	c.urlParams_.Set("alt", alt)
 38472  	c.urlParams_.Set("prettyPrint", "false")
 38473  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/userRoles")
 38474  	urls += "?" + c.urlParams_.Encode()
 38475  	req, err := http.NewRequest("PUT", urls, body)
 38476  	if err != nil {
 38477  		return nil, err
 38478  	}
 38479  	req.Header = reqHeaders
 38480  	googleapi.Expand(req.URL, map[string]string{
 38481  		"profileId": strconv.FormatInt(c.profileId, 10),
 38482  	})
 38483  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 38484  }
 38485  
 38486  // Do executes the "dfareporting.userRoles.update" call.
 38487  // Any non-2xx status code is an error. Response headers are in either
 38488  // *UserRole.ServerResponse.Header or (if a response was returned at all) in
 38489  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 38490  // whether the returned error was because http.StatusNotModified was returned.
 38491  func (c *UserRolesUpdateCall) Do(opts ...googleapi.CallOption) (*UserRole, error) {
 38492  	gensupport.SetOptions(c.urlParams_, opts...)
 38493  	res, err := c.doRequest("json")
 38494  	if res != nil && res.StatusCode == http.StatusNotModified {
 38495  		if res.Body != nil {
 38496  			res.Body.Close()
 38497  		}
 38498  		return nil, gensupport.WrapError(&googleapi.Error{
 38499  			Code:   res.StatusCode,
 38500  			Header: res.Header,
 38501  		})
 38502  	}
 38503  	if err != nil {
 38504  		return nil, err
 38505  	}
 38506  	defer googleapi.CloseBody(res)
 38507  	if err := googleapi.CheckResponse(res); err != nil {
 38508  		return nil, gensupport.WrapError(err)
 38509  	}
 38510  	ret := &UserRole{
 38511  		ServerResponse: googleapi.ServerResponse{
 38512  			Header:         res.Header,
 38513  			HTTPStatusCode: res.StatusCode,
 38514  		},
 38515  	}
 38516  	target := &ret
 38517  	if err := gensupport.DecodeResponse(target, res); err != nil {
 38518  		return nil, err
 38519  	}
 38520  	return ret, nil
 38521  }
 38522  
 38523  type VideoFormatsGetCall struct {
 38524  	s            *Service
 38525  	profileId    int64
 38526  	id           int64
 38527  	urlParams_   gensupport.URLParams
 38528  	ifNoneMatch_ string
 38529  	ctx_         context.Context
 38530  	header_      http.Header
 38531  }
 38532  
 38533  // Get: Gets one video format by ID.
 38534  //
 38535  // - id: Video format ID.
 38536  // - profileId: User profile ID associated with this request.
 38537  func (r *VideoFormatsService) Get(profileId int64, id int64) *VideoFormatsGetCall {
 38538  	c := &VideoFormatsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 38539  	c.profileId = profileId
 38540  	c.id = id
 38541  	return c
 38542  }
 38543  
 38544  // Fields allows partial responses to be retrieved. See
 38545  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 38546  // details.
 38547  func (c *VideoFormatsGetCall) Fields(s ...googleapi.Field) *VideoFormatsGetCall {
 38548  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 38549  	return c
 38550  }
 38551  
 38552  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 38553  // object's ETag matches the given value. This is useful for getting updates
 38554  // only after the object has changed since the last request.
 38555  func (c *VideoFormatsGetCall) IfNoneMatch(entityTag string) *VideoFormatsGetCall {
 38556  	c.ifNoneMatch_ = entityTag
 38557  	return c
 38558  }
 38559  
 38560  // Context sets the context to be used in this call's Do method.
 38561  func (c *VideoFormatsGetCall) Context(ctx context.Context) *VideoFormatsGetCall {
 38562  	c.ctx_ = ctx
 38563  	return c
 38564  }
 38565  
 38566  // Header returns a http.Header that can be modified by the caller to add
 38567  // headers to the request.
 38568  func (c *VideoFormatsGetCall) Header() http.Header {
 38569  	if c.header_ == nil {
 38570  		c.header_ = make(http.Header)
 38571  	}
 38572  	return c.header_
 38573  }
 38574  
 38575  func (c *VideoFormatsGetCall) doRequest(alt string) (*http.Response, error) {
 38576  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 38577  	if c.ifNoneMatch_ != "" {
 38578  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 38579  	}
 38580  	var body io.Reader = nil
 38581  	c.urlParams_.Set("alt", alt)
 38582  	c.urlParams_.Set("prettyPrint", "false")
 38583  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/videoFormats/{+id}")
 38584  	urls += "?" + c.urlParams_.Encode()
 38585  	req, err := http.NewRequest("GET", urls, body)
 38586  	if err != nil {
 38587  		return nil, err
 38588  	}
 38589  	req.Header = reqHeaders
 38590  	googleapi.Expand(req.URL, map[string]string{
 38591  		"profileId": strconv.FormatInt(c.profileId, 10),
 38592  		"id":        strconv.FormatInt(c.id, 10),
 38593  	})
 38594  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 38595  }
 38596  
 38597  // Do executes the "dfareporting.videoFormats.get" call.
 38598  // Any non-2xx status code is an error. Response headers are in either
 38599  // *VideoFormat.ServerResponse.Header or (if a response was returned at all) in
 38600  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
 38601  // whether the returned error was because http.StatusNotModified was returned.
 38602  func (c *VideoFormatsGetCall) Do(opts ...googleapi.CallOption) (*VideoFormat, error) {
 38603  	gensupport.SetOptions(c.urlParams_, opts...)
 38604  	res, err := c.doRequest("json")
 38605  	if res != nil && res.StatusCode == http.StatusNotModified {
 38606  		if res.Body != nil {
 38607  			res.Body.Close()
 38608  		}
 38609  		return nil, gensupport.WrapError(&googleapi.Error{
 38610  			Code:   res.StatusCode,
 38611  			Header: res.Header,
 38612  		})
 38613  	}
 38614  	if err != nil {
 38615  		return nil, err
 38616  	}
 38617  	defer googleapi.CloseBody(res)
 38618  	if err := googleapi.CheckResponse(res); err != nil {
 38619  		return nil, gensupport.WrapError(err)
 38620  	}
 38621  	ret := &VideoFormat{
 38622  		ServerResponse: googleapi.ServerResponse{
 38623  			Header:         res.Header,
 38624  			HTTPStatusCode: res.StatusCode,
 38625  		},
 38626  	}
 38627  	target := &ret
 38628  	if err := gensupport.DecodeResponse(target, res); err != nil {
 38629  		return nil, err
 38630  	}
 38631  	return ret, nil
 38632  }
 38633  
 38634  type VideoFormatsListCall struct {
 38635  	s            *Service
 38636  	profileId    int64
 38637  	urlParams_   gensupport.URLParams
 38638  	ifNoneMatch_ string
 38639  	ctx_         context.Context
 38640  	header_      http.Header
 38641  }
 38642  
 38643  // List: Lists available video formats.
 38644  //
 38645  // - profileId: User profile ID associated with this request.
 38646  func (r *VideoFormatsService) List(profileId int64) *VideoFormatsListCall {
 38647  	c := &VideoFormatsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
 38648  	c.profileId = profileId
 38649  	return c
 38650  }
 38651  
 38652  // Fields allows partial responses to be retrieved. See
 38653  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
 38654  // details.
 38655  func (c *VideoFormatsListCall) Fields(s ...googleapi.Field) *VideoFormatsListCall {
 38656  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
 38657  	return c
 38658  }
 38659  
 38660  // IfNoneMatch sets an optional parameter which makes the operation fail if the
 38661  // object's ETag matches the given value. This is useful for getting updates
 38662  // only after the object has changed since the last request.
 38663  func (c *VideoFormatsListCall) IfNoneMatch(entityTag string) *VideoFormatsListCall {
 38664  	c.ifNoneMatch_ = entityTag
 38665  	return c
 38666  }
 38667  
 38668  // Context sets the context to be used in this call's Do method.
 38669  func (c *VideoFormatsListCall) Context(ctx context.Context) *VideoFormatsListCall {
 38670  	c.ctx_ = ctx
 38671  	return c
 38672  }
 38673  
 38674  // Header returns a http.Header that can be modified by the caller to add
 38675  // headers to the request.
 38676  func (c *VideoFormatsListCall) Header() http.Header {
 38677  	if c.header_ == nil {
 38678  		c.header_ = make(http.Header)
 38679  	}
 38680  	return c.header_
 38681  }
 38682  
 38683  func (c *VideoFormatsListCall) doRequest(alt string) (*http.Response, error) {
 38684  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
 38685  	if c.ifNoneMatch_ != "" {
 38686  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
 38687  	}
 38688  	var body io.Reader = nil
 38689  	c.urlParams_.Set("alt", alt)
 38690  	c.urlParams_.Set("prettyPrint", "false")
 38691  	urls := googleapi.ResolveRelative(c.s.BasePath, "userprofiles/{+profileId}/videoFormats")
 38692  	urls += "?" + c.urlParams_.Encode()
 38693  	req, err := http.NewRequest("GET", urls, body)
 38694  	if err != nil {
 38695  		return nil, err
 38696  	}
 38697  	req.Header = reqHeaders
 38698  	googleapi.Expand(req.URL, map[string]string{
 38699  		"profileId": strconv.FormatInt(c.profileId, 10),
 38700  	})
 38701  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
 38702  }
 38703  
 38704  // Do executes the "dfareporting.videoFormats.list" call.
 38705  // Any non-2xx status code is an error. Response headers are in either
 38706  // *VideoFormatsListResponse.ServerResponse.Header or (if a response was
 38707  // returned at all) in error.(*googleapi.Error).Header. Use
 38708  // googleapi.IsNotModified to check whether the returned error was because
 38709  // http.StatusNotModified was returned.
 38710  func (c *VideoFormatsListCall) Do(opts ...googleapi.CallOption) (*VideoFormatsListResponse, error) {
 38711  	gensupport.SetOptions(c.urlParams_, opts...)
 38712  	res, err := c.doRequest("json")
 38713  	if res != nil && res.StatusCode == http.StatusNotModified {
 38714  		if res.Body != nil {
 38715  			res.Body.Close()
 38716  		}
 38717  		return nil, gensupport.WrapError(&googleapi.Error{
 38718  			Code:   res.StatusCode,
 38719  			Header: res.Header,
 38720  		})
 38721  	}
 38722  	if err != nil {
 38723  		return nil, err
 38724  	}
 38725  	defer googleapi.CloseBody(res)
 38726  	if err := googleapi.CheckResponse(res); err != nil {
 38727  		return nil, gensupport.WrapError(err)
 38728  	}
 38729  	ret := &VideoFormatsListResponse{
 38730  		ServerResponse: googleapi.ServerResponse{
 38731  			Header:         res.Header,
 38732  			HTTPStatusCode: res.StatusCode,
 38733  		},
 38734  	}
 38735  	target := &ret
 38736  	if err := gensupport.DecodeResponse(target, res); err != nil {
 38737  		return nil, err
 38738  	}
 38739  	return ret, nil
 38740  }
 38741  

View as plain text